Skip to main content
The Streaming API takes a live feed, processes it with Camb.ai’s AI pipeline in real time, and publishes the results to the destinations you choose: dub a football match’s commentary into Spanish as it happens, push the dubbed feed to YouTube, and keep an HLS recording, all from one API call.
Supported source protocols: SRT is supported today. RTMP and HLS ingest are coming soon.

The streaming lifecycle

1

Probe (optional)

POST /stream/probe/ - inspect the source and discover its video, audio, and data tracks.
2

Create

POST /stream - configure source, pipelines, and targets. You get back a stream_id and output URLs.
3

Monitor

GET /stream/{stream_id} - poll the stream status and read the state and playback URLs of each output.
4

Adjust

PATCH /stream/{stream_id} - reschedule, reconfigure, or apply live adjustments such as turning dubbing on and off.
5

End

DELETE /stream/{stream_id} - stop the stream, or let it end automatically at its end_time.

Core concepts

A stream’s configuration is a small graph of blocks that reference each other by id: Language and voice choices are numeric IDs from the platform’s catalog endpoints: /source-languages, /target-languages, and /list-voices.

Stream flows

Flows are standing SRT endpoints hosted by Camb.ai, independent of any single stream. Use a flow when you want a stable ingest point for your encoder (listener mode) or want Camb.ai to pull from your infrastructure and re-serve it (caller mode), then plug the flow’s URL into any stream as its source or target.

Authentication

Every request needs your API key in the x-api-key header. You can find your API key(s) in the API section of the Camb.ai studio.

Endpoints

Last modified on July 24, 2026