Requests
26 addresses. Not promised — they belong to the internals and can change with any release. If you need something to stay put, use the promised thirteen.
GET
/api/admin/blocklist
may change
The blocklist
Titles nobody may request. Administrators only.
Fields and shape
Response
media_typemovie | tv requiredtmdb_idnumber requiredtitlestring requiredposter_urlstring or null requiredreasonstring or null requiredcreated_attimestamp (ISO 8601) requiredResponse shape
[
{
"media_type": "movie | tv",
"tmdb_id": "number",
"title": "string",
"poster_url": "string | null",
"reason": "string | null",
"created_at": "ISO 8601"
}
]
POST
/api/admin/blocklist
may change
Block a title
Blocking something twice is not an error.
Fields and shape
Request body
media_typemovie | tv requiredtmdb_idnumber requiredtitlestringposter_urlstring or nullreasonstring or nullResponse
media_typemovie | tv requiredtmdb_idnumber requiredtitlestring requiredposter_urlstring or null requiredreasonstring or null requiredcreated_attimestamp (ISO 8601) requiredResponse shape
{
"media_type": "movie | tv",
"tmdb_id": "number",
"title": "string",
"poster_url": "string | null",
"reason": "string | null",
"created_at": "ISO 8601"
}
DELETE
/api/admin/blocklist/{media_type}/{tmdb_id}
may change
Unblock a title
The title can be requested again afterwards.
Fields and shape
Parameters
media_typemovie | tv path requiredtmdb_idnumber path required
GET
/api/admin/requests
may change
All requests
Every request from every account, optionally filtered by state, media type or account. For approvers and administrators.
Fields and shape
Parameters
statuspending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred or null queryuser_idnumber or null queryfeedbackboolean queryfrom_watchlistboolean queryResponse
idnumber requiredmedia_typemovie | tv requiredtierstandard | uhd requiredtmdb_idnumber requiredtitlestring requiredposter_pathstring or null requiredrelease_datestring or null requiredstatuspending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred requiredquality_profile_idnumber or null requiredroot_folder_pathstring or null requiredseasonnumber or null requiredfrom_watchlistboolean requiredrequested_attimestamp (ISO 8601) requiredapproved_attimestamp (ISO 8601) or null requiredcompleted_attimestamp (ISO 8601) or null requiredapproved_by_namestring or nulllast_checked_attimestamp (ISO 8601) or nullrejection_reasonstring or null requirederror_messagestring or null requiredratingnumber or null requiredfeedbackstring or null requiredrated_attimestamp (ISO 8601) or null requiredrating_outdatedbooleanfeedback_replystring or null requiredreplied_attimestamp (ISO 8601) or null requireduser_idnumber requiredusernamestring requireddisplay_namestring or null requiredavatar_urlstring or null requiredstorageAnfragerSpeicher or nullrequester_subscriptionslist of stringResponse shape
[
{
"id": "number",
"media_type": "movie | tv",
"tier": "standard | uhd",
"tmdb_id": "number",
"title": "string",
"poster_path": "string | null",
"release_date": "string | null",
"status": "pending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred",
"quality_profile_id": "number | null",
"root_folder_path": "string | null",
"season": "number | null",
"from_watchlist": "boolean",
"requested_at": "ISO 8601",
"approved_at": "ISO 8601 | null"
}
]
POST
/api/admin/requests/approve-all/{user_id}
may change
Approve everything from one account
Approves all open requests of one account at once. If handing one over to Radarr or Sonarr fails, the rest still go through - one unreachable instance should not block the whole batch.
Fields and shape
Parameters
user_idnumber path requiredRequest body
movieTargetChoice or nulltvTargetChoice or nullmovie_uhdTargetChoice or nulltv_uhdTargetChoice or nullResponse
idnumber requiredmedia_typemovie | tv requiredtierstandard | uhd requiredtmdb_idnumber requiredtitlestring requiredposter_pathstring or null requiredrelease_datestring or null requiredstatuspending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred requiredquality_profile_idnumber or null requiredroot_folder_pathstring or null requiredseasonnumber or null requiredfrom_watchlistboolean requiredrequested_attimestamp (ISO 8601) requiredapproved_attimestamp (ISO 8601) or null requiredcompleted_attimestamp (ISO 8601) or null requiredapproved_by_namestring or nulllast_checked_attimestamp (ISO 8601) or nullrejection_reasonstring or null requirederror_messagestring or null requiredratingnumber or null requiredfeedbackstring or null requiredrated_attimestamp (ISO 8601) or null requiredrating_outdatedbooleanfeedback_replystring or null requiredreplied_attimestamp (ISO 8601) or null requireduser_idnumber requiredusernamestring requireddisplay_namestring or null requiredavatar_urlstring or null requiredstorageAnfragerSpeicher or nullrequester_subscriptionslist of stringResponse shape
[
{
"id": "number",
"media_type": "movie | tv",
"tier": "standard | uhd",
"tmdb_id": "number",
"title": "string",
"poster_path": "string | null",
"release_date": "string | null",
"status": "pending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred",
"quality_profile_id": "number | null",
"root_folder_path": "string | null",
"season": "number | null",
"from_watchlist": "boolean",
"requested_at": "ISO 8601",
"approved_at": "ISO 8601 | null"
}
]
GET
/api/admin/requests/pending/count
may change
How many requests await a decision
A plain number for the menu badge. Restricted to accounts that may decide - a token inherits that from its owner.
DELETE
/api/admin/requests/{request_id}
may change
Remove a request from the overview
Deletes the entry in Nexview only - in Radarr or Sonarr the title stays. Use cancel if the download should stop too.
Fields and shape
Parameters
request_idnumber path required
POST
/api/admin/requests/{request_id}/approve
may change
Approve a request
Hands the title over to Radarr or Sonarr and starts the download. The requester is notified.
Fields and shape
Parameters
request_idnumber path requiredRequest body
root_folder_pathstring or nullquality_profile_idnumber or nullResponse
idnumber requiredmedia_typemovie | tv requiredtierstandard | uhd requiredtmdb_idnumber requiredtitlestring requiredposter_pathstring or null requiredrelease_datestring or null requiredstatuspending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred requiredquality_profile_idnumber or null requiredroot_folder_pathstring or null requiredseasonnumber or null requiredfrom_watchlistboolean requiredrequested_attimestamp (ISO 8601) requiredapproved_attimestamp (ISO 8601) or null requiredcompleted_attimestamp (ISO 8601) or null requiredapproved_by_namestring or nulllast_checked_attimestamp (ISO 8601) or nullrejection_reasonstring or null requirederror_messagestring or null requiredratingnumber or null requiredfeedbackstring or null requiredrated_attimestamp (ISO 8601) or null requiredrating_outdatedbooleanfeedback_replystring or null requiredreplied_attimestamp (ISO 8601) or null requireduser_idnumber requiredusernamestring requireddisplay_namestring or null requiredavatar_urlstring or null requiredstorageAnfragerSpeicher or nullrequester_subscriptionslist of stringResponse shape
{
"id": "number",
"media_type": "movie | tv",
"tier": "standard | uhd",
"tmdb_id": "number",
"title": "string",
"poster_path": "string | null",
"release_date": "string | null",
"status": "pending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred",
"quality_profile_id": "number | null",
"root_folder_path": "string | null",
"season": "number | null",
"from_watchlist": "boolean",
"requested_at": "ISO 8601",
"approved_at": "ISO 8601 | null"
}
POST
/api/admin/requests/{request_id}/cancel
may change
Cancel a running request
Stops the request and deletes the title in Radarr or Sonarr, freeing the requester's quota again.
Fields and shape
Parameters
request_idnumber path requiredResponse
idnumber requiredmedia_typemovie | tv requiredtierstandard | uhd requiredtmdb_idnumber requiredtitlestring requiredposter_pathstring or null requiredrelease_datestring or null requiredstatuspending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred requiredquality_profile_idnumber or null requiredroot_folder_pathstring or null requiredseasonnumber or null requiredfrom_watchlistboolean requiredrequested_attimestamp (ISO 8601) requiredapproved_attimestamp (ISO 8601) or null requiredcompleted_attimestamp (ISO 8601) or null requiredapproved_by_namestring or nulllast_checked_attimestamp (ISO 8601) or nullrejection_reasonstring or null requirederror_messagestring or null requiredratingnumber or null requiredfeedbackstring or null requiredrated_attimestamp (ISO 8601) or null requiredrating_outdatedbooleanfeedback_replystring or null requiredreplied_attimestamp (ISO 8601) or null requireduser_idnumber requiredusernamestring requireddisplay_namestring or null requiredavatar_urlstring or null requiredstorageAnfragerSpeicher or nullrequester_subscriptionslist of stringResponse shape
{
"id": "number",
"media_type": "movie | tv",
"tier": "standard | uhd",
"tmdb_id": "number",
"title": "string",
"poster_path": "string | null",
"release_date": "string | null",
"status": "pending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred",
"quality_profile_id": "number | null",
"root_folder_path": "string | null",
"season": "number | null",
"from_watchlist": "boolean",
"requested_at": "ISO 8601",
"approved_at": "ISO 8601 | null"
}
POST
/api/admin/requests/{request_id}/defer
may change
Put a request aside
"Yes in principle, just not now." Meant for the account that is over its quota: the approver wants neither to say no nor to wave it through. A deferred request comes back on its own at the next period change.
Fields and shape
Parameters
request_idnumber path requiredResponse
idnumber requiredmedia_typemovie | tv requiredtierstandard | uhd requiredtmdb_idnumber requiredtitlestring requiredposter_pathstring or null requiredrelease_datestring or null requiredstatuspending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred requiredquality_profile_idnumber or null requiredroot_folder_pathstring or null requiredseasonnumber or null requiredfrom_watchlistboolean requiredrequested_attimestamp (ISO 8601) requiredapproved_attimestamp (ISO 8601) or null requiredcompleted_attimestamp (ISO 8601) or null requiredapproved_by_namestring or nulllast_checked_attimestamp (ISO 8601) or nullrejection_reasonstring or null requirederror_messagestring or null requiredratingnumber or null requiredfeedbackstring or null requiredrated_attimestamp (ISO 8601) or null requiredrating_outdatedbooleanfeedback_replystring or null requiredreplied_attimestamp (ISO 8601) or null requireduser_idnumber requiredusernamestring requireddisplay_namestring or null requiredavatar_urlstring or null requiredstorageAnfragerSpeicher or nullrequester_subscriptionslist of stringResponse shape
{
"id": "number",
"media_type": "movie | tv",
"tier": "standard | uhd",
"tmdb_id": "number",
"title": "string",
"poster_path": "string | null",
"release_date": "string | null",
"status": "pending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred",
"quality_profile_id": "number | null",
"root_folder_path": "string | null",
"season": "number | null",
"from_watchlist": "boolean",
"requested_at": "ISO 8601",
"approved_at": "ISO 8601 | null"
}
POST
/api/admin/requests/{request_id}/reject
may change
Turn down a request
The requester is notified and their quota is not charged.
Fields and shape
Parameters
request_idnumber path requiredRequest body
reasonstring or nullblockbooleanResponse
idnumber requiredmedia_typemovie | tv requiredtierstandard | uhd requiredtmdb_idnumber requiredtitlestring requiredposter_pathstring or null requiredrelease_datestring or null requiredstatuspending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred requiredquality_profile_idnumber or null requiredroot_folder_pathstring or null requiredseasonnumber or null requiredfrom_watchlistboolean requiredrequested_attimestamp (ISO 8601) requiredapproved_attimestamp (ISO 8601) or null requiredcompleted_attimestamp (ISO 8601) or null requiredapproved_by_namestring or nulllast_checked_attimestamp (ISO 8601) or nullrejection_reasonstring or null requirederror_messagestring or null requiredratingnumber or null requiredfeedbackstring or null requiredrated_attimestamp (ISO 8601) or null requiredrating_outdatedbooleanfeedback_replystring or null requiredreplied_attimestamp (ISO 8601) or null requireduser_idnumber requiredusernamestring requireddisplay_namestring or null requiredavatar_urlstring or null requiredstorageAnfragerSpeicher or nullrequester_subscriptionslist of stringResponse shape
{
"id": "number",
"media_type": "movie | tv",
"tier": "standard | uhd",
"tmdb_id": "number",
"title": "string",
"poster_path": "string | null",
"release_date": "string | null",
"status": "pending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred",
"quality_profile_id": "number | null",
"root_folder_path": "string | null",
"season": "number | null",
"from_watchlist": "boolean",
"requested_at": "ISO 8601",
"approved_at": "ISO 8601 | null"
}
POST
/api/admin/requests/{request_id}/reply
may change
Reply to a requester's feedback
Administrators only - approvers decide about requests, but answering is a conversation, and that belongs with whoever runs the installation.
Fields and shape
Parameters
request_idnumber path requiredRequest body
replystring requiredResponse
idnumber requiredmedia_typemovie | tv requiredtierstandard | uhd requiredtmdb_idnumber requiredtitlestring requiredposter_pathstring or null requiredrelease_datestring or null requiredstatuspending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred requiredquality_profile_idnumber or null requiredroot_folder_pathstring or null requiredseasonnumber or null requiredfrom_watchlistboolean requiredrequested_attimestamp (ISO 8601) requiredapproved_attimestamp (ISO 8601) or null requiredcompleted_attimestamp (ISO 8601) or null requiredapproved_by_namestring or nulllast_checked_attimestamp (ISO 8601) or nullrejection_reasonstring or null requirederror_messagestring or null requiredratingnumber or null requiredfeedbackstring or null requiredrated_attimestamp (ISO 8601) or null requiredrating_outdatedbooleanfeedback_replystring or null requiredreplied_attimestamp (ISO 8601) or null requireduser_idnumber requiredusernamestring requireddisplay_namestring or null requiredavatar_urlstring or null requiredstorageAnfragerSpeicher or nullrequester_subscriptionslist of stringResponse shape
{
"id": "number",
"media_type": "movie | tv",
"tier": "standard | uhd",
"tmdb_id": "number",
"title": "string",
"poster_path": "string | null",
"release_date": "string | null",
"status": "pending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred",
"quality_profile_id": "number | null",
"root_folder_path": "string | null",
"season": "number | null",
"from_watchlist": "boolean",
"requested_at": "ISO 8601",
"approved_at": "ISO 8601 | null"
}
GET
/api/admin/sicherungen
may change
All backups
What backups exist, how big they are, when they were made, whether automatic or manual, and whether this version could restore each one.
Fields and shape
Response
eintraegelist of SicherungPublic requiredversionstring requiredordnerstring requiredResponse shape
{
"eintraege": [
{
"name": "string",
"groesse": "number",
"erstellt": "string",
"art": "string",
"kommentar": "string",
"version": "string",
"einspielbar": "boolean",
"grund": "string"
}
],
"version": "string",
"ordner": "string"
}
POST
/api/admin/sicherungen
may change
Make a backup now
Writes a fresh backup and marks it as manual. Caches are stripped - they are nine tenths of the database and Nexview fetches them again by itself.
Fields and shape
Request body
kommentarstringResponse
namestring requiredgroessenumber requirederstelltstring requiredartstring requiredkommentarstring requiredversionstring requiredeinspielbarboolean requiredgrundstring requiredResponse shape
{
"name": "string",
"groesse": "number",
"erstellt": "string",
"art": "string",
"kommentar": "string",
"version": "string",
"einspielbar": "boolean",
"grund": "string"
}
POST
/api/admin/sicherungen/einspielen
may change
Restore into the running installation
⚠️ Afterwards nobody is signed in any more, including whoever triggered it - the accounts in the backup may not be the ones from a minute ago. A safety copy of the current state is written first.
Fields and shape
Response
versionstring requirederstelltstring requiredartstring requiredkommentarstring requiredeinspielbarboolean requiredgrundstring requiredschluessel_aus_umgebungboolean requiredResponse shape
{
"version": "string",
"erstellt": "string",
"art": "string",
"kommentar": "string",
"einspielbar": "boolean",
"grund": "string",
"schluessel_aus_umgebung": "boolean"
}
POST
/api/admin/sicherungen/pruefen
may change
Inspect a backup
Reports what is in it and whether this version can restore it. Nothing is replaced. A backup from a newer version is refused: the database can only be migrated forward.
Fields and shape
Response
versionstring requirederstelltstring requiredartstring requiredkommentarstring requiredeinspielbarboolean requiredgrundstring requiredschluessel_aus_umgebungboolean requiredResponse shape
{
"version": "string",
"erstellt": "string",
"art": "string",
"kommentar": "string",
"einspielbar": "boolean",
"grund": "string",
"schluessel_aus_umgebung": "boolean"
}
DELETE
/api/admin/sicherungen/{name}
may change
Delete a backup
⚠️ A delete button next to backups removes exactly what matters in an emergency, so callers are expected to ask first.
Fields and shape
Parameters
namestring path required
POST
/api/admin/sicherungen/{name}/archiv
may change
Download a backup as an encrypted ZIP
⚠️ Deliberately POST and not GET: the password belongs in the body. In an address it would end up in the browser history and in every proxy log along the way. The archive is a plain AES ZIP - openable with 7-Zip, so nobody depends on Nexview to get at their own data.
Fields and shape
Parameters
namestring path requiredRequest body
passwortstring required
GET
/api/admin/stats
may change
Numbers for the dashboard
Counts for requests, downloads, quotas and ratings across the installation.
Fields and shape
Response
totalsTotalsPublic requireduserslist of UserStatsPublic requiredhistorylist of MonthPoint requiredmost_requestedlist of PopularTitle requiredResponse shape
{
"totals": {
"requests": "number",
"movies": "number",
"series": "number",
"downloaded": "number",
"downloaded_movies": "number",
"downloaded_series": "number",
"pending": "number",
"rejected": "number",
"cancelled": "number",
"failed": "number",
"active_users": "number",
"ratings": "number",
"average_rating": "number | null",
"poor_ratings": "number"
},
"users": [
{
"user_id": "number",
"username": "string",
"display_name": "string | null",
"avatar_url": "string | null",
"role": "string",
"total": "number",
"movies": "number",
"series": "number",
"downloaded": "number",
"pending": "number",
"rejected": "number",
"cancelled": "number",
"failed": "number",
"ratings": "number"
}
],
"history": [
{
"month": "string",
"movies": "number",
"series": "number"
}
],
"most_requested": [
{
"media_type": "string",
"tmdb_id": "number",
"title": "string",
"poster_path": "string | null",
"count": "number"
}
]
}
GET
/api/admin/stats/aufraeumen
may change
What nobody watches any more
Titles in the whole library that nobody has watched for a long time, largest first - including the house collection. Two clocks decide, not one: an item appears only if nobody watched it in the chosen period and it has been here at least that long. Without the second clock the 60 GB file that arrived yesterday would top the list before anyone had a chance to watch it. Administrators only, unlike the rest of the statistics: acting on this list is an administrator's job anyway, and the rows name who last watched what.
Fields and shape
Parameters
monatenumber querygrenzenumber querysuchestring queryartmovie | tv or null querynur_vorgemerktboolean queryResponse
postenlist of AufraeumPosten requiredgesamt_anzahlnumber requiredgesamt_bytesnumber requiredmonatenumber requiredgrundlageAufraeumGrundlage requiredohne_datumnumber requiredgesehen_ohne_datumnumberResponse shape
{
"posten": [
{
"posten_id": "number",
"media_type": "string",
"tmdb_id": "number | null",
"tvdb_id": "number | null",
"season": "number | null",
"tier": "string",
"title": "string",
"size_bytes": "number",
"state": "string",
"besitzer": "string | null",
"zuletzt_gesehen": "ISO 8601 | null",
"gesehen_von": [
"string"
],
"bewertung": "number | null",
"bewertungen": "number"
}
],
"gesamt_anzahl": "number",
"gesamt_bytes": "number",
"monate": "number",
"grundlage": {
"konten_gesamt": "number",
"konten_verknuepft": "number",
"ohne_verknuepfung": [
"string"
],
"vollstaendig": "boolean"
},
"ohne_datum": "number",
"gesehen_ohne_datum": "number"
}
POST
/api/requests
may change
Request a title
Goes through exactly the same checks as a request made in the browser: quota, blocklist and approval all apply to the account the call is made for. A request needing approval comes back as pending, not as an error.
Fields and shape
Request body
media_typemovie | tv requiredtierstandard | uhdtmdb_idnumber requiredquality_profile_idnumber or nullroot_folder_pathstring or nullmonitor_futurebooleanseasonnumber or nullfrom_watchlistbooleanResponse
idnumber requiredmedia_typemovie | tv requiredtierstandard | uhd requiredtmdb_idnumber requiredtitlestring requiredposter_pathstring or null requiredrelease_datestring or null requiredstatuspending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred requiredquality_profile_idnumber or null requiredroot_folder_pathstring or null requiredseasonnumber or null requiredfrom_watchlistboolean requiredrequested_attimestamp (ISO 8601) requiredapproved_attimestamp (ISO 8601) or null requiredcompleted_attimestamp (ISO 8601) or null requiredapproved_by_namestring or nulllast_checked_attimestamp (ISO 8601) or nullrejection_reasonstring or null requirederror_messagestring or null requiredratingnumber or null requiredfeedbackstring or null requiredrated_attimestamp (ISO 8601) or null requiredrating_outdatedbooleanfeedback_replystring or null requiredreplied_attimestamp (ISO 8601) or null requiredResponse shape
{
"id": "number",
"media_type": "movie | tv",
"tier": "standard | uhd",
"tmdb_id": "number",
"title": "string",
"poster_path": "string | null",
"release_date": "string | null",
"status": "pending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred",
"quality_profile_id": "number | null",
"root_folder_path": "string | null",
"season": "number | null",
"from_watchlist": "boolean",
"requested_at": "ISO 8601",
"approved_at": "ISO 8601 | null"
}
GET
/api/requests/mine
may change
Your own requests
Every request from the calling account, newest first, with the rating attached to the title.
Fields and shape
Response
idnumber requiredmedia_typemovie | tv requiredtierstandard | uhd requiredtmdb_idnumber requiredtitlestring requiredposter_pathstring or null requiredrelease_datestring or null requiredstatuspending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred requiredquality_profile_idnumber or null requiredroot_folder_pathstring or null requiredseasonnumber or null requiredfrom_watchlistboolean requiredrequested_attimestamp (ISO 8601) requiredapproved_attimestamp (ISO 8601) or null requiredcompleted_attimestamp (ISO 8601) or null requiredapproved_by_namestring or nulllast_checked_attimestamp (ISO 8601) or nullrejection_reasonstring or null requirederror_messagestring or null requiredratingnumber or null requiredfeedbackstring or null requiredrated_attimestamp (ISO 8601) or null requiredrating_outdatedbooleanfeedback_replystring or null requiredreplied_attimestamp (ISO 8601) or null requiredResponse shape
[
{
"id": "number",
"media_type": "movie | tv",
"tier": "standard | uhd",
"tmdb_id": "number",
"title": "string",
"poster_path": "string | null",
"release_date": "string | null",
"status": "pending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred",
"quality_profile_id": "number | null",
"root_folder_path": "string | null",
"season": "number | null",
"from_watchlist": "boolean",
"requested_at": "ISO 8601",
"approved_at": "ISO 8601 | null"
}
]
GET
/api/requests/quota
may change
How much you may still request
What has been used in the current period and what is left. An account without a limit reports no ceiling rather than a very large number.
Fields and shape
Response
movieQuotaInfo requiredtvQuotaInfo requiredauto_approveboolean requiredResponse shape
{
"movie": {
"limit": "number | null",
"used": "number",
"remaining": "number | null",
"unlimited": "boolean",
"exhausted": "boolean",
"period": "day | week | month",
"resets_at": "ISO 8601 | null"
},
"tv": {
"limit": "number | null",
"used": "number",
"remaining": "number | null",
"unlimited": "boolean",
"exhausted": "boolean",
"period": "day | week | month",
"resets_at": "ISO 8601 | null"
},
"auto_approve": "boolean"
}
DELETE
/api/requests/{request_id}
may change
Delete your own request entry
Removes the entry. What has already been downloaded stays where it is.
Fields and shape
Parameters
request_idnumber path required
POST
/api/requests/{request_id}/cancel
may change
Cancel your own request
Useful when a title has not been found for days: the space in your quota is freed again. Only works while the request is still open.
Fields and shape
Parameters
request_idnumber path requiredResponse
idnumber requiredmedia_typemovie | tv requiredtierstandard | uhd requiredtmdb_idnumber requiredtitlestring requiredposter_pathstring or null requiredrelease_datestring or null requiredstatuspending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred requiredquality_profile_idnumber or null requiredroot_folder_pathstring or null requiredseasonnumber or null requiredfrom_watchlistboolean requiredrequested_attimestamp (ISO 8601) requiredapproved_attimestamp (ISO 8601) or null requiredcompleted_attimestamp (ISO 8601) or null requiredapproved_by_namestring or nulllast_checked_attimestamp (ISO 8601) or nullrejection_reasonstring or null requirederror_messagestring or null requiredratingnumber or null requiredfeedbackstring or null requiredrated_attimestamp (ISO 8601) or null requiredrating_outdatedbooleanfeedback_replystring or null requiredreplied_attimestamp (ISO 8601) or null requiredResponse shape
{
"id": "number",
"media_type": "movie | tv",
"tier": "standard | uhd",
"tmdb_id": "number",
"title": "string",
"poster_path": "string | null",
"release_date": "string | null",
"status": "pending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred",
"quality_profile_id": "number | null",
"root_folder_path": "string | null",
"season": "number | null",
"from_watchlist": "boolean",
"requested_at": "ISO 8601",
"approved_at": "ISO 8601 | null"
}
POST
/api/requests/{request_id}/feedback
may change
Rate your own request
Is the downloaded copy any good? The approvers are notified; a poor rating notifies them more clearly, because that is the case somebody has to act on.
Fields and shape
Parameters
request_idnumber path requiredRequest body
ratingnumber requiredcommentstring or nullResponse
idnumber requiredmedia_typemovie | tv requiredtierstandard | uhd requiredtmdb_idnumber requiredtitlestring requiredposter_pathstring or null requiredrelease_datestring or null requiredstatuspending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred requiredquality_profile_idnumber or null requiredroot_folder_pathstring or null requiredseasonnumber or null requiredfrom_watchlistboolean requiredrequested_attimestamp (ISO 8601) requiredapproved_attimestamp (ISO 8601) or null requiredcompleted_attimestamp (ISO 8601) or null requiredapproved_by_namestring or nulllast_checked_attimestamp (ISO 8601) or nullrejection_reasonstring or null requirederror_messagestring or null requiredratingnumber or null requiredfeedbackstring or null requiredrated_attimestamp (ISO 8601) or null requiredrating_outdatedbooleanfeedback_replystring or null requiredreplied_attimestamp (ISO 8601) or null requiredResponse shape
{
"id": "number",
"media_type": "movie | tv",
"tier": "standard | uhd",
"tmdb_id": "number",
"title": "string",
"poster_path": "string | null",
"release_date": "string | null",
"status": "pending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred",
"quality_profile_id": "number | null",
"root_folder_path": "string | null",
"season": "number | null",
"from_watchlist": "boolean",
"requested_at": "ISO 8601",
"approved_at": "ISO 8601 | null"
}