Skip to content
Service

Cloud Recording

Record any room to MP4, server-side. Recording is controlled from your backend with your API key — no client involvement.

Recording is a room-composite capture (all participants) written to MP4. Start and stop it from your server:

terminal
1# Start recording a room (server-side, with your API key)2curl -X POST https://cloud.unitythink.com/v1/recordings/start \3  -H 'x-api-key: sk_live_xxxxxxxx' -H 'Content-Type: application/json' \4  -d '{"room":"demo-room"}'5# → { "egressId": "EG_xxx", "status": "EGRESS_STARTING" }67# Stop it8curl -X POST https://cloud.unitythink.com/v1/recordings/stop \9  -H 'x-api-key: sk_live_xxxxxxxx' -H 'Content-Type: application/json' \10  -d '{"egressId":"EG_xxx"}'1112# List recordings13curl https://cloud.unitythink.com/v1/recordings -H 'x-api-key: sk_live_xxxxxxxx'

Endpoints

POST/v1/recordings/startx-api-key

Body { room }{ egressId, status }.

POST/v1/recordings/stopx-api-key

Body { egressId }{ egressId, status }.

GET/v1/recordingsx-api-key

{ recordings: [{ egressId, room, status }] }.

Output & billing

FormatMP4 (room composite)
Output path/out/<projectId>/<room>-<time>.mp4
BillingMetered by recorded minutes (single/mixed-stream ratios apply)
Note:Upstream media failures return 502 { error: 'egress_failed', detail }. Buy recording minutes in the console.