Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/ErsatzTV/legacy/llms.txt

Use this file to discover all available pages before exploring further.

The Channels API provides two endpoints: one to retrieve every configured channel and one to rebuild a channel’s playout schedule from scratch. These endpoints are useful for monitoring your channel lineup and programmatically forcing a playout reset after making scheduling changes.

GET /api/channels

Returns a list of all channels configured in ErsatzTV. Each entry includes the channel’s identity, its assigned FFmpeg profile, and the streaming mode used for delivery.
curl http://localhost:8409/api/channels

Response Fields

id
integer
required
Internal database identifier for the channel.
number
string
required
The channel number string (e.g. "1", "2.1"). Decimal sub-channels are supported.
name
string
required
Human-readable display name of the channel.
fFmpegProfile
string
required
The name of the FFmpeg transcoding profile assigned to this channel.
language
string
required
The ISO 639-2 language code for the channel’s audio (e.g. "eng"). May be an empty string if not set.
streamingMode
string
required
The streaming delivery mode. Common values are HlsSegmenter, HlsDirect, and TransportStream.

POST /api/channels//playout/reset

Triggers a full rebuild of the playout schedule for the specified channel using PlayoutBuildMode.Reset. This discards the current scheduled playout and recomputes it from the beginning of the schedule. Use this endpoint after making significant changes to a channel’s schedule blocks or when a playout appears stale.
channelNumber
string
required
The channel number string that identifies the channel (e.g. "1" or "2.1"). This corresponds to the number field returned by GET /api/channels.

Responses

StatusDescription
200 OKThe playout reset was successfully queued.
404 Not FoundNo channel with the given channelNumber was found.
curl -X POST http://localhost:8409/api/channels/1/playout/reset
The playout reset is queued asynchronously via the background worker channel. The 200 OK response indicates the reset task was accepted, not that it has completed. Depending on schedule complexity, the rebuild may take a few seconds.

Build docs developers (and LLMs) love