Dvr
Generated dvr operations.
GET/v1/dvrRead dvrread
- Audience
- Clients · Native API
- Authorization
- API key or personal access token with the read scope, or a signed-in session
- OpenAPI operation ID
get_dvr
Parameters
| Name | In | Type | Description |
|---|---|---|---|
cursor | query | string | |
limit | query | integer | ""1–50 | |
state | query | string | |
sort | query | string | |
group | query | string |
Responses
200Successapplication/json
{
"protocolVersion": "string",
"result": {
"captureAvailable": true,
"captureUnavailableReason": "string",
"deletionAvailable": true,
"nextCursor": "eyJvIjoyMH0",
"recordings": [
{
"bytes": 0,
"channel": {
"id": "id_8h2k4q",
"mark": {},
"name": "Fargo",
"number": "string"
},
"conflicts": [
{}
],
"coverageEnd": "string",
"coverageStart": "string",
"durationMs": 1800000,
"end": "string",
"id": "id_8h2k4q",
"itemId": "id_8h2k4q",
"keep": true,
"libraryId": "id_8h2k4q",
"occurrence": {
"channelId": "id_8h2k4q",
"generation": "string",
"programmeId": "id_8h2k4q",
"sourceId": "id_8h2k4q"
},
"options": {
"afterMs": 1800000,
"beforeMs": 1800000,
"episodeLimit": 0,
"priority": 0,
"retentionDays": 0
},
"overlaps": [
{}
],
"positionMs": 1800000,
"programme": {
"categories": [],
"channelId": "id_8h2k4q",
"description": "string",
"end": "string",
"episode": {},
"episodeId": "id_8h2k4q",
"flags": {},
"id": "id_8h2k4q",
"image": "string",
"lineage": "string",
"newEvidence": "string",
"rating": {},
"recordingId": "id_8h2k4q",
"recordingState": "string",
"seriesId": "id_8h2k4q",
"starRating": "string",
"start": "string",
"subtitle": "Fargo",
"title": "Fargo",
"year": 0
},
"reason": "string",
"revision": 0,
"ruleId": "id_8h2k4q",
"seriesId": "id_8h2k4q",
"seriesTitle": "Fargo",
"start": "string",
"state": "string",
"watched": true
}
],
"revision": 0,
"rules": [
{
"config": {
"allowedChannels": [],
"blockedChannels": [],
"blockedKeywords": [],
"channelId": "id_8h2k4q",
"enabled": true,
"episodes": "string",
"keywords": [],
"matchKind": "string",
"name": "Fargo",
"options": {},
"seriesId": "id_8h2k4q",
"sourceId": "id_8h2k4q",
"title": "Fargo"
},
"diagnostic": "string",
"id": "id_8h2k4q",
"reconcileState": "string",
"revision": 0,
"summary": {
"channel": {},
"conflicts": 0,
"matchingTonight": 0,
"next": {},
"recorded": 0,
"upcoming": 0
},
"updatedAt": "2026-10-18T19:30:00Z"
}
],
"usage": {
"bytes": 0,
"pendingDeleteBytes": 0,
"recordings": 0
}
},
"serverId": "id_8h2k4q"
}- protocolVersionstringrequired
resultobjectrequired
- captureAvailablebooleanrequired
- captureUnavailableReasonstringrequired
- deletionAvailablebooleanrequired
- nextCursorstringrequired
recordingsarray of objectrequired
- bytesintegerrequired
channelobjectrequired
- idstringrequired
markobject
- seedstringrequired
- textstringrequired
- namestringrequired
- numberstringrequired
conflictsarray of objectrequired
- capacityintegerrequired
- demandintegerrequired
- endstringrequired
- startstringrequired
- coverageEndstringrequired
- coverageStartstringrequired
- durationMsintegerrequired
- endstringrequired
- idstringrequired
- itemIdstringrequired
- keepbooleanrequired
- libraryIdstringrequired
occurrenceobjectrequired
- channelIdstringrequired
- generationstringrequired
- programmeIdstringrequired
- sourceIdstringrequired
optionsobjectrequired
- afterMsintegerrequired
- beforeMsintegerrequired
- episodeLimitintegerrequired
- priorityintegerrequired
- retentionDaysintegerrequired
overlapsarray of objectrequired
channelobjectrequired
- idstringrequired
markobject
- seedstringrequired
- textstringrequired
- namestringrequired
- numberstringrequired
- endstringrequired
episodeobject
- displaystring
- numberinteger
- seasoninteger
- idstringrequired
- priorityintegerrequired
- ruleIdstringrequired
- startstringrequired
- statestringrequired
- titlestringrequired
- positionMsintegerrequired
programmeobjectrequired
- categoriesarray of stringrequired
- channelIdstringrequired
- descriptionstring
- endstringrequired
episodeobject
- displaystring
- numberinteger
- seasoninteger
- episodeIdstring
flagsobjectrequired
- livebooleanrequired
- newbooleanrequired
- premierebooleanrequired
- repeatbooleanrequired
- idstringrequired
- imagestring
- lineagestringrequired
- newEvidencestring
ratingobject
- systemstringrequired
- valuestringrequired
- recordingIdstring
- recordingStatestring
- seriesIdstring
- starRatingstring
- startstringrequired
- subtitlestring
- titlestringrequired
- yearinteger
- reasonstringrequired
- revisionintegerrequired
- ruleIdstringrequired
- seriesIdstring
- seriesTitlestring
- startstringrequired
- statestringrequired
- watchedboolean | any | nullrequired
- revisionintegerrequired
rulesarray of objectrequired
configobjectrequired
- allowedChannelsarray of stringrequired
- blockedChannelsarray of stringrequired
- blockedKeywordsarray of stringrequired
- channelIdstringrequired
- enabledbooleanrequired
- episodesstringrequired
- keywordsarray of stringrequired
- matchKindstringrequired
- namestringrequired
optionsobjectrequired
- afterMsintegerrequired
- beforeMsintegerrequired
- episodeLimitintegerrequired
- priorityintegerrequired
- retentionDaysintegerrequired
- seriesIdstringrequired
- sourceIdstringrequired
- titlestringrequired
- diagnosticstringrequired
- idstringrequired
- reconcileStatestringrequired
- revisionintegerrequired
summaryobjectrequired
channelobjectrequired
- idstringrequired
markobject
- seedstringrequired
- textstringrequired
- namestringrequired
- numberstringrequired
- conflictsintegerrequired
- matchingTonightintegerrequired
nextobject
- categoriesarray of stringrequired
- channelIdstringrequired
- descriptionstring
- endstringrequired
episodeobject
- displaystring
- numberinteger
- seasoninteger
- episodeIdstring
flagsobjectrequired
- livebooleanrequired
- newbooleanrequired
- premierebooleanrequired
- repeatbooleanrequired
- idstringrequired
- imagestring
- lineagestringrequired
- newEvidencestring
ratingobject
- systemstringrequired
- valuestringrequired
- recordingIdstring
- recordingStatestring
- seriesIdstring
- starRatingstring
- startstringrequired
- subtitlestring
- titlestringrequired
- yearinteger
- recordedintegerrequired
- upcomingintegerrequired
- updatedAtstringrequired
usageobjectrequired
- bytesintegerrequired
- pendingDeleteBytesintegerrequired
- recordingsintegerrequired
- serverIdstringrequired
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}errorobjectrequired
- codestringrequired
- messagestringrequired
Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busy
Example request
curl -X GET "http://127.0.0.1:32500/v1/dvr" \
-H "Authorization: Bearer $PORTICO_API_KEY"GET/v1/dvr/channelsRead dvr channelsread
- Audience
- Clients · Native API
- Authorization
- API key or personal access token with the read scope, or a signed-in session
- OpenAPI operation ID
get_dvr_channels
Parameters
| Name | In | Type | Description |
|---|---|---|---|
cursor | query | string | |
search | query | string | |
sourceId | query | string |
Responses
200Successapplication/json
{
"protocolVersion": "string",
"result": {
"channels": [
{
"id": "id_8h2k4q",
"name": "Fargo",
"number": "string"
}
],
"generation": "string",
"nextCursor": "eyJvIjoyMH0"
},
"serverId": "id_8h2k4q"
}- protocolVersionstringrequired
resultobjectrequired
channelsarray of objectrequired
- idstringrequired
- namestringrequired
- numberstringrequired
- generationstringrequired
- nextCursorstringrequired
- serverIdstringrequired
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}errorobjectrequired
- codestringrequired
- messagestringrequired
Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busy
Example request
curl -X GET "http://127.0.0.1:32500/v1/dvr/channels" \
-H "Authorization: Bearer $PORTICO_API_KEY"GET/v1/dvr/groupsRead recording groupsread
- Audience
- Clients · Native API
- Authorization
- API key or personal access token with the read scope, or a signed-in session
- OpenAPI operation ID
get_dvr_groups
Parameters
| Name | In | Type | Description |
|---|---|---|---|
sort | query | string | |
cursor | query | string | |
limit | query | integer1–50 |
Responses
200Successapplication/json
{
"protocolVersion": "string",
"result": {
"groups": [
{
"exceptions": 0,
"kept": 0,
"key": "string",
"latest": "string",
"recording": {
"bytes": 0,
"channel": {},
"conflicts": [],
"coverageEnd": "string",
"coverageStart": "string",
"durationMs": 1800000,
"end": "string",
"id": "id_8h2k4q",
"itemId": "id_8h2k4q",
"keep": true,
"libraryId": "id_8h2k4q",
"occurrence": {},
"options": {},
"overlaps": [],
"positionMs": 1800000,
"programme": {},
"reason": "string",
"revision": 0,
"ruleId": "id_8h2k4q",
"seriesId": "id_8h2k4q",
"seriesTitle": "Fargo",
"start": "string",
"state": "string",
"watched": true
},
"recordings": 0,
"title": "Fargo",
"unwatched": 0
}
],
"nextCursor": "eyJvIjoyMH0",
"revision": 0
},
"serverId": "id_8h2k4q"
}- protocolVersionstringrequired
resultobjectrequired
groupsarray of objectrequired
- exceptionsintegerrequired
- keptintegerrequired
- keystringrequired
- lateststringrequired
recordingobjectrequired
- bytesintegerrequired
channelobjectrequired
- idstringrequired
markobject
- seedstringrequired
- textstringrequired
- namestringrequired
- numberstringrequired
conflictsarray of objectrequired
- capacityintegerrequired
- demandintegerrequired
- endstringrequired
- startstringrequired
- coverageEndstringrequired
- coverageStartstringrequired
- durationMsintegerrequired
- endstringrequired
- idstringrequired
- itemIdstringrequired
- keepbooleanrequired
- libraryIdstringrequired
occurrenceobjectrequired
- channelIdstringrequired
- generationstringrequired
- programmeIdstringrequired
- sourceIdstringrequired
optionsobjectrequired
- afterMsintegerrequired
- beforeMsintegerrequired
- episodeLimitintegerrequired
- priorityintegerrequired
- retentionDaysintegerrequired
overlapsarray of objectrequired
channelobjectrequired
- idstringrequired
markobject
- seedstringrequired
- textstringrequired
- namestringrequired
- numberstringrequired
- endstringrequired
episodeobject
- displaystring
- numberinteger
- seasoninteger
- idstringrequired
- priorityintegerrequired
- ruleIdstringrequired
- startstringrequired
- statestringrequired
- titlestringrequired
- positionMsintegerrequired
programmeobjectrequired
- categoriesarray of stringrequired
- channelIdstringrequired
- descriptionstring
- endstringrequired
episodeobject
- displaystring
- numberinteger
- seasoninteger
- episodeIdstring
flagsobjectrequired
- livebooleanrequired
- newbooleanrequired
- premierebooleanrequired
- repeatbooleanrequired
- idstringrequired
- imagestring
- lineagestringrequired
- newEvidencestring
ratingobject
- systemstringrequired
- valuestringrequired
- recordingIdstring
- recordingStatestring
- seriesIdstring
- starRatingstring
- startstringrequired
- subtitlestring
- titlestringrequired
- yearinteger
- reasonstringrequired
- revisionintegerrequired
- ruleIdstringrequired
- seriesIdstring
- seriesTitlestring
- startstringrequired
- statestringrequired
- watchedboolean | any | nullrequired
- recordingsintegerrequired
- titlestringrequired
- unwatchedintegerrequired
- nextCursorstringrequired
- revisionintegerrequired
- serverIdstringrequired
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}errorobjectrequired
- codestringrequired
- messagestringrequired
Error codesinvalid_requestunauthorizednot_permittedinternaldatabase_busy
Example request
curl -X GET "http://127.0.0.1:32500/v1/dvr/groups" \
-H "Authorization: Bearer $PORTICO_API_KEY"POST/v1/dvr/recordingsRun dvr recordingsplayback
- Audience
- Clients · Native API
- Authorization
- API key or personal access token with the playback scope, or a signed-in session
- OpenAPI operation ID
post_dvr_recordings- Max body
- 64 KiB
Request body application/json · required
{
"occurrence": {
"channelId": "id_8h2k4q",
"generation": "string",
"programmeId": "id_8h2k4q",
"sourceId": "id_8h2k4q"
},
"options": {
"afterMs": 1800000,
"beforeMs": 1800000,
"episodeLimit": 0,
"priority": 0,
"retentionDays": 0
},
"requestId": "id_8h2k4q",
"useDefaults": true
}occurrenceobjectrequired
- channelIdstringrequired
- generationstringrequired
- programmeIdstringrequired
- sourceIdstringrequired
optionsobject | any | nullrequired
- afterMsintegerrequired
- beforeMsintegerrequired
- episodeLimitintegerrequired
- priorityintegerrequired
- retentionDaysintegerrequired
- requestIdstringrequired
- useDefaultsbooleanrequired
Responses
200Successapplication/json
{
"protocolVersion": "string",
"result": {
"bytes": 0,
"channel": {
"id": "id_8h2k4q",
"mark": {
"seed": "string",
"text": "string"
},
"name": "Fargo",
"number": "string"
},
"conflicts": [
{
"capacity": 0,
"demand": 0,
"end": "string",
"start": "string"
}
],
"coverageEnd": "string",
"coverageStart": "string",
"durationMs": 1800000,
"end": "string",
"id": "id_8h2k4q",
"itemId": "id_8h2k4q",
"keep": true,
"libraryId": "id_8h2k4q",
"occurrence": {
"channelId": "id_8h2k4q",
"generation": "string",
"programmeId": "id_8h2k4q",
"sourceId": "id_8h2k4q"
},
"options": {
"afterMs": 1800000,
"beforeMs": 1800000,
"episodeLimit": 0,
"priority": 0,
"retentionDays": 0
},
"overlaps": [
{
"channel": {
"id": "id_8h2k4q",
"mark": {},
"name": "Fargo",
"number": "string"
},
"end": "string",
"episode": {
"display": "string",
"number": 0,
"season": 0
},
"id": "id_8h2k4q",
"priority": 0,
"ruleId": "id_8h2k4q",
"start": "string",
"state": "string",
"title": "Fargo"
}
],
"positionMs": 1800000,
"programme": {
"categories": [
"string"
],
"channelId": "id_8h2k4q",
"description": "string",
"end": "string",
"episode": {
"display": "string",
"number": 0,
"season": 0
},
"episodeId": "id_8h2k4q",
"flags": {
"live": true,
"new": true,
"premiere": true,
"repeat": true
},
"id": "id_8h2k4q",
"image": "string",
"lineage": "string",
"newEvidence": "string",
"rating": {
"system": "string",
"value": "string"
},
"recordingId": "id_8h2k4q",
"recordingState": "string",
"seriesId": "id_8h2k4q",
"starRating": "string",
"start": "string",
"subtitle": "Fargo",
"title": "Fargo",
"year": 0
},
"reason": "string",
"revision": 0,
"ruleId": "id_8h2k4q",
"seriesId": "id_8h2k4q",
"seriesTitle": "Fargo",
"start": "string",
"state": "string",
"watched": true
},
"serverId": "id_8h2k4q"
}- protocolVersionstringrequired
resultobjectrequired
- bytesintegerrequired
channelobjectrequired
- idstringrequired
markobject
- seedstringrequired
- textstringrequired
- namestringrequired
- numberstringrequired
conflictsarray of objectrequired
- capacityintegerrequired
- demandintegerrequired
- endstringrequired
- startstringrequired
- coverageEndstringrequired
- coverageStartstringrequired
- durationMsintegerrequired
- endstringrequired
- idstringrequired
- itemIdstringrequired
- keepbooleanrequired
- libraryIdstringrequired
occurrenceobjectrequired
- channelIdstringrequired
- generationstringrequired
- programmeIdstringrequired
- sourceIdstringrequired
optionsobjectrequired
- afterMsintegerrequired
- beforeMsintegerrequired
- episodeLimitintegerrequired
- priorityintegerrequired
- retentionDaysintegerrequired
overlapsarray of objectrequired
channelobjectrequired
- idstringrequired
markobject
- seedstringrequired
- textstringrequired
- namestringrequired
- numberstringrequired
- endstringrequired
episodeobject
- displaystring
- numberinteger
- seasoninteger
- idstringrequired
- priorityintegerrequired
- ruleIdstringrequired
- startstringrequired
- statestringrequired
- titlestringrequired
- positionMsintegerrequired
programmeobjectrequired
- categoriesarray of stringrequired
- channelIdstringrequired
- descriptionstring
- endstringrequired
episodeobject
- displaystring
- numberinteger
- seasoninteger
- episodeIdstring
flagsobjectrequired
- livebooleanrequired
- newbooleanrequired
- premierebooleanrequired
- repeatbooleanrequired
- idstringrequired
- imagestring
- lineagestringrequired
- newEvidencestring
ratingobject
- systemstringrequired
- valuestringrequired
- recordingIdstring
- recordingStatestring
- seriesIdstring
- starRatingstring
- startstringrequired
- subtitlestring
- titlestringrequired
- yearinteger
- reasonstringrequired
- revisionintegerrequired
- ruleIdstringrequired
- seriesIdstring
- seriesTitlestring
- startstringrequired
- statestringrequired
- watchedboolean | any | nullrequired
- serverIdstringrequired
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}errorobjectrequired
- codestringrequired
- messagestringrequired
Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busywriter_capacity
Example request
curl -X POST "http://127.0.0.1:32500/v1/dvr/recordings" \
-H "Authorization: Bearer $PORTICO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"occurrence": {
"channelId": "id_8h2k4q",
"generation": "string",
"programmeId": "id_8h2k4q",
"sourceId": "id_8h2k4q"
},
"options": {
"afterMs": 1800000,
"beforeMs": 1800000,
"episodeLimit": 0,
"priority": 0,
"retentionDays": 0
},
"requestId": "id_8h2k4q",
"useDefaults": true
}'DELETE/v1/dvr/recordings/{id}Remove dvr recordingsplayback
- Audience
- Clients · Native API
- Authorization
- API key or personal access token with the playback scope, or a signed-in session
- OpenAPI operation ID
delete_dvr_recordings_id- Max body
- 64 KiB
Parameters
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string |
Request body application/json · required
{
"expectedRevision": 0,
"requestId": "id_8h2k4q"
}- expectedRevisionintegerrequired
- requestIdstringrequired
Responses
200Successapplication/json
{
"protocolVersion": "string",
"result": {
"bytes": 0,
"channel": {
"id": "id_8h2k4q",
"mark": {
"seed": "string",
"text": "string"
},
"name": "Fargo",
"number": "string"
},
"conflicts": [
{
"capacity": 0,
"demand": 0,
"end": "string",
"start": "string"
}
],
"coverageEnd": "string",
"coverageStart": "string",
"durationMs": 1800000,
"end": "string",
"id": "id_8h2k4q",
"itemId": "id_8h2k4q",
"keep": true,
"libraryId": "id_8h2k4q",
"occurrence": {
"channelId": "id_8h2k4q",
"generation": "string",
"programmeId": "id_8h2k4q",
"sourceId": "id_8h2k4q"
},
"options": {
"afterMs": 1800000,
"beforeMs": 1800000,
"episodeLimit": 0,
"priority": 0,
"retentionDays": 0
},
"overlaps": [
{
"channel": {
"id": "id_8h2k4q",
"mark": {},
"name": "Fargo",
"number": "string"
},
"end": "string",
"episode": {
"display": "string",
"number": 0,
"season": 0
},
"id": "id_8h2k4q",
"priority": 0,
"ruleId": "id_8h2k4q",
"start": "string",
"state": "string",
"title": "Fargo"
}
],
"positionMs": 1800000,
"programme": {
"categories": [
"string"
],
"channelId": "id_8h2k4q",
"description": "string",
"end": "string",
"episode": {
"display": "string",
"number": 0,
"season": 0
},
"episodeId": "id_8h2k4q",
"flags": {
"live": true,
"new": true,
"premiere": true,
"repeat": true
},
"id": "id_8h2k4q",
"image": "string",
"lineage": "string",
"newEvidence": "string",
"rating": {
"system": "string",
"value": "string"
},
"recordingId": "id_8h2k4q",
"recordingState": "string",
"seriesId": "id_8h2k4q",
"starRating": "string",
"start": "string",
"subtitle": "Fargo",
"title": "Fargo",
"year": 0
},
"reason": "string",
"revision": 0,
"ruleId": "id_8h2k4q",
"seriesId": "id_8h2k4q",
"seriesTitle": "Fargo",
"start": "string",
"state": "string",
"watched": true
},
"serverId": "id_8h2k4q"
}- protocolVersionstringrequired
resultobjectrequired
- bytesintegerrequired
channelobjectrequired
- idstringrequired
markobject
- seedstringrequired
- textstringrequired
- namestringrequired
- numberstringrequired
conflictsarray of objectrequired
- capacityintegerrequired
- demandintegerrequired
- endstringrequired
- startstringrequired
- coverageEndstringrequired
- coverageStartstringrequired
- durationMsintegerrequired
- endstringrequired
- idstringrequired
- itemIdstringrequired
- keepbooleanrequired
- libraryIdstringrequired
occurrenceobjectrequired
- channelIdstringrequired
- generationstringrequired
- programmeIdstringrequired
- sourceIdstringrequired
optionsobjectrequired
- afterMsintegerrequired
- beforeMsintegerrequired
- episodeLimitintegerrequired
- priorityintegerrequired
- retentionDaysintegerrequired
overlapsarray of objectrequired
channelobjectrequired
- idstringrequired
markobject
- seedstringrequired
- textstringrequired
- namestringrequired
- numberstringrequired
- endstringrequired
episodeobject
- displaystring
- numberinteger
- seasoninteger
- idstringrequired
- priorityintegerrequired
- ruleIdstringrequired
- startstringrequired
- statestringrequired
- titlestringrequired
- positionMsintegerrequired
programmeobjectrequired
- categoriesarray of stringrequired
- channelIdstringrequired
- descriptionstring
- endstringrequired
episodeobject
- displaystring
- numberinteger
- seasoninteger
- episodeIdstring
flagsobjectrequired
- livebooleanrequired
- newbooleanrequired
- premierebooleanrequired
- repeatbooleanrequired
- idstringrequired
- imagestring
- lineagestringrequired
- newEvidencestring
ratingobject
- systemstringrequired
- valuestringrequired
- recordingIdstring
- recordingStatestring
- seriesIdstring
- starRatingstring
- startstringrequired
- subtitlestring
- titlestringrequired
- yearinteger
- reasonstringrequired
- revisionintegerrequired
- ruleIdstringrequired
- seriesIdstring
- seriesTitlestring
- startstringrequired
- statestringrequired
- watchedboolean | any | nullrequired
- serverIdstringrequired
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}errorobjectrequired
- codestringrequired
- messagestringrequired
Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busywriter_capacity
Example request
curl -X DELETE "http://127.0.0.1:32500/v1/dvr/recordings/{id}" \
-H "Authorization: Bearer $PORTICO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"expectedRevision":0,"requestId":"id_8h2k4q"}'GET/v1/dvr/recordings/{id}Read dvr recordingsread
- Audience
- Clients · Native API
- Authorization
- API key or personal access token with the read scope, or a signed-in session
- OpenAPI operation ID
get_dvr_recordings_id
Parameters
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string | |
after | query | string |
Responses
200Successapplication/json
{
"protocolVersion": "string",
"result": {
"capacity": {
"effective": 0,
"known": true,
"mode": "string",
"planningEstimate": 0
},
"nextOverlap": "string",
"overlaps": [
{
"channel": {
"id": "id_8h2k4q",
"mark": {},
"name": "Fargo",
"number": "string"
},
"end": "string",
"episode": {
"display": "string",
"number": 0,
"season": 0
},
"id": "id_8h2k4q",
"priority": 0,
"ruleId": "id_8h2k4q",
"start": "string",
"state": "string",
"title": "Fargo"
}
],
"recording": {
"bytes": 0,
"channel": {
"id": "id_8h2k4q",
"mark": {
"seed": "string",
"text": "string"
},
"name": "Fargo",
"number": "string"
},
"conflicts": [
{
"capacity": 0,
"demand": 0,
"end": "string",
"start": "string"
}
],
"coverageEnd": "string",
"coverageStart": "string",
"durationMs": 1800000,
"end": "string",
"id": "id_8h2k4q",
"itemId": "id_8h2k4q",
"keep": true,
"libraryId": "id_8h2k4q",
"occurrence": {
"channelId": "id_8h2k4q",
"generation": "string",
"programmeId": "id_8h2k4q",
"sourceId": "id_8h2k4q"
},
"options": {
"afterMs": 1800000,
"beforeMs": 1800000,
"episodeLimit": 0,
"priority": 0,
"retentionDays": 0
},
"overlaps": [
{
"channel": {},
"end": "string",
"episode": {},
"id": "id_8h2k4q",
"priority": 0,
"ruleId": "id_8h2k4q",
"start": "string",
"state": "string",
"title": "Fargo"
}
],
"positionMs": 1800000,
"programme": {
"categories": [
"string"
],
"channelId": "id_8h2k4q",
"description": "string",
"end": "string",
"episode": {
"display": "string",
"number": 0,
"season": 0
},
"episodeId": "id_8h2k4q",
"flags": {
"live": true,
"new": true,
"premiere": true,
"repeat": true
},
"id": "id_8h2k4q",
"image": "string",
"lineage": "string",
"newEvidence": "string",
"rating": {
"system": "string",
"value": "string"
},
"recordingId": "id_8h2k4q",
"recordingState": "string",
"seriesId": "id_8h2k4q",
"starRating": "string",
"start": "string",
"subtitle": "Fargo",
"title": "Fargo",
"year": 0
},
"reason": "string",
"revision": 0,
"ruleId": "id_8h2k4q",
"seriesId": "id_8h2k4q",
"seriesTitle": "Fargo",
"start": "string",
"state": "string",
"watched": true
}
},
"serverId": "id_8h2k4q"
}- protocolVersionstringrequired
resultobjectrequired
capacityobjectrequired
- effectiveintegerrequired
- knownbooleanrequired
- modestringrequired
- planningEstimateintegerrequired
- nextOverlapstringrequired
overlapsarray of objectrequired
channelobjectrequired
- idstringrequired
markobject
- seedstringrequired
- textstringrequired
- namestringrequired
- numberstringrequired
- endstringrequired
episodeobject
- displaystring
- numberinteger
- seasoninteger
- idstringrequired
- priorityintegerrequired
- ruleIdstringrequired
- startstringrequired
- statestringrequired
- titlestringrequired
recordingobjectrequired
- bytesintegerrequired
channelobjectrequired
- idstringrequired
markobject
- seedstringrequired
- textstringrequired
- namestringrequired
- numberstringrequired
conflictsarray of objectrequired
- capacityintegerrequired
- demandintegerrequired
- endstringrequired
- startstringrequired
- coverageEndstringrequired
- coverageStartstringrequired
- durationMsintegerrequired
- endstringrequired
- idstringrequired
- itemIdstringrequired
- keepbooleanrequired
- libraryIdstringrequired
occurrenceobjectrequired
- channelIdstringrequired
- generationstringrequired
- programmeIdstringrequired
- sourceIdstringrequired
optionsobjectrequired
- afterMsintegerrequired
- beforeMsintegerrequired
- episodeLimitintegerrequired
- priorityintegerrequired
- retentionDaysintegerrequired
overlapsarray of objectrequired
channelobjectrequired
- idstringrequired
markobject
- seedstringrequired
- textstringrequired
- namestringrequired
- numberstringrequired
- endstringrequired
episodeobject
- displaystring
- numberinteger
- seasoninteger
- idstringrequired
- priorityintegerrequired
- ruleIdstringrequired
- startstringrequired
- statestringrequired
- titlestringrequired
- positionMsintegerrequired
programmeobjectrequired
- categoriesarray of stringrequired
- channelIdstringrequired
- descriptionstring
- endstringrequired
episodeobject
- displaystring
- numberinteger
- seasoninteger
- episodeIdstring
flagsobjectrequired
- livebooleanrequired
- newbooleanrequired
- premierebooleanrequired
- repeatbooleanrequired
- idstringrequired
- imagestring
- lineagestringrequired
- newEvidencestring
ratingobject
- systemstringrequired
- valuestringrequired
- recordingIdstring
- recordingStatestring
- seriesIdstring
- starRatingstring
- startstringrequired
- subtitlestring
- titlestringrequired
- yearinteger
- reasonstringrequired
- revisionintegerrequired
- ruleIdstringrequired
- seriesIdstring
- seriesTitlestring
- startstringrequired
- statestringrequired
- watchedboolean | any | nullrequired
- serverIdstringrequired
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}errorobjectrequired
- codestringrequired
- messagestringrequired
Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busy
Example request
curl -X GET "http://127.0.0.1:32500/v1/dvr/recordings/{id}" \
-H "Authorization: Bearer $PORTICO_API_KEY"PATCH/v1/dvr/recordings/{id}Change dvr recordingsplayback
- Audience
- Clients · Native API
- Authorization
- API key or personal access token with the playback scope, or a signed-in session
- OpenAPI operation ID
patch_dvr_recordings_id- Max body
- 64 KiB
Parameters
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string |
Request body application/json · required
{
"expectedRevision": 0,
"options": {
"afterMs": 1800000,
"beforeMs": 1800000,
"episodeLimit": 0,
"priority": 0,
"retentionDays": 0
},
"requestId": "id_8h2k4q"
}- expectedRevisionintegerrequired
optionsobjectrequired
- afterMsintegerrequired
- beforeMsintegerrequired
- episodeLimitintegerrequired
- priorityintegerrequired
- retentionDaysintegerrequired
- requestIdstringrequired
Responses
200Successapplication/json
{
"protocolVersion": "string",
"result": {
"bytes": 0,
"channel": {
"id": "id_8h2k4q",
"mark": {
"seed": "string",
"text": "string"
},
"name": "Fargo",
"number": "string"
},
"conflicts": [
{
"capacity": 0,
"demand": 0,
"end": "string",
"start": "string"
}
],
"coverageEnd": "string",
"coverageStart": "string",
"durationMs": 1800000,
"end": "string",
"id": "id_8h2k4q",
"itemId": "id_8h2k4q",
"keep": true,
"libraryId": "id_8h2k4q",
"occurrence": {
"channelId": "id_8h2k4q",
"generation": "string",
"programmeId": "id_8h2k4q",
"sourceId": "id_8h2k4q"
},
"options": {
"afterMs": 1800000,
"beforeMs": 1800000,
"episodeLimit": 0,
"priority": 0,
"retentionDays": 0
},
"overlaps": [
{
"channel": {
"id": "id_8h2k4q",
"mark": {},
"name": "Fargo",
"number": "string"
},
"end": "string",
"episode": {
"display": "string",
"number": 0,
"season": 0
},
"id": "id_8h2k4q",
"priority": 0,
"ruleId": "id_8h2k4q",
"start": "string",
"state": "string",
"title": "Fargo"
}
],
"positionMs": 1800000,
"programme": {
"categories": [
"string"
],
"channelId": "id_8h2k4q",
"description": "string",
"end": "string",
"episode": {
"display": "string",
"number": 0,
"season": 0
},
"episodeId": "id_8h2k4q",
"flags": {
"live": true,
"new": true,
"premiere": true,
"repeat": true
},
"id": "id_8h2k4q",
"image": "string",
"lineage": "string",
"newEvidence": "string",
"rating": {
"system": "string",
"value": "string"
},
"recordingId": "id_8h2k4q",
"recordingState": "string",
"seriesId": "id_8h2k4q",
"starRating": "string",
"start": "string",
"subtitle": "Fargo",
"title": "Fargo",
"year": 0
},
"reason": "string",
"revision": 0,
"ruleId": "id_8h2k4q",
"seriesId": "id_8h2k4q",
"seriesTitle": "Fargo",
"start": "string",
"state": "string",
"watched": true
},
"serverId": "id_8h2k4q"
}- protocolVersionstringrequired
resultobjectrequired
- bytesintegerrequired
channelobjectrequired
- idstringrequired
markobject
- seedstringrequired
- textstringrequired
- namestringrequired
- numberstringrequired
conflictsarray of objectrequired
- capacityintegerrequired
- demandintegerrequired
- endstringrequired
- startstringrequired
- coverageEndstringrequired
- coverageStartstringrequired
- durationMsintegerrequired
- endstringrequired
- idstringrequired
- itemIdstringrequired
- keepbooleanrequired
- libraryIdstringrequired
occurrenceobjectrequired
- channelIdstringrequired
- generationstringrequired
- programmeIdstringrequired
- sourceIdstringrequired
optionsobjectrequired
- afterMsintegerrequired
- beforeMsintegerrequired
- episodeLimitintegerrequired
- priorityintegerrequired
- retentionDaysintegerrequired
overlapsarray of objectrequired
channelobjectrequired
- idstringrequired
markobject
- seedstringrequired
- textstringrequired
- namestringrequired
- numberstringrequired
- endstringrequired
episodeobject
- displaystring
- numberinteger
- seasoninteger
- idstringrequired
- priorityintegerrequired
- ruleIdstringrequired
- startstringrequired
- statestringrequired
- titlestringrequired
- positionMsintegerrequired
programmeobjectrequired
- categoriesarray of stringrequired
- channelIdstringrequired
- descriptionstring
- endstringrequired
episodeobject
- displaystring
- numberinteger
- seasoninteger
- episodeIdstring
flagsobjectrequired
- livebooleanrequired
- newbooleanrequired
- premierebooleanrequired
- repeatbooleanrequired
- idstringrequired
- imagestring
- lineagestringrequired
- newEvidencestring
ratingobject
- systemstringrequired
- valuestringrequired
- recordingIdstring
- recordingStatestring
- seriesIdstring
- starRatingstring
- startstringrequired
- subtitlestring
- titlestringrequired
- yearinteger
- reasonstringrequired
- revisionintegerrequired
- ruleIdstringrequired
- seriesIdstring
- seriesTitlestring
- startstringrequired
- statestringrequired
- watchedboolean | any | nullrequired
- serverIdstringrequired
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}errorobjectrequired
- codestringrequired
- messagestringrequired
Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busywriter_capacity
Example request
curl -X PATCH "http://127.0.0.1:32500/v1/dvr/recordings/{id}" \
-H "Authorization: Bearer $PORTICO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"expectedRevision":0,"options":{"afterMs":1800000,"beforeMs":1800000,"episodeLimit":0,"priority":0,"retentionDays":0},"requestId":"id_8h2k4q"}'POST/v1/dvr/recordings/{id}/cancelRun dvr recordings cancelplayback
- Audience
- Clients · Native API
- Authorization
- API key or personal access token with the playback scope, or a signed-in session
- OpenAPI operation ID
post_dvr_recordings_id_cancel- Max body
- 64 KiB
Parameters
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string |
Request body application/json · required
{
"expectedRevision": 0,
"requestId": "id_8h2k4q"
}- expectedRevisionintegerrequired
- requestIdstringrequired
Responses
200Successapplication/json
{
"protocolVersion": "string",
"result": {
"bytes": 0,
"channel": {
"id": "id_8h2k4q",
"mark": {
"seed": "string",
"text": "string"
},
"name": "Fargo",
"number": "string"
},
"conflicts": [
{
"capacity": 0,
"demand": 0,
"end": "string",
"start": "string"
}
],
"coverageEnd": "string",
"coverageStart": "string",
"durationMs": 1800000,
"end": "string",
"id": "id_8h2k4q",
"itemId": "id_8h2k4q",
"keep": true,
"libraryId": "id_8h2k4q",
"occurrence": {
"channelId": "id_8h2k4q",
"generation": "string",
"programmeId": "id_8h2k4q",
"sourceId": "id_8h2k4q"
},
"options": {
"afterMs": 1800000,
"beforeMs": 1800000,
"episodeLimit": 0,
"priority": 0,
"retentionDays": 0
},
"overlaps": [
{
"channel": {
"id": "id_8h2k4q",
"mark": {},
"name": "Fargo",
"number": "string"
},
"end": "string",
"episode": {
"display": "string",
"number": 0,
"season": 0
},
"id": "id_8h2k4q",
"priority": 0,
"ruleId": "id_8h2k4q",
"start": "string",
"state": "string",
"title": "Fargo"
}
],
"positionMs": 1800000,
"programme": {
"categories": [
"string"
],
"channelId": "id_8h2k4q",
"description": "string",
"end": "string",
"episode": {
"display": "string",
"number": 0,
"season": 0
},
"episodeId": "id_8h2k4q",
"flags": {
"live": true,
"new": true,
"premiere": true,
"repeat": true
},
"id": "id_8h2k4q",
"image": "string",
"lineage": "string",
"newEvidence": "string",
"rating": {
"system": "string",
"value": "string"
},
"recordingId": "id_8h2k4q",
"recordingState": "string",
"seriesId": "id_8h2k4q",
"starRating": "string",
"start": "string",
"subtitle": "Fargo",
"title": "Fargo",
"year": 0
},
"reason": "string",
"revision": 0,
"ruleId": "id_8h2k4q",
"seriesId": "id_8h2k4q",
"seriesTitle": "Fargo",
"start": "string",
"state": "string",
"watched": true
},
"serverId": "id_8h2k4q"
}- protocolVersionstringrequired
resultobjectrequired
- bytesintegerrequired
channelobjectrequired
- idstringrequired
markobject
- seedstringrequired
- textstringrequired
- namestringrequired
- numberstringrequired
conflictsarray of objectrequired
- capacityintegerrequired
- demandintegerrequired
- endstringrequired
- startstringrequired
- coverageEndstringrequired
- coverageStartstringrequired
- durationMsintegerrequired
- endstringrequired
- idstringrequired
- itemIdstringrequired
- keepbooleanrequired
- libraryIdstringrequired
occurrenceobjectrequired
- channelIdstringrequired
- generationstringrequired
- programmeIdstringrequired
- sourceIdstringrequired
optionsobjectrequired
- afterMsintegerrequired
- beforeMsintegerrequired
- episodeLimitintegerrequired
- priorityintegerrequired
- retentionDaysintegerrequired
overlapsarray of objectrequired
channelobjectrequired
- idstringrequired
markobject
- seedstringrequired
- textstringrequired
- namestringrequired
- numberstringrequired
- endstringrequired
episodeobject
- displaystring
- numberinteger
- seasoninteger
- idstringrequired
- priorityintegerrequired
- ruleIdstringrequired
- startstringrequired
- statestringrequired
- titlestringrequired
- positionMsintegerrequired
programmeobjectrequired
- categoriesarray of stringrequired
- channelIdstringrequired
- descriptionstring
- endstringrequired
episodeobject
- displaystring
- numberinteger
- seasoninteger
- episodeIdstring
flagsobjectrequired
- livebooleanrequired
- newbooleanrequired
- premierebooleanrequired
- repeatbooleanrequired
- idstringrequired
- imagestring
- lineagestringrequired
- newEvidencestring
ratingobject
- systemstringrequired
- valuestringrequired
- recordingIdstring
- recordingStatestring
- seriesIdstring
- starRatingstring
- startstringrequired
- subtitlestring
- titlestringrequired
- yearinteger
- reasonstringrequired
- revisionintegerrequired
- ruleIdstringrequired
- seriesIdstring
- seriesTitlestring
- startstringrequired
- statestringrequired
- watchedboolean | any | nullrequired
- serverIdstringrequired
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}errorobjectrequired
- codestringrequired
- messagestringrequired
Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busywriter_capacity
Example request
curl -X POST "http://127.0.0.1:32500/v1/dvr/recordings/{id}/cancel" \
-H "Authorization: Bearer $PORTICO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"expectedRevision":0,"requestId":"id_8h2k4q"}'GET/v1/dvr/recordings/{id}/delete-previewRead dvr recordings delete previewread
- Audience
- Clients · Native API
- Authorization
- API key or personal access token with the read scope, or a signed-in session
- OpenAPI operation ID
get_dvr_recordings_id_delete_preview
Parameters
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string |
Responses
200Successapplication/json
{
"protocolVersion": "string",
"result": {
"activeReaders": true,
"bytes": 0,
"keep": true,
"recordingId": "id_8h2k4q",
"result": "string",
"revision": 0
},
"serverId": "id_8h2k4q"
}- protocolVersionstringrequired
resultobjectrequired
- activeReadersbooleanrequired
- bytesintegerrequired
- keepbooleanrequired
- recordingIdstringrequired
- resultstringrequired
- revisionintegerrequired
- serverIdstringrequired
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}errorobjectrequired
- codestringrequired
- messagestringrequired
Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busy
Example request
curl -X GET "http://127.0.0.1:32500/v1/dvr/recordings/{id}/delete-preview" \
-H "Authorization: Bearer $PORTICO_API_KEY"GET/v1/dvr/recordings/{id}/imageRead retained recording programme imageread
- Audience
- Clients · Native API
- Authorization
- API key or personal access token with the read scope, or a signed-in session
- OpenAPI operation ID
get_dvr_recordings_id_image
Parameters
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string | |
ld | query | string | |
sd | query | string | |
size | query | string | |
w | query | string |
Responses
200Successapplication/octet-stream
"string"string (binary)
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}errorobjectrequired
- codestringrequired
- messagestringrequired
Error codesunauthorizednot_permittednot_foundinternaldatabase_busy
Example request
curl -X GET "http://127.0.0.1:32500/v1/dvr/recordings/{id}/image" \
-H "Authorization: Bearer $PORTICO_API_KEY"PUT/v1/dvr/recordings/{id}/keepSave dvr recordings keepplayback
- Audience
- Clients · Native API
- Authorization
- API key or personal access token with the playback scope, or a signed-in session
- OpenAPI operation ID
put_dvr_recordings_id_keep- Max body
- 64 KiB
Parameters
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string |
Request body application/json · required
{
"expectedRevision": 0,
"keep": true,
"requestId": "id_8h2k4q"
}- expectedRevisionintegerrequired
- keepbooleanrequired
- requestIdstringrequired
Responses
200Successapplication/json
{
"protocolVersion": "string",
"result": {
"bytes": 0,
"channel": {
"id": "id_8h2k4q",
"mark": {
"seed": "string",
"text": "string"
},
"name": "Fargo",
"number": "string"
},
"conflicts": [
{
"capacity": 0,
"demand": 0,
"end": "string",
"start": "string"
}
],
"coverageEnd": "string",
"coverageStart": "string",
"durationMs": 1800000,
"end": "string",
"id": "id_8h2k4q",
"itemId": "id_8h2k4q",
"keep": true,
"libraryId": "id_8h2k4q",
"occurrence": {
"channelId": "id_8h2k4q",
"generation": "string",
"programmeId": "id_8h2k4q",
"sourceId": "id_8h2k4q"
},
"options": {
"afterMs": 1800000,
"beforeMs": 1800000,
"episodeLimit": 0,
"priority": 0,
"retentionDays": 0
},
"overlaps": [
{
"channel": {
"id": "id_8h2k4q",
"mark": {},
"name": "Fargo",
"number": "string"
},
"end": "string",
"episode": {
"display": "string",
"number": 0,
"season": 0
},
"id": "id_8h2k4q",
"priority": 0,
"ruleId": "id_8h2k4q",
"start": "string",
"state": "string",
"title": "Fargo"
}
],
"positionMs": 1800000,
"programme": {
"categories": [
"string"
],
"channelId": "id_8h2k4q",
"description": "string",
"end": "string",
"episode": {
"display": "string",
"number": 0,
"season": 0
},
"episodeId": "id_8h2k4q",
"flags": {
"live": true,
"new": true,
"premiere": true,
"repeat": true
},
"id": "id_8h2k4q",
"image": "string",
"lineage": "string",
"newEvidence": "string",
"rating": {
"system": "string",
"value": "string"
},
"recordingId": "id_8h2k4q",
"recordingState": "string",
"seriesId": "id_8h2k4q",
"starRating": "string",
"start": "string",
"subtitle": "Fargo",
"title": "Fargo",
"year": 0
},
"reason": "string",
"revision": 0,
"ruleId": "id_8h2k4q",
"seriesId": "id_8h2k4q",
"seriesTitle": "Fargo",
"start": "string",
"state": "string",
"watched": true
},
"serverId": "id_8h2k4q"
}- protocolVersionstringrequired
resultobjectrequired
- bytesintegerrequired
channelobjectrequired
- idstringrequired
markobject
- seedstringrequired
- textstringrequired
- namestringrequired
- numberstringrequired
conflictsarray of objectrequired
- capacityintegerrequired
- demandintegerrequired
- endstringrequired
- startstringrequired
- coverageEndstringrequired
- coverageStartstringrequired
- durationMsintegerrequired
- endstringrequired
- idstringrequired
- itemIdstringrequired
- keepbooleanrequired
- libraryIdstringrequired
occurrenceobjectrequired
- channelIdstringrequired
- generationstringrequired
- programmeIdstringrequired
- sourceIdstringrequired
optionsobjectrequired
- afterMsintegerrequired
- beforeMsintegerrequired
- episodeLimitintegerrequired
- priorityintegerrequired
- retentionDaysintegerrequired
overlapsarray of objectrequired
channelobjectrequired
- idstringrequired
markobject
- seedstringrequired
- textstringrequired
- namestringrequired
- numberstringrequired
- endstringrequired
episodeobject
- displaystring
- numberinteger
- seasoninteger
- idstringrequired
- priorityintegerrequired
- ruleIdstringrequired
- startstringrequired
- statestringrequired
- titlestringrequired
- positionMsintegerrequired
programmeobjectrequired
- categoriesarray of stringrequired
- channelIdstringrequired
- descriptionstring
- endstringrequired
episodeobject
- displaystring
- numberinteger
- seasoninteger
- episodeIdstring
flagsobjectrequired
- livebooleanrequired
- newbooleanrequired
- premierebooleanrequired
- repeatbooleanrequired
- idstringrequired
- imagestring
- lineagestringrequired
- newEvidencestring
ratingobject
- systemstringrequired
- valuestringrequired
- recordingIdstring
- recordingStatestring
- seriesIdstring
- starRatingstring
- startstringrequired
- subtitlestring
- titlestringrequired
- yearinteger
- reasonstringrequired
- revisionintegerrequired
- ruleIdstringrequired
- seriesIdstring
- seriesTitlestring
- startstringrequired
- statestringrequired
- watchedboolean | any | nullrequired
- serverIdstringrequired
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}errorobjectrequired
- codestringrequired
- messagestringrequired
Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busywriter_capacity
Example request
curl -X PUT "http://127.0.0.1:32500/v1/dvr/recordings/{id}/keep" \
-H "Authorization: Bearer $PORTICO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"expectedRevision":0,"keep":true,"requestId":"id_8h2k4q"}'DELETE/v1/dvr/rules/{id}Remove dvr rulesplayback
- Audience
- Clients · Native API
- Authorization
- API key or personal access token with the playback scope, or a signed-in session
- OpenAPI operation ID
delete_dvr_rules_id- Max body
- 64 KiB
Parameters
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string |
Request body application/json · required
{
"expectedRevision": 0,
"future": "string",
"requestId": "id_8h2k4q"
}- expectedRevisionintegerrequired
- futurestringrequired
- requestIdstringrequired
Responses
200Successapplication/json
{
"protocolVersion": "string",
"result": {
"key": true
},
"serverId": "id_8h2k4q"
}- protocolVersionstringrequired
- resultobjectrequired
- serverIdstringrequired
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}errorobjectrequired
- codestringrequired
- messagestringrequired
Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busywriter_capacity
Example request
curl -X DELETE "http://127.0.0.1:32500/v1/dvr/rules/{id}" \
-H "Authorization: Bearer $PORTICO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"expectedRevision":0,"future":"string","requestId":"id_8h2k4q"}'PUT/v1/dvr/rules/{id}Save dvr rulesplayback
- Audience
- Clients · Native API
- Authorization
- API key or personal access token with the playback scope, or a signed-in session
- OpenAPI operation ID
put_dvr_rules_id- Max body
- 64 KiB
Parameters
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string |
Request body application/json · required
{
"anchor": {
"channelId": "id_8h2k4q",
"generation": "string",
"programmeId": "id_8h2k4q",
"sourceId": "id_8h2k4q"
},
"config": {
"allowedChannels": [
"string"
],
"blockedChannels": [
"string"
],
"blockedKeywords": [
"string"
],
"channelId": "id_8h2k4q",
"enabled": true,
"episodes": "string",
"keywords": [
"string"
],
"matchKind": "string",
"name": "Fargo",
"options": {
"afterMs": 1800000,
"beforeMs": 1800000,
"episodeLimit": 0,
"priority": 0,
"retentionDays": 0
},
"seriesId": "id_8h2k4q",
"sourceId": "id_8h2k4q",
"title": "Fargo"
},
"expectedRevision": 0,
"id": "id_8h2k4q",
"requestId": "id_8h2k4q",
"useDefaults": true
}anchorobjectrequired
- channelIdstringrequired
- generationstringrequired
- programmeIdstringrequired
- sourceIdstringrequired
configobjectrequired
- allowedChannelsarray of stringrequired
- blockedChannelsarray of stringrequired
- blockedKeywordsarray of stringrequired
- channelIdstringrequired
- enabledbooleanrequired
- episodesstringrequired
- keywordsarray of stringrequired
- matchKindstringrequired
- namestringrequired
optionsobjectrequired
- afterMsintegerrequired
- beforeMsintegerrequired
- episodeLimitintegerrequired
- priorityintegerrequired
- retentionDaysintegerrequired
- seriesIdstringrequired
- sourceIdstringrequired
- titlestringrequired
- expectedRevisionintegerrequired
- idstringrequired
- requestIdstringrequired
- useDefaultsbooleanrequired
Responses
200Successapplication/json
{
"protocolVersion": "string",
"result": {
"config": {
"allowedChannels": [
"string"
],
"blockedChannels": [
"string"
],
"blockedKeywords": [
"string"
],
"channelId": "id_8h2k4q",
"enabled": true,
"episodes": "string",
"keywords": [
"string"
],
"matchKind": "string",
"name": "Fargo",
"options": {
"afterMs": 1800000,
"beforeMs": 1800000,
"episodeLimit": 0,
"priority": 0,
"retentionDays": 0
},
"seriesId": "id_8h2k4q",
"sourceId": "id_8h2k4q",
"title": "Fargo"
},
"diagnostic": "string",
"id": "id_8h2k4q",
"reconcileState": "string",
"revision": 0,
"summary": {
"channel": {
"id": "id_8h2k4q",
"mark": {
"seed": "string",
"text": "string"
},
"name": "Fargo",
"number": "string"
},
"conflicts": 0,
"matchingTonight": 0,
"next": {
"categories": [
"string"
],
"channelId": "id_8h2k4q",
"description": "string",
"end": "string",
"episode": {
"display": "string",
"number": 0,
"season": 0
},
"episodeId": "id_8h2k4q",
"flags": {
"live": true,
"new": true,
"premiere": true,
"repeat": true
},
"id": "id_8h2k4q",
"image": "string",
"lineage": "string",
"newEvidence": "string",
"rating": {
"system": "string",
"value": "string"
},
"recordingId": "id_8h2k4q",
"recordingState": "string",
"seriesId": "id_8h2k4q",
"starRating": "string",
"start": "string",
"subtitle": "Fargo",
"title": "Fargo",
"year": 0
},
"recorded": 0,
"upcoming": 0
},
"updatedAt": "2026-10-18T19:30:00Z"
},
"serverId": "id_8h2k4q"
}- protocolVersionstringrequired
resultobjectrequired
configobjectrequired
- allowedChannelsarray of stringrequired
- blockedChannelsarray of stringrequired
- blockedKeywordsarray of stringrequired
- channelIdstringrequired
- enabledbooleanrequired
- episodesstringrequired
- keywordsarray of stringrequired
- matchKindstringrequired
- namestringrequired
optionsobjectrequired
- afterMsintegerrequired
- beforeMsintegerrequired
- episodeLimitintegerrequired
- priorityintegerrequired
- retentionDaysintegerrequired
- seriesIdstringrequired
- sourceIdstringrequired
- titlestringrequired
- diagnosticstringrequired
- idstringrequired
- reconcileStatestringrequired
- revisionintegerrequired
summaryobjectrequired
channelobjectrequired
- idstringrequired
markobject
- seedstringrequired
- textstringrequired
- namestringrequired
- numberstringrequired
- conflictsintegerrequired
- matchingTonightintegerrequired
nextobject
- categoriesarray of stringrequired
- channelIdstringrequired
- descriptionstring
- endstringrequired
episodeobject
- displaystring
- numberinteger
- seasoninteger
- episodeIdstring
flagsobjectrequired
- livebooleanrequired
- newbooleanrequired
- premierebooleanrequired
- repeatbooleanrequired
- idstringrequired
- imagestring
- lineagestringrequired
- newEvidencestring
ratingobject
- systemstringrequired
- valuestringrequired
- recordingIdstring
- recordingStatestring
- seriesIdstring
- starRatingstring
- startstringrequired
- subtitlestring
- titlestringrequired
- yearinteger
- recordedintegerrequired
- upcomingintegerrequired
- updatedAtstringrequired
- serverIdstringrequired
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}errorobjectrequired
- codestringrequired
- messagestringrequired
Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busywriter_capacity
Example request
curl -X PUT "http://127.0.0.1:32500/v1/dvr/rules/{id}" \
-H "Authorization: Bearer $PORTICO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"anchor": {
"channelId": "id_8h2k4q",
"generation": "string",
"programmeId": "id_8h2k4q",
"sourceId": "id_8h2k4q"
},
"config": {
"allowedChannels": [
"string"
],
"blockedChannels": [
"string"
],
"blockedKeywords": [
"string"
],
"channelId": "id_8h2k4q",
"enabled": true,
"episodes": "string",
"keywords": [
"string"
],
"matchKind": "string",
"name": "Fargo",
"options": {
"afterMs": 1800000,
"beforeMs": 1800000,
"episodeLimit": 0,
"priority": 0,
"retentionDays": 0
},
"seriesId": "id_8h2k4q",
"sourceId": "id_8h2k4q",
"title": "Fargo"
},
"expectedRevision": 0,
"id": "id_8h2k4q",
"requestId": "id_8h2k4q",
"useDefaults": true
}'POST/v1/dvr/rules/previewRun dvr rules previewplayback
- Audience
- Clients · Native API
- Authorization
- API key or personal access token with the playback scope, or a signed-in session
- OpenAPI operation ID
post_dvr_rules_preview- Max body
- 64 KiB
Request body application/json · required
{
"allowedChannels": [
"string"
],
"blockedChannels": [
"string"
],
"blockedKeywords": [
"string"
],
"channelId": "id_8h2k4q",
"enabled": true,
"episodes": "string",
"keywords": [
"string"
],
"matchKind": "string",
"name": "Fargo",
"options": {
"afterMs": 1800000,
"beforeMs": 1800000,
"episodeLimit": 0,
"priority": 0,
"retentionDays": 0
},
"seriesId": "id_8h2k4q",
"sourceId": "id_8h2k4q",
"title": "Fargo"
}- allowedChannelsarray of stringrequired
- blockedChannelsarray of stringrequired
- blockedKeywordsarray of stringrequired
- channelIdstringrequired
- enabledbooleanrequired
- episodesstringrequired
- keywordsarray of stringrequired
- matchKindstringrequired
- namestringrequired
optionsobjectrequired
- afterMsintegerrequired
- beforeMsintegerrequired
- episodeLimitintegerrequired
- priorityintegerrequired
- retentionDaysintegerrequired
- seriesIdstringrequired
- sourceIdstringrequired
- titlestringrequired
Responses
200Successapplication/json
{
"protocolVersion": "string",
"result": {
"capacity": {
"effective": 0,
"known": true,
"mode": "string",
"planningEstimate": 0
},
"generation": "string",
"matches": 0,
"sample": [
{
"categories": [
"string"
],
"channelId": "id_8h2k4q",
"description": "string",
"end": "string",
"episode": {
"display": "string",
"number": 0,
"season": 0
},
"episodeId": "id_8h2k4q",
"flags": {
"live": true,
"new": true,
"premiere": true,
"repeat": true
},
"id": "id_8h2k4q",
"image": "string",
"lineage": "string",
"newEvidence": "string",
"rating": {
"system": "string",
"value": "string"
},
"recordingId": "id_8h2k4q",
"recordingState": "string",
"seriesId": "id_8h2k4q",
"starRating": "string",
"start": "string",
"subtitle": "Fargo",
"title": "Fargo",
"year": 0
}
],
"unknownNewEvidence": 0
},
"serverId": "id_8h2k4q"
}- protocolVersionstringrequired
resultobjectrequired
capacityobjectrequired
- effectiveintegerrequired
- knownbooleanrequired
- modestringrequired
- planningEstimateintegerrequired
- generationstringrequired
- matchesintegerrequired
samplearray of objectrequired
- categoriesarray of stringrequired
- channelIdstringrequired
- descriptionstring
- endstringrequired
episodeobject
- displaystring
- numberinteger
- seasoninteger
- episodeIdstring
flagsobjectrequired
- livebooleanrequired
- newbooleanrequired
- premierebooleanrequired
- repeatbooleanrequired
- idstringrequired
- imagestring
- lineagestringrequired
- newEvidencestring
ratingobject
- systemstringrequired
- valuestringrequired
- recordingIdstring
- recordingStatestring
- seriesIdstring
- starRatingstring
- startstringrequired
- subtitlestring
- titlestringrequired
- yearinteger
- unknownNewEvidenceintegerrequired
- serverIdstringrequired
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}errorobjectrequired
- codestringrequired
- messagestringrequired
Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busywriter_capacity
Example request
curl -X POST "http://127.0.0.1:32500/v1/dvr/rules/preview" \
-H "Authorization: Bearer $PORTICO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"allowedChannels": [
"string"
],
"blockedChannels": [
"string"
],
"blockedKeywords": [
"string"
],
"channelId": "id_8h2k4q",
"enabled": true,
"episodes": "string",
"keywords": [
"string"
],
"matchKind": "string",
"name": "Fargo",
"options": {
"afterMs": 1800000,
"beforeMs": 1800000,
"episodeLimit": 0,
"priority": 0,
"retentionDays": 0
},
"seriesId": "id_8h2k4q",
"sourceId": "id_8h2k4q",
"title": "Fargo"
}'GET/v1/dvr/storageRead dvr storageread
- Audience
- Clients · Native API
- Authorization
- API key or personal access token with the read scope, or a signed-in session
- OpenAPI operation ID
get_dvr_storage
Responses
200Successapplication/json
{
"protocolVersion": "string",
"result": {
"captureAvailable": true,
"forecastBytes": 0,
"forecastDescription": "string",
"forecastHours": 0,
"measurement": {
"freeBytes": 0,
"measuredAt": "2026-10-18T19:30:00Z",
"reservedBytes": 0,
"usedBytes": 0,
"writeHealthy": true
},
"pendingDeleteBytes": 0,
"policy": {
"capBytes": 0,
"episodeLimit": 0,
"floorBytes": 0,
"retentionDays": 0,
"revision": 0
},
"warning": "string"
},
"serverId": "id_8h2k4q"
}- protocolVersionstringrequired
resultobjectrequired
- captureAvailablebooleanrequired
- forecastBytesintegerrequired
- forecastDescriptionstringrequired
- forecastHoursintegerrequired
measurementobjectrequired
- freeBytesintegerrequired
- measuredAtstringrequired
- reservedBytesintegerrequired
- usedBytesintegerrequired
- writeHealthybooleanrequired
- pendingDeleteBytesintegerrequired
policyobjectrequired
- capBytesintegerrequired
- episodeLimitintegerrequired
- floorBytesintegerrequired
- retentionDaysintegerrequired
- revisionintegerrequired
- warningstringrequired
- serverIdstringrequired
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}errorobjectrequired
- codestringrequired
- messagestringrequired
Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busy
Example request
curl -X GET "http://127.0.0.1:32500/v1/dvr/storage" \
-H "Authorization: Bearer $PORTICO_API_KEY"PUT/v1/dvr/storageSave dvr storageadmin
- Audience
- Clients · Native API
- Authorization
- API key or personal access token with the admin scope, or a signed-in session
- OpenAPI operation ID
put_dvr_storage- Max body
- 64 KiB
Request body application/json · required
{
"expectedRevision": 0,
"policy": {
"capBytes": 0,
"episodeLimit": 0,
"floorBytes": 0,
"retentionDays": 0,
"revision": 0
},
"requestId": "id_8h2k4q"
}- expectedRevisionintegerrequired
policyobjectrequired
- capBytesintegerrequired
- episodeLimitintegerrequired
- floorBytesintegerrequired
- retentionDaysintegerrequired
- revisionintegerrequired
- requestIdstringrequired
Responses
200Successapplication/json
{
"protocolVersion": "string",
"result": {
"capBytes": 0,
"episodeLimit": 0,
"floorBytes": 0,
"retentionDays": 0,
"revision": 0
},
"serverId": "id_8h2k4q"
}- protocolVersionstringrequired
resultobjectrequired
- capBytesintegerrequired
- episodeLimitintegerrequired
- floorBytesintegerrequired
- retentionDaysintegerrequired
- revisionintegerrequired
- serverIdstringrequired
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}errorobjectrequired
- codestringrequired
- messagestringrequired
Error codesinvalid_requestunauthorizednot_permittednot_foundinternaldatabase_busywriter_capacity
Example request
curl -X PUT "http://127.0.0.1:32500/v1/dvr/storage" \
-H "Authorization: Bearer $PORTICO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"expectedRevision":0,"policy":{"capBytes":0,"episodeLimit":0,"floorBytes":0,"retentionDays":0,"revision":0},"requestId":"id_8h2k4q"}'GET/v1/dvr/summaryRead recording summaryread
- Audience
- Clients · Native API
- Authorization
- API key or personal access token with the read scope, or a signed-in session
- OpenAPI operation ID
get_dvr_summary
Responses
200Successapplication/json
{
"protocolVersion": "string",
"result": {
"conflicts": 0,
"groups": 0,
"recorded": 0,
"rules": 0,
"unwatched": 0,
"upcoming": 0
},
"serverId": "id_8h2k4q"
}- protocolVersionstringrequired
resultobjectrequired
- conflictsintegerrequired
- groupsintegerrequired
- recordedintegerrequired
- rulesintegerrequired
- unwatchedintegerrequired
- upcomingintegerrequired
- serverIdstringrequired
defaultRequest refused or unavailableapplication/json
{
"error": {
"code": "string",
"message": "string"
}
}errorobjectrequired
- codestringrequired
- messagestringrequired
Error codesinvalid_requestunauthorizednot_permittedinternaldatabase_busy
Example request
curl -X GET "http://127.0.0.1:32500/v1/dvr/summary" \
-H "Authorization: Bearer $PORTICO_API_KEY"No operations match that filter.