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/jsonAuthorisation
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=10returns the first 10 recordings.?limit=10&page=2returns 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,
"csaiEnabled": true,
"csaiAdCueTimes": [
{
"timeOffset": 0,
"adDuration": 0
}
],
"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.