Versions Compared
Version | Old Version 19 | New Version 20 |
---|---|---|
Changes made by | Former user | |
Saved on |
Key
- This line was added.
- This line was removed.
- Formatting was changed.
Introduction
The Channel v4 APIs allows clients to get information about TV channels that are available in the service. The API reports metadata about the channels as well as configuration details. The API is public requiring no authentication. If configured, the API supports multi-tenancy through Operator Channels.
Entities
Entity | Purpose |
---|---|
Channel | This is a representation of a Channel. It contains metadata information such as name and logo, information about enabled services for the channel and configuration options. |
Endpoints overview
Endpoint | HTTP method | Purpose |
---|---|---|
/api/metadata/v1/channels | GET | Get a paginated list of all available channels. |
/api/metadata/v1/channels/{channel_id} | GET | Get information of a specific channel by channel ID |
Services
The Channel entity contains a list of enabled services. The entries in that list defines what services are available for the given channel, as well as service-specific attributes specifying how the service can be used. Note that certain service-specific attributes are not enforced by the backend in any way, they are only made available in the API to let the client know about certain restrictions that are expected to be imposed by the client. How these restrictions are implemented is entirely up to the client.
Available Services for channels
Live
This service enables a user to watch the channel as a live stream.
Service attribute | Type | Description |
---|---|---|
startover | boolean | The channel live stream can be watched starting from the scheduled start time of the currently airing program. |
pause | boolean | The channel live stream can be paused and resumed later where it left off. |
trickplay | boolean | The channel live stream can be skipped back and forth within the boundaries of the currently available live stream buffer. |
nPVR
This service enables a user to create recordings of programs aired on the channel, allowing them to be streamed on-demand after the program has aired.
Service attribute | Type | Description |
---|---|---|
watch_ongoing | boolean | Recordings from this channel can be watched while the program is still being aired. |
trickplay | boolean | Streams of recordings from this channel can be skipped back and forth. |
boundary_offset | integer | Programs on this channel are recordable if they have started later than current time minus this offset (value is given in seconds). Ongoing programs are recordable regardless of this value. |
Catchup
This service enables the user to watch programs that have aired on the channel on-demand for a limited time after they have aired, without having created a recording for the channel.
Service attribute | Type | Description |
---|---|---|
trickplay | boolean | Streams of catchup items from this channel can be skipped back and forth. |
boundary_offset | integer | Programs on this channel can be watched as catchup if they ended later than current time minus this offset (value is given in seconds). |
Use cases
Get list of visible channels
Client can make a call to GetIndexChannels to list all visible channels and their necessary information.
The request accepts a language parameter to get the channel name and description in the given language if the channel has values defined in that language.
The response is paginated with 500 items per page. In order to get the full list of channels, multiple requests must be made using the pagination query parameter.
Warning | ||
---|---|---|
| ||
If the pagination query parameter is not provided, the first page will be returned by default. Clients must pay attention to the response size, as it may be necessary to make multiple requests to get the full list of channels. |
Info |
---|
Channels may be hidden in the list response if they have been configured as such. To show hidden channels, use the show_hidden parameter. Hidden channels allow operators to hide channels from the main channels list while they are being set up or are under maintenance. Please note that hidden channels are not disabled or turned off, the only special property that a hidden channel has is that it's excluded from the list channels endpoint by default. Live streams, Catchup, and Recordings may still be available for hidden channels. Using the show_hidden parameter also disables server-side caching for debugging purposes |
Get information of channel by id
Client can make a call to GetChannelById to get information for a specific channel by its ID.
The endpoint accepts parameter language to return channel name and description by language.
Streaming a channel
Use PlayableStream related to Channel (live) endpoint to get the live stream for the channel.
Migration guide
The legacy endpoint /api/user/<email>/channel is replaced by GetIndexChannels to list all channels
The legacy endpoint /api/user/<email>/channel/<channel_id> is replaced by GetChannelById to list the specific channel.
Postman collection
View file | ||||
---|---|---|---|---|
|
Table of Contents
Table of Contents |
---|
Child Pages
Child pages (Children Display) |
---|
...