Zum Inhalt
NEXVIEW

API · Bereich

iPhone-App.

81 Adressen ohne Zusage. Sie gehören zum Innenteil, die Oberfläche spricht über sie mit dem Server, und sie können sich mit jeder Fassung ändern. Wer sich auf etwas verlassen muss, nimmt die 19 zugesagten unter /api/v1.

Gut zu wissenDie Beschreibungen stehen so in Nexviews Code und sind deshalb englisch. Erzeugt aus Nexview 1.4.0.

GET/api/app/1/admin/blocklistThe blocklistohne Zusage

Same as GET /api/admin/blocklist in the web interface, for the iPhone app.

Antwort BlockedOut

FeldTyp
media_type *movie | tv
tmdb_id *Zahl
title *Text
poster_url *Text oder null
reason *Text oder null
created_at *Zeitpunkt (ISO 8601)

Aufbau der Antwort

[
  {
    "media_type": "movie | tv",
    "tmdb_id": "number",
    "title": "string",
    "poster_url": "string | null",
    "reason": "string | null",
    "created_at": "ISO 8601"
  }
]
DELETE/api/app/1/admin/blocklist/{media_type}/{tmdb_id}Take a title off the blocklistohne Zusage

Same as DELETE /api/admin/blocklist/{media_type}/{tmdb_id} in the web interface, for the iPhone app.

Parameter

NameTyp
media_type *movie | tv
tmdb_id *Zahl
GET/api/app/1/admin/dashboardThe operator's overviewohne Zusage

Same as GET /api/admin/dashboard in the web interface, for the iPhone app.

Antwort DashboardStand

FeldTyp
befunde *Liste von BefundPublic
zaehler *Objekt
ungesehenZahl
zahlen *HandlungsZahlen
verlauf *Liste von VerlaufsPunkt
traeger *Datentraeger oder null

Aufbau der Antwort

{
  "befunde": [
    {
      "schluessel": "string",
      "kennung": "string",
      "schwere": "string",
      "bereich": "string",
      "werte": "object",
      "ziel": "string | null",
      "wortlaut": "string | null"
    }
  ],
  "zaehler": "object",
  "ungesehen": "number",
  "zahlen": {
    "freigaben_offen": "number",
    "laeuft": "number",
    "tickets_offen": "number",
    "rueckmeldungen_offen": "number"
  },
  "verlauf": [
    {
      "tag": "string",
      "belegt_bytes": "number",
      "frei_bytes": "number"
    }
  ],
  "traeger": {
    "gesamt_bytes": "number",
    "frei_bytes": "number",
    "medien_bytes": "number"
  }
}
GET/api/app/1/admin/downloadsWhat is stuck and what is loadingohne Zusage

Same as GET /api/admin/downloads in the web interface, for the iPhone app.

Antwort DownloadsStand

FeldTyp
instanzen *Liste von InstanzAntwort
haenger *Liste von HaengerZeile
laufend *Liste von LaufZeile
gescheitertZahl
automatik_an *ja/nein
stand_am *Zeitpunkt (ISO 8601)

Aufbau der Antwort

{
  "instanzen": [
    {
      "kennung": "string",
      "name": "string",
      "media_type": "string",
      "erreichbar": "boolean",
      "fehler": "string"
    }
  ],
  "haenger": [
    {
      "id": "number",
      "kennung": "string",
      "instanz": "string",
      "media_type": "string",
      "titel": "string",
      "jahr": "number | null",
      "release": "string",
      "folgen": [
        [
          "number"
        ]
      ],
      "grund": "string",
      "wortlaut": [
        "string"
      ],
      "zustand": "string",
      "meldestufe": "string",
      "programmstand": "string",
      "protokoll": "string"
    }
  ],
  "laufend": [
    {
      "kennung": "string",
      "instanz": "string",
      "media_type": "string",
      "titel": "string",
      "jahr": "number | null",
      "release": "string",
      "folgen": [
        [
          "number"
        ]
      ],
      "fortschritt": "number | null",
      "groesse": "number",
      "rest": "number",
      "restzeit": "string | null",
      "programm": "string",
      "protokoll": "string",
      "programmstand": "string"
    }
  ],
  "gescheitert": "number",
  "automatik_an": "boolean",
  "stand_am": "ISO 8601"
}
GET/api/app/1/admin/downloads/{haenger_id}/filesFiles of a stuck downloadohne Zusage

Same as GET /api/admin/downloads/{haenger_id}/dateien in the web interface, for the iPhone app.

Parameter

NameTyp
haenger_id *Zahl

Antwort KandidatZeile

FeldTyp
pfad *Text
name *Text
groesse *Zahl
qualitaet *Text
sprachen *Liste von Text
zuordnung *Text
folgen *Liste von Liste von Zahl
zuordenbar *ja/nein
ablehnungen *Liste von AblehnungZeile

Aufbau der Antwort

[
  {
    "pfad": "string",
    "name": "string",
    "groesse": "number",
    "qualitaet": "string",
    "sprachen": [
      "string"
    ],
    "zuordnung": "string",
    "folgen": [
      [
        "number"
      ]
    ],
    "zuordenbar": "boolean",
    "ablehnungen": [
      {
        "text": "string",
        "dauerhaft": "boolean"
      }
    ]
  }
]
POST/api/app/1/admin/downloads/{haenger_id}/importImport a chosen fileohne Zusage

Same as POST /api/admin/downloads/{haenger_id}/importieren in the web interface, for the iPhone app.

Parameter

NameTyp
haenger_id *Zahl

Anfragekörper app__routers__downloads__ImportWunsch

FeldTyp
pfade *Liste von Text
trotzdemja/nein

Antwort AktionsAntwort

FeldTyp
gesucht *ja/nein
befehl *Text

Aufbau der Antwort

{
  "gesucht": "boolean",
  "befehl": "string"
}
POST/api/app/1/admin/downloads/{haenger_id}/removeRemove a stuck downloadohne Zusage

Same as POST /api/admin/downloads/{haenger_id}/entfernen in the web interface, for the iPhone app.

Parameter

NameTyp
haenger_id *Zahl

Anfragekörper EntfernenWunsch

FeldTyp
neu_suchenja/nein

Antwort AktionsAntwort

FeldTyp
gesucht *ja/nein
befehl *Text

Aufbau der Antwort

{
  "gesucht": "boolean",
  "befehl": "string"
}
POST/api/app/1/admin/downloads/{haenger_id}/retryTry a stuck download againohne Zusage

Same as POST /api/admin/downloads/{haenger_id}/erneut in the web interface, for the iPhone app.

Parameter

NameTyp
haenger_id *Zahl

Antwort AktionsAntwort

FeldTyp
gesucht *ja/nein
befehl *Text

Aufbau der Antwort

{
  "gesucht": "boolean",
  "befehl": "string"
}
GET/api/app/1/admin/invitationsOpen invitationsohne Zusage

Same as GET /api/users/invitations in the web interface, for the iPhone app.

Antwort InvitationPublic

FeldTyp
id *Zahl
email *Text
role *admin | approver | user | child
created_at *Zeitpunkt (ISO 8601)
expires_at *Zeitpunkt (ISO 8601)
eingeloest_amZeitpunkt (ISO 8601) oder null
kontoText oder null
entfallenListe von Text
serverListe von ServerZiel

Aufbau der Antwort

[
  {
    "id": "number",
    "email": "string",
    "role": "admin | approver | user | child",
    "created_at": "ISO 8601",
    "expires_at": "ISO 8601",
    "eingeloest_am": "ISO 8601 | null",
    "konto": "string | null",
    "entfallen": [
      "string"
    ],
    "server": [
      {
        "provider": "string",
        "label": "string",
        "bibliotheken": [
          "string"
        ],
        "zustand": "string",
        "fehler": "object | null",
        "nachholbar": "boolean"
      }
    ]
  }
]
POST/api/app/1/admin/invitationsInvite someoneohne Zusage

Same as POST /api/users/invitations in the web interface, for the iPhone app.

Anfragekörper InvitationCreate

FeldTyp
roleadmin | approver | user | child
auto_approve_moviesja/nein
auto_approve_seriesja/nein
fassungenListe von FassungRechtWunsch
can_request_uhd_moviesja/nein
can_request_uhd_seriesja/nein
auto_approve_uhdja/nein
hausordnungja/nein
email *Text
quota_movies_limitZahl
quota_series_limitZahl
storage_limit_gbZahl
serverListe von ServerWunsch

Antwort InvitationCreated

FeldTyp
id *Zahl
email *Text
role *admin | approver | user | child
created_at *Zeitpunkt (ISO 8601)
expires_at *Zeitpunkt (ISO 8601)
eingeloest_amZeitpunkt (ISO 8601) oder null
kontoText oder null
entfallenListe von Text
serverListe von ServerZiel
mail_sent *ja/nein
mail_errorText oder null
manual_linkText oder null

Aufbau der Antwort

{
  "id": "number",
  "email": "string",
  "role": "admin | approver | user | child",
  "created_at": "ISO 8601",
  "expires_at": "ISO 8601",
  "eingeloest_am": "ISO 8601 | null",
  "konto": "string | null",
  "entfallen": [
    "string"
  ],
  "server": [
    {
      "provider": "string",
      "label": "string",
      "bibliotheken": [
        "string"
      ],
      "zustand": "string",
      "fehler": "object | null",
      "nachholbar": "boolean"
    }
  ],
  "mail_sent": "boolean",
  "mail_error": "string | null",
  "manual_link": "string | null"
}
DELETE/api/app/1/admin/invitations/{invitation_id}Withdraw an invitationohne Zusage

Same as DELETE /api/users/invitations/{invitation_id} in the web interface, for the iPhone app.

Parameter

NameTyp
invitation_id *Zahl
GET/api/app/1/admin/ratingsAll quality ratingsohne Zusage

Same as GET /api/feedback in the web interface, for the iPhone app.

Parameter

NameTyp
unanswered (query)ja/nein

Antwort RatingOut

FeldTyp
id *Zahl
media_type *Text
tmdb_id *Zahl
season *Zahl oder null
rating *Zahl
comment *Text oder null
title *Text
reply *Text oder null
outdated *ja/nein
updated_at *Text
user_nameText

Aufbau der Antwort

[
  {
    "id": "number",
    "media_type": "string",
    "tmdb_id": "number",
    "season": "number | null",
    "rating": "number",
    "comment": "string | null",
    "title": "string",
    "reply": "string | null",
    "outdated": "boolean",
    "updated_at": "string",
    "user_name": "string"
  }
]
POST/api/app/1/admin/ratings/{rating_id}/replyAnswer a quality ratingohne Zusage

Same as POST /api/feedback/{rating_id}/reply in the web interface, for the iPhone app.

Parameter

NameTyp
rating_id *Zahl

Anfragekörper ReplyIn

FeldTyp
reply *Text

Antwort RatingOut

FeldTyp
id *Zahl
media_type *Text
tmdb_id *Zahl
season *Zahl oder null
rating *Zahl
comment *Text oder null
title *Text
reply *Text oder null
outdated *ja/nein
updated_at *Text
user_nameText

Aufbau der Antwort

{
  "id": "number",
  "media_type": "string",
  "tmdb_id": "number",
  "season": "number | null",
  "rating": "number",
  "comment": "string | null",
  "title": "string",
  "reply": "string | null",
  "outdated": "boolean",
  "updated_at": "string",
  "user_name": "string"
}
GET/api/app/1/admin/releasesTitles given up, waitingohne Zusage

Same as GET /api/storage/releases in the web interface, for the iPhone app.

Antwort StorageAbgabe

FeldTyp
entry *StoragePosten
user_id *Zahl oder null
username *Text oder null
display_name *Text oder null
released_at *Zeitpunkt (ISO 8601) oder null

Aufbau der Antwort

[
  {
    "entry": {
      "id": "number",
      "media_type": "string",
      "fassung": "string",
      "tier": "string",
      "tmdb_id": "number | null",
      "tvdb_id": "number | null",
      "season": "number | null",
      "title": "string",
      "size_bytes": "number",
      "state": "string",
      "measured_at": "ISO 8601",
      "path": "string",
      "released_at": "ISO 8601 | null",
      "release_wish": "string | null"
    },
    "user_id": "number | null",
    "username": "string | null",
    "display_name": "string | null",
    "released_at": "ISO 8601 | null"
  }
]
POST/api/app/1/admin/releases/{posten_id}/deleteDelete a given-up titleohne Zusage

Same as POST /api/storage/entries/{posten_id}/loeschen in the web interface, for the iPhone app.

Parameter

NameTyp
posten_id *Zahl
GET/api/app/1/admin/releases/{posten_id}/filesFiles a deletion would removeohne Zusage

Same as GET /api/storage/entries/{posten_id}/dateien in the web interface, for the iPhone app.

Parameter

NameTyp
posten_id *Zahl

Antwort StorageLoeschvorschau

FeldTyp
files *Liste von StorageDatei
total_bytes *Zahl
deletable *ja/nein
reasonText

Aufbau der Antwort

{
  "files": [
    {
      "path": "string",
      "size_bytes": "number"
    }
  ],
  "total_bytes": "number",
  "deletable": "boolean",
  "reason": "string"
}
POST/api/app/1/admin/releases/{posten_id}/houseMove a given-up title to the houseohne Zusage

Same as POST /api/storage/entries/{posten_id}/haus in the web interface, for the iPhone app.

Parameter

NameTyp
posten_id *Zahl

Antwort StoragePosten

FeldTyp
id *Zahl
media_type *Text
fassung *Text
tier *Text
tmdb_id *Zahl oder null
tvdb_id *Zahl oder null
season *Zahl oder null
title *Text
size_bytes *Zahl
state *Text
measured_at *Zeitpunkt (ISO 8601)
pathText
released_atZeitpunkt (ISO 8601) oder null
release_wishText oder null
watchedja/nein oder null
managedja/nein

Aufbau der Antwort

{
  "id": "number",
  "media_type": "string",
  "fassung": "string",
  "tier": "string",
  "tmdb_id": "number | null",
  "tvdb_id": "number | null",
  "season": "number | null",
  "title": "string",
  "size_bytes": "number",
  "state": "string",
  "measured_at": "ISO 8601",
  "path": "string",
  "released_at": "ISO 8601 | null",
  "release_wish": "string | null"
}
POST/api/app/1/admin/releases/{posten_id}/unfollowKeep a given-up title, stop loading itohne Zusage

Same as POST /api/storage/entries/{posten_id}/entfolgen in the web interface, for the iPhone app.

Parameter

NameTyp
posten_id *Zahl

Antwort StoragePosten

FeldTyp
id *Zahl
media_type *Text
fassung *Text
tier *Text
tmdb_id *Zahl oder null
tvdb_id *Zahl oder null
season *Zahl oder null
title *Text
size_bytes *Zahl
state *Text
measured_at *Zeitpunkt (ISO 8601)
pathText
released_atZeitpunkt (ISO 8601) oder null
release_wishText oder null
watchedja/nein oder null
managedja/nein

Aufbau der Antwort

{
  "id": "number",
  "media_type": "string",
  "fassung": "string",
  "tier": "string",
  "tmdb_id": "number | null",
  "tvdb_id": "number | null",
  "season": "number | null",
  "title": "string",
  "size_bytes": "number",
  "state": "string",
  "measured_at": "ISO 8601",
  "path": "string",
  "released_at": "ISO 8601 | null",
  "release_wish": "string | null"
}
PATCH/api/app/1/admin/tickets/{ticket_id}Set a ticket's stateohne Zusage

Same as PATCH /api/tickets/{ticket_id} in the web interface, for the iPhone app.

Parameter

NameTyp
ticket_id *Zahl

Anfragekörper StatusIn

FeldTyp
status *open | in_progress | closed

Antwort TicketDetail

FeldTyp
id *Zahl
subject *Text
status *open | in_progress | closed
created_at *Zeitpunkt (ISO 8601)
updated_at *Zeitpunkt (ISO 8601)
closed_at *Zeitpunkt (ISO 8601) oder null
last_reply_at *Zeitpunkt (ISO 8601) oder null
last_reply_by *Zahl oder null
media_type *movie | tv oder null
tmdb_id *Zahl oder null
media_title *Text oder null
user_id *Zahl
username *Text
display_name *Text oder null
avatar_url *Text oder null
message_count *Zahl
opened_by *Zahl oder null
opened_by_name *Text oder null
messages *Liste von MessageOut
kinderkonten_offenja/nein

Aufbau der Antwort

{
  "id": "number",
  "subject": "string",
  "status": "open | in_progress | closed",
  "created_at": "ISO 8601",
  "updated_at": "ISO 8601",
  "closed_at": "ISO 8601 | null",
  "last_reply_at": "ISO 8601 | null",
  "last_reply_by": "number | null",
  "media_type": "movie | tv | null",
  "tmdb_id": "number | null",
  "media_title": "string | null",
  "user_id": "number",
  "username": "string",
  "display_name": "string | null"
}
GET/api/app/1/admin/trashnexcrate's recycle binohne Zusage

Same as GET /api/beschaffung/papierkorb in the web interface, for the iPhone app.

Antwort PapierkorbAntwort

FeldTyp
eintraegeListe von PapierkorbZeile
sprungText

Aufbau der Antwort

{
  "eintraege": [
    {
      "eintrag_id": "number",
      "media_type": "string",
      "tmdb_id": "number | null",
      "name": "string | null",
      "jahr": "number | null",
      "fassung": "string | null",
      "staffel": "number | null",
      "folgen": [
        "number"
      ],
      "dateiname": "string",
      "size_bytes": "number",
      "geloescht_am": "string",
      "geloescht_von": "string",
      "geloescht_von_name": "string | null",
      "datei_da": "boolean"
    }
  ],
  "sprung": "string"
}
POST/api/app/1/admin/trash/{eintrag_id}/restoreRestore from the recycle binohne Zusage

Same as POST /api/beschaffung/papierkorb/{eintrag_id}/zurueckholen in the web interface, for the iPhone app.

Parameter

NameTyp
eintrag_id *Zahl

Antwort ZurueckgeholtAntwort

FeldTyp
createdja/nein

Aufbau der Antwort

{
  "created": "boolean"
}
GET/api/app/1/admin/usersAll accountsohne Zusage

Same as GET /api/users in the web interface, for the iPhone app.

Antwort UserWithUsage

FeldTyp
id *Zahl
username *Text
role *admin | approver | user | child
display_name *Text oder null
email *Text oder null
email_verified *ja/nein
language *Text
theme *Text
card_versionsListe von Text
card_versions_alwaysja/nein
is_active *ja/nein
is_betreiberja/nein
auto_approve *ja/nein
auto_approve_movies *ja/nein oder null
auto_approve_series *ja/nein oder null
effective_auto_approve *ja/nein
effective_auto_approve_movies *ja/nein
effective_auto_approve_series *ja/nein
can_approve *ja/nein
quota_movies_limit *Zahl
quota_series_limit *Zahl
storage_limit_gbZahl
quota_reset_at *Zeitpunkt (ISO 8601) oder null
hausordnung_gelesen_amZeitpunkt (ISO 8601) oder null
blocked_movie_profiles *Liste von Zahl
blocked_series_profiles *Liste von Zahl
fassung_rechteListe von FassungRechtOut
can_request_uhd_movies *ja/nein
can_request_uhd_series *ja/nein
auto_approve_uhd *ja/nein
effective_auto_approve_uhd *ja/nein
blocked_movie_uhd_profiles *Liste von Zahl
blocked_series_uhd_profiles *Liste von Zahl
avatar_url *Text oder null
created_at *Zeitpunkt (ISO 8601)
last_login_at *Zeitpunkt (ISO 8601) oder null
mail_download_complete *ja/nein
mail_request_pending *ja/nein
mail_request_decided *ja/nein
mail_feedback *ja/nein
mail_ticket *ja/nein
mail_watch *ja/nein
mail_user_imported *ja/nein
mail_mediaserver_reconnect *ja/nein
mail_storage *ja/nein
mail_child_wish *ja/nein
mail_cleanup *ja/nein
push_download_complete *ja/nein
push_request_pending *ja/nein
push_request_decided *ja/nein
push_feedback *ja/nein
push_ticket *ja/nein
push_watch *ja/nein
push_user_imported *ja/nein
push_mediaserver_reconnect *ja/nein
push_storage *ja/nein
push_child_wish *ja/nein
watchlist_connected *ja/nein
watchlist_token_invalidja/nein
mediaserver_provider *Text oder null
mediaserver_username *Text oder null
mediaserver_linked *ja/nein
mediaserver_accountsListe von VerknuepftesKonto
oidc_linksListe von OidcVerknuepfung
has_password *ja/nein
discover_region *Text oder null
age *Zahl oder null
rating_region *Text oder null
hide_unrated *ja/nein
can_manage_childrenja/nein
parent_idZahl oder null
quota_movies_used *Zahl
quota_series_used *Zahl

Aufbau der Antwort

[
  {
    "id": "number",
    "username": "string",
    "role": "admin | approver | user | child",
    "display_name": "string | null",
    "email": "string | null",
    "email_verified": "boolean",
    "language": "string",
    "theme": "string",
    "card_versions": [
      "string"
    ],
    "card_versions_always": "boolean",
    "is_active": "boolean",
    "is_betreiber": "boolean",
    "auto_approve": "boolean",
    "auto_approve_movies": "boolean | null"
  }
]
PATCH/api/app/1/admin/users/{user_id}Change an accountohne Zusage

Same as PATCH /api/users/{user_id} in the web interface, for the iPhone app.

Parameter

NameTyp
user_id *Zahl

Anfragekörper UserUpdate

FeldTyp
roleadmin | approver | user | child oder null
display_nameText oder null
languageText oder null
is_activeja/nein oder null
auto_approveja/nein oder null
auto_approve_moviesja/nein oder null
auto_approve_seriesja/nein oder null
quota_movies_limitZahl oder null
quota_series_limitZahl oder null
storage_limit_gbZahl oder null
blocked_movie_profilesListe von Zahl oder null
blocked_series_profilesListe von Zahl oder null
fassung_rechteListe von FassungRechtWunsch oder null
can_request_uhd_moviesja/nein oder null
can_request_uhd_seriesja/nein oder null
auto_approve_uhdja/nein oder null
blocked_movie_uhd_profilesListe von Zahl oder null
blocked_series_uhd_profilesListe von Zahl oder null
can_manage_childrenja/nein oder null

Antwort UserPublic

FeldTyp
id *Zahl
username *Text
role *admin | approver | user | child
display_name *Text oder null
email *Text oder null
email_verified *ja/nein
language *Text
theme *Text
card_versionsListe von Text
card_versions_alwaysja/nein
is_active *ja/nein
is_betreiberja/nein
auto_approve *ja/nein
auto_approve_movies *ja/nein oder null
auto_approve_series *ja/nein oder null
effective_auto_approve *ja/nein
effective_auto_approve_movies *ja/nein
effective_auto_approve_series *ja/nein
can_approve *ja/nein
quota_movies_limit *Zahl
quota_series_limit *Zahl
storage_limit_gbZahl
quota_reset_at *Zeitpunkt (ISO 8601) oder null
hausordnung_gelesen_amZeitpunkt (ISO 8601) oder null
blocked_movie_profiles *Liste von Zahl
blocked_series_profiles *Liste von Zahl
fassung_rechteListe von FassungRechtOut
can_request_uhd_movies *ja/nein
can_request_uhd_series *ja/nein
auto_approve_uhd *ja/nein
effective_auto_approve_uhd *ja/nein
blocked_movie_uhd_profiles *Liste von Zahl
blocked_series_uhd_profiles *Liste von Zahl
avatar_url *Text oder null
created_at *Zeitpunkt (ISO 8601)
last_login_at *Zeitpunkt (ISO 8601) oder null
mail_download_complete *ja/nein
mail_request_pending *ja/nein
mail_request_decided *ja/nein
mail_feedback *ja/nein
mail_ticket *ja/nein
mail_watch *ja/nein
mail_user_imported *ja/nein
mail_mediaserver_reconnect *ja/nein
mail_storage *ja/nein
mail_child_wish *ja/nein
mail_cleanup *ja/nein
push_download_complete *ja/nein
push_request_pending *ja/nein
push_request_decided *ja/nein
push_feedback *ja/nein
push_ticket *ja/nein
push_watch *ja/nein
push_user_imported *ja/nein
push_mediaserver_reconnect *ja/nein
push_storage *ja/nein
push_child_wish *ja/nein
watchlist_connected *ja/nein
watchlist_token_invalidja/nein
mediaserver_provider *Text oder null
mediaserver_username *Text oder null
mediaserver_linked *ja/nein
mediaserver_accountsListe von VerknuepftesKonto
oidc_linksListe von OidcVerknuepfung
has_password *ja/nein
discover_region *Text oder null
age *Zahl oder null
rating_region *Text oder null
hide_unrated *ja/nein
can_manage_childrenja/nein
parent_idZahl oder null

Aufbau der Antwort

{
  "id": "number",
  "username": "string",
  "role": "admin | approver | user | child",
  "display_name": "string | null",
  "email": "string | null",
  "email_verified": "boolean",
  "language": "string",
  "theme": "string",
  "card_versions": [
    "string"
  ],
  "card_versions_always": "boolean",
  "is_active": "boolean",
  "is_betreiber": "boolean",
  "auto_approve": "boolean",
  "auto_approve_movies": "boolean | null"
}
POST/api/app/1/admin/users/{user_id}/quota/resetReset an account's request countohne Zusage

Same as POST /api/users/{user_id}/quota/reset in the web interface, for the iPhone app.

Parameter

NameTyp
user_id *Zahl

Antwort UserWithUsage

FeldTyp
id *Zahl
username *Text
role *admin | approver | user | child
display_name *Text oder null
email *Text oder null
email_verified *ja/nein
language *Text
theme *Text
card_versionsListe von Text
card_versions_alwaysja/nein
is_active *ja/nein
is_betreiberja/nein
auto_approve *ja/nein
auto_approve_movies *ja/nein oder null
auto_approve_series *ja/nein oder null
effective_auto_approve *ja/nein
effective_auto_approve_movies *ja/nein
effective_auto_approve_series *ja/nein
can_approve *ja/nein
quota_movies_limit *Zahl
quota_series_limit *Zahl
storage_limit_gbZahl
quota_reset_at *Zeitpunkt (ISO 8601) oder null
hausordnung_gelesen_amZeitpunkt (ISO 8601) oder null
blocked_movie_profiles *Liste von Zahl
blocked_series_profiles *Liste von Zahl
fassung_rechteListe von FassungRechtOut
can_request_uhd_movies *ja/nein
can_request_uhd_series *ja/nein
auto_approve_uhd *ja/nein
effective_auto_approve_uhd *ja/nein
blocked_movie_uhd_profiles *Liste von Zahl
blocked_series_uhd_profiles *Liste von Zahl
avatar_url *Text oder null
created_at *Zeitpunkt (ISO 8601)
last_login_at *Zeitpunkt (ISO 8601) oder null
mail_download_complete *ja/nein
mail_request_pending *ja/nein
mail_request_decided *ja/nein
mail_feedback *ja/nein
mail_ticket *ja/nein
mail_watch *ja/nein
mail_user_imported *ja/nein
mail_mediaserver_reconnect *ja/nein
mail_storage *ja/nein
mail_child_wish *ja/nein
mail_cleanup *ja/nein
push_download_complete *ja/nein
push_request_pending *ja/nein
push_request_decided *ja/nein
push_feedback *ja/nein
push_ticket *ja/nein
push_watch *ja/nein
push_user_imported *ja/nein
push_mediaserver_reconnect *ja/nein
push_storage *ja/nein
push_child_wish *ja/nein
watchlist_connected *ja/nein
watchlist_token_invalidja/nein
mediaserver_provider *Text oder null
mediaserver_username *Text oder null
mediaserver_linked *ja/nein
mediaserver_accountsListe von VerknuepftesKonto
oidc_linksListe von OidcVerknuepfung
has_password *ja/nein
discover_region *Text oder null
age *Zahl oder null
rating_region *Text oder null
hide_unrated *ja/nein
can_manage_childrenja/nein
parent_idZahl oder null
quota_movies_used *Zahl
quota_series_used *Zahl

Aufbau der Antwort

{
  "id": "number",
  "username": "string",
  "role": "admin | approver | user | child",
  "display_name": "string | null",
  "email": "string | null",
  "email_verified": "boolean",
  "language": "string",
  "theme": "string",
  "card_versions": [
    "string"
  ],
  "card_versions_always": "boolean",
  "is_active": "boolean",
  "is_betreiber": "boolean",
  "auto_approve": "boolean",
  "auto_approve_movies": "boolean | null"
}
POST/api/app/1/admin/users/{user_id}/storage/resetMove an account's titles to the houseohne Zusage

Same as POST /api/users/{user_id}/storage/reset in the web interface, for the iPhone app.

Parameter

NameTyp
user_id *Zahl

Antwort UserWithUsage

FeldTyp
id *Zahl
username *Text
role *admin | approver | user | child
display_name *Text oder null
email *Text oder null
email_verified *ja/nein
language *Text
theme *Text
card_versionsListe von Text
card_versions_alwaysja/nein
is_active *ja/nein
is_betreiberja/nein
auto_approve *ja/nein
auto_approve_movies *ja/nein oder null
auto_approve_series *ja/nein oder null
effective_auto_approve *ja/nein
effective_auto_approve_movies *ja/nein
effective_auto_approve_series *ja/nein
can_approve *ja/nein
quota_movies_limit *Zahl
quota_series_limit *Zahl
storage_limit_gbZahl
quota_reset_at *Zeitpunkt (ISO 8601) oder null
hausordnung_gelesen_amZeitpunkt (ISO 8601) oder null
blocked_movie_profiles *Liste von Zahl
blocked_series_profiles *Liste von Zahl
fassung_rechteListe von FassungRechtOut
can_request_uhd_movies *ja/nein
can_request_uhd_series *ja/nein
auto_approve_uhd *ja/nein
effective_auto_approve_uhd *ja/nein
blocked_movie_uhd_profiles *Liste von Zahl
blocked_series_uhd_profiles *Liste von Zahl
avatar_url *Text oder null
created_at *Zeitpunkt (ISO 8601)
last_login_at *Zeitpunkt (ISO 8601) oder null
mail_download_complete *ja/nein
mail_request_pending *ja/nein
mail_request_decided *ja/nein
mail_feedback *ja/nein
mail_ticket *ja/nein
mail_watch *ja/nein
mail_user_imported *ja/nein
mail_mediaserver_reconnect *ja/nein
mail_storage *ja/nein
mail_child_wish *ja/nein
mail_cleanup *ja/nein
push_download_complete *ja/nein
push_request_pending *ja/nein
push_request_decided *ja/nein
push_feedback *ja/nein
push_ticket *ja/nein
push_watch *ja/nein
push_user_imported *ja/nein
push_mediaserver_reconnect *ja/nein
push_storage *ja/nein
push_child_wish *ja/nein
watchlist_connected *ja/nein
watchlist_token_invalidja/nein
mediaserver_provider *Text oder null
mediaserver_username *Text oder null
mediaserver_linked *ja/nein
mediaserver_accountsListe von VerknuepftesKonto
oidc_linksListe von OidcVerknuepfung
has_password *ja/nein
discover_region *Text oder null
age *Zahl oder null
rating_region *Text oder null
hide_unrated *ja/nein
can_manage_childrenja/nein
parent_idZahl oder null
quota_movies_used *Zahl
quota_series_used *Zahl

Aufbau der Antwort

{
  "id": "number",
  "username": "string",
  "role": "admin | approver | user | child",
  "display_name": "string | null",
  "email": "string | null",
  "email_verified": "boolean",
  "language": "string",
  "theme": "string",
  "card_versions": [
    "string"
  ],
  "card_versions_always": "boolean",
  "is_active": "boolean",
  "is_betreiber": "boolean",
  "auto_approve": "boolean",
  "auto_approve_movies": "boolean | null"
}
GET/api/app/1/approvalsAll requestsohne Zusage

Same as GET /api/admin/requests in the web interface, for the iPhone app.

Parameter

NameTyp
status (query)pending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred oder null
user_id (query)Zahl oder null
feedback (query)ja/nein
from_watchlist (query)ja/nein
fremde_fassung (query)ja/nein

Antwort RequestWithUser

FeldTyp
id *Zahl
media_type *movie | tv
fassung *Text oder null
tier *standard | uhd
tmdb_id *Zahl
title *Text
poster_path *Text oder null
release_date *Text oder null
status *pending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred
quality_profile_id *Zahl oder null
quality_profile_uhdja/nein
root_folder_path *Text oder null
season *Zahl oder null
episodesListe von Zahl oder null
from_watchlist *ja/nein
arr_linkedja/nein
requested_at *Zeitpunkt (ISO 8601)
approved_at *Zeitpunkt (ISO 8601) oder null
completed_at *Zeitpunkt (ISO 8601) oder null
approved_by_nameText oder null
last_checked_atZeitpunkt (ISO 8601) oder null
laedt_fortschrittZahl oder null
laedt_seitZeitpunkt (ISO 8601) oder null
rejection_reason *Text oder null
regel_nameText oder null
darf_trotzdem_fragenja/nein
trotzdem_gefragtja/nein
error_message *Text oder null
error_detailObjekt oder null
rating *Zahl oder null
feedback *Text oder null
rated_at *Zeitpunkt (ISO 8601) oder null
rating_outdatedja/nein
feedback_reply *Text oder null
replied_at *Zeitpunkt (ISO 8601) oder null
user_id *Zahl
username *Text
display_name *Text oder null
avatar_url *Text oder null
storageAnfragerSpeicher oder null
requester_subscriptionsListe von Text
for_child_nameText oder null
import_haengtText oder null

Aufbau der Antwort

[
  {
    "id": "number",
    "media_type": "movie | tv",
    "fassung": "string | null",
    "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",
    "quality_profile_uhd": "boolean",
    "root_folder_path": "string | null",
    "season": "number | null",
    "episodes": [
      "number"
    ]
  }
]
POST/api/app/1/approvals/all/{user_id}Approve everything one person asked forohne Zusage

Same as POST /api/admin/requests/approve-all/{user_id} in the web interface, for the iPhone app.

Parameter

NameTyp
user_id *Zahl

Anfragekörper

FeldTyp
zieleObjekt
movieTargetChoice oder null
tvTargetChoice oder null
movie_uhdTargetChoice oder null
tv_uhdTargetChoice oder null

Antwort RequestWithUser

FeldTyp
id *Zahl
media_type *movie | tv
fassung *Text oder null
tier *standard | uhd
tmdb_id *Zahl
title *Text
poster_path *Text oder null
release_date *Text oder null
status *pending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred
quality_profile_id *Zahl oder null
quality_profile_uhdja/nein
root_folder_path *Text oder null
season *Zahl oder null
episodesListe von Zahl oder null
from_watchlist *ja/nein
arr_linkedja/nein
requested_at *Zeitpunkt (ISO 8601)
approved_at *Zeitpunkt (ISO 8601) oder null
completed_at *Zeitpunkt (ISO 8601) oder null
approved_by_nameText oder null
last_checked_atZeitpunkt (ISO 8601) oder null
laedt_fortschrittZahl oder null
laedt_seitZeitpunkt (ISO 8601) oder null
rejection_reason *Text oder null
regel_nameText oder null
darf_trotzdem_fragenja/nein
trotzdem_gefragtja/nein
error_message *Text oder null
error_detailObjekt oder null
rating *Zahl oder null
feedback *Text oder null
rated_at *Zeitpunkt (ISO 8601) oder null
rating_outdatedja/nein
feedback_reply *Text oder null
replied_at *Zeitpunkt (ISO 8601) oder null
user_id *Zahl
username *Text
display_name *Text oder null
avatar_url *Text oder null
storageAnfragerSpeicher oder null
requester_subscriptionsListe von Text
for_child_nameText oder null
import_haengtText oder null

Aufbau der Antwort

[
  {
    "id": "number",
    "media_type": "movie | tv",
    "fassung": "string | null",
    "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",
    "quality_profile_uhd": "boolean",
    "root_folder_path": "string | null",
    "season": "number | null",
    "episodes": [
      "number"
    ]
  }
]
GET/api/app/1/approvals/countRequests awaiting a decisionohne Zusage

Same as GET /api/admin/requests/pending/count in the web interface, for the iPhone app.

POST/api/app/1/approvals/{request_id}/approveApprove a requestohne Zusage

Same as POST /api/admin/requests/{request_id}/approve in the web interface, for the iPhone app.

Parameter

NameTyp
request_id *Zahl

Anfragekörper

FeldTyp
root_folder_pathText oder null
quality_profile_idZahl oder null

Antwort RequestWithUser

FeldTyp
id *Zahl
media_type *movie | tv
fassung *Text oder null
tier *standard | uhd
tmdb_id *Zahl
title *Text
poster_path *Text oder null
release_date *Text oder null
status *pending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred
quality_profile_id *Zahl oder null
quality_profile_uhdja/nein
root_folder_path *Text oder null
season *Zahl oder null
episodesListe von Zahl oder null
from_watchlist *ja/nein
arr_linkedja/nein
requested_at *Zeitpunkt (ISO 8601)
approved_at *Zeitpunkt (ISO 8601) oder null
completed_at *Zeitpunkt (ISO 8601) oder null
approved_by_nameText oder null
last_checked_atZeitpunkt (ISO 8601) oder null
laedt_fortschrittZahl oder null
laedt_seitZeitpunkt (ISO 8601) oder null
rejection_reason *Text oder null
regel_nameText oder null
darf_trotzdem_fragenja/nein
trotzdem_gefragtja/nein
error_message *Text oder null
error_detailObjekt oder null
rating *Zahl oder null
feedback *Text oder null
rated_at *Zeitpunkt (ISO 8601) oder null
rating_outdatedja/nein
feedback_reply *Text oder null
replied_at *Zeitpunkt (ISO 8601) oder null
user_id *Zahl
username *Text
display_name *Text oder null
avatar_url *Text oder null
storageAnfragerSpeicher oder null
requester_subscriptionsListe von Text
for_child_nameText oder null
import_haengtText oder null

Aufbau der Antwort

{
  "id": "number",
  "media_type": "movie | tv",
  "fassung": "string | null",
  "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",
  "quality_profile_uhd": "boolean",
  "root_folder_path": "string | null",
  "season": "number | null",
  "episodes": [
    "number"
  ]
}
POST/api/app/1/approvals/{request_id}/deferDefer a requestohne Zusage

Same as POST /api/admin/requests/{request_id}/defer in the web interface, for the iPhone app.

Parameter

NameTyp
request_id *Zahl

Antwort RequestWithUser

FeldTyp
id *Zahl
media_type *movie | tv
fassung *Text oder null
tier *standard | uhd
tmdb_id *Zahl
title *Text
poster_path *Text oder null
release_date *Text oder null
status *pending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred
quality_profile_id *Zahl oder null
quality_profile_uhdja/nein
root_folder_path *Text oder null
season *Zahl oder null
episodesListe von Zahl oder null
from_watchlist *ja/nein
arr_linkedja/nein
requested_at *Zeitpunkt (ISO 8601)
approved_at *Zeitpunkt (ISO 8601) oder null
completed_at *Zeitpunkt (ISO 8601) oder null
approved_by_nameText oder null
last_checked_atZeitpunkt (ISO 8601) oder null
laedt_fortschrittZahl oder null
laedt_seitZeitpunkt (ISO 8601) oder null
rejection_reason *Text oder null
regel_nameText oder null
darf_trotzdem_fragenja/nein
trotzdem_gefragtja/nein
error_message *Text oder null
error_detailObjekt oder null
rating *Zahl oder null
feedback *Text oder null
rated_at *Zeitpunkt (ISO 8601) oder null
rating_outdatedja/nein
feedback_reply *Text oder null
replied_at *Zeitpunkt (ISO 8601) oder null
user_id *Zahl
username *Text
display_name *Text oder null
avatar_url *Text oder null
storageAnfragerSpeicher oder null
requester_subscriptionsListe von Text
for_child_nameText oder null
import_haengtText oder null

Aufbau der Antwort

{
  "id": "number",
  "media_type": "movie | tv",
  "fassung": "string | null",
  "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",
  "quality_profile_uhd": "boolean",
  "root_folder_path": "string | null",
  "season": "number | null",
  "episodes": [
    "number"
  ]
}
POST/api/app/1/approvals/{request_id}/rejectReject a requestohne Zusage

Same as POST /api/admin/requests/{request_id}/reject in the web interface, for the iPhone app.

Parameter

NameTyp
request_id *Zahl

Anfragekörper RejectPayload

FeldTyp
reasonText oder null
blockja/nein

Antwort RequestWithUser

FeldTyp
id *Zahl
media_type *movie | tv
fassung *Text oder null
tier *standard | uhd
tmdb_id *Zahl
title *Text
poster_path *Text oder null
release_date *Text oder null
status *pending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred
quality_profile_id *Zahl oder null
quality_profile_uhdja/nein
root_folder_path *Text oder null
season *Zahl oder null
episodesListe von Zahl oder null
from_watchlist *ja/nein
arr_linkedja/nein
requested_at *Zeitpunkt (ISO 8601)
approved_at *Zeitpunkt (ISO 8601) oder null
completed_at *Zeitpunkt (ISO 8601) oder null
approved_by_nameText oder null
last_checked_atZeitpunkt (ISO 8601) oder null
laedt_fortschrittZahl oder null
laedt_seitZeitpunkt (ISO 8601) oder null
rejection_reason *Text oder null
regel_nameText oder null
darf_trotzdem_fragenja/nein
trotzdem_gefragtja/nein
error_message *Text oder null
error_detailObjekt oder null
rating *Zahl oder null
feedback *Text oder null
rated_at *Zeitpunkt (ISO 8601) oder null
rating_outdatedja/nein
feedback_reply *Text oder null
replied_at *Zeitpunkt (ISO 8601) oder null
user_id *Zahl
username *Text
display_name *Text oder null
avatar_url *Text oder null
storageAnfragerSpeicher oder null
requester_subscriptionsListe von Text
for_child_nameText oder null
import_haengtText oder null

Aufbau der Antwort

{
  "id": "number",
  "media_type": "movie | tv",
  "fassung": "string | null",
  "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",
  "quality_profile_uhd": "boolean",
  "root_folder_path": "string | null",
  "season": "number | null",
  "episodes": [
    "number"
  ]
}
GET/api/app/1/browse/shelf/{media_type}/{kennung}One shelf of titlesohne Zusage

Same as GET /api/stoebern/regal/{media_type}/{kennung} in the web interface, for the iPhone app.

Parameter

NameTyp
media_type *movie | tv
kennung *Text
page (query)Zahl
bestand (query)egal | nur_vorhanden | nur_neu
anzahl (query)Zahl

Antwort RegalSeite

FeldTyp
kennung *Text
items *Liste von MediaItem
page *Zahl
total_pages *Zahl
seiten_durchsucht *Zahl
erschoepft *ja/nein
demoja/nein
arr_warningText oder null

Aufbau der Antwort

{
  "kennung": "string",
  "items": [
    {
      "media_type": "movie | tv",
      "tmdb_id": "number",
      "tvdb_id": "number | null",
      "title": "string",
      "original_title": "string | null",
      "overview": "string",
      "poster_url": "string | null",
      "backdrop_url": "string | null",
      "release_date": "string | null",
      "vote_average": "number",
      "vote_count": "number",
      "genres": [
        "string"
      ],
      "genre_ids": [
        "number"
      ],
      "runtime_minutes": "number | null"
    }
  ],
  "page": "number",
  "total_pages": "number",
  "seiten_durchsucht": "number",
  "erschoepft": "boolean",
  "demo": "boolean",
  "arr_warning": "string | null"
}
GET/api/app/1/browse/shelves/{media_type}Shelves to browseohne Zusage

Same as GET /api/stoebern/regale/{media_type} in the web interface, for the iPhone app.

Parameter

NameTyp
media_type *movie | tv

Antwort RegalInfo

FeldTyp
kennung *Text
gruppe *Text
kategorie *Text
persoenlich *ja/nein
titelText oder null

Aufbau der Antwort

[
  {
    "kennung": "string",
    "gruppe": "string",
    "kategorie": "string",
    "persoenlich": "boolean",
    "titel": "string | null"
  }
]
GET/api/app/1/calendarWhat comes out whenohne Zusage

Same as GET /api/calendar in the web interface, for the iPhone app.

Parameter

NameTyp
date_from (query)Text oder null
date_to (query)Text oder null
sources (query)all | mine | new
date_type (query)digital | kino
noise (query)sinnvoll | studios | known | none

Antwort CalendarResult

FeldTyp
date_from *Text
date_to *Text
daysListe von CalendarDay
arr_warningText oder null
arr_warning_serviceText oder null
tmdb_warningText oder null
demoja/nein

Aufbau der Antwort

{
  "date_from": "string",
  "date_to": "string",
  "days": [
    {
      "date": "string",
      "entries": [
        {}
      ]
    }
  ],
  "arr_warning": "string | null",
  "arr_warning_service": "string | null",
  "tmdb_warning": "string | null",
  "demo": "boolean"
}
GET/api/app/1/discover/{media_type}Discover titlesohne Zusage

Same as GET /api/discover/{media_type} in the web interface, for the iPhone app.

Parameter

NameTyp
media_type *movie | tv
date_from (query)Text oder null
date_to (query)Text oder null
language (query)Text oder null
region (query)Text oder null
genre_id (query)Zahl oder null
sort (query)newest | rating | popular
page (query)Zahl
feature_length (query)ja/nein
min_rating (query)Zahl oder null
hide_unrated (query)ja/nein
released_in_region (query)ja/nein
studio_id (query)Zahl oder null
known_only (query)ja/nein

Antwort MediaPage

FeldTyp
page *Zahl
total_pages *Zahl
total_results *Zahl
items *Liste von MediaItem
demoja/nein
arr_warningText oder null

Aufbau der Antwort

{
  "page": "number",
  "total_pages": "number",
  "total_results": "number",
  "items": [
    {
      "media_type": "movie | tv",
      "tmdb_id": "number",
      "tvdb_id": "number | null",
      "title": "string",
      "original_title": "string | null",
      "overview": "string",
      "poster_url": "string | null",
      "backdrop_url": "string | null",
      "release_date": "string | null",
      "vote_average": "number",
      "vote_count": "number",
      "genres": [
        "string"
      ],
      "genre_ids": [
        "number"
      ],
      "runtime_minutes": "number | null"
    }
  ],
  "demo": "boolean",
  "arr_warning": "string | null"
}
GET/api/app/1/favoritesTitles you likeohne Zusage

Same as GET /api/favorites in the web interface, for the iPhone app.

Antwort FavoriteOut

FeldTyp
media_type *movie | tv
tmdb_id *Zahl
title *Text
poster_url *Text oder null
created_at *Zeitpunkt (ISO 8601)

Aufbau der Antwort

[
  {
    "media_type": "movie | tv",
    "tmdb_id": "number",
    "title": "string",
    "poster_url": "string | null",
    "created_at": "ISO 8601"
  }
]
POST/api/app/1/favoritesLike a titleohne Zusage

Same as POST /api/favorites in the web interface, for the iPhone app.

Anfragekörper FavoriteIn

FeldTyp
media_type *movie | tv
tmdb_id *Zahl
titleText
poster_urlText oder null

Antwort FavoriteOut

FeldTyp
media_type *movie | tv
tmdb_id *Zahl
title *Text
poster_url *Text oder null
created_at *Zeitpunkt (ISO 8601)

Aufbau der Antwort

{
  "media_type": "movie | tv",
  "tmdb_id": "number",
  "title": "string",
  "poster_url": "string | null",
  "created_at": "ISO 8601"
}
DELETE/api/app/1/favorites/{media_type}/{tmdb_id}Stop liking a titleohne Zusage

Same as DELETE /api/favorites/{media_type}/{tmdb_id} in the web interface, for the iPhone app.

Parameter

NameTyp
media_type *movie | tv
tmdb_id *Zahl
GET/api/app/1/home/recentRecently arrivedohne Zusage

Same as GET /api/home/recent in the web interface, for the iPhone app.

Antwort RecentItem

FeldTyp
request_id *Zahl
media_type *movie | tv
tmdb_id *Zahl
title *Text
overviewText
poster_urlText oder null
backdrop_urlText oder null
release_dateText oder null
vote_averageZahl
runtime_minutesZahl oder null
genresListe von Text
completed_atZeitpunkt (ISO 8601) oder null
requested_by *Text
requester_avatarText oder null
seasonsListe von Zahl

Aufbau der Antwort

[
  {
    "request_id": "number",
    "media_type": "movie | tv",
    "tmdb_id": "number",
    "title": "string",
    "overview": "string",
    "poster_url": "string | null",
    "backdrop_url": "string | null",
    "release_date": "string | null",
    "vote_average": "number",
    "runtime_minutes": "number | null",
    "genres": [
      "string"
    ],
    "completed_at": "ISO 8601 | null",
    "requested_by": "string",
    "requester_avatar": "string | null"
  }
]
GET/api/app/1/house-rulesHouse rulesohne Zusage

Same as GET /api/hausordnung in the web interface, for the iPhone app.

Antwort HausordnungOeffentlich

FeldTyp
titel *Text
inhalt *Text
fassung *Zahl
quittierbar *ja/nein
gelesen *Zahl oder null
akzeptiert *ja/nein oder null

Aufbau der Antwort

{
  "titel": "string",
  "inhalt": "string",
  "fassung": "number",
  "quittierbar": "boolean",
  "gelesen": "number | null",
  "akzeptiert": "boolean | null"
}
POST/api/app/1/house-rules/decisionAccept or refuse the house rulesohne Zusage

Same as POST /api/hausordnung/entscheidung in the web interface, for the iPhone app.

Anfragekörper Entscheidung

FeldTyp
akzeptiertja/nein
GET/api/app/1/kids/categoriesCategories for a childohne Zusage

Same as GET /api/kids/categories in the web interface, for the iPhone app.

Parameter

NameTyp
media_type (query)movie | tv

Antwort KidsCategory

FeldTyp
rubrik *Text
bilder *Liste von Text

Aufbau der Antwort

[
  {
    "rubrik": "string",
    "bilder": [
      "string"
    ]
  }
]
GET/api/app/1/kids/rubrik/{rubrik}One categoryohne Zusage

Same as GET /api/kids/rubrik/{rubrik} in the web interface, for the iPhone app.

Parameter

NameTyp
rubrik *Text
media_type (query)movie | tv
page (query)Zahl

Antwort KidsItems

FeldTyp
verfuegbar *Liste von MediaItem
wuenschbar *Liste von MediaItem
gewuenscht *Liste von Zahl

Aufbau der Antwort

{
  "verfuegbar": [
    {
      "media_type": "movie | tv",
      "tmdb_id": "number",
      "tvdb_id": "number | null",
      "title": "string",
      "original_title": "string | null",
      "overview": "string",
      "poster_url": "string | null",
      "backdrop_url": "string | null",
      "release_date": "string | null",
      "vote_average": "number",
      "vote_count": "number",
      "genres": [
        "string"
      ],
      "genre_ids": [
        "number"
      ],
      "runtime_minutes": "number | null"
    }
  ],
  "wuenschbar": [
    {
      "media_type": "movie | tv",
      "tmdb_id": "number",
      "tvdb_id": "number | null",
      "title": "string",
      "original_title": "string | null",
      "overview": "string",
      "poster_url": "string | null",
      "backdrop_url": "string | null",
      "release_date": "string | null",
      "vote_average": "number",
      "vote_count": "number",
      "genres": [
        "string"
      ],
      "genre_ids": [
        "number"
      ],
      "runtime_minutes": "number | null"
    }
  ],
  "gewuenscht": [
    "number"
  ]
}
GET/api/app/1/kids/title/{media_type}/{tmdb_id}One titleohne Zusage

Same as GET /api/kids/title/{media_type}/{tmdb_id} in the web interface, for the iPhone app.

Parameter

NameTyp
media_type *movie | tv
tmdb_id *Zahl

Antwort MediaDetail

FeldTyp
media_type *movie | tv
tmdb_id *Zahl
tvdb_idZahl oder null
title *Text
original_titleText oder null
overviewText
poster_urlText oder null
backdrop_urlText oder null
release_dateText oder null
vote_averageZahl
vote_countZahl
genresListe von Text
genre_idsListe von Zahl
runtime_minutesZahl oder null
certificationText oder null
original_languageText oder null
origin_countryListe von Text
seasonsListe von SeasonInfo
statusText
status_uhdText oder null
fassungenListe von FassungAchse
watchedja/nein
watched_onListe von Text
watched_not_onListe von Text
pathText oder null
path_uhdText oder null
uhd_in_standardja/nein
taglineText
homepageText oder null
status_textText
original_countryListe von Text
spoken_languagesListe von Text
budgetZahl oder null
revenueZahl oder null
studiosListe von NamedRef
keywordsListe von NamedRef
trailerTrailer oder null
watchWatchProviders oder null
in_my_subscriptionsListe von Text
watchingja/nein
requested_by_meja/nein
status_unconfirmedja/nein
status_refusedja/nein
my_feedbackMeineRueckmeldung oder null
open_ticketja/nein
castListe von CastMember
crewListe von CrewMember
recommendationsListe von MediaItem
collectionMovieCollection oder null
seasons_totalZahl oder null
episodes_totalZahl oder null
series_statusText
networksListe von NamedRef

Aufbau der Antwort

{
  "media_type": "movie | tv",
  "tmdb_id": "number",
  "tvdb_id": "number | null",
  "title": "string",
  "original_title": "string | null",
  "overview": "string",
  "poster_url": "string | null",
  "backdrop_url": "string | null",
  "release_date": "string | null",
  "vote_average": "number",
  "vote_count": "number",
  "genres": [
    "string"
  ],
  "genre_ids": [
    "number"
  ],
  "runtime_minutes": "number | null"
}
GET/api/app/1/kids/wishesMy wishesohne Zusage

Same as GET /api/kids/wishes in the web interface, for the iPhone app.

Antwort WishOut

FeldTyp
id *Zahl
media_type *Text
tmdb_id *Zahl
title *Text
poster_path *Text oder null
release_date *Text oder null
state *Text
decline_note *Text oder null
created_at *Text

Aufbau der Antwort

[
  {
    "id": "number",
    "media_type": "string",
    "tmdb_id": "number",
    "title": "string",
    "poster_path": "string | null",
    "release_date": "string | null",
    "state": "string",
    "decline_note": "string | null",
    "created_at": "string"
  }
]
POST/api/app/1/kids/wishesWish for somethingohne Zusage

Same as POST /api/kids/wishes in the web interface, for the iPhone app.

Anfragekörper WishCreate

FeldTyp
media_type *movie | tv
tmdb_id *Zahl

Antwort WishOut

FeldTyp
id *Zahl
media_type *Text
tmdb_id *Zahl
title *Text
poster_path *Text oder null
release_date *Text oder null
state *Text
decline_note *Text oder null
created_at *Text

Aufbau der Antwort

{
  "id": "number",
  "media_type": "string",
  "tmdb_id": "number",
  "title": "string",
  "poster_path": "string | null",
  "release_date": "string | null",
  "state": "string",
  "decline_note": "string | null",
  "created_at": "string"
}
GET/api/app/1/meWho am I, and what does the app showohne Zusage

The app's first call. Answers 404 on a nexview without this surface: the app then says the feature comes with the next nexview update.

Antwort AppSelbstauskunft

FeldTyp
version *Text
konto *AppKonto
fassungen *Liste von FassungOeffentlich
hausordnung *AppHausordnung
kontingent_zeitraum *Text
beschaffung *Text

Aufbau der Antwort

{
  "version": "string",
  "konto": {
    "id": "number",
    "name": "string",
    "role": "string",
    "betreiber": "boolean",
    "entscheidet": "boolean",
    "hat_kinder": "boolean"
  },
  "fassungen": [
    {
      "kennung": "string",
      "media_type": "string",
      "name": "string",
      "klasse": "string | null",
      "quelle": "string",
      "haupt": "boolean",
      "bereit": "boolean",
      "offen_fuer_alle": "boolean",
      "approver_picks_target": "boolean",
      "darf_anfragen": "boolean",
      "auto_freigabe": "boolean"
    }
  ],
  "hausordnung": {
    "vorhanden": "boolean",
    "titel": "string",
    "fassung": "number",
    "quittierbar": "boolean",
    "gelesen": "number | null"
  },
  "kontingent_zeitraum": "string",
  "beschaffung": "string"
}
GET/api/app/1/media/{media_type}/{tmdb_id}One titleohne Zusage

Same as GET /api/media/{media_type}/{tmdb_id} in the web interface, for the iPhone app.

Parameter

NameTyp
media_type *movie | tv
tmdb_id *Zahl

Antwort MediaItem

FeldTyp
media_type *movie | tv
tmdb_id *Zahl
tvdb_idZahl oder null
title *Text
original_titleText oder null
overviewText
poster_urlText oder null
backdrop_urlText oder null
release_dateText oder null
vote_averageZahl
vote_countZahl
genresListe von Text
genre_idsListe von Zahl
runtime_minutesZahl oder null
certificationText oder null
original_languageText oder null
origin_countryListe von Text
seasonsListe von SeasonInfo
statusText
status_uhdText oder null
fassungenListe von FassungAchse
watchedja/nein
watched_onListe von Text
watched_not_onListe von Text
pathText oder null
path_uhdText oder null
uhd_in_standardja/nein

Aufbau der Antwort

{
  "media_type": "movie | tv",
  "tmdb_id": "number",
  "tvdb_id": "number | null",
  "title": "string",
  "original_title": "string | null",
  "overview": "string",
  "poster_url": "string | null",
  "backdrop_url": "string | null",
  "release_date": "string | null",
  "vote_average": "number",
  "vote_count": "number",
  "genres": [
    "string"
  ],
  "genre_ids": [
    "number"
  ],
  "runtime_minutes": "number | null"
}
GET/api/app/1/notificationsYour notificationsohne Zusage

Same as GET /api/notifications in the web interface, for the iPhone app.

Parameter

NameTyp
unread_only (query)ja/nein
limit (query)Zahl

Antwort NotificationPublic

FeldTyp
id *Zahl
type *download_complete | approved | rejected | cancelled | request_pending | feedback | feedback_poor | feedback_reply | ticket_new | ticket_reply | user_imported | mediaserver_reconnect | storage_released | storage_kept | storage_deleted | storage_release_requested | storage_grew | storage_scheduled | storage_unscheduled | request_deferred | child_wish | watch_ready | watch_episodes | instance_health | rating_outdated | request_fulfilled | invitation_redeemed | invitation_on_hold | download_stuck
message_key *Text
message_title *Text oder null
seasonZahl oder null
episodesListe von Zahl oder null
request_id *Zahl oder null
ticket_id *Zahl oder null
is_read *ja/nein
created_at *Zeitpunkt (ISO 8601)
ziel *Text

Aufbau der Antwort

[
  {
    "id": "number",
    "type": "download_complete | approved | rejected | cancelled | request_pending | feedback | feedback_poor | feedback_reply | ticket_new | ticket_reply | user_imported | mediaserver_reconnect | storage_released | storage_kept | storage_deleted | storage_release_requested | storage_grew | storage_scheduled | storage_unscheduled | request_deferred | child_wish | watch_ready | watch_episodes | instance_health | rating_outdated | request_fulfilled | invitation_redeemed | invitation_on_hold | download_stuck",
    "message_key": "string",
    "message_title": "string | null",
    "season": "number | null",
    "episodes": [
      "number"
    ],
    "request_id": "number | null",
    "ticket_id": "number | null",
    "is_read": "boolean",
    "created_at": "ISO 8601",
    "ziel": "string"
  }
]
POST/api/app/1/notifications/read-allMark all notifications readohne Zusage

Same as POST /api/notifications/read-all in the web interface, for the iPhone app.

GET/api/app/1/notifications/unread/countNumber of unread notificationsohne Zusage

Same as GET /api/notifications/unread/count in the web interface, for the iPhone app.

POST/api/app/1/notifications/{notification_id}/readMark one notification readohne Zusage

Same as POST /api/notifications/{notification_id}/read in the web interface, for the iPhone app.

Parameter

NameTyp
notification_id *Zahl
POST/api/app/1/pairing/{pairing_id}/keyFetch the key from a QR codeohne Zusage

Needs no key: this is how the app gets one. Send the secret from the QR code as X-Pairing-Secret. The answer carries the key once; afterwards the pairing is used up. An unknown pairing, a wrong secret, one already used and one expired all answer the same 404 pairing_not_found.

Parameter

NameTyp
pairing_id *Text

Anfragekörper

FeldTypBedeutung
deviceTextThe device's name, e.g. "Mia's iPad". Shown in the list of keys.

Antwort AbgeholterSchluessel

FeldTypBedeutung
key *TextThe key, exactly once. Send it as Authorization: Bearer.
account *AbgeholtesKonto

Aufbau der Antwort

{
  "key": "string",
  "account": {
    "name": "string",
    "role": "string"
  }
}
GET/api/app/1/ratings/mineYour quality ratingsohne Zusage

Same as GET /api/feedback/mine in the web interface, for the iPhone app.

Antwort RatingOut

FeldTyp
id *Zahl
media_type *Text
tmdb_id *Zahl
season *Zahl oder null
rating *Zahl
comment *Text oder null
title *Text
reply *Text oder null
outdated *ja/nein
updated_at *Text
user_nameText

Aufbau der Antwort

[
  {
    "id": "number",
    "media_type": "string",
    "tmdb_id": "number",
    "season": "number | null",
    "rating": "number",
    "comment": "string | null",
    "title": "string",
    "reply": "string | null",
    "outdated": "boolean",
    "updated_at": "string",
    "user_name": "string"
  }
]
PUT/api/app/1/ratings/{media_type}/{tmdb_id}Rate the quality of a titleohne Zusage

Same as PUT /api/feedback/{media_type}/{tmdb_id} in the web interface, for the iPhone app.

Parameter

NameTyp
media_type *Text
tmdb_id *Zahl

Anfragekörper RatingIn

FeldTyp
rating *Zahl
commentText oder null
titleText
seasonZahl oder null

Antwort RatingOut

FeldTyp
id *Zahl
media_type *Text
tmdb_id *Zahl
season *Zahl oder null
rating *Zahl
comment *Text oder null
title *Text
reply *Text oder null
outdated *ja/nein
updated_at *Text
user_nameText

Aufbau der Antwort

{
  "id": "number",
  "media_type": "string",
  "tmdb_id": "number",
  "season": "number | null",
  "rating": "number",
  "comment": "string | null",
  "title": "string",
  "reply": "string | null",
  "outdated": "boolean",
  "updated_at": "string",
  "user_name": "string"
}
POST/api/app/1/requestsRequest a titleohne Zusage

Same as POST /api/requests in the web interface, for the iPhone app.

Anfragekörper RequestCreate

FeldTyp
media_type *movie | tv
fassungText oder null
tierstandard | uhd
tmdb_id *Zahl
quality_profile_idZahl oder null
root_folder_pathText oder null
monitor_futureja/nein
tvdb_idZahl oder null
seasonZahl oder null
episodesListe von Zahl oder null
from_watchlistja/nein

Antwort RequestPublic

FeldTyp
id *Zahl
media_type *movie | tv
fassung *Text oder null
tier *standard | uhd
tmdb_id *Zahl
title *Text
poster_path *Text oder null
release_date *Text oder null
status *pending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred
quality_profile_id *Zahl oder null
quality_profile_uhdja/nein
root_folder_path *Text oder null
season *Zahl oder null
episodesListe von Zahl oder null
from_watchlist *ja/nein
arr_linkedja/nein
requested_at *Zeitpunkt (ISO 8601)
approved_at *Zeitpunkt (ISO 8601) oder null
completed_at *Zeitpunkt (ISO 8601) oder null
approved_by_nameText oder null
last_checked_atZeitpunkt (ISO 8601) oder null
laedt_fortschrittZahl oder null
laedt_seitZeitpunkt (ISO 8601) oder null
rejection_reason *Text oder null
regel_nameText oder null
darf_trotzdem_fragenja/nein
trotzdem_gefragtja/nein
error_message *Text oder null
error_detailObjekt oder null
rating *Zahl oder null
feedback *Text oder null
rated_at *Zeitpunkt (ISO 8601) oder null
rating_outdatedja/nein
feedback_reply *Text oder null
replied_at *Zeitpunkt (ISO 8601) oder null

Aufbau der Antwort

{
  "id": "number",
  "media_type": "movie | tv",
  "fassung": "string | null",
  "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",
  "quality_profile_uhd": "boolean",
  "root_folder_path": "string | null",
  "season": "number | null",
  "episodes": [
    "number"
  ]
}
GET/api/app/1/requests/mineYour requestsohne Zusage

Same as GET /api/requests/mine in the web interface, for the iPhone app.

Antwort RequestPublic

FeldTyp
id *Zahl
media_type *movie | tv
fassung *Text oder null
tier *standard | uhd
tmdb_id *Zahl
title *Text
poster_path *Text oder null
release_date *Text oder null
status *pending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred
quality_profile_id *Zahl oder null
quality_profile_uhdja/nein
root_folder_path *Text oder null
season *Zahl oder null
episodesListe von Zahl oder null
from_watchlist *ja/nein
arr_linkedja/nein
requested_at *Zeitpunkt (ISO 8601)
approved_at *Zeitpunkt (ISO 8601) oder null
completed_at *Zeitpunkt (ISO 8601) oder null
approved_by_nameText oder null
last_checked_atZeitpunkt (ISO 8601) oder null
laedt_fortschrittZahl oder null
laedt_seitZeitpunkt (ISO 8601) oder null
rejection_reason *Text oder null
regel_nameText oder null
darf_trotzdem_fragenja/nein
trotzdem_gefragtja/nein
error_message *Text oder null
error_detailObjekt oder null
rating *Zahl oder null
feedback *Text oder null
rated_at *Zeitpunkt (ISO 8601) oder null
rating_outdatedja/nein
feedback_reply *Text oder null
replied_at *Zeitpunkt (ISO 8601) oder null

Aufbau der Antwort

[
  {
    "id": "number",
    "media_type": "movie | tv",
    "fassung": "string | null",
    "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",
    "quality_profile_uhd": "boolean",
    "root_folder_path": "string | null",
    "season": "number | null",
    "episodes": [
      "number"
    ]
  }
]
GET/api/app/1/requests/quotaYour quotaohne Zusage

Same as GET /api/requests/quota in the web interface, for the iPhone app.

Antwort QuotaOverview

FeldTyp
movie *QuotaInfo
tv *QuotaInfo
auto_approve *ja/nein

Aufbau der Antwort

{
  "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"
}
POST/api/app/1/requests/{request_id}/cancelCancel your requestohne Zusage

Same as POST /api/requests/{request_id}/cancel in the web interface, for the iPhone app.

Parameter

NameTyp
request_id *Zahl

Antwort RequestPublic

FeldTyp
id *Zahl
media_type *movie | tv
fassung *Text oder null
tier *standard | uhd
tmdb_id *Zahl
title *Text
poster_path *Text oder null
release_date *Text oder null
status *pending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred
quality_profile_id *Zahl oder null
quality_profile_uhdja/nein
root_folder_path *Text oder null
season *Zahl oder null
episodesListe von Zahl oder null
from_watchlist *ja/nein
arr_linkedja/nein
requested_at *Zeitpunkt (ISO 8601)
approved_at *Zeitpunkt (ISO 8601) oder null
completed_at *Zeitpunkt (ISO 8601) oder null
approved_by_nameText oder null
last_checked_atZeitpunkt (ISO 8601) oder null
laedt_fortschrittZahl oder null
laedt_seitZeitpunkt (ISO 8601) oder null
rejection_reason *Text oder null
regel_nameText oder null
darf_trotzdem_fragenja/nein
trotzdem_gefragtja/nein
error_message *Text oder null
error_detailObjekt oder null
rating *Zahl oder null
feedback *Text oder null
rated_at *Zeitpunkt (ISO 8601) oder null
rating_outdatedja/nein
feedback_reply *Text oder null
replied_at *Zeitpunkt (ISO 8601) oder null

Aufbau der Antwort

{
  "id": "number",
  "media_type": "movie | tv",
  "fassung": "string | null",
  "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",
  "quality_profile_uhd": "boolean",
  "root_folder_path": "string | null",
  "season": "number | null",
  "episodes": [
    "number"
  ]
}
GET/api/app/1/search/{media_type}Search titlesohne Zusage

Same as GET /api/search/{media_type} in the web interface, for the iPhone app.

Parameter

NameTyp
media_type *movie | tv
q (query) *Text
page (query)Zahl

Antwort MediaPage

FeldTyp
page *Zahl
total_pages *Zahl
total_results *Zahl
items *Liste von MediaItem
demoja/nein
arr_warningText oder null

Aufbau der Antwort

{
  "page": "number",
  "total_pages": "number",
  "total_results": "number",
  "items": [
    {
      "media_type": "movie | tv",
      "tmdb_id": "number",
      "tvdb_id": "number | null",
      "title": "string",
      "original_title": "string | null",
      "overview": "string",
      "poster_url": "string | null",
      "backdrop_url": "string | null",
      "release_date": "string | null",
      "vote_average": "number",
      "vote_count": "number",
      "genres": [
        "string"
      ],
      "genre_ids": [
        "number"
      ],
      "runtime_minutes": "number | null"
    }
  ],
  "demo": "boolean",
  "arr_warning": "string | null"
}
POST/api/app/1/storage/entries/{posten_id}/give-upGive a title upohne Zusage

Same as POST /api/storage/entries/{posten_id}/abgeben in the web interface, for the iPhone app.

Parameter

NameTyp
posten_id *Zahl

Anfragekörper

FeldTyp
wishText oder null

Antwort StoragePosten

FeldTyp
id *Zahl
media_type *Text
fassung *Text
tier *Text
tmdb_id *Zahl oder null
tvdb_id *Zahl oder null
season *Zahl oder null
title *Text
size_bytes *Zahl
state *Text
measured_at *Zeitpunkt (ISO 8601)
pathText
released_atZeitpunkt (ISO 8601) oder null
release_wishText oder null
watchedja/nein oder null
managedja/nein

Aufbau der Antwort

{
  "id": "number",
  "media_type": "string",
  "fassung": "string",
  "tier": "string",
  "tmdb_id": "number | null",
  "tvdb_id": "number | null",
  "season": "number | null",
  "title": "string",
  "size_bytes": "number",
  "state": "string",
  "measured_at": "ISO 8601",
  "path": "string",
  "released_at": "ISO 8601 | null",
  "release_wish": "string | null"
}
POST/api/app/1/storage/entries/{posten_id}/keepKeep a title after allohne Zusage

Same as POST /api/storage/entries/{posten_id}/behalten in the web interface, for the iPhone app.

Parameter

NameTyp
posten_id *Zahl

Antwort StoragePosten

FeldTyp
id *Zahl
media_type *Text
fassung *Text
tier *Text
tmdb_id *Zahl oder null
tvdb_id *Zahl oder null
season *Zahl oder null
title *Text
size_bytes *Zahl
state *Text
measured_at *Zeitpunkt (ISO 8601)
pathText
released_atZeitpunkt (ISO 8601) oder null
release_wishText oder null
watchedja/nein oder null
managedja/nein

Aufbau der Antwort

{
  "id": "number",
  "media_type": "string",
  "fassung": "string",
  "tier": "string",
  "tmdb_id": "number | null",
  "tvdb_id": "number | null",
  "season": "number | null",
  "title": "string",
  "size_bytes": "number",
  "state": "string",
  "measured_at": "ISO 8601",
  "path": "string",
  "released_at": "ISO 8601 | null",
  "release_wish": "string | null"
}
GET/api/app/1/storage/meYour storageohne Zusage

Same as GET /api/storage/me in the web interface, for the iPhone app.

Parameter

NameTyp
q (query)Text
page (query)Zahl
gesehen (query)ja/nein

Antwort StorageMine

FeldTyp
used_bytes *Zahl
items *Zahl
limit_bytesZahl oder null
pending_bytes *Zahl
zurechenbarja/nein
watched_availableja/nein
matchesZahl
per_pageZahl
entries *Liste von StoragePosten

Aufbau der Antwort

{
  "used_bytes": "number",
  "items": "number",
  "limit_bytes": "number | null",
  "pending_bytes": "number",
  "zurechenbar": "boolean",
  "watched_available": "boolean",
  "matches": "number",
  "per_page": "number",
  "entries": [
    {
      "id": "number",
      "media_type": "string",
      "fassung": "string",
      "tier": "string",
      "tmdb_id": "number | null",
      "tvdb_id": "number | null",
      "season": "number | null",
      "title": "string",
      "size_bytes": "number",
      "state": "string",
      "measured_at": "ISO 8601",
      "path": "string",
      "released_at": "ISO 8601 | null",
      "release_wish": "string | null"
    }
  ]
}
GET/api/app/1/ticketsYour ticketsohne Zusage

Same as GET /api/tickets in the web interface, for the iPhone app.

Parameter

NameTyp
status (query)open | in_progress | closed oder null
user_id (query)Zahl oder null

Antwort TicketOut

FeldTyp
id *Zahl
subject *Text
status *open | in_progress | closed
created_at *Zeitpunkt (ISO 8601)
updated_at *Zeitpunkt (ISO 8601)
closed_at *Zeitpunkt (ISO 8601) oder null
last_reply_at *Zeitpunkt (ISO 8601) oder null
last_reply_by *Zahl oder null
media_type *movie | tv oder null
tmdb_id *Zahl oder null
media_title *Text oder null
user_id *Zahl
username *Text
display_name *Text oder null
avatar_url *Text oder null
message_count *Zahl
opened_by *Zahl oder null
opened_by_name *Text oder null

Aufbau der Antwort

[
  {
    "id": "number",
    "subject": "string",
    "status": "open | in_progress | closed",
    "created_at": "ISO 8601",
    "updated_at": "ISO 8601",
    "closed_at": "ISO 8601 | null",
    "last_reply_at": "ISO 8601 | null",
    "last_reply_by": "number | null",
    "media_type": "movie | tv | null",
    "tmdb_id": "number | null",
    "media_title": "string | null",
    "user_id": "number",
    "username": "string",
    "display_name": "string | null"
  }
]
POST/api/app/1/ticketsOpen a ticketohne Zusage

Same as POST /api/tickets in the web interface, for the iPhone app.

Anfragekörper TicketCreate

FeldTyp
subject *Text
body *Text
user_idZahl oder null
media_typemovie | tv oder null
tmdb_idZahl oder null
media_titleText oder null

Antwort TicketDetail

FeldTyp
id *Zahl
subject *Text
status *open | in_progress | closed
created_at *Zeitpunkt (ISO 8601)
updated_at *Zeitpunkt (ISO 8601)
closed_at *Zeitpunkt (ISO 8601) oder null
last_reply_at *Zeitpunkt (ISO 8601) oder null
last_reply_by *Zahl oder null
media_type *movie | tv oder null
tmdb_id *Zahl oder null
media_title *Text oder null
user_id *Zahl
username *Text
display_name *Text oder null
avatar_url *Text oder null
message_count *Zahl
opened_by *Zahl oder null
opened_by_name *Text oder null
messages *Liste von MessageOut
kinderkonten_offenja/nein

Aufbau der Antwort

{
  "id": "number",
  "subject": "string",
  "status": "open | in_progress | closed",
  "created_at": "ISO 8601",
  "updated_at": "ISO 8601",
  "closed_at": "ISO 8601 | null",
  "last_reply_at": "ISO 8601 | null",
  "last_reply_by": "number | null",
  "media_type": "movie | tv | null",
  "tmdb_id": "number | null",
  "media_title": "string | null",
  "user_id": "number",
  "username": "string",
  "display_name": "string | null"
}
GET/api/app/1/tickets/open-countNumber of open ticketsohne Zusage

Same as GET /api/tickets/open-count in the web interface, for the iPhone app.

GET/api/app/1/tickets/{ticket_id}One ticket with its messagesohne Zusage

Same as GET /api/tickets/{ticket_id} in the web interface, for the iPhone app.

Parameter

NameTyp
ticket_id *Zahl

Antwort TicketDetail

FeldTyp
id *Zahl
subject *Text
status *open | in_progress | closed
created_at *Zeitpunkt (ISO 8601)
updated_at *Zeitpunkt (ISO 8601)
closed_at *Zeitpunkt (ISO 8601) oder null
last_reply_at *Zeitpunkt (ISO 8601) oder null
last_reply_by *Zahl oder null
media_type *movie | tv oder null
tmdb_id *Zahl oder null
media_title *Text oder null
user_id *Zahl
username *Text
display_name *Text oder null
avatar_url *Text oder null
message_count *Zahl
opened_by *Zahl oder null
opened_by_name *Text oder null
messages *Liste von MessageOut
kinderkonten_offenja/nein

Aufbau der Antwort

{
  "id": "number",
  "subject": "string",
  "status": "open | in_progress | closed",
  "created_at": "ISO 8601",
  "updated_at": "ISO 8601",
  "closed_at": "ISO 8601 | null",
  "last_reply_at": "ISO 8601 | null",
  "last_reply_by": "number | null",
  "media_type": "movie | tv | null",
  "tmdb_id": "number | null",
  "media_title": "string | null",
  "user_id": "number",
  "username": "string",
  "display_name": "string | null"
}
POST/api/app/1/tickets/{ticket_id}/messagesAnswer in a ticketohne Zusage

Same as POST /api/tickets/{ticket_id}/messages in the web interface, for the iPhone app.

Parameter

NameTyp
ticket_id *Zahl

Anfragekörper MessageIn

FeldTyp
body *Text

Antwort TicketDetail

FeldTyp
id *Zahl
subject *Text
status *open | in_progress | closed
created_at *Zeitpunkt (ISO 8601)
updated_at *Zeitpunkt (ISO 8601)
closed_at *Zeitpunkt (ISO 8601) oder null
last_reply_at *Zeitpunkt (ISO 8601) oder null
last_reply_by *Zahl oder null
media_type *movie | tv oder null
tmdb_id *Zahl oder null
media_title *Text oder null
user_id *Zahl
username *Text
display_name *Text oder null
avatar_url *Text oder null
message_count *Zahl
opened_by *Zahl oder null
opened_by_name *Text oder null
messages *Liste von MessageOut
kinderkonten_offenja/nein

Aufbau der Antwort

{
  "id": "number",
  "subject": "string",
  "status": "open | in_progress | closed",
  "created_at": "ISO 8601",
  "updated_at": "ISO 8601",
  "closed_at": "ISO 8601 | null",
  "last_reply_at": "ISO 8601 | null",
  "last_reply_by": "number | null",
  "media_type": "movie | tv | null",
  "tmdb_id": "number | null",
  "media_title": "string | null",
  "user_id": "number",
  "username": "string",
  "display_name": "string | null"
}
GET/api/app/1/watchlist/plexYour Plex watchlistohne Zusage

Same as GET /api/watchlist/plex in the web interface, for the iPhone app.

Antwort WatchlistAntwort

FeldTyp
movies *Liste von MediaItem
series *Liste von MediaItem
unmatched *Zahl

Aufbau der Antwort

{
  "movies": [
    {
      "media_type": "movie | tv",
      "tmdb_id": "number",
      "tvdb_id": "number | null",
      "title": "string",
      "original_title": "string | null",
      "overview": "string",
      "poster_url": "string | null",
      "backdrop_url": "string | null",
      "release_date": "string | null",
      "vote_average": "number",
      "vote_count": "number",
      "genres": [
        "string"
      ],
      "genre_ids": [
        "number"
      ],
      "runtime_minutes": "number | null"
    }
  ],
  "series": [
    {
      "media_type": "movie | tv",
      "tmdb_id": "number",
      "tvdb_id": "number | null",
      "title": "string",
      "original_title": "string | null",
      "overview": "string",
      "poster_url": "string | null",
      "backdrop_url": "string | null",
      "release_date": "string | null",
      "vote_average": "number",
      "vote_count": "number",
      "genres": [
        "string"
      ],
      "genre_ids": [
        "number"
      ],
      "runtime_minutes": "number | null"
    }
  ],
  "unmatched": "number"
}
GET/api/app/1/watchlist/statusWhether the Plex watchlist is availableohne Zusage

Same as GET /api/watchlist/status in the web interface, for the iPhone app.

Antwort VerbindungsStand

FeldTyp
statusText
connected *ja/nein
linked *ja/nein

Aufbau der Antwort

{
  "status": "string",
  "connected": "boolean",
  "linked": "boolean"
}
GET/api/app/1/wishesYour children's wishesohne Zusage

Same as GET /api/children/wishes in the web interface, for the iPhone app.

Antwort WishForParent

FeldTyp
id *Zahl
child_id *Zahl
child_name *Text
media_type *Text
tmdb_id *Zahl
title *Text
poster_path *Text oder null
in_my_subscriptionsListe von Text
release_date *Text oder null
created_at *Text

Aufbau der Antwort

[
  {
    "id": "number",
    "child_id": "number",
    "child_name": "string",
    "media_type": "string",
    "tmdb_id": "number",
    "title": "string",
    "poster_path": "string | null",
    "in_my_subscriptions": [
      "string"
    ],
    "release_date": "string | null",
    "created_at": "string"
  }
]
POST/api/app/1/wishes/{wish_id}/declineDecline a wishohne Zusage

Same as POST /api/children/wishes/{wish_id}/decline in the web interface, for the iPhone app.

Parameter

NameTyp
wish_id *Zahl

Anfragekörper WishDecline

FeldTyp
noteText oder null
POST/api/app/1/wishes/{wish_id}/releaseTurn a wish into a requestohne Zusage

Same as POST /api/children/wishes/{wish_id}/release in the web interface, for the iPhone app.

Parameter

NameTyp
wish_id *Zahl

Anfragekörper WishRelease

FeldTyp
quality_profile_idZahl oder null
root_folder_pathText oder null
seasonZahl oder null
episodesListe von Zahl oder null
monitor_futureja/nein
fassungText oder null
tierstandard | uhd

Antwort RequestPublic

FeldTyp
id *Zahl
media_type *movie | tv
fassung *Text oder null
tier *standard | uhd
tmdb_id *Zahl
title *Text
poster_path *Text oder null
release_date *Text oder null
status *pending_approval | approved | searching | downloaded | rejected | failed | cancelled | deleted | deferred
quality_profile_id *Zahl oder null
quality_profile_uhdja/nein
root_folder_path *Text oder null
season *Zahl oder null
episodesListe von Zahl oder null
from_watchlist *ja/nein
arr_linkedja/nein
requested_at *Zeitpunkt (ISO 8601)
approved_at *Zeitpunkt (ISO 8601) oder null
completed_at *Zeitpunkt (ISO 8601) oder null
approved_by_nameText oder null
last_checked_atZeitpunkt (ISO 8601) oder null
laedt_fortschrittZahl oder null
laedt_seitZeitpunkt (ISO 8601) oder null
rejection_reason *Text oder null
regel_nameText oder null
darf_trotzdem_fragenja/nein
trotzdem_gefragtja/nein
error_message *Text oder null
error_detailObjekt oder null
rating *Zahl oder null
feedback *Text oder null
rated_at *Zeitpunkt (ISO 8601) oder null
rating_outdatedja/nein
feedback_reply *Text oder null
replied_at *Zeitpunkt (ISO 8601) oder null

Aufbau der Antwort

{
  "id": "number",
  "media_type": "movie | tv",
  "fassung": "string | null",
  "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",
  "quality_profile_uhd": "boolean",
  "root_folder_path": "string | null",
  "season": "number | null",
  "episodes": [
    "number"
  ]
}
POST/api/children/{child_id}/app-kopplungPrepare a QR code for a child deviceohne Zusage

The same for one of the caller's own child accounts. The device signs in as the child and reaches nothing an adult account reaches. Needs the right to keep child accounts.

Parameter

NameTyp
child_id *Zahl

Anfragekörper

FeldTyp
adresseText

Antwort KopplungNeu

FeldTyp
kennung *Text
geheimnis *Text
gilt_bis *Zeitpunkt (ISO 8601)
adresse *Text
link *Text
qr_svg *Text

Aufbau der Antwort

{
  "kennung": "string",
  "geheimnis": "string",
  "gilt_bis": "ISO 8601",
  "adresse": "string",
  "link": "string",
  "qr_svg": "string"
}
GET/api/children/{child_id}/geraeteList a child's devicesohne Zusage

The keys of one of the caller's own child accounts, with when each was last used.

Parameter

NameTyp
child_id *Zahl

Antwort app__routers__app_kopplung__Geraet

FeldTyp
id *Zahl
name *Text
created_at *Zeitpunkt (ISO 8601)
last_used_at *Zeitpunkt (ISO 8601) oder null

Aufbau der Antwort

[
  {
    "id": "number",
    "name": "string",
    "created_at": "ISO 8601",
    "last_used_at": "ISO 8601 | null"
  }
]
DELETE/api/children/{child_id}/geraete/{schluessel_id}Disconnect a child's deviceohne Zusage

Removes the key at once; the device can no longer sign in. A new code connects it again.

Parameter

NameTyp
child_id *Zahl
schluessel_id *Zahl
POST/api/me/app-kopplungPrepare a QR code for the iPhone appohne Zusage

Prepares a pairing for the calling account and returns it as a link and a QR code. The app fetches its own key with it once, within ten minutes; the key comes into being only then and inherits the rights of this account. The address in the code is the public address from the settings, otherwise adresse from the body.

Anfragekörper

FeldTyp
adresseText

Antwort KopplungNeu

FeldTyp
kennung *Text
geheimnis *Text
gilt_bis *Zeitpunkt (ISO 8601)
adresse *Text
link *Text
qr_svg *Text

Aufbau der Antwort

{
  "kennung": "string",
  "geheimnis": "string",
  "gilt_bis": "ISO 8601",
  "adresse": "string",
  "link": "string",
  "qr_svg": "string"
}
GET/api/me/app-kopplung/{kennung}Whether the app fetched its keyohne Zusage

wartet, verbunden with the name of the device, fehlgeschlagen when no key could be made, or abgelaufen. Only the account that prepared the code sees it.

Parameter

NameTyp
kennung *Text

Antwort KopplungStand

FeldTyp
stand *Text
geraetText oder null

Aufbau der Antwort

{
  "stand": "string",
  "geraet": "string | null"
}
DELETE/api/me/app-kopplung/{kennung}Withdraw a QR codeohne Zusage

Closes a code nobody has scanned yet. A code already used stays; revoke its key instead.

Parameter

NameTyp
kennung *Text