Release notes 2024-2025
2025r11
Fix for machine in YAML
In a previous version, the YAML of the content API was updated with attributes related to machine calculation. However, this was also done for the linear schedule API, where it was not supposed to be implemented. This issue has been fixed in this version. The machine attribute and drop-down list call have been removed from the YAML.
The YAML has been updated for these changes. The latest version can be retrieved by using the GET /api call.
2024r9
Transmission type added to linear schedule API YAML
This information is mostly relevant for API developers.
In a previous version, the transmissionType and isProductPremiere attributes were added to the GET /transmission/{transmissionId} and GET /transmissions calls of the linear schedule API. The isProductPremiere attribute was added to the YAML but the transmissionType was not.
In this version, the transmissionType was added to the properties of the TransmissionGet schema of the YAML at line 740. The latest version can be retrieved by using the GET /api call.
2024r8
Transmission type and product premiere in GET transmission calls of linear schedule API
Previously, it was already possible to retrieve the transmission prototype of a transmission using the template attribute in the GET /transmission/{transmissionId} and GET /transmissions calls of the linear schedule API. However, the transmission type on which the transmission prototype is based, was not available. Similarly, it was not yet possible to see if a transmission was a premiere or not.
From this version, the transmissionType and isProductPremiere attributes have been added to the response of these calls. The transmissionType maps to the API reference of the corresponding value of the TxType drop-down list. The isProductPremiere is either true or false and maps to the Is product premiere property on a transmission. It is calculated by the product premiere calculation service and is based on the general options of the user that is logged into the BAPI service and executes the calls.
An example of the GET /transmission/{transmissionId} call:
{
"title": "DOCTOR STRANGE",
"transmissionId": "3862901812",
"channel": "MGX",
"scheduleVersion": "Active",
"template": "Tx",
"startDate": "2020-10-04",
...
"isProductPremiere": false,
"transmissionType": "Program"
}
API developers
The YAML has been updated for these changes. The latest version can be retrieved by using the GET /api call.
The following has changed to the YAML:
On line 737, the isProductPremiere has been added to the TransmissionGet schema.
On line 806, the isProductPremiere has been added to the TransmissionInSearchResult schema.
For easier viewing, the YAMLs can also be compared here: TextCompare
2024r7
Search GET /timeAllocations and GET /transmissionEvents calls of linear schedule API aligned
The linear schedule API contains GET calls to search for time allocations and transmission events.
Previously, they were implemented slightly differently:
-
GET /timeAllocations:-
Had no required filter parameters.
-
The available query parameters were
date,channel,typeandscheduleVersion.-
These were not part of the response body.
-
-
-
GET /transmissionEvents:-
Had
dateandchannelas required filter parameters. -
The available query parameters were
dateandchannel.-
These were part of the response body.
-
-
Additionally, this only returned transmission events of the active schedule.
-
From this version, the properties of these calls have been aligned in the following way:
-
GET /timeAllocations
Date and channel are now mandatory query parameters, while the type and scheduleVersion attributes are still optional query parameters.
For example: timeAllocations?filter=eq(channel,MGX);eq(date,2024-11-01)
If they are not specified, the following error is returned:
{
"statusCode": "422",
"message": "The following query parameters are mandatory and were not specified in the request URI: 'channel, date'",
"timestamp": "2024-07-22T09:54:01Z"
}
The date, channelId, type and scheduleVersion attributes have also been added to the response body.
For example:
{
"startTime": "08:20:00",
"title": "FFG 2023 - The Holdovers - 1/1",
"duration": "02:13:00",
"filledDuration": "02:13:00",
"sellOutDuration": "02:13:00",
"channelId": "MGX",
"type": "programSegment",
"date": "2024-11-01",
"scheduleVersion": "Active"
},
The default value of the scheduleVersion filter parameter is the active schedule when it is not added to the URL of the call. So by default, only time allocations of the active schedule are now returned.
-
GET /transmissionEvents
The scheduleVersion has been added as an optional filter parameter. Its default value is still the active schedule, so by default, only transmission events of the active schedule are returned.
The YAML has been updated for these changes. The latest version can be retrieved by using the GET /api call.
API developers
The following has changed in the YAML:
Several descriptions were added and updated.
At line 285, scheduleVersion was added to the schema of the GET /timeAllocations call.
At line 363, scheduleVersion was added to the schema of the GET /transmissionEvents call.
At line 882, the attributes were added to the TimeAllocation schema.
Several examples were added.
At line 970, the scheduleVersion was added to the TransmissionEvent schema.
For easier viewing, the YAMLs can also be compared here: TextCompare
2024r6
Franchises in business API
In this version, the franchise was introduced as an additional content type. Since franchises cannot be
-
created or deleted on the Mediagenix Base platform; or
-
linked to contracts or transmissions;
the following APIs have been adapted to follow this behaviour.
When the external reference of a franchise is provided as contentId, an error message is returned.
For example, POST /transmissions call:
{
"statusCode": "422",
"message": "Operation cannot be completed due to violations",
"timestamp": "2024-05-31T18:19:23Z",
"concept": "Transmission",
"id": null,
"errors": [
{
"errorCode": "LINEARSCHEDULE-00013",
"description": "Only programs and episodes can be linked to an linear transmission",
"data": []
}
]
}
2024r4
Retrieve time allocations of transmission and broadcast day in linear schedule API
In version 2022r4, calls were added to retrieve the transmission events of a broadcast day or transmission (RN-4929). From this version, the same has been done for time allocations.
GET /timeAllocations
This call retrieves all time allocations of all transmissions on a certain broadcast day. The following search parameters can be used in the request URL but are not mandatory:
-
date: in format YYYY-MM-DD -
channel: the API reference of the Channel drop-down value.Only linear channels are accepted. For other channels, nothing will be returned.
-
scheduleVersion: the API reference of the PSIScheduleVersion drop-down value -
type: the API reference of the BMTimeAllocationType drop-down value
Note that if none are included, all time allocations of linear transmissions are returned. The parameters must be configured with the necessary operators.
An example of the URL: /timeAllocations?filter=eq(date,2024-01-28);eq(channel,MGX);eq(scheduleVersion,Active);eq(type,programSegment)
In the response, an array is returned of all time allocations matching the search with the following attributes:
[
{
"startTime": "06:30:00",
"title": "ALITA: BATTLE ANGEL - 1/2",
"duration": "01:00:00",
"filledDuration": "01:00:00",
"sellOutDuration": "01:00:00"
},
{
"startTime": "07:30:00",
"title": "ALITA: BATTLE ANGEL - 2/2",
"duration": "01:03:00",
"filledDuration": "01:03:00",
"sellOutDuration": "01:03:00"
},
]
GET /transmissions/{transmissionId}/timeAllocations
This call retrieves all time allocations of a specific transmission. This means the transmissionId is a required parameter in the request URL. Only the ID of linear transmissions will be accepted. If the external reference of an on-demand, publication or encoding transmission is provided, an error message is returned.
In the response, an array is returned of all time allocations in the transmission. For example:
[
{
"startTime": "12:22:00",
"title": "The Dead Don't Die - - Commercial",
"duration": "00:03:00",
"filledDuration": "00:03:00",
"sellOutDuration": "00:03:00"
},
{
"startTime": "12:25:00",
"title": "The Dead Don't Die - 1/2",
"duration": "00:50:00",
"filledDuration": "00:50:00",
"sellOutDuration": "00:50:00"
},
...
]
The YAML has been updated for these changes. The latest version can be retrieved by using the GET /api call.
API developers
The following was changed in the YAML.
At line 276, the /timeAllocations and /transmissions/{transmissionId}/timeAllocations paths were added.
At line 860, the TimeAllocation schema was added.
At line 959, the ArrayOfTimeAllocations schema was added.
At line 1089, the TimeAllocationSuccess schema was added.
For easier viewing, the YAMLs can also be compared here: TextCompare