APIs for managing user tracking sessions. These endpoints allow clients to create, retrieve, and delete tracking sessions which are used for analytics and user behavior tracking.
Media Jay Playout API (2025-09-02)
The playout API of the Media Jay application provides access to the playout data and orchestrates extended queries.
To access the endpoints you require a X-API-Key in the header. Partners, please contact Transfermedia support@transfermedia.de to retrieve one.
To use a specific implementation version of this API place it to the request header X-API-Version. If the header is missed the latest implementation version 2025-09-02 is used. The response header X-API-Version returns the implementation version the request was processed with.
For further details please visit the documentation or contact Transfermedia support@transfermedia.de.
https://live.playout.api.jay-metadata.com/v1/
Request
Collects all episodes from the specified tenant's content library with optional filtering.
This endpoint retrieves episodes from the content repository based on the provided tenant ID and applies any specified filters. It performs a search against the playout exporter configurations to find matching episodes and verifies their availability in the storage.
The filtering system supports both exact matching and case-insensitive partial matching when the filter value is prefixed with a tilde (~).
Filter the episodes for a specific content provider (e.g., "netflix", "hbo"). Use exact match by default. Prepend a tilde ~ for a case insensitive text search (e.g., "~net" will match "Netflix").
Filter the episodes for a movie or series name (exact match, prepend a tilde ~ for a case insensitive text match).
Filter the episodes for a episode name (exact match, prepend a tilde ~ for a case insensitive text match).
Filter the episodes for a target device name (exact match, prepend a tilde ~ for a case insensitive text match).
Filter the episodes for the asset identifier (exact match, prepend a tilde ~ for a case insensitive text match).
Since X-API-Version 2025-09-02.
Required. API access key for authorized use of the checkout endpoints. Partners, please contact Transfermedia to retrieve a valid key.
Tracking session header for user tracking and analytics. This is set by the /playouts/{playout_id}/tracking/session endpoint.
- Production serverhttps://live.playout.api.jay-metadata.com/v1/playouts/{playoutId}/episodes 
- cURL
- JS
- Node.js
- Python
- Java
curl -i -X GET \
  'https://live.playout.api.jay-metadata.com/v1/playouts/{playoutId}/episodes?provider=string&movieOrSeries=string&episode=string&targetDevice=string&assetId=string&next_token=string' \
  -H 'X-API-Key: string' \
  -H 'X-JAY-TRACKING: eyJzZXNzaW9uX2lkIjoiZXhhbXBsZS1zZXNzaW9uLWlkLTEyMzQiLCJzdGFydF90aW1lIjoiMjAyNS0wMS0wMVQxMjowMDowMC4wMDAwMDAiLCJzb3VyY2UiOiJqYXkuYXBpLnBsYXlvdXQuZXhhbXBsZSJ9'Successfully retrieved list of episodes with complete metadata
The response data.
{ "data": [ { … } ] }
Request
Get comprehensive details about a specific episode including title, description, duration, and associated group information.
This endpoint provides the foundation data needed to present an episode to viewers and provides access to its interactive components.
Args:
request: the complete request. playout_id: The playout identifier (aka tenant identifier).
episode_id: The episode identifier
inline_level: The number of levels to expand inner object inline.
Returns:
ResultResponse[PlayoutEpisode]: The Result response which contains the episode details.
Raises:
HTTPException: If the episode is not found (404) or descriptions are not available.
The playout identifier (aka tenant identifier) addressing the correct content of the streaming platform.
Required. API access key for authorized use of the checkout endpoints. Partners, please contact Transfermedia to retrieve a valid key.
Tracking session header for user tracking and analytics. This is set by the /playouts/{playout_id}/tracking/session endpoint.
- Production serverhttps://live.playout.api.jay-metadata.com/v1/playouts/{playoutId}/episodes/{episodeId} 
- cURL
- JS
- Node.js
- Python
- Java
curl -i -X GET \
  'https://live.playout.api.jay-metadata.com/v1/playouts/{playoutId}/episodes/{episodeId}?inlineLevel=1' \
  -H 'X-API-Key: string' \
  -H 'X-JAY-TRACKING: eyJzZXNzaW9uX2lkIjoiZXhhbXBsZS1zZXNzaW9uLWlkLTEyMzQiLCJzdGFydF90aW1lIjoiMjAyNS0wMS0wMVQxMjowMDowMC4wMDAwMDAiLCJzb3VyY2UiOiJqYXkuYXBpLnBsYXlvdXQuZXhhbXBsZSJ9'Successfully retrieved episode details
The response data.
{ "data": { "title": "string", "subtitle": "string", "description": "string", "custom1": "string", "custom2": "string", "custom3": "string", "images": [ … ], "links": [ … ], "language": "string", "country": "string", "characterCount": 0, "actorCount": 0, "locationCount": 0, "costumeCount": 0, "propCount": 0, "ticketCount": 0, "themeCount": 0, "basicCount": 0, "musicCount": 0, "productCount": 0, "groupCount": 0, "mainGroupId": "string", "mainGroup": { … }, "groupIds": [ … ], "groups": [ … ] } }