Skip to content

Create a single-use ticket for the console realtime stream

POST
/v1/admin/orgs/{org_id}/projects/{project_id}/realtime/ticket

Create a short-lived, single-use ticket bound to the Clerk session’s customer scope, for opening the live Approvals SSE stream (GET /v1/admin/reviews/stream?ticket=…). A browser EventSource cannot set an Authorization header, so this ticket carries the customer scope instead. The ticket is consumed on first stream connect and self-expires (~60s).

org_id
required
string
project_id
required
string

A freshly created realtime ticket.

A short-lived, single-use ticket the console creates (under its Clerk session) to open the live Approvals SSE stream; EventSource cannot set an Authorization header, so the customer scope is carried by this opaque ticket in the stream’s ticket query parameter. Bound to the session’s customer at create time, consumed on first stream connect, and self-expiring (~60s).

object
ticket
required

Opaque single-use ticket (rtk_…).

string
expires_at
required
string format: date-time

Missing or invalid credential.

The canonical error envelope. error is a stable machine code.

object
error
required

Stable error code (e.g. unauthorized, forbidden, not_found, invalid, quota_exceeded, rate_limited).

string
Example
forbidden
message

Human-readable detail (never leaks internals).

string
Example
missing required scope

Authenticated but lacking the required scope, or out of quota.

The canonical error envelope. error is a stable machine code.

object
error
required

Stable error code (e.g. unauthorized, forbidden, not_found, invalid, quota_exceeded, rate_limited).

string
Example
forbidden
message

Human-readable detail (never leaks internals).

string
Example
missing required scope