Reference
Ingest lifecycle
A source moves through these states. Read the current one from GET /matches/{externalId}/ingest.
States
- SCHEDULED
- Source registered. Waiting for
ingestStartTime. - STARTING
- Claimed for provisioning. The channel is being created.
- STARTED
- Channel is running against your source.
- ENDED
- Recording closed. Clip generation running.
- FAILED
- Provisioning failed repeatedly. See
lastError. - CANCELLED
- Stopped before any video arrived.
Starting
We start dialling at ingestStartTime, and in practice within a minute of it. Attach the source whenever you like beforehand, because months ahead or seconds ahead makes no difference to when we connect.
An ingestStartTime already in the past starts at once rather than being skipped, so attaching late still works. A source that came due while we were mid-restart is picked up on the next pass rather than being lost, so a brief outage on our side does not cost you a match.
A provisioning failure releases the claim and the next poll retries it. After repeated failures the session moves to FAILED with the reason in lastError, rather than retrying forever.
How a source stops
| Trigger | Result |
|---|---|
You call /ingest/stop | Clean stop. Channel deleted, clip generation starts. This is the only path. |
| Your encoder closes the stream | Video stops arriving. The channel stays up and the session stays STARTED until you call stop. |