> ## Documentation Index
> Fetch the complete documentation index at: https://docs.x.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Stream Source Management

> Stream sources are persistent RTMP/RTMPS ingest endpoints (URL + unique stream key). Create them once per region/encoder setup and reuse them across broadcasts.

A **stream source** is a persistent RTMP/RTMPS ingest endpoint (URL + unique stream key). Create sources once per region/encoder setup and reuse them across many broadcasts.

<Note>
  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.
</Note>

## Endpoints

| Endpoint                                                                 | Method & Path                                 |
| :----------------------------------------------------------------------- | :-------------------------------------------- |
| [Get Recommended Region](/livestream-api/sources/get-recommended-region) | `GET /2/region`                               |
| [Create Stream Source](/livestream-api/sources/create-source)            | `POST /2/users/:user_id/sources`              |
| [List Stream Sources](/livestream-api/sources/list-sources)              | `GET /2/users/:user_id/sources`               |
| [Get Stream Source](/livestream-api/sources/get-source)                  | `GET /2/users/:user_id/sources/:source_id`    |
| [Update Stream Source](/livestream-api/sources/update-source)            | `PUT /2/users/:user_id/sources/:source_id`    |
| [Delete Stream Source](/livestream-api/sources/delete-source)            | `DELETE /2/users/:user_id/sources/:source_id` |

All of these require [user context authentication](/livestream-api/authentication). OAuth 2.0 (with `broadcast.read` and `broadcast.write` scopes) is recommended; OAuth 1.0a is also supported.
