Skip to content

Create shared live video stream

Share an unprotected live video stream for a camera

POST/api/camera/createSharedLiveVideoStream

Authorizations

x-auth-apikeystringheaderrequired

Your Rhombus API key. Must be accompanied by the x-auth-scheme header set to api-token (or partner-api-token for partner endpoints).

Authorizationstringheader

Instead of an API key, an OAuth access token: Bearer <token>, with the write scope.

OAuth explains tokens and scopes.

Headers

x-auth-schemeenum<string>headerdefault: api-token

Authentication scheme identifier. Use api-token or partner-api-token with the x-auth-apikey header, api or partner-api with x-auth-apikey plus a client certificate, api-oauth-token or partner-api-oauth-token with x-auth-access-token, and federated-token with x-auth-ft. A request with Authorization: Bearer <token> and no x-auth-scheme is treated as OAuth, and federated-token may also be sent as the x-auth-scheme and x-auth-ft query parameters.

Available options: api-token, api, api-oauth-token, federated-token, partner-api-token, partner-api, partner-api-oauth-token

x-auth-orgstring<RUUID>header

Client organization UUID (22-character RUUID), for partner credentials only. With it the call runs in that client organization with the partner support authority's role. Without it a partner credential runs as the partner organization, which outside the partner endpoints is deprecated (responses carry Deprecation and Sunset: Tue, 05 Jan 2027 00:00:00 GMT). A malformed value returns 400 INVALID_AUTH_ORG; a client organization the partner cannot access returns 403 PARTNER_CLIENT_ACCESS_DENIED.

Length: 22 to 22

Body

application/json · object

Request to create a shared live video stream for a camera.

audioGatewayUuidstring<DeviceFacetUuid> | nullbody

RUUID with optional appended facet information

Example: "AAAAAAAAAAAAAAAAAAAAAA.v0"

cameraUuidstring<DeviceFacetUuid> | nullbody

RUUID with optional appended facet information

Example: "AAAAAAAAAAAAAAAAAAAAAA.v0"

expirationTimeSecsinteger<int32> | nullbody

Add an expiration date for accessing the stream in seconds

Example: 86400

includeAudioboolean | nullbody

Camera must be associated with an audio gateway to have audio

Example: false

invertScheduleboolean | nullbody

If given a schedule UUID, will hide the stream during the schedule instead and show it otherwise

Example: false

namestring | nullbody

If not provided, will be named 'Unnamed'

Example: "Front Door Live Stream"

passwordstring | nullbody

Add a password to allow access to your shared stream

Example: "mypassword123"

scheduleUuidstring<RUUID> | nullbody

base 64 (url-safe) uuid string

Example: "AAAAAAAAAAAAAAAAAAAAAA"

ssoProtectedboolean | nullbody

Org must have SSO setup to use SSO protected streams

Example: false

streamTypeenum<string>body

Available options: USER, ALARM_MONITORING, DICE, LUMEO, INFORMACAST, RAPIDSOS, UNKNOWN

vodEnabledboolean | nullbody

Enables recording of live footage to a VOD

Example: true

Response

200 OK

application/json · object

Response containing the created shared live video stream information.

errorboolean | null
errorCodestring | null

Stable, machine-readable code for the failure (one of the ApiErrorCode catalog) when error is true. Branch on this, not on errorMsg.

errorMsgstring | null
sharedLiveM3U8StreamUrlstring | null

M3U8 URL for the shared live video stream

Example: "https://example.com/live/m3u8/stream"

sharedLiveVideoStreamUrlstring | null

URL for the shared live video stream

Example: "https://example.com/live/video/stream"

sharedLiveVideoStreamUuidstring<RUUID> | null

base 64 (url-safe) uuid string

Example: "AAAAAAAAAAAAAAAAAAAAAA"

warningMsgstring | null

Errors

Like every operation, this one can also answer with the standard error body (errorCode, errorMsg). Errors explains each status and how to retry.

  • 400 Bad Request. errorCode is one of: BAD_REQUEST, VALIDATION_FAILED, MISSING_REQUIRED_FIELD, INVALID_JSON, INVALID_REQUEST_BODY, FEATURE_NOT_ENABLED, INVALID_AUTH_ORG, LOCATION_NOT_FOUND.
  • 401 Unauthorized. errorCode is one of: UNAUTHENTICATED, INVALID_CREDENTIAL, CREDENTIAL_EXPIRED, CREDENTIAL_REVOKED, CERTIFICATE_MISMATCH.
  • 403 Forbidden. errorCode is one of: FORBIDDEN, DOMAIN_NOT_ALLOWED, DEVICE_SCOPE_MISMATCH, ROLE_NOT_PERMITTED, FUNCTIONALITY_REQUIRED, PARTNER_FUNCTIONALITY_REQUIRED, PERMISSION_REQUIRED, PARTNER_CLIENT_ACCESS_DENIED, HARDWARE_NOT_AVAILABLE, HARDWARE_ALREADY_REGISTERED, PARTNER_PORTAL_NOT_ENABLED, MANAGED_BY_MSP, SUPER_ADMIN_RESTRICTED_BY_MSP, MSP_DESIGNATION_INVALID, NOT_MANAGED_CLIENT.
  • 429 Too Many Requests. errorCode is one of: RATE_LIMITED.
  • 500 Internal Server Error. errorCode is one of: INTERNAL_ERROR.
  • 503 Service Unavailable. errorCode is one of: SERVICE_UNAVAILABLE.