A per-user limit on the number of sources may apply. Create sources sparingly and reuse them across broadcasts rather than creating a new source per broadcast. Sources belong to the creating user.
Source id and stream key
Every source has two different values. Don’t mix them up:
The stream key is returned only by Create a Source and by Get Source Stream Key. Every other response leaves it out.
rtmp_url and rtmps_url are server URLs and don’t contain the stream key. In your encoder, set the server to rtmps_url and enter the stream key in its stream key field. If your encoder takes a single URL, append the key: rtmps_url + / + stream key.
Source object
Endpoints
All of these require user context authentication: OAuth 2.0 with the
broadcast.read and broadcast.write scopes (recommended), or OAuth 1.0a. Responses wrap the result in data, and errors use the standard X API problem format.
Rate limits
Each/2/sources route allows 450 requests per 15 minutes per user, the same as the deprecated /2/users/:user_id/sources routes.
Errors
Deprecated routes
The original source routes under/2/users/:user_id/sources are deprecated and will be removed on January 1, 2027. On those routes the source’s id is its stream key. They keep working unchanged until then. See the migration guide.