Skip to main content
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.

Response Fields

integer
required
Internal database identifier for the channel.
string
required
The channel number string (e.g. "1", "2.1"). Decimal sub-channels are supported.
string
required
Human-readable display name of the channel.
string
required
The name of the FFmpeg transcoding profile assigned to this channel.
string
required
The ISO 639-2 language code for the channel’s audio (e.g. "eng"). May be an empty string if not set.
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.
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

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.