Docs / Quickstart
Quickstart
Control plane base URL
Point your backend at the Invoker API (not the browser). Example:
https://api.example.com
1. Tenant API key
Use the operator console (Arca login for your team only) or the admin API to create a key. End users of your product never need Arca. You will receive:
public_key(e.g.lk_live_…)secret(shown once)
Call the API with:
Authorization: Bearer <public_key>:<secret>
2. Create a room
POST /v1/rooms with an empty JSON body {}.
Response includes room_id and room_name (LiveKit room string).
3. Mint a join token
POST /v1/rooms/{room_id}/tokens with JSON:
{
"identity": "user-123",
"name": "Display Name",
"can_publish": true,
"can_subscribe": true,
"ttl_seconds": 600
}
Response includes livekit_url, token, and expires_at.
4. ICE servers
GET /v1/ice — returns ice_servers for RTCPeerConnection.
5. Browser
Use the official LiveKit client SDK. Pass livekit_url, join token, and configure rtcConfig.iceServers from step 4. Never expose the tenant API secret to the browser.