Betrieb
23 Adressen. Ohne Zusage — sie gehören zum Innenteil der Anwendung und können sich mit jeder Fassung ändern. Wer sich auf etwas verlassen muss, nimmt die zugesagten dreizehn.
GET
/api/about
may change
Version and build
Which version of Nexview this is, and whether a newer one is known. Useful for telling deployments apart and for deciding whether a feature you rely on exists yet.
Felder und Aufbau
Antwort
versionText Pflichtrepo_urlText Pflichtrelease_urlText PflichtlicenseTextupdate_checkedja/neinlatest_versionText oder nullupdate_availableja/neinchecked_atZeitpunkt (ISO 8601) oder nullAufbau der Antwort
{
"version": "string",
"repo_url": "string",
"release_url": "string",
"license": "string",
"update_checked": "boolean",
"latest_version": "string | null",
"update_available": "boolean",
"checked_at": "ISO 8601 | null"
}
POST
/api/about/check
may change
Check for updates now
Looks for a newer release immediately instead of waiting for the daily check.
Felder und Aufbau
Antwort
versionText Pflichtrepo_urlText Pflichtrelease_urlText PflichtlicenseTextupdate_checkedja/neinlatest_versionText oder nullupdate_availableja/neinchecked_atZeitpunkt (ISO 8601) oder nullAufbau der Antwort
{
"version": "string",
"repo_url": "string",
"release_url": "string",
"license": "string",
"update_checked": "boolean",
"latest_version": "string | null",
"update_available": "boolean",
"checked_at": "ISO 8601 | null"
}
GET
/api/about/neuigkeiten
may change
Is there something new to read
Whether this installation has been updated since the administrator last acknowledged the release notes, and to which version.
Felder und Aufbau
Antwort
versionText Pflichtoffenja/nein Pflichtzuletzt_gesehenText oder nullAufbau der Antwort
{
"version": "string",
"offen": "boolean",
"zuletzt_gesehen": "string | null"
}
POST
/api/about/neuigkeiten/gesehen
may change
Acknowledge the release notes
"Understood, stop showing this" - until the next update. What is stored is the version, not a tick, so the banner comes back by itself after the next release that has something to say.
Felder und Aufbau
Antwort
versionText Pflichtoffenja/nein Pflichtzuletzt_gesehenText oder nullAufbau der Antwort
{
"version": "string",
"offen": "boolean",
"zuletzt_gesehen": "string | null"
}
GET
/api/config
may change
Public configuration
What the interface needs to know before anybody signs in: which media-server providers exist, whether watchlists are enabled, the minimum password length, the default region.
Felder und Aufbau
Antwort
default_regionText Pflichtdefault_languageText Pflichttmdb_configuredja/nein Pflichtradarr_configuredja/nein Pflichtsonarr_configuredja/nein Pflichtusing_demo_dataja/nein Pflichtmin_password_lengthZahl Pflichtmail_configuredja/nein Pflichtpublic_url_setja/nein Pflichtapprover_picks_target_movieja/nein Pflichtapprover_picks_target_tvja/nein Pflichtradarr_uhd_configuredja/nein Pflichtsonarr_uhd_configuredja/nein Pflichtmediaserver_configuredja/nein Pflichtmediaserver_providersListe von Text Pflichtmediaserver_availableListe von Text Pflichtmediaserver_password_loginListe von Text Pflichtmediaserver_watchlist_availableListe von Text Pflichtmediaserver_watchlist_connectedListe von Text Pflichtwatchlist_enabledja/nein PflichtAufbau der Antwort
{
"default_region": "string",
"default_language": "string",
"tmdb_configured": "boolean",
"radarr_configured": "boolean",
"sonarr_configured": "boolean",
"using_demo_data": "boolean",
"min_password_length": "number",
"mail_configured": "boolean",
"public_url_set": "boolean",
"approver_picks_target_movie": "boolean",
"approver_picks_target_tv": "boolean",
"radarr_uhd_configured": "boolean",
"sonarr_uhd_configured": "boolean",
"mediaserver_configured": "boolean"
}
GET
/api/config/regions
may change
Selectable regions
The countries somebody can pick as their region. Deliberately fetched from TMDB rather than kept in the source: a fixed list goes stale and silently limits who can use this.
Felder und Aufbau
Antwort
codeText PflichtnameText PflichtAufbau der Antwort
[
{
"code": "string",
"name": "string"
}
]
GET
/api/health
may change
Is Nexview running
Answers without a token - a monitor that has to sign in first is not a monitor. Returns nothing but a status, on purpose: no version, no database state, nothing that would tell an unauthenticated caller about the installation.
DELETE
/api/logs
may change
Clear the log
Empties the log file. What is gone is gone; there is no second copy.
GET
/api/logs
may change
The most recent log lines
level means "this level and above". Administrators only - log lines name accounts and addresses.
Felder und Aufbau
Parameter
levelDEBUG | INFO | WARNING | ERROR | CRITICAL oder null querysearchText oder null querylimitZahl queryAntwort
timeText PflichtlevelText PflichtloggerText PflichtmessageText Pflichtrequest_idText oder nulluserText oder nullAufbau der Antwort
[
{
"time": "string",
"level": "string",
"logger": "string",
"message": "string",
"request_id": "string | null",
"user": "string | null"
}
]
GET
/api/logs/level
may change
Current log level
Which level is being written, and until when - the more talkative levels switch themselves off again.
Felder und Aufbau
Antwort
modeText PflichtuntilText oder nullfixed_by_envja/neinmodesListe von TextdurationsListe von ZahlAufbau der Antwort
{
"mode": "string",
"until": "string | null",
"fixed_by_env": "boolean",
"modes": [
"string"
],
"durations": [
"number"
]
}
PUT
/api/logs/level
may change
Change the log level
Takes effect immediately, without a restart. The talkative levels carry an expiry so a debugging session cannot quietly fill the disk for weeks.
Felder und Aufbau
Anfragekörper
modequiet | normal | detailed | trace PflichtminutesZahlAntwort
modeText PflichtuntilText oder nullfixed_by_envja/neinmodesListe von TextdurationsListe von ZahlAufbau der Antwort
{
"mode": "string",
"until": "string | null",
"fixed_by_env": "boolean",
"modes": [
"string"
],
"durations": [
"number"
]
}
GET
/api/settings
may change
All settings
The whole configuration of this installation. Secrets come back masked, never in the clear. Administrators only.
PUT
/api/settings
may change
Change settings
⚠️ An empty secret field means "unchanged", not "delete". Otherwise the masked value from the interface would be written back over the real one. Use the delete endpoint to actually remove a key.
Felder und Aufbau
Anfragekörper
tmdb_api_keyText oder nullradarr_urlText oder nullradarr_api_keyText oder nullsonarr_urlText oder nullsonarr_api_keyText oder nulldefault_regionText oder nulldefault_languageText oder nullpoll_interval_secondsZahl oder nulldemo_modeText oder nulldefault_movie_profile_idText oder nulldefault_series_profile_idText oder nullmovie_root_folder_modeText oder nullseries_root_folder_modeText oder nullmovie_profile_modeText oder nullseries_profile_modeText oder nulldefault_movie_rootText oder nulldefault_series_rootText oder nullradarr_uhd_urlText oder nullradarr_uhd_api_keyText oder nullsonarr_uhd_urlText oder nullsonarr_uhd_api_keyText oder nulldefault_movie_uhd_profile_idText oder nulldefault_series_uhd_profile_idText oder nulldefault_movie_uhd_rootText oder nulldefault_series_uhd_rootText oder nullsmtp_hostText oder nullsmtp_portZahl oder nullsmtp_securityText oder nullsmtp_usernameText oder nullsmtp_passwordText oder nullsmtp_from_addressText oder nullsmtp_from_nameText oder nullpublic_urlText oder nullupdate_checkja/nein oder nullbackup_scheduleoff | daily | weekly | monthly oder nullbackup_keepZahl oder nullmediaserver_auto_importja/nein oder nullmediaserver_default_roleText oder nullwatchlist_enabledja/nein oder nullquota_default_moviesZahl oder nullquota_default_seriesZahl oder nullstorage_default_limit_gbZahl oder nullquota_periodday | week | month oder null
GET
/api/settings/recyclebin
may change
Where deleted files go
The recycle-bin path configured in every Radarr and Sonarr instance. Fetched fresh on every call and stored nowhere - it lives over there, and a copy here would go stale without anybody noticing.
Felder und Aufbau
Antwort
enabledja/nein Pflichtcompleteja/nein PflichtinstancesListe von PapierkorbInstanz PflichtAufbau der Antwort
{
"enabled": "boolean",
"complete": "boolean",
"instances": [
{
"media_type": "string",
"tier": "string",
"name": "string",
"reachable": "boolean",
"path": "string",
"cleanup_days": "number | null",
"protected": "boolean"
}
]
}
PUT
/api/settings/recyclebin
may change
Set the recycle-bin path
⚠️ This writes into Radarr and Sonarr, not into Nexview. The setting applies over there to everything, including deletions that had nothing to do with Nexview.
Felder und Aufbau
Anfragekörper
instancesListe von PapierkorbWunsch Pflichtcleanup_daysZahlAntwort
enabledja/nein Pflichtcompleteja/nein PflichtinstancesListe von PapierkorbInstanz PflichtAufbau der Antwort
{
"enabled": "boolean",
"complete": "boolean",
"instances": [
{
"media_type": "string",
"tier": "string",
"name": "string",
"reachable": "boolean",
"path": "string",
"cleanup_days": "number | null",
"protected": "boolean"
}
]
}
GET
/api/settings/recyclebin/contents
may change
What is in the recycle bins
Folder names only - no posters, no tidied-up titles. Resolving the names back to titles would mean a TMDB lookup per folder for something that is, in the end, a list of directories.
Felder und Aufbau
Parameter
media_typemovie | tv oder null querytierstandard | uhd oder null querypathText queryAntwort
instancesListe von PapierkorbInhaltInstanz PflichtAufbau der Antwort
{
"instances": [
{
"name": "string",
"path": "string",
"entries": [
"string"
],
"truncated": "boolean"
}
]
}
GET
/api/settings/recyclebin/folders
may change
Which folders one instance sees
Asked per instance rather than once for all: Sonarr can be mounted entirely differently from Radarr, and a path that exists for one may not exist for the other.
Felder und Aufbau
Parameter
media_typemovie | tv query Pflichttierstandard | uhd querypathText queryAntwort
pathText PflichtdirectoriesListe von Text PflichtAufbau der Antwort
{
"path": "string",
"directories": [
"string"
]
}
DELETE
/api/settings/secret/{name}
may change
Remove a stored secret
The explicit way to delete an API key, because an empty field on save means "unchanged".
Felder und Aufbau
Parameter
nametmdb_api_key | radarr_api_key | radarr_uhd_api_key | sonarr_api_key | sonarr_uhd_api_key | smtp_password | mediaserver_token path Pflicht
POST
/api/settings/test-mail
may change
Send a test mail
Sends a fully formatted test message to the given address, so the result shows what a real notification will look like.
Felder und Aufbau
Anfragekörper
recipientText PflichtAntwort
okja/nein PflichtmessageText PflichtAufbau der Antwort
{
"ok": "boolean",
"message": "string"
}
POST
/api/settings/test/public-url
may change
Is Nexview reachable at this address
The server calls itself from the outside to find out. Deliberately with its own short-lived client, so nothing from the normal connection pool can make an unreachable address look reachable.
Felder und Aufbau
Anfragekörper
urlText PflichtAntwort
okja/nein PflichtmessageText PflichtAufbau der Antwort
{
"ok": "boolean",
"message": "string"
}
POST
/api/settings/test/smtp
may change
Test the mail server
Checks connection and authentication without sending anything.
Felder und Aufbau
Anfragekörper
hostText oder nullportZahl oder nullsecurityText oder nullusernameText oder nullpasswordText oder nullAntwort
okja/nein PflichtmessageText PflichtAufbau der Antwort
{
"ok": "boolean",
"message": "string"
}
POST
/api/settings/test/tmdb
may change
Test the TMDB key
Checks whether the given TMDB API key works.
Felder und Aufbau
Anfragekörper
api_keyText oder nullurlText oder nullAntwort
okja/nein PflichtmessageText PflichtAufbau der Antwort
{
"ok": "boolean",
"message": "string"
}
POST
/api/settings/test/{service}
may change
Test Radarr or Sonarr
Checks the connection to the standard or 4K instance. Uses the values passed in if they have not been saved yet, so a connection can be tested before it is stored.
Felder und Aufbau
Parameter
serviceradarr | sonarr | radarr_uhd | sonarr_uhd path PflichtAnfragekörper
api_keyText oder nullurlText oder nullAntwort
okja/nein PflichtmessageText PflichtAufbau der Antwort
{
"ok": "boolean",
"message": "string"
}