Retrieve series recordings and requests
Request
To retrieve series recordings and/or requests for the user, send a GET request to:
https://<host>:<port>/cdvr/v2/seriesrecordings
This API supports:
Limiting the number of records returned
Paging
Filtering the results
There are also endpoints for:
Retrieving the recordings for a specific series – see
GET /v2/recordings/series/{seriesId}
in the NPVR User Recordings API documentation v2.Retrieving the status of series recordings (which returns a much smaller response) – see Retrieve series recording statuses.
Headers
Content-Type: application/json
Authorisation
Mandatory arguments
None
Other arguments (in URL)
limit
– the number of records to returnpage
– the page number to return (cannot be used withoutlimit
)
For example:?limit=10
returns the first 10 recordings.?limit=10&page=2
returns the second 10 recordings.
filter
– a generic filter that allows you to filter the results based on the value of any fieldignoreRecording
– iftrue
, the response only includes series details. It does not include the recordings themselves. The default isfalse
.
Response
A successful request returns an HTTP 200 status.
A bad request returns an HTTP 400 status.
An unauthorised request returns an HTTP 401 status.
Example
A successful request returns a payload that looks like this:
{
"totalRecords": 1,
"seriesRecordingSet": [
{
"id": "7c589755-dbdf-434f-a6a8-666fdac06d28",
"seriesId": "GameOfThrones",
"seriesType": "SEASON",
"channelId": "bbc1",
"isMaybeMissingEpisodes": true,
"recordingOptions": [
"ALL_EPISODES",
"DONT_RERECORD_DELETED_EPISODES"
],
"missedEpisodes": [
{
"reason": "LACK_OF_QUOTA",
"episodeNumber": 1,
"seasonNumber": 2,
"contentRef": "content_xyz",
"seriesRef": "ser_xyz",
"seasonRef": "ep_abc",
"contentLinkId": "content_xyz"
}
],
"images": {
"image_poster": "poster.jpg",
"image_title": "got_title.jpeg",
"image_series": "got_series.jpg"
},
"metadata": {
"en_GB": {
"title": "Game of Thrones",
"description": "GOT McLane blah blah blah",
"synopsis": "GOT McLane blah blah blah"
}
},
"recordings": {
"totalRecords": 1,
"recordingSet": [
{
"id": "7c589755-dbdf-434f-a6a8-666fdac06d28",
"eventId": "eastenders_10297",
"start": "2018-10-19T01:00:00.000Z",
"end": "2018-10-19T01:30:00.000Z",
"captureStart": "2018-10-19T01:00:00.000Z",
"captureEnd": "2018-10-19T01:30:00.000Z",
"status": "RECORDED",
"channelId": "bbc1",
"duration": 1800,
"seriesRecordingId": "Friends",
"captureDuration": 1800,
"availability": {
"start": "2018-10-19T01:01:01.001Z",
"end": "2999-10-19T01:01:01.001Z"
},
"contentId": "eastenders_10297c",
"contentType": "movie",
"seriesId": "Friends",
"seasonId": "Friends Season 1",
"isReschedule": true,
"isProtected": true,
"productRefs": [
"productRefOne"
],
"Categories": [
"News",
"Sports"
],
"tvChannel": "Channel Number : 500 ",
"ratingPrecedence": {
"predecessor": "12",
"successor": "15"
},
"playback": {
"iPad": {
"drmId": "d1",
"uri": "/xyz/a.ts"
},
"Android": {
"drmId": "d2",
"uri": "/xyz/b.ts"
}
},
"images": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"tmsId": "EP021174500086",
"InHomeBlockingRequired": false,
"guardTime": {
"startSecs": 0,
"endSecs": 0,
"source": "CONFIG"
},
"isPartiallyRecorded": false,
"metadata": {
"en_GB": {
"title": "Die Hard",
"description": "John McLane blah blah blah",
"synopsis": "John McLane blah blah blah"
}
},
"creationDate": "2018-10-19T01:00:00.000Z",
"modifiedDate": "2018-10-19T01:00:00.000Z",
"isjitp": true,
"sourceId": "SOURCE1",
"networkLocation": "string",
"failureReason": "string"
}
]
}
}
]
}
Note that the response includes a list of missed episodes (if there are any) – that is, episodes that could not be recorded, for example, due to lack of quota.
See also
For full details of this API, see NPVR User Recordings API documentation v2.