v53

OpenAPI 3.1.0MITraw.githubusercontent.com2026-08-039357238.7 KB
Legs

Start recording a leg to a WAV file

For SIP legs, recording is stereo (left=incoming, right=outgoing). For legs in a room, stereo at 16kHz (left=participant audio, right=mixed-minus-self).

post/legs/{id}/record

Request body

storage'file' | 's3' | 'gcs' required

"file" (default) — local disk, "s3" — upload to S3 after recording stops, "gcs" — upload to Google Cloud Storage via the native GCS API (Application Default Credentials / Workload Identity)

multi_channelboolean required

When true, record each participant to a separate mono WAV file in addition to the full mix. Only applies to room recordings.

s3_bucketstring required

S3 bucket name. Overrides S3_BUCKET env var. Required if env var is not set.

s3_regionstring required

AWS region. Overrides S3_REGION env var. Default us-east-1.

s3_endpointstring required

Custom S3 endpoint (MinIO, etc.). Overrides S3_ENDPOINT env var.

s3_prefixstring required

Key prefix (e.g. recordings/). Overrides S3_PREFIX env var.

s3_access_keystring required

AWS access key ID. Overrides default credential chain.

s3_secret_keystring required

AWS secret access key. Must be set together with s3_access_key.

gcs_bucketstring required

GCS bucket name. Overrides GCS_BUCKET env var. Required if env var is not set when storage=gcs.

gcs_object_name_prefixstring required

Object name prefix (e.g. recordings or recordings/). Overrides GCS_OBJECT_NAME_PREFIX env var. A trailing slash is added automatically when missing.

filenamestring required

Optional output basename for the WAV file. A .wav suffix is added when missing. Must be a single path segment (no directories). Dots inside the name are preserved (only a trailing .wav is treated as the extension). Rejected with 409 if the file already exists or another recording is using the same name. When omitted, a timestamped name is generated.

Response

Recording started

instance_idstring

Instance identifier

statusstring required