Developers
How can we help you?
Scheduling
Note:
link
elements in this resource can be expanded using the expand option, except the metadata link.
A ‘Scheduling’ is a shortcut for ‘Scheduled Title’. In the VoD world, it corresponds to the period when a Title is scheduled in a particular Platform.
A VOD schedule is composed of many schedulings; it is composed of all the list of all the titles that have been scheduled in it (from a put up date to a take down date). In Mediagenix On-Demand, a scheduling looks like this:
In this case, “Episode 10, One to Go” of series (or title group) “CSI: Crime Scene Investigation. 9” is scheduled in “Platform Mediagenix On-Demand Movies from Apr 1, 2010 to June 1, 2010”.
This is how this Scheduling would look in the API:
<?xml version="1.0" encoding="UTF-8"?>
<scheduling>
<id type="integer">23816</id>
<put-up type="datetime">2010-04-01T00:00:00Z</put-up>
<take-down type="datetime">2010-06-01T21:59:59Z</take-down>
<scheduling-type>archive</scheduling-type>
<rights-status>cleared</rights-status>
<rights-status-calculating type="boolean">false</rights-status-calculating>
<workflow-status>completed</workflow-status>
<publication-status>valid</publication-status>
<tags>Action,Drama</tags>
<external-id>C5080530001</external-id>
<automatic-asset-selection type="boolean">false</automatic-asset-selection>
<link rel="self" href="https://movida.bebanjo.net/api/schedulings/23816"/>
<link rel="title_group" href="https://movida.bebanjo.net/api/title_groups/190"/>
<link rel="title" href="https://movida.bebanjo.net/api/titles/613"/>
<link rel="asset" href="https://movida.bebanjo.net/api/assets/1231"/>
<link rel="conflicts" href="https://movida.bebanjo.net/api/schedulings/23816/conflicts"/>
<link rel="publications" href="https://movida.bebanjo.net/api/schedulings/23816/publications"/>
<link rel="platform" href="https://movida.bebanjo.net/api/platforms/1"/>
<link rel="playlist" href="https://movida.bebanjo.net/api/playlists/99"/>
<link rel="workflow" href="https://movida.bebanjo.net/api/schedulings/23816/workflow"/>
<link rel="metadata" href="https://movida.bebanjo.net/api/schedulings/23816/metadata"/>
</scheduling>
{
"resource_type": "scheduling",
"id": 23816,
"put_up": "2010-04-01T00:00:00Z",
"take_down": "2010-06-01T21:59:59Z",
"scheduling_type": "archive",
"rights_status": "cleared",
"rights_status_calculating": false,
"workflow_status": "completed",
"publication_status": "valid",
"tags": "Action,Drama",
"external_id": "C5080530001",
"automatic_asset_selection": false,
"self_link": "https://movida.bebanjo.net/api/schedulings/23816",
"title_group_link": "https://movida.bebanjo.net/api/title_groups/190",
"title_link": "https://movida.bebanjo.net/api/titles/613",
"asset_link": "https://movida.bebanjo.net/api/assets/1231",
"conflicts_link": "https://movida.bebanjo.net/api/schedulings/23816/conflicts",
"publications_link": "https://movida.bebanjo.net/api/schedulings/23816/publications",
"platform_link": "https://movida.bebanjo.net/api/platforms/1",
"workflow_link": "https://movida.bebanjo.net/api/schedulings/23816/workflow",
"metadata_link": "https://movida.bebanjo.net/api/schedulings/23816/metadata"
}
Accessing schedulings
Schedulings are accessed via the schedule of a platform, title group, title or linear scheduling. Refer to the schedule page to find out how to access the schedule. In additon, they can be accessed from the root of the API.
Valid attributes
By default, when accessing a list of schedulings, you will get the whole list. This list could be a massive one, so the following attributes can be used to filter them down:
Note: All attributes below are optional, but if you use the
scope
attribute, you’ll need to include thefrom
andto
attributes as well.
-
scope
:going_online
,coming_offline
oronline
.-
going_online
: Will return all the schedulings that are going online within the supplied from and to dates -
coming_offline
: Will return all the schedulings that are coming offline within the supplied from and to dates -
online
: Will return all the schedulings that are online within the period of the supplied from and to dates, even if these were put up before that period or are being taken down after that period.
-
-
from
(date / datetime): If a date is passed, bear in mind it will adjust that date to the beginning of the day. Examples would be:-
2010-01-01
-
2010-01-01T00:00:00
-
2010-01-01T00:00:00Z
-
-
to
(date / datetime) If a date is passed, bear in mind it will adjust that date to the ending of the day. Examples would be:-
2010-02-01
-
2010-02-01T23:59:59
-
2010-02-01T23:59:59Z
-
-
external_id
: You can filter the list of schedulings by passing in anexternal_id
. This attribute can be used to store the ID of a related item in an external system. -
pagination
: Note that by default, schedulings are only paginated when accessed from the root of the API. When accessing from a platform, title or title_group, if you want to enable pagination you need to provide the pagination parameter with a value oftrue
. -
after
: This parameter filters schedulings to include only schedulings that are newer than another one. The value of this parameter will be the id of the scheduling taken as a reference.
Note: With enabled pagination, only 50 schedulings will be included in each page by default. The
total-entries
element will indicate the total number of entries. The linkrel="next"
can be used to get the next page, this way you can navigate all the schedulings of your account.
So, to fetch all items that are online on a specific platform in a defined period, you would do:
$ curl --digest -u robot_user:password "https://movida.bebanjo.net/api/platforms/1/schedule/schedulings?scope=online&from=2010-01-01&to=2010-03-01"
If you wanted however, to see the schedule entries of a title going online in a specific period, you would do:
$ curl --digest -u robot_user:password "https://movida.bebanjo.net/api/titles/1/schedule/schedulings?scope=going_online&from=2010-01-01&to=2010-03-01"
Also, if you wanted to find a scheduling with a specific external ID, you would do:
$ curl --digest -u robot_user:password "https://movida.bebanjo.net/api/schedule/schedulings?external_id=C5147630001"
If you wanted, finally, to see the schedule entries related to specific linear scheduling, you would do:
$ curl --digest -u robot_user:password "https://movida.bebanjo.net/api/linear_schedulings/1234/schedulings"
All of those calls will return the collection of schedulings matching the parameters.
Accessing individual schedulings directly
If you look carefully at the previous example, you’ll notice each scheduling has a self link, whose url you can use to access it directly:
$ curl --digest -u robot_user:password "https://movida.bebanjo.net/api/schedulings/23816"
$ curl --digest -u robot_user:password -H "Accept: application/json" "https://movida.bebanjo.net/api/schedulings/23816"
<scheduling>
<id type="integer">23816</id>
<put-up type="datetime">2010-04-01T00:00:00Z</put-up>
<take-down type="datetime">2010-06-01T21:59:59Z</take-down>
<scheduling-type>archive</scheduling-type>
<rights-status>cleared</rights-status>
<rights-status-calculating type="boolean">false</rights-status-calculating>
<workflow-status>completed</workflow-status>
<publication-status>valid</publication-status>
<tags>Action,Drama</tags>
<external-id>C5080530001</external-id>
<automatic-asset-selection type="boolean">false</automatic-asset-selection>
<link rel="self" href="https://movida.bebanjo.net/api/schedulings/23816"/>
<link rel="title_group" href="https://movida.bebanjo.net/api/title_groups/190"/>
<link rel="title" href="https://movida.bebanjo.net/api/titles/613"/>
<link rel="asset" href="https://movida.bebanjo.net/api/assets/1231"/>
<link rel="conflicts" href="https://movida.bebanjo.net/api/schedulings/23816/conflicts"/>
<link rel="publications" href="https://movida.bebanjo.net/api/schedulings/23816/publications"/>
<link rel="platform" href="https://movida.bebanjo.net/api/platforms/1"/>
<link rel="workflow" href="https://movida.bebanjo.net/api/schedulings/23816/workflow"/>
<link rel="metadata" href="https://movida.bebanjo.net/api/schedulings/23816/metadata"/>
</scheduling>
{
"resource_type": "scheduling",
"id": 23816,
"put_up": "2010-04-01T00:00:00Z",
"take_down": "2010-06-01T21:59:59Z",
"scheduling_type": "archive",
"rights_status": "cleared",
"rights_status_calculating": false,
"workflow_status": "completed",
"publication_status": "valid",
"tags": "Action,Drama",
"external_id": "C5080530001",
"automatic_asset_selection": false,
"self_link": "https://movida.bebanjo.net/api/schedulings/23816",
"title_group_link": "https://movida.bebanjo.net/api/title_groups/190",
"title_link": "https://movida.bebanjo.net/api/titles/613",
"asset_link": "https://movida.bebanjo.net/api/assets/1231",
"conflicts_link": "https://movida.bebanjo.net/api/schedulings/23816/conflicts",
"publications_link": "https://movida.bebanjo.net/api/schedulings/23816/publications",
"platform_link": "https://movida.bebanjo.net/api/platforms/1",
"workflow_link": "https://movida.bebanjo.net/api/schedulings/23816/workflow",
"metadata_link": "https://movida.bebanjo.net/api/schedulings/23816/metadata"
}
Note that, for all scheduling responses, the tags
attribute always includes both the specific tags of the scheduling and the inherited tags coming from the related entities (i.e. title, series/collection and brand), despite any operation on tags
via API will affect only the specific attributes of the scheduling. That means inherited tags of the scheduling are read only.
Scheduling publications
If your company has publication enabled for some platforms, your schedulings will carry information regarding the publication status on those platforms. Values of the publication status field can be:
-
invalid
: In case the scheduling is not ready to be published to the platform, due to validation errors in its metadata. Trying to publish a scheduling with this status will cause an error as described in Mediagenix On-Demand-Resource:-Publication -
calculating
: In the odd case that the publication status of the scheduling is being calculated. Publishing is an asynchronous process and this is a transient status. -
valid
: In case the scheduling is ready to be published. -
queued
: The asynchronous job that publishes a Scheduling has been queued for processing; when processed the status will move to eithervalid
(if the publication fails),sent
, orpublished
. -
on_hold
: In the case where a Publication for a Scheduling was requested but publication for the Outlet is temporarily disabled. The Scheduling will be automatically published when publication for the Outlet is re-enabled. -
sent
: In the case the final platform is configured to notify back the ingest of the publication, this is the state that will have the scheduling while no notification from the platform has been received. -
failed
: This state shows a problem with the publication in the final platform. -
published
: In the case the scheduling has been successfully published and no changes are pending to be republished. In the case the final platform is configured to notify back the ingest of the publication, this state means that the platform has notified that the publication has been successful.
Schedulings on platforms with enabled publication will also include a link rel="publications"
. Please refer to publication for details:
<scheduling>
<id type="integer">23816</id>
<put-up type="datetime">2010-04-01T00:00:00Z</put-up>
<take-down type="datetime">2010-06-01T21:59:59Z</take-down>
...
<publication-status>valid</publication-status>
...
<link rel="publications" href="https://movida.bebanjo.net/api/schedulings/23816/publications"/>
...
</scheduling>
{
"resource_type": "scheduling",
"id": 23816,
"put_up": "2010-04-01T00:00:00Z",
"take_down": "2010-06-01T21:59:59Z",
// ...
"publication_status": "valid",
// ...
"publications_link": "https://movida.bebanjo.net/api/schedulings/23816/publications",
// ...
}
Note: When the metadata of a published scheduling changes, the publication status will be one of
valid
orinvalid
. This is to indicate that there are changes that haven’t been published. If you need to know if a given scheduling has ever been published, you should check the publications link.
Scheduling metadata errors
If your company has publication enabled for some platforms, schedulings on these platforms might have valid
or invalid
publication status, as described above. They will also include a link rel="metadata_errors"
. Please refer to metadata error for details:
<scheduling>
<id type="integer">23816</id>
<put-up type="datetime">2010-04-01T00:00:00Z</put-up>
<take-down type="datetime">2010-06-01T21:59:59Z</take-down>
...
<publication-status>invalid</publication-status>
...
<link rel="metadata_errors" href="https://movida.bebanjo.net/api/schedulings/23816/metadata_errors"/>
...
</scheduling>
{
"resource_type": "scheduling",
"id": 23816,
"put_up": "2010-04-01T00:00:00Z",
"take_down": "2010-06-01T21:59:59Z",
// ...
"publication_status": "invalid",
// ...
"metadata_errors_link": "https://movida.bebanjo.net/api/schedulings/23816/metadata_errors",
// ...
}
Scheduling workflow
In case your company is using Mediagenix On-Demand’s Sequence product, in each scheduling you’ll find a link to the workflow of the scheduling:
<scheduling>
...
<link rel="workflow" href="https://movida.bebanjo.net/api/schedulings/23816/workflow"/>
...
</scheduling>
{
"resource_type": "scheduling",
// ...
"workflow_link": "https://movida.bebanjo.net/api/schedulings/23816/workflow",
// ...
}
Please refer to workflow for more details about that link.
Notice that in case you are interested only on status
attribute of a workflow, you can directly access that attribute through scheduling workflow-status
attribute.
<scheduling>
...
<workflow-status>completed</workflow-status>
...
</scheduling>
{
// ...
"workflow_status": "completed",
// ...
}
Scheduling linear schedulings
If your company is using the Catch-up feature, every catch-up scheduling includes a link to the original linear schedulings:
<scheduling>
...
<link rel="linear_schedulings" href="https://movida.bebanjo.net/api/schedulings/23816/linear_schedulings"/>
...
</scheduling>
{
"resource_type": "scheduling",
// ...
"linear_schedulings_link": "https://movida.bebanjo.net/api/schedulings/23816/linear_schedulings",
// ...
}
Please refer to rule for more details about VOD rules. Please refer to linear scheduling for more details about that link.
Creating a scheduling
As our introduction to REST APIs page suggests, you can create a scheduling using a POST
request to the scheduling link of a title resource:
$ cat create_scheduling.xml
$ cat create_scheduling.json
<scheduling>
<put-up>2014-06-17T06:00:00Z</put-up>
<take-down>2015-11-01T06:00:00Z</take-down>
<external-id>C5080530001</external-id>
<link rel="platform" href="https://movida.bebanjo.net/api/platforms/1"/>
</scheduling>
{
"put_up": "2014-06-17T06:00:00Z",
"take_down": "2015-11-01T06:00:00Z",
"external_id": "C5080530001",
"platform_link": "https://movida.bebanjo.net/api/platforms/1"
}
Note: if you are creating the scheduling in an episode, you need to include a link to the title group:
<scheduling>
<put-up>2014-06-17T06:00:00Z</put-up>
<take-down>2015-11-01T06:00:00Z</take-down>
<external-id>C5080530001</external-id>
<link rel="platform" href="https://movida.bebanjo.net/api/platforms/1"/>
<link rel="title_group" href="https://movida.bebanjo.net/api/title_groups/3"/>
</scheduling>
{
"put_up": "2014-06-17T06:00:00Z",
"take_down": "2015-11-01T06:00:00Z",
"external_id": "C5080530001",
"platform_link": "https://movida.bebanjo.net/api/platforms/1",
"title_group_link": "https://movida.bebanjo.net/api/title_groups/3"
}
$ curl --digest -u robot_user:password -H "Content-Type: application/xml" -X POST -d @create_scheduling.xml "https://movida.bebanjo.net/api/titles/1/schedule/schedulings"
$ curl --digest -u robot_user:password -H "Content-Type: application/json" -H "Accept: application/json" -X POST -d @create_scheduling.json "https://movida.bebanjo.net/api/titles/1/schedule/schedulings"
As always Mediagenix On-Demand will return the full XML/JSON of the scheduling just created:
<scheduling>
<id type="integer">23816</id>
<put-up type="datetime">2014-06-17T06:00:00Z</put-up>
<take-down type="datetime">2015-11-01T06:00:00Z</take-down>
<scheduling-type>archive</scheduling-type>
<rights-status>cleared</rights-status>
<rights-status-calculating type="boolean">false</rights-status-calculating>
<workflow-status>completed</workflow-status>
<publication-status>valid</publication-status>
<tags>Action,Drama</tags>
<external-id>C5080530001</external-id>
<automatic-asset-selection type="boolean">false</automatic-asset-selection>
<link rel="self" href="https://movida.bebanjo.net/api/schedulings/23816"/>
<link rel="title" href="https://movida.bebanjo.net/api/titles/1"/>
<link rel="asset" href="https://movida.bebanjo.net/api/assets/1231"/>
<link rel="conflicts" href="https://movida.bebanjo.net/api/schedulings/23816/conflicts"/>
<link rel="publications" href="https://movida.bebanjo.net/api/schedulings/23816/publications"/>
<link rel="platform" href="https://movida.bebanjo.net/api/platforms/1"/>
<link rel="workflow" href="https://movida.bebanjo.net/api/schedulings/23816/workflow"/>
<link rel="metadata" href="https://movida.bebanjo.net/api/schedulings/23816/metadata"/>
</scheduling>
{
"resource_type": "scheduling",
"id": 23816,
"put_up": "2014-06-17T06:00:00Z",
"take_down": "2015-11-01T06:00:00Z",
"scheduling_type": "archive",
"rights_status": "cleared",
"rights_status_calculating": false,
"workflow_status": "completed",
"publication_status": "valid",
"tags": "Action,Drama",
"external_id": "C5080530001",
"automatic_asset_selection": false,
"self_link": "https://movida.bebanjo.net/api/schedulings/23816",
"title_link": "https://movida.bebanjo.net/api/titles/1",
"asset_link": "https://movida.bebanjo.net/api/assets/1231",
"conflicts_link": "https://movida.bebanjo.net/api/schedulings/23816/conflicts",
"publications_link": "https://movida.bebanjo.net/api/schedulings/23816/publications",
"platform_link": "https://movida.bebanjo.net/api/platforms/1",
"workflow_link": "https://movida.bebanjo.net/api/schedulings/23816/workflow",
"metadata_link": "https://movida.bebanjo.net/api/schedulings/23816/metadata"
}
Updating a scheduling
As our introduction to REST APIs page suggests, you can update a scheduling using a PUT
request to each scheduling URI. You only need to include those attributes of the scheduling that you wish to update:
$ cat scheduling_update.xml
$ cat scheduling_update.json
<scheduling>
<put-up>2014-06-17T06:00:00Z</put-up>
<take-down>2015-11-01T06:00:00Z</take-down>
<external-id>C5080530001</external-id>
<link rel="title" href="https://movida.bebanjo.net/api/titles/613"/>
<link rel="platform" href="https://movida.bebanjo.net/api/platforms/1"/>
</scheduling>
{
"put_up": "2014-06-17T06:00:00Z",
"take_down": "2015-11-01T06:00:00Z",
"external_id": "C5080530001",
"title_link": "https://movida.bebanjo.net/api/titles/613",
"platform_link": "https://movida.bebanjo.net/api/platforms/1"
}
$ curl --digest -u robot_user:password -H "Content-Type: application/xml" -X PUT -d @scheduling_update.xml "https://movida.bebanjo.net/api/schedulings/23816"
$ curl --digest -u robot_user:password -H "Content-Type: application/json" -H "Accept: application/json" -X PUT -d @scheduling_update.json "https://movida.bebanjo.net/api/schedulings/23816"
As always Mediagenix On-Demand will return the full XML/JSON of the scheduling just updated:
<scheduling>
<id type="integer">23816</id>
<put-up type="datetime">2014-06-17T06:00:00Z</put-up>
<take-down type="datetime">2015-11-01T06:00:00Z</take-down>
<scheduling-type>archive</scheduling-type>
<rights-status>cleared</rights-status>
<rights-status-calculating type="boolean">false</rights-status-calculating>
<workflow-status>completed</workflow-status>
<publication-status>valid</publication-status>
<tags>Action,Drama</tags>
<external-id>C5080530001</external-id>
<automatic-asset-selection type="boolean">false</automatic-asset-selection>
<link rel="self" href="https://movida.bebanjo.net/api/schedulings/23816"/>
<link rel="title_group" href="https://movida.bebanjo.net/api/title_groups/190"/>
<link rel="title" href="https://movida.bebanjo.net/api/titles/613"/>
<link rel="asset" href="https://movida.bebanjo.net/api/assets/1231"/>
<link rel="conflicts" href="https://movida.bebanjo.net/api/schedulings/23816/conflicts"/>
<link rel="publications" href="https://movida.bebanjo.net/api/schedulings/23816/publications"/>
<link rel="platform" href="https://movida.bebanjo.net/api/platforms/1"/>
<link rel="workflow" href="https://movida.bebanjo.net/api/schedulings/23816/workflow"/>
<link rel="metadata" href="https://movida.bebanjo.net/api/schedulings/23816/metadata"/>
</scheduling>
{
"resource_type": "scheduling",
"id": 23816,
"put_up": "2014-06-17T06:00:00Z",
"take_down": "2015-11-01T06:00:00Z",
"scheduling_type": "archive",
"rights_status": "cleared",
"rights_status_calculating": false,
"workflow_status": "completed",
"publication_status": "valid",
"tags": "Action,Drama",
"external_id": "C5080530001",
"automatic_asset_selection": false,
"self_link": "https://movida.bebanjo.net/api/schedulings/23816",
"title_group_link": "https://movida.bebanjo.net/api/title_groups/190",
"title_link": "https://movida.bebanjo.net/api/titles/613",
"asset_link": "https://movida.bebanjo.net/api/assets/1231",
"conflicts_link": "https://movida.bebanjo.net/api/schedulings/23816/conflicts",
"publications_link": "https://movida.bebanjo.net/api/schedulings/23816/publications",
"platform_link": "https://movida.bebanjo.net/api/platforms/1",
"workflow_link": "https://movida.bebanjo.net/api/schedulings/23816/workflow",
"metadata_link": "https://movida.bebanjo.net/api/schedulings/23816/metadata"
}
Note: if
external-id
is nil, it can be updated.
Updating the asset of a scheduling
The automatic-asset-selection
tag in any scheduling indicates whether the asset of the current scheduling is automatically selected (i.e. the linear asset for catch-up schedulings, and the latest asset for archive schedulings), or whether the asset of the current scheduling is locked to one in particular, and won’t be changed automatically.
In order to update the asset of a scheduling, you’ll have to send a PUT request with a payload that includes both the automatic-asset-selection
tag set to false and the asset
link pointing to the Asset that you want to set. Note that only if the automatic-asset-selection
is present in the payload and set to false, the asset will be updated. In any other case, Mediagenix On-Demand will ignore the contents of the asset
link and make no changes.
Updating a catchup scheduling
It is possible to overwrite the starting and ending dates coming from the associated rule, you only need to set the put_up
and take_down
attributes with the values you want.
In case you want at some point the dates to follow again the values coming from the rule, you will need to provide and empty value to those attributes.
<scheduling>
<put-up type="datetime"></put-up>
<take-down type="datetime"></take-down>
</scheduling>
{
"put_up": null,
"take_down": null
}
You can also set a specific asset as explained before, and given you want to sync again the asset with the transmission, you only need to provide an empty asset url as you can see below (remember to pass the automatic-asset-selection
attribute with false
value, so the changes take effect).
<scheduling>
<automatic-asset-selection type="boolean">false</automatic-asset-selection>
<link rel='asset' href=''/>
</scheduling>
{
"automatic_asset_selection": false,
"asset_link": null
}
Deleting a scheduling
The following example shows how to destroy a particular scheduling. Only a DELETE
HTTP request to its URL is required:
$ curl --digest -u robot_user:password -X DELETE "https://movida.bebanjo.net/api/schedulings/1"
$ curl --digest -u robot_user:password -H "Accept: application/json" -X DELETE "https://movida.bebanjo.net/api/schedulings/1"
The DELETE
request doesn’t return anything, as that scheduling is now gone.
When a scheduling is deleted, if it had a workflow associated, this will be also deleted.
Deleted schedulings
Even after deleting a scheduling you are still able to retrieve itself and its associated data. Here it’s an example with cURL:
$ curl --digest -u robot_user https://movida.example.com/api/schedulings/10?deleted
$ curl --digest -u robot_user -H "Accept: application/json" https://movida.example.com/api/schedulings/10?deleted
Note how we have added the flag deleted
to the job URL. This is part of the contract and therefore it’s important. Keep in mind that you will be receiving a 404
HTTP Status code instead of the XML/JSON representation of to the scheduling if you omit that flag while trying to get an already deleted scheduling.
Unlike a regular scheduling, this is how a deleted scheduling looks like:
<scheduling>
<id type="integer">23816</id>
<put-up type="datetime">2014-06-17T06:00:00Z</put-up>
<take-down type="datetime">2015-11-01T06:00:00Z</take-down>
<scheduling-type>archive</scheduling-type>
<rights-status>cleared</rights-status>
<rights-status-calculating type="boolean">false</rights-status-calculating>
<workflow-status>completed</workflow-status>
<publication-status>valid</publication-status>
<tags>Action,Drama</tags>
<external-id>C5080530001</external-id>
<link rel="self" href="https://movida.bebanjo.net/api/schedulings/23816?deleted"/>
<link rel="title_group" href="https://movida.bebanjo.net/api/title_groups/190"/>
<link rel="title" href="https://movida.bebanjo.net/api/titles/613"/>
<link rel="asset" href="https://movida.bebanjo.net/api/assets/1231"/>
<link rel="conflicts" href="https://movida.bebanjo.net/api/schedulings/23816/conflicts?deleted"/>
<link rel="publications" href="https://movida.bebanjo.net/api/schedulings/23816/publications?deleted"/>
<link rel="platform" href="https://movida.bebanjo.net/api/platforms/1"/>
<link rel="workflow" href="https://movida.bebanjo.net/api/schedulings/23816/workflow?deleted"/>
<link rel="metadata" href="https://movida.bebanjo.net/api/schedulings/23816/metadata?deleted"/>
</scheduling>
{
"resource_type": "scheduling",
"id": 23816,
"put_up": "2014-06-17T06:00:00Z",
"take_down": "2015-11-01T06:00:00Z",
"scheduling_type": "archive",
"rights_status": "cleared",
"rights_status_calculating": false,
"workflow_status": "completed",
"publication_status": "valid",
"tags": "Action,Drama",
"external_id": "C5080530001",
"self_link": "https://movida.bebanjo.net/api/schedulings/13632774?deleted",
"title_group_link": "https://movida.bebanjo.net/api/title_groups/10105051",
"title_link": "https://movida.bebanjo.net/api/titles/3062280",
"asset_link": "https://movida.bebanjo.net/api/assets/3563004",
"conflicts_link": "https://movida.bebanjo.net/api/schedulings/13632774/conflicts?deleted",
"publications_link": "https://movida.bebanjo.net/api/platforms/4525?deleted",
"platform_link": "https://movida.bebanjo.net/api/platforms/4525",
"workflow_link": "https://movida.bebanjo.net/api/schedulings/13632774/workflow?deleted",
"metadata_link": "https://movida.bebanjo.net/api/schedulings/13632774/metadata?deleted"
}
As you can see, Mediagenix On-Demand automatically adds the deleted
flag to the scheduling self
link and also to the links to the different kind of resources associated with the scheduling. Of course, you are free to follow these links when needed in order to retrieve these resources from the API.
Finally, it’s also possible to retrieve the list of deleted schedulings from a given platform/title group/title, again, by using the deleted
flag like the following cURL example. Take into account that the pagination mechanism and all the filters in the Accessing schedulings section above will continue gloriously working with deleted schedulings.
$ curl --digest -u robot_user:password https://movida.example.com/api/titles/613/schedule/schedulings?deleted
$ curl --digest -u robot_user:password -H "Accept: application/json" https://movida.example.com/api/titles/613/schedule/schedulings?deleted
These are the two only operations allowed on deleted schedulings. If you try to update or delete an already deleted scheduling (using the deleted
flag), the response will be a 405
(Method Not Allowed) HTTP Status code. Additionally, making a POST
request to the schedulings URL adding the deleted
flag will return the aforementioned 405
HTTP Status.
Deprecated assets link
Some accounts will show two assets links.
<scheduling>
<id type="integer">9005222</id>
<put-up type="datetime">2014-01-20T06:50:00+00:00</put-up>
<take-down type="datetime">2015-01-20T06:50:00+00:00</take-down>
...
<link rel="self" href="https://movida.bebanjo.net/api/schedulings/900577"/>
<link rel="asset" href="https://movida.bebanjo.net/api/assets/240571"/>
<link rel="assets" href="https://movida.bebanjo.net/api/schedulings/900577/assets"/>
...
</scheduling>
{
"resource_type": "scheduling",
"id": 23816,
"put_up": "2014-01-20T06:50:00+00:00",
"take_down": "2015-01-20T06:50:00+00:00",
// ...
"self_link": "https://movida.bebanjo.net/api/schedulings/900577",
"asset_link": "https://movida.bebanjo.net/api/assets/240571",
"assets_link": "https://movida.bebanjo.net/api/schedulings/900577/assets",
// ...
}
For historical reasons, the rel="assets"
is a deprecated resource that should not be use anymore. If you are new integrator and you only see the rel="asset"
you can ignore this. In case you see both links you must use rel="asset"
.