Versions Compared
Version | Old Version 1 | New Version 2 |
---|---|---|
Changes made by | ||
Saved on |
Key
- This line was added.
- This line was removed.
- Formatting was changed.
Introduction
This section describes BSS communication with AminoTV Streams v4 API. Products and user licenses are manageable through License Management API.
The license management API consist of two parts: licenses management and products management.Introduction
Streams v4 API allow clients (including proxy) to fetch stream URLs.
No caching is used with those endpoints.In order to use a service, the client must first be issued an API keythe endpoints.
Endpoints overview
Id | Endpoint | HTTP method | Purpose |
---|---|---|---|
/wiki/spaces/MAPI/pages/49677492 | /api/streams/v4/live | GET | Get stream URLs for channel. |
/wiki/spaces/MAPI/pages/49677492 | /api/streams/v4/recording | GET | Get stream URLs for recording. |
Entities overview
The resources descriptions could be found on API documentation page Streams v4 under schemas section.
StreamResource
Typical stream resource may look like the one below.
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{ "id": "livestreamType-100001-hls", "type": "Stream", "attributes": { "type": "hls", "url": "https://org-01.amino.tv/drm/ezdrm.isml/playlist.m3u8", "drm": { "provider": "EZDRM", "fairplay": { "content_id": "2484bd14-0000-0000-0000-5c89a289d7c5", "la_url": "https://fps.ezdrm.com/api/licenses/2484bd14-0000-0000-0000-5c89a289d7c5", "cert": "https://org-01.amino.tv/fairplay.cer" }, "widevine": { "content_id": "WTJoaGJtNWxiweE53PT0=", "la_url": "https://widevine-dash.ezdrm.com/proxy?pX=000000" }, "playready": { "content_id": "WTJoaGJtNWxiweE53PT0=", "la_url": "https://playready.ezdrm.com/cency/preauth.aspx?pX=000000" } } } } |
DRM providers support
Irdeto integration
If Irdeto DRM and rights management integration is enabled for customer environment then all the calls which create/delete licenses will force Irdeto entitlements creation/deletion.
The management of Irdeto products is not supported within this API, which means that client is obligated to take care of creating/deleting needed products by themselves.DRM
"drm" attribute is optional, and schema may be varied in different DRM protections.
Authorization
All endpoints support API key authorization. The header named 'Authorization' with content "Apikey PUT_YOUR_KEY_HERE" must be passed with request.
API key is customer specific data and you should contact support person to obtain those.
Use Cases
Get streams by channel id
Code Block | ||
---|---|---|
| ||
curl -X 'GET' \
'https://{apidomain}/api/streams/v4/live?filter%5Btv_channel_id%5D=100' \
-H 'accept: application/vnd.api+json' \
-H 'Authorization: 1a2b' |
Get streams by external epg id
Code Block | ||
---|---|---|
| ||
curl -X 'GET' \
'https://{apidomain}/api/streams/v4/recording?filter%5Bexternal_epg_id%5D=12345' \
-H 'accept: application/vnd.api+json' \
-H 'Authorization: 1a2b' |
Postman collection
<todo: postman_collection.tar.gz>
Postman collection was created which can be used to explore API, use cases and has possibility to configure it to use with client environment or with mocked environment:
In the archive there is a collection itself and example mock environment. Both need to be imported into postman.
The collection consists of 3 folders:
API spec - just a plain listing of all available calls, those are not mocked.
UseCase - the folder contains typical API use cases, all of those are mocked and contain complete examples with requests and responses.
Table of Contents |
---|