API Reference
The Streamvisor REST API allows you to manage both platform resources, such as users and environments, as well as Pulsar resources, such as topics and subscriptions.
The endpoints and their respective documentation are described using the Open API specification and can be viewed using the included Swagger UI.
The Swagger UI can be found under /api/docs
of your deployment host.
E.g. http://localhost:8888/api/docs
From the UI, you can also download the Open API specification by clicking on the link below the Streamvisor API header.
This allows you to import the API endpoints into other tools like Postman.
To start using the API, generate an access token by creating a Service Account.
In order to access secured Streamvisor API endpoints, you need to include a valid access token by setting an Authorization
header with the value set to Bearer <Service account access token>
.
Furthermore, requests that are scoped to an environment, like retrieving the list of tenants, need to provide this information by setting an environment
header with the value set to the name of the environment you want to use.
The following example shows how to retrieve the list of users with their respective groups and permissions:
curl -X GET http://localhost:8888/api/v1/users -H "Authorization: Bearer <Service account access token>"
[
{
"name": "admin@example.com",
"groups": [
"admin"
],
"permissions": [
"*·Streamvisor_ManageEnv·*",
"*·Streamvisor_ManageUsers·*",
"*·Tenant_Create·*",
"*·Tenant_Delete·*",
"*·Namespace_Create·*/*",
"*·Namespace_Delete·*/*",
"*·Topic_View·*/*/*",
"*·Topic_Create·*/*/*",
"*·Topic_Delete·*/*/*",
"*·Topic_Unload·*/*/*",
"*·Topic_ChangePartitions·*/*/*",
"*·Topic_Consume·*/*/*",
"*·Topic_Produce·*/*/*",
"*·Topic_CreateSubscription·*/*/*",
"*·Topic_DeleteSubscription·*/*/*",
"*·Topic_EditSubscription·*/*/*",
"*·Topic_ViewSchema·*/*/*",
"*·Topic_CreateSchema·*/*/*",
"*·Topic_DeleteSchema·*/*/*"
]
}
]