Skip to content
Console

Create a realtime session

POST
/api/v1/realtime/sessions
curl --request POST \
--url https://api.inside.chat/api/v1/realtime/sessions \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Origin: example' \
--data '{ "website_ids": [ "example" ] }'

Required scopes: website_read, event_read
Data access: –
MCP tool: not available over MCP
Note: Write
Note: Origin required

Create an app-only socket session, bounded to 20 per installation. No human cookie, native operator or richer subscription projection. Changed authorization requires a new session.

Origin
required
string
<= 2048 characters

Exact canonical HTTPS origin bound to this session. Local loopback HTTP is allowed only in the local environment. Browser REST CORS is restricted to configured UI origins.

Media typeapplication/json
object
website_ids
required
Array<string>
>= 1 items <= 50 items unique items

Example generated

{
"website_ids": [
"example"
]
}

Origin-bound single-use ticket. Authenticate the socket first frame within 5s. Idle reconnect window 2min, authority recheck 15s.

Media typeapplication/json
object
session_id
required
string
/^app_[a-f0-9]{64}_[a-f0-9]{32}$/
ticket
required

Single-use first-frame secret. Never put it in the URL or logs.

string
/^[A-Za-z0-9_-]{43}$/
expires_at
required

Unix seconds; at most 30s and never after the original credential deadline.

integer
>= 1

Example generated

{
"session_id": "example",
"ticket": "example",
"expires_at": 1
}

Closed request body or parameters are invalid.

Original REST credential or current authority is invalid.

Origin rejected.

Session is absent or not owned by the same exact credential/grant and origin.

Installation session or pending socket capacity reached.

App/ingress quota exceeded; observe Retry-After.

Required service/authority/storage is unavailable.