REST API
Fishjam Cloud (1.0.0)
Download OpenAPI specification:Download
List Jellyfish
Fetches a list of active Jellyfish container instances for the authenticated user. Takes a cluster uuid as an optional filtering parameter.
Returns:
- A list of the user's active Jellyfish container instances, as per the ContainerOut schema.
Authorizations:
query Parameters
Cluster Uuid Hex (string) or Cluster Uuid Hex (null) (Cluster Uuid Hex) | |
include_archived | boolean (Include Archived) Default: false |
Responses
Response samples
- 200
- 404
[- {
- "name": "string",
- "uuid": "string",
- "status": "running",
- "container_id": "string",
- "machine_type": "xsmall",
- "location": "us_east",
- "routing_key": "string",
- "cluster_uuid": "string"
}
]
Create Jellyfish
Creates a new Jellyfish container instance using the specifications from NewContainerIn input.
Returns:
- The newly generated container as per the NewContainerOut schema.
Raises:
- HttpError, 500: If an error occurs during the container creation.
Authorizations:
Request Body schema: application/jsonrequired
cluster_uuid_hex required | string (Cluster Uuid Hex) |
machine_type | string (MachineType) Default: "xsmall" Enum: "xsmall" "small" "medium" "large" "xlarge" |
location | string (MachineLocation) Default: "eu_central" Enum: "us_east" "us_west" "af_south" "ap_east" "ap_south" "ap_southeast" "ap_northeast" "ca_central" "eu_central" "eu_west" "eu_south" "eu_north" "il_central" "me_south" "me_central" "sa_east" |
Name (string) or Name (null) (Name) | |
Routing Key (string) or Routing Key (null) (Routing Key) |
Responses
Request samples
- Payload
{- "cluster_uuid_hex": "string",
- "machine_type": "xsmall",
- "location": "eu_central",
- "name": "string",
- "routing_key": "string"
}
Response samples
- 200
- 400
- 409
- 500
{- "name": "string",
- "uuid": "string",
}
List Jellyfish Versions
Fetches a list of available JF versions for the authenticated user.
Note: currently all versions are available for all users, this behavior may change in the future.
Returns:
- A list of the user's available JF versions.
Authorizations:
Responses
Response samples
- 200
[- {
- "name": "string",
- "is_default": true
}
]
Get Jellyfish Count
Returns a number of active Jellyfish container instances for the authenticated user. Takes a cluster uuid as an optional filtering parameter.
Returns:
- A number of the user's active Jellyfish container instances.
Authorizations:
query Parameters
Cluster Uuid Hex (string) or Cluster Uuid Hex (null) (Cluster Uuid Hex) | |
include_archived | boolean (Include Archived) Default: false |
Responses
Response samples
- 200
{- "count": 0
}
Get Jellyfish
Retrieves a Jellyfish container instance using the provided jellyfish_uuid_hex path parameter.
Returns:
- The identified container, as per the ContainerOut schema.
Raises:
- HttpError, 404: If no container matches the provided jellyfish_uuid_hex.
Authorizations:
path Parameters
jellyfish_uuid_hex required | string (Jellyfish Uuid Hex) |
Responses
Response samples
- 200
- 404
{- "name": "string",
- "uuid": "string",
- "status": "running",
- "container_id": "string",
- "machine_type": "xsmall",
- "location": "us_east",
- "routing_key": "string",
- "cluster_uuid": "string"
}
Edit Jellyfish
Edits a Jellyfish container instance found by the jellyfish_uuid_hex uuid with the provided parameters path parameter.
Returns:
- OK message.
Raises:
- HttpError, 400: If the container is in an invalid state for reconfiguration.
- HttpError, 404: If no container matches the provided jellyfish_uuid_hex.
- HttpError, 409: If provided routing key is already used.
Authorizations:
path Parameters
jellyfish_uuid_hex required | string (Jellyfish Uuid Hex) |
Request Body schema: application/jsonrequired
machine_type required | string (MachineType) Enum: "xsmall" "small" "medium" "large" "xlarge" |
location required | string (MachineLocation) Enum: "us_east" "us_west" "af_south" "ap_east" "ap_south" "ap_southeast" "ap_northeast" "ca_central" "eu_central" "eu_west" "eu_south" "eu_north" "il_central" "me_south" "me_central" "sa_east" |
routing_key required | string (Routing Key) <= 50 characters |
Responses
Request samples
- Payload
{- "machine_type": "xsmall",
- "location": "us_east",
- "routing_key": "string"
}
Response samples
- 200
- 404
- 409
{- "detail": "string"
}
Drop Jellyfish
Deletes a Jellyfish container instance identified by the jellyfish_uuid_hex path parameter.
Returns:
- A ContainerDeletedOut message consisting of detail and jellyfish_uuid_hex.
Raises:
- HttpError, 400: If the container is in an invalid state for deletion.
- HttpError, 404: If no container matches the provided jellyfish_uuid_hex.
- HttpError, 500: If deletion of the container fails.
Authorizations:
path Parameters
jellyfish_uuid_hex required | string (Jellyfish Uuid Hex) |
Responses
Response samples
- 200
- 400
- 404
- 500
{- "uuid": "string",
- "detail": "string"
}
List Machines Locations
Fetches a set of possible machine configurations.
Returns:
- A list of machine locations available to host Jellyfish on
Authorizations:
Responses
Response samples
- 200
[- {
- "location": "us_east",
- "machine_types": [
- {
- "machine_type": "xsmall",
- "description": {
- "cores": 0,
- "memory": 0,
- "disk": 0
}
}
]
}
]
List Jellyfish Clusters
Fetches a list of clusters for the authenticated user.
Returns:
- A list of the user's clusters as per the ClusterOut schema.
Authorizations:
Responses
Response samples
- 200
- 500
[- {
- "image_version": "string",
- "uuid": "string",
- "name": "string",
- "token": "string",
- "status": "running"
}
]
Create Jellyfish Cluster
Creates a new cluster using the specifications from ClusterIn input.
Returns:
- The newly generated cluster as per the ClusterIn schema.
Raises:
- HttpError, 500: If an error occurs during the cluster creation.
Authorizations:
Request Body schema: application/jsonrequired
image_version required | string (Image Version) <= 128 characters |
name required | string (Name) <= 64 characters |
Token (string) or Token (null) (Token) |
Responses
Request samples
- Payload
{- "image_version": "string",
- "name": "string",
- "token": "string"
}
Response samples
- 200
- 409
- 500
{- "image_version": "string",
- "uuid": "string",
- "name": "string",
- "token": "string",
- "status": "running"
}
Get Jellyfish Cluster
Retrieves a cluster using the provided cluster_uuid_hex path parameter.
Returns:
- The identified cluster, as per the ClusterOut schema.
Raises:
- HttpError, 404: If no cluster matches the provided cluster_uuid_hex.
Authorizations:
path Parameters
cluster_uuid_hex required | string (Cluster Uuid Hex) |
Responses
Response samples
- 200
- 404
- 500
{- "image_version": "string",
- "uuid": "string",
- "name": "string",
- "token": "string",
- "status": "running"
}
Edit Jellyfish Cluster
Edits a cluster matching the provided cluster_uuid_hex with the provided path parameters. Jellyfish dependent on that cluster are also editted.
Returns:
- OK message.
Raises:
- HttpError, 400: If at least one container has state invalid for reconfiguration.
- HttpError, 404: If no cluster matches the provided cluster_uuid_hex.
- HttpError, 409: If provided unique values are already used.
Authorizations:
path Parameters
cluster_uuid_hex required | string (Cluster Uuid Hex) |
Request Body schema: application/jsonrequired
Image Version (string) or Image Version (null) (Image Version) | |
Name (string) or Name (null) (Name) | |
Token (string) or Token (null) (Token) |
Responses
Request samples
- Payload
{- "image_version": "string",
- "name": "string",
- "token": "string"
}
Response samples
- 200
- 404
- 409
- 500
{- "detail": "string"
}
Delete Jellyfish Cluster
Deletes a cluster identified by the cluster_uuid_hex path parameter.
Returns:
- A DeletedClusterOut messege consisting of detail and cluster_uuid_hex.
Raises:
- HttpError, 400: If the cluster has active Jellyfish.
- HttpError, 404: If no cluster matches the provided cluster_uuid_hex.
- HttpError, 500: If deletion of the cluster fails.
Authorizations:
path Parameters
cluster_uuid_hex required | string (Cluster Uuid Hex) |
Responses
Response samples
- 200
- 404
- 409
- 500
{- "uuid": "string",
- "detail": "string"
}
Sign In
Authenticates a user using the supplied credentials and sets a session id cookie.
Returns:
- Authenticated user as per the UserOut schema.
Raises:
- HttpError, 401: If the provided credentials are invalid.
- HttpError, 403: If the user has not verified their account via the email verification link.
Request Body schema: application/jsonrequired
email required | string <email> (Email) |
password required | string (Password) |
Responses
Request samples
- Payload
{- "email": "user@example.com",
- "password": "string"
}
Response samples
- 200
- 401
- 403
{- "uuid": "string",
- "email": "user@example.com",
- "has_surpassed_free_tier": false,
- "free_tier_jellyseconds": 0,
- "has_used_instances": false,
- "last_feedback_timestamp": "2019-08-24T14:15:22Z",
- "instance_limit": 0,
- "allowed_features": [
- "recordings"
], - "has_password": true
}
Verify User
Validates the provided verification token and sets the corresponding user status as verified.
Returns:
- A success message confirming user verification.
Raises:
- HttpError, 401: If the provided verification token is invalid.
Request Body schema: application/jsonrequired
verification_token required | string (Verification Token) |
Responses
Request samples
- Payload
{- "verification_token": "string"
}
Response samples
- 200
- 401
{- "detail": "string"
}
Sign Up
Registers a new user.
Returns:
- The newly created user object as per the UserOut schema.
Raises:
- HttpError, 400: If the email provided is invalid.
- HttpError, 409: If the chosen email is already in use.
Request Body schema: application/jsonrequired
password required | string (Password) |
email required | string <email> (Email) |
registration_token required | string (Registration Token) |
Responses
Request samples
- Payload
{- "password": "string",
- "email": "user@example.com",
- "registration_token": "string"
}
Response samples
- 200
- 400
- 409
{- "uuid": "string",
- "email": "user@example.com",
- "has_surpassed_free_tier": false,
- "free_tier_jellyseconds": 0,
- "has_used_instances": false,
- "last_feedback_timestamp": "2019-08-24T14:15:22Z",
- "instance_limit": 0,
- "allowed_features": [
- "recordings"
], - "has_password": true
}
Resend Verification
Reissues the verification token to the user's registered email.
Returns:
- A success message confirming the successful sending of the verification email.
Raises:
- HttpError, 409: If the user has already verified their account.
- HttpError, 429: If the resend limit has been reached.
Request Body schema: application/jsonrequired
email required | string <email> (Email) |
password required | string (Password) |
Responses
Request samples
- Payload
{- "email": "user@example.com",
- "password": "string"
}
Response samples
- 200
- 401
- 409
- 429
{- "detail": "string"
}
Get Current User
Fetches the authenticated user's details.
Returns:
- authenticated user data as per the UserOut schema.
Raises:
- HttpError, 401: If unauthorized access is attempted.
Authorizations:
Responses
Response samples
- 200
- 401
{- "uuid": "string",
- "email": "user@example.com",
- "has_surpassed_free_tier": false,
- "free_tier_jellyseconds": 0,
- "has_used_instances": false,
- "last_feedback_timestamp": "2019-08-24T14:15:22Z",
- "instance_limit": 0,
- "allowed_features": [
- "recordings"
], - "has_password": true
}
Google Register
Authenticates a user via Google authentication, requiring an OAuth credential. Assigns a session id to a cookie.
Returns:
- authenticated user object as per the UserOut schema.
Raises:
- HttpError, 403: If the OAuth credential is invalid or does not have sufficient permissions.
- HttpError, 409: If email from credentials is already registered in our system
Request Body schema: application/jsonrequired
credential required | string (Credential) |
registration_token required | string (Registration Token) |
Responses
Request samples
- Payload
{- "credential": "string",
- "registration_token": "string"
}
Response samples
- 200
- 400
- 401
- 403
- 409
{- "uuid": "string",
- "email": "user@example.com",
- "has_surpassed_free_tier": false,
- "free_tier_jellyseconds": 0,
- "has_used_instances": false,
- "last_feedback_timestamp": "2019-08-24T14:15:22Z",
- "instance_limit": 0,
- "allowed_features": [
- "recordings"
], - "has_password": true
}
Google Login
Authenticates a user via Google authentication, requiring an OAuth credential. Assigns a session id to a cookie.
Returns:
- authenticated user object as per the UserOut schema.
Raises:
- HttpError, 403: If the OAuth credential is invalid or does not have sufficient permissions.
- HttpError, 404: If the OAuth credential is valid but user with provided email is not registered
Request Body schema: application/jsonrequired
credential required | string (Credential) |
Responses
Request samples
- Payload
{- "credential": "string"
}
Response samples
- 200
- 403
{- "uuid": "string",
- "email": "user@example.com",
- "has_surpassed_free_tier": false,
- "free_tier_jellyseconds": 0,
- "has_used_instances": false,
- "last_feedback_timestamp": "2019-08-24T14:15:22Z",
- "instance_limit": 0,
- "allowed_features": [
- "recordings"
], - "has_password": true
}
Reset Password
Sends a password reset link to the specified user's email.
Returns:
- A message confirming successful sending of the email.
Request Body schema: application/jsonrequired
email required | string <email> (Email) |
Responses
Request samples
- Payload
{- "email": "user@example.com"
}
Response samples
- 200
{- "detail": "string"
}
Confirm Reset Password
Validates the password reset token and assigns a new password to the user.
Returns:
- A message confirming successful password reset.
Raises:
- HttpError, 403: If the password reset token is invalid.
- HttpError, 404: If no user is found with the provided UUID.
path Parameters
user_uuid required | string (User Uuid) |
token required | string (Token) |
Request Body schema: application/jsonrequired
password required | string (Password) |
Responses
Request samples
- Payload
{- "password": "string"
}
Response samples
- 200
- 403
- 404
{- "detail": "string"
}
Change Password
Changes the password of the authenticated user.
Returns:
- A message confirming successful password change.
Raises:
- HttpError, 403: If the provided current password is incorrect.
Authorizations:
Request Body schema: application/jsonrequired
Old Password (string) or Old Password (null) (Old Password) | |
new_password required | string (New Password) |
Responses
Request samples
- Payload
{- "old_password": "string",
- "new_password": "string"
}
Response samples
- 200
- 403
{- "detail": "string"
}
Get Api Tokens
Fetches the API tokens of the authenticated user.
Returns:
- A list of API tokens, as per the ApiTokenOut schema.
Authorizations:
Responses
Response samples
- 200
- 401
[- {
- "uuid": "string",
- "token_trailer": "string",
- "created_at": "2019-08-24T14:15:22Z"
}
]
Archive Api Token
Removes a specified API token.
Returns:
- A success message confirming deletion of the token.
Raises:
- HttpError, 404: If the specified API token is not found.
Authorizations:
path Parameters
token_uuid required | string (Token Uuid) |
Responses
Response samples
- 202
- 401
- 404
{- "detail": "string"
}
Create User Payment Details
Generates a Stripe customer for the authenticated user and then creates and persists the user's payment details using the Stripe customer id.
Returns:
- A success message upon completion.
Raises:
- HttpError, 409: If user already possesses payment details.
- HttpError, 500: When Stripe is unable to process the request.
- HttpError, 503: In case of connectivity issues with Stripe.
- HttpError, 503: When the request is blocked by rate limiter.
Authorizations:
Responses
Response samples
- 201
- 409
- 500
- 503
{- "detail": "string"
}
Update User Payment Details
Updates the payment details of the authenticated user.
Returns:
- user's payment details as per the CustomerOut schema.
Raises:
- HttpError, 404: If user does not possess payment details.
- HttpError, 500: When Stripe is unable to process the request.
- HttpError, 503: In case of connectivity issues with Stripe.
- HttpError, 503: When the request is blocked by rate limiter.
Authorizations:
Request Body schema: application/jsonrequired
required | object (AddressIn) |
required | object (CustomerDataIn) |
Responses
Request samples
- Payload
{- "address": {
- "country_code": "AD",
- "description": "string",
- "first_line": "string",
- "second_line": "string",
- "city": "string",
- "postal_code": "string",
- "region": "string"
}, - "customer": {
- "email": "string",
- "name": "string",
- "phone_number": "strings"
}
}
Response samples
- 200
- 404
- 500
- 503
{- "address": {
- "id": "string",
- "customer_id": "string",
- "description": "string",
- "first_line": "string",
- "second_line": "string",
- "city": "string",
- "postal_code": "string",
- "region": "string",
- "country_code": "AD",
- "custom_data": {
- "data": { }
}, - "status": "active",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "import_meta": {
- "external_id": "string",
- "imported_from": "string"
}
}, - "customer": {
- "id": "string",
- "name": "string",
- "email": "string",
- "marketing_consent": true,
- "status": "active",
- "locale": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "custom_data": {
- "data": { }
}, - "import_meta": {
- "external_id": "string",
- "imported_from": "string"
}
}
}
Get User Payment Details
Fetches the payment details of the authenticated user.
Returns:
- user's payment details as per the CustomerOut schema.
Raises:
- HttpError, 404: If user does not possess payment details.
- HttpError, 500: When Stripe is unable to process the request.
- HttpError, 503: In case of connectivity issues with Stripe.
- HttpError, 503: When the request is blocked by rate limiter.
Authorizations:
Responses
Response samples
- 200
- 404
- 500
- 503
{- "address": {
- "id": "string",
- "customer_id": "string",
- "description": "string",
- "first_line": "string",
- "second_line": "string",
- "city": "string",
- "postal_code": "string",
- "region": "string",
- "country_code": "AD",
- "custom_data": {
- "data": { }
}, - "status": "active",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "import_meta": {
- "external_id": "string",
- "imported_from": "string"
}
}, - "customer": {
- "id": "string",
- "name": "string",
- "email": "string",
- "marketing_consent": true,
- "status": "active",
- "locale": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "custom_data": {
- "data": { }
}, - "import_meta": {
- "external_id": "string",
- "imported_from": "string"
}
}
}
Get Monthly Billing Data
Fetches the list of monthly billing of the authenticated user.
Returns:
- user's monthly billing as per the MonthlyBillingOut schema.
Authorizations:
query Parameters
limit | integer (Limit) >= 1 Default: 100 |
offset | integer (Offset) >= 0 Default: 0 |
Responses
Response samples
- 200
- 404
- 500
- 503
{- "items": [
- {
- "jellyseconds_used": 0,
- "free_tier_jellyseconds": 0,
- "end_of_period": "2019-08-24T14:15:22Z"
}
], - "count": 0
}
Get Instant Query
Queries Prometheus for a specific metric at a certain timestamp. If label is user_email, then the label_values are ignored.
Returns:
- The query results as per the MetricInstantQueryOut schema.
Raises:
- HttpError, 404: If the specified metric is not found.
- HttpError, 403: If provided label values are not allowed for the user.
- HttpError, 500: Upon failing to parse Prometheus response.
- HttpError, 500: If Prometheus Returns:
- an unexpected response.
- HttpError, 503: If Prometheus is not available.
Authorizations:
query Parameters
metric required | string (MetricName) Enum: "fishjam_rooms" "fishjam_room_duration_seconds" "fishjam_room_peers" "fishjam_room_peer_time_total_seconds" "fishjam_room_peer_crashes_total" "fishjam_room_peer_connects_total" "fishjam_room_peer_disconnects_total" "fishjam_traffic_egress_webrtc_total_bytes" "fishjam_traffic_egress_http_total_bytes" "fishjam_traffic_ingress_webrtc_total_bytes" "fishjam_traffic_ingress_http_total_bytes" "fishjam_traffic_egress_webrtc_per_second_bytes" "fishjam_traffic_egress_http_per_second_bytes" "fishjam_traffic_ingress_webrtc_per_second_bytes" "fishjam_traffic_ingress_http_per_second_bytes" "node_cpu_usage_ratio" "node_filesystem_usage_ratio" "node_ram_usage_ratio" |
Time (integer) or Time (null) (Time) | |
Interval (integer) or Interval (null) (Interval) | |
Resolution (integer) or Resolution (null) (Resolution) | |
scope_name required | string (MetricLabel) Enum: "instance_uuid" "cluster_uuid" "user_email" |
Array of Scope Uuids (strings) or Scope Uuids (null) (Scope Uuids) | |
MetricLabel (string) or null |
Responses
Response samples
- 200
- 400
- 404
- 422
- 500
- 503
{- "result_type": "vector",
- "result": [
- {
- "metric": {
- "property1": "string",
- "property2": "string"
}, - "value": {
- "timestamp": 0,
- "value": "string"
}
}
]
}
Get Range Query
Queries Prometheus for a specific metric between two timestamps. If label is user_email, then the label_values are ignored.
Returns:
- The query results as per the MetricRangeQueryOut schema.
Raises:
- HttpError, 404: If the specified metric is not found.
- HttpError, 403: If provided label values are not allowed for the user.
- HttpError, 500: Upon failing to parse Prometheus response.
- HttpError, 500: If Prometheus Returns:
- an unexpected response.
- HttpError, 503: If Prometheus is not available.
Authorizations:
query Parameters
metric required | string (MetricName) Enum: "fishjam_rooms" "fishjam_room_duration_seconds" "fishjam_room_peers" "fishjam_room_peer_time_total_seconds" "fishjam_room_peer_crashes_total" "fishjam_room_peer_connects_total" "fishjam_room_peer_disconnects_total" "fishjam_traffic_egress_webrtc_total_bytes" "fishjam_traffic_egress_http_total_bytes" "fishjam_traffic_ingress_webrtc_total_bytes" "fishjam_traffic_ingress_http_total_bytes" "fishjam_traffic_egress_webrtc_per_second_bytes" "fishjam_traffic_egress_http_per_second_bytes" "fishjam_traffic_ingress_webrtc_per_second_bytes" "fishjam_traffic_ingress_http_per_second_bytes" "node_cpu_usage_ratio" "node_filesystem_usage_ratio" "node_ram_usage_ratio" |
Time (integer) or Time (null) (Time) | |
Interval (integer) or Interval (null) (Interval) | |
Resolution (integer) or Resolution (null) (Resolution) | |
scope_name required | string (MetricLabel) Enum: "instance_uuid" "cluster_uuid" "user_email" |
Array of Scope Uuids (strings) or Scope Uuids (null) (Scope Uuids) | |
MetricLabel (string) or null | |
end required | integer (End) > 0 |
start required | integer (Start) > 0 |
step required | number (Step) > 0 |
Responses
Response samples
- 200
- 400
- 404
- 422
- 500
- 503
{- "result_type": "matrix",
- "result": [
- {
- "metric": {
- "property1": "string",
- "property2": "string"
}, - "values": [
- {
- "timestamp": 0,
- "value": "string"
}
]
}
]
}
Query Range
Authorizations:
query Parameters
jellyfish_uuid_hex required | string (Jellyfish Uuid Hex) |
Since Seconds (integer) or Since Seconds (null) (Since Seconds) | |
Start (string) or Start (null) (Start) | |
required | End (string) or End (null) (End) |
limit | integer (Limit) ( 0 .. 1000 ] Default: 100 |
Search Phrase (string) or Search Phrase (null) (Search Phrase) | |
JellyfishLogSeverity (string) or null |
Responses
Response samples
- 200
- 404
- 500
[- {
- "timestamp": 0,
- "severity": "debug",
- "message": "string"
}
]
Create Webhook
Authorizations:
Request Body schema: application/jsonrequired
name required | string (Name) |
url required | string (Url) |
required | Authorization Header (string) or Authorization Header (null) (Authorization Header) |
Responses
Request samples
- Payload
{- "name": "string",
- "url": "string",
- "authorization_header": "string"
}
Response samples
- 200
- 401
{- "uuid": "string",
- "name": "string",
- "url": "string",
- "authorization_header": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "is_enabled": true
}
Update Webhook
Authorizations:
path Parameters
uuid required | string (Uuid) |
Request Body schema: application/jsonrequired
Name (string) or Name (null) (Name) | |
Url (string) or Url (null) (Url) | |
Authorization Header (string) or Authorization Header (null) (Authorization Header) | |
Is Enabled (boolean) or Is Enabled (null) (Is Enabled) |
Responses
Request samples
- Payload
{- "name": "string",
- "url": "string",
- "authorization_header": "string",
- "is_enabled": true
}
Response samples
- 200
- 401
- 404
{- "detail": "string"
}
Get Recording Settings
Retrieves recording settings of a cluster using the provided cluster_uuid_hex path parameter.
Returns:
- The identified recording settings, as per the RecordingSettingsOut schema.
Raises:
- HttpError, 403: If recordings feature is not allowed for the user.
- HttpError, 404: If no cluster matches the provided cluster_uuid_hex or no recording settings are found.
Authorizations:
query Parameters
cluster_uuid_hex required | string (Cluster Uuid Hex) |
Responses
Response samples
- 200
- 403
- 404
- 500
{- "role_arn": "string",
- "bucket_region": "string",
- "bucket_name": "string",
- "base_path": "string",
- "trimmed_base_path": "string"
}
Upsert Recording Settings
Upserts recording settings of a cluster using the provided cluster_uuid_hex path parameter.
Returns:
- The upserted recording settings, as per the RecordingSettingsOut schema.
Raises:
- HttpError, 403: If recordings feature is not allowed for the user.
- HttpError, 404: If no cluster matches the provided cluster_uuid_hex.
Authorizations:
query Parameters
cluster_uuid_hex required | string (Cluster Uuid Hex) |
Request Body schema: application/jsonrequired
role_arn required | string (Role Arn) <= 255 characters |
bucket_region required | string (Bucket Region) <= 50 characters |
bucket_name required | string (Bucket Name) <= 63 characters |
base_path | string (Base Path) <= 255 characters Default: "/" |
Responses
Request samples
- Payload
{- "role_arn": "string",
- "bucket_region": "string",
- "bucket_name": "string",
- "base_path": "/"
}
Response samples
- 200
- 403
- 404
- 500
{- "role_arn": "string",
- "bucket_region": "string",
- "bucket_name": "string",
- "base_path": "string",
- "trimmed_base_path": "string"
}
Validate Settings
Validates the recording settings of a cluster by sending example empty data to provided AWS S3 bucket.
Returns:
- A message indicating the success of the operation.
Raises:
- HttpError, 400: If the provided data do not allow uploading files to S3.
- HttpError, 403: If recordings feature is not allowed for the user.
Authorizations:
Request Body schema: application/jsonrequired
role_arn required | string (Role Arn) <= 255 characters |
bucket_region required | string (Bucket Region) <= 50 characters |
bucket_name required | string (Bucket Name) <= 63 characters |
base_path | string (Base Path) <= 255 characters Default: "/" |
Responses
Request samples
- Payload
{- "role_arn": "string",
- "bucket_region": "string",
- "bucket_name": "string",
- "base_path": "/"
}
Response samples
- 200
- 403
- 500
{- "failing_field": "role_arn",
- "detail": "string"
}
Send Feedback
Sends a feedback from an authenticated user to teams' slack channel.
Returns:
- A success message
Authorizations:
Request Body schema: application/jsonrequired
feedback_type required | string (FeedbackType) Enum: "good" "bad" "bug" "feature_request" "general_feedback" |
message | string (Message) <= 2000 characters Default: "" |
Responses
Request samples
- Payload
{- "feedback_type": "good",
- "message": ""
}
Response samples
- 201
{- "detail": "string"
}
Create Instance Limit Change Request
Authorizations:
Request Body schema: application/jsonrequired
desired_limit required | integer (Desired Limit) > 0 |
reason required | string (Reason) <= 1024 characters |
Responses
Request samples
- Payload
{- "desired_limit": 0,
- "reason": "string"
}
Response samples
- 201
- 400
- 401
{- "detail": "string"
}