Sus otras herramientas pueden preguntar a Routarr.
Un script, n8n, Home Assistant o un panel puede preguntar adónde iría un título, forzar su categoría, lanzar una simulación y aplicarla, o leer el estado, cada uno con una clave que solo hace lo que usted permitió.
- 01
X-Api-Key: rtr_…
Cree una clave en la pantalla Aplicaciones, una por herramienta. Toda clave lee, y un alcance que cambia algo, como
operate(operar) para aplicar owrite(escribir) para fijar un título, se concede solo donde hace falta: la referencia de abajo nombra el que necesita cada operación. Routarr muestra la clave una sola vez, yAuthorization: Bearertambién la lleva. - 02
GET /api/v1/route
Pregunte adónde iría un título. Routarr lo busca en el Arr, lo pasa por sus reglas y no mueve nada. Aquí jq conserva de la respuesta lo que necesita un script.
- 03
GET /api/v1/openapi.json
Cada operación y el alcance que necesita figuran en la pantalla Referencia de la API de su Routarr, que sirve el contrato OpenAPI en esta ruta, para la versión que ejecuta.
curl -fsS -H "X-Api-Key: $ROUTARR_KEY" \
"http://localhost:9876/api/v1/route?type=movie&tmdb=149" \
| jq '.answers[0]
| {category, folder: .root_folder.path, action, rule}'{
"category": "anime",
"folder": "/movies/anime",
"action": "move",
"rule": "Animación japonesa"
}Nada de lo documentado bajo /api/v1 se elimina, se renombra ni cambia de tipo. Nuevas operaciones y campos pueden llegar con cualquier versión.
Lo que una aplicación puede pedir.
Las operaciones de Routarr 0.2.0, la versión que nombra esta página, agrupadas por lo que tocan. Abra una para ver lo que recibe y lo que responde. La palabra de la derecha es el alcance que necesita una clave. Un nombre de tipo lleva a su entrada entre los tipos listados al final.
Estado
Si Routarr responde y lo que necesita atención.
GET/api/v1/auth/meA quién pertenece la clave, alcance: read
GET/api/v1/healthContactar con cada Arr y cada fuente, e informar, alcance: operate
Parámetros
probeboolean· en la consultafreshboolean· en la consulta
Respuesta 200HealthResponse
databasestringinstancesInstanceHealth[]metadataMetadataHealthstatsAppStatsstatusstringversionstringwarningsWarning[]
GET/api/v1/metadata/providersLas fuentes de metadatos, y lo que cada una puede responder, alcance: read
GET/api/v1/metricsMétricas de Prometheus, alcance: read
No recibe nada.
Respuesta 200
GET/api/v1/pingSi Routarr responde, alcance: sin clave
GET/api/v1/statusLo que necesita atención, alcance: read
No recibe nada.
Respuesta 200StatusResponse
dry_runbooleanfailed_decisionsintegerpending_decisionsintegerrunning_jobsintegerversionstringwarningsWarning[]
Biblioteca
Los títulos que Routarr leyó de los Arrs, y adónde va cada uno.
GET/api/v1/mediaLa biblioteca, página a página, alcance: read
Parámetros
instance_idstring· en la consultamedia_typestring· en la consultacategorystring· en la consultasearchstring· en la consultatmdb_idinteger· en la consultatvdb_idinteger· en la consultaimdb_idstring· en la consultaunmatchedboolean· en la consultapageinteger· en la consultaper_pageinteger· en la consulta
Respuesta 200Page_MediaListItem
dataMediaListItem[]paginationPagination
GET/api/v1/media/facetsLos valores que contiene la biblioteca, para cada condición, alcance: read
No recibe nada.
Respuesta 200LibraryFacets
GET/api/v1/media/{id}Un título, alcance: read
Parámetros
idstring· en la ruta · obligatorio
Respuesta 200MediaDetail
instance_namestring?mediaMediaViewmetadataMediaMetadata?overridePinnedCategory?
GET/api/v1/media/{id}/explainAdónde va un título, y por qué, alcance: read
Parámetros
idstring· en la ruta · obligatorio
Respuesta 200Explanation
actionstringconfidencenumberinstance_enabledbooleanmediaMediaViewmetadataMediaMetadata?override_categorystring?rule_tracesRuleTrace[]rules_categorystringtarget_categorystringtarget_root_folderstring?winning_rulestring?
GET/api/v1/routeAdónde iría un título que nombra otro servicio, alcance: read
Parámetros
typestring· en la consulta · obligatoriotmdbinteger· en la consultatvdbinteger· en la consultaimdbstring· en la consultainstancestring· en la consultatagsstring· en la consultaseries_typestring· en la consultamonitoredboolean· en la consultaenrichboolean· en la consulta
Respuesta 200Placement
answersPlacementAnswer[]errorsInstanceFailure[]
Decisiones
Simular las reglas sobre la biblioteca, y aplicar o revertir los movimientos que deciden.
GET/api/v1/decisionsLas decisiones, página a página, alcance: read
Parámetros
instance_idstring· en la consultamedia_typestring· en la consultastatusstring· en la consultacategorystring· en la consultaactionstring· en la consultasimulation_idstring· en la consultasearchstring· en la consultainclude_supersededboolean· en la consultapageinteger· en la consultaper_pageinteger· en la consulta
Respuesta 200Page_Decision
dataDecision[]paginationPagination
POST/api/v1/decisions/applyAplicar las decisiones elegidas, alcance: operate
Parámetros
Preferstring?· cabecera
Cuerpo
confirmConfirmeddecision_idsstring[]· obligatoriomove_filesboolean
Respuesta 200ApplyReport
appliedintegererrorsApplyError[]failedintegermovingintegerrequestedintegerskippedintegerstoppedStopReason?supersededinteger
POST/api/v1/decisions/apply-allAplicar todo lo que propuso una simulación, alcance: operate
Parámetros
Preferstring?· cabecera
Cuerpo
confirmConfirmedmove_filesbooleansimulation_idstring· obligatorio
Respuesta 200BatchApplyReport
appliedintegerbatches_plannedintegerbatches_runintegercandidatesintegererrorsApplyError[]failedintegermovingintegerskippedintegerstoppedStopReason?stopped_earlybooleansupersededinteger
POST/api/v1/decisions/revertDevolver títulos a su sitio, alcance: operate
Parámetros
Preferstring?· cabecera
Cuerpo
confirmConfirmeddecision_idsstring[]· obligatoriomove_filesboolean
Respuesta 200ApplyReport
appliedintegererrorsApplyError[]failedintegermovingintegerrequestedintegerskippedintegerstoppedStopReason?supersededinteger
POST/api/v1/simulatePasar las reglas por la biblioteca, alcance: operate
Parámetros
Preferstring?· cabecera
Cuerpo
instance_idsstring[]?max_returnedinteger?media_typestring?persistbooleanpersist_unchangedboolean
Respuesta 200SimulationResult
already_correctintegercapacityCapacityForecast[]decisionsDecision[]elapsed_msintegerexcluded_by_ruleintegermoves_requiredintegerno_category_matchintegeroverrides_appliedintegerreturnedintegersimulation_idstringskipped_unmappedintegertotal_mediainteger
Excepciones
Títulos cuya categoría se fuerza a mano, que priman sobre todas las reglas.
GET/api/v1/overridesLas excepciones, alcance: read
Parámetros
pageinteger· en la consultaper_pageinteger· en la consulta
Respuesta 200Page_OverrideWithMedia
dataOverrideWithMedia[]paginationPagination
POST/api/v1/overridesForzar la categoría de un título, alcance: write
Cuerpo
media_idstring· obligatorioreasonstring?target_categorystring· obligatorio
Respuesta 201OverrideEntry
created_atstringidstringmedia_idstringreasonstring?subjectstring?target_categorystring
DELETE/api/v1/overrides/externalQuitar la excepción de un título por el identificador que le da otro servicio, alcance: write
Parámetros
typestring· en la consulta · obligatoriotmdbinteger· en la consultatvdbinteger· en la consultaimdbstring· en la consultainstancestring· en la consulta
Respuesta 200Deleted
deletedboolean
PUT/api/v1/overrides/externalForzar la categoría de un título por el identificador que le da otro servicio, alcance: write
Parámetros
typestring· en la consulta · obligatoriotmdbinteger· en la consultatvdbinteger· en la consultaimdbstring· en la consultainstancestring· en la consulta
Cuerpo
reasonstring?target_categorystring· obligatorio
Respuesta 200OverrideEntry[]
created_atstringidstringmedia_idstringreasonstring?subjectstring?target_categorystring
DELETE/api/v1/overrides/{id}Quitar una excepción, alcance: write
Tareas
Lo que se ejecutó en segundo plano, y cómo terminó.
GET/api/v1/jobsLas tareas, las más recientes primero, alcance: read
Parámetros
statusstring· en la consultakindstring· en la consultapageinteger· en la consultaper_pageinteger· en la consultaincludestring· en la consulta
Respuesta 200Page_Job
dataJob[]paginationPagination
GET/api/v1/jobs/{id}Una tarea, alcance: read
Parámetros
idstring· en la ruta · obligatorio
Respuesta 200Job
detailstring?errorstring?error_messagestring?finished_atstring?idstringinstance_idstring?kindstringprogress_currentintegerprogress_totalintegerresultobjectstarted_atstringstatusstringsubjectstring?triggerstring
GET/api/v1/logsLo que hizo cada movimiento, página a página, alcance: read
Parámetros
instance_idstring· en la consultamedia_idstring· en la consultaactionstring· en la consultasuccessboolean· en la consultasearchstring· en la consultapageinteger· en la consultaper_pageinteger· en la consulta
Respuesta 200Page_LogEntry
dataLogEntry[]paginationPagination
GET/api/v1/logs/exportEl mismo registro como archivo CSV, alcance: read
Parámetros
instance_idstring· en la consultamedia_idstring· en la consultaactionstring· en la consultasuccessboolean· en la consultasearchstring· en la consulta
Respuesta 200
Instancias
Los Arr que Routarr lee, y volver a leerlos.
GET/api/v1/instancesLos Arr que Routarr lee, alcance: read
No recibe nada.
Respuesta 200InstanceResponse[]
api_key_encryptedbooleanapi_key_maskedstringapi_key_setbooleanbase_urlstringcreated_atstringenabledbooleanidstringinstance_typestringlast_sync_atstring?last_sync_attempt_atstring?last_sync_statusstring?namestringsync_interval_minutesintegerupdated_atstringwebhook_pathstring?webhook_tokenstring?webhook_urlstring?
POST/api/v1/instances/syncVolver a leer cada Arr activado, alcance: operate
Parámetros
Preferstring?· cabecera
Respuesta 200SyncReport[]
errorstring?instance_idstringinstance_namestringmediaintegerremovedintegerroot_foldersinteger
GET/api/v1/instances/{id}Un Arr, alcance: read
Parámetros
idstring· en la ruta · obligatorio
Respuesta 200InstanceResponse
api_key_encryptedbooleanapi_key_maskedstringapi_key_setbooleanbase_urlstringcreated_atstringenabledbooleanidstringinstance_typestringlast_sync_atstring?last_sync_attempt_atstring?last_sync_statusstring?namestringsync_interval_minutesintegerupdated_atstringwebhook_pathstring?webhook_tokenstring?webhook_urlstring?
POST/api/v1/instances/{id}/syncVolver a leer un Arr, alcance: operate
Parámetros
idstring· en la ruta · obligatorioPreferstring?· cabecera
Respuesta 200SyncReport
errorstring?instance_idstringinstance_namestringmediaintegerremovedintegerroot_foldersinteger
Reglas
Las reglas por orden de prioridad, las condiciones que pueden usar y las pruebas que fijan lo que deciden.
GET/api/v1/rule-testsLas pruebas de reglas, alcance: read
Parámetros
pageinteger· en la consultaper_pageinteger· en la consulta
Respuesta 200Page_RuleTest
dataRuleTest[]paginationPagination
POST/api/v1/rule-testsFijar como prueba lo que las reglas deciden para un título, alcance: configure
Cuerpo
expected_categorystring?media_idstring· obligatorionamestring· obligatorio
Respuesta 201RuleTest
created_atstringevaluated_atstringexpected_categorystringidstringmedia_typestringnamestringsource_media_titlestring?
POST/api/v1/rule-tests/runPasar cada prueba por las reglas tal como están, alcance: operate
No recibe nada.
Respuesta 200RuleTestRun
failedintegerpassedintegerresultsRuleTestResult[]totalinteger
DELETE/api/v1/rule-tests/{id}Quitar una prueba de reglas, alcance: configure
GET/api/v1/rulesLas reglas, por orden de prioridad, alcance: read
POST/api/v1/rulesCrear una regla, alcance: configure
GET/api/v1/rules/conditionsLas condiciones que puede usar una regla, alcance: read
GET/api/v1/rules/exportLas reglas como paquete, alcance: read
No recibe nada.
Respuesta 200RuleBundle
categoriesstring[]exported_atstring?rulesBundledRule[]versioninteger
GET/api/v1/rules/healthLo que decide cada regla, alcance: read
POST/api/v1/rules/importImportar un paquete de reglas, alcance: configure
Cuerpo
bundleRuleBundle· obligatoriocreate_missing_categoriesbooleanreplaceboolean
Respuesta 200RuleImportReport
adjustedstring[]importedintegerreplacedbooleanskippedstring[]
POST/api/v1/rules/previewLo que movería un borrador de regla, sin guardar nada, alcance: configure
Cuerpo
instance_idsstring[]?ruleCreateRuleRequest· obligatoriorule_idstring?sample_sizeinteger
Respuesta 200PreviewResponse
afterPreviewSummarybeforePreviewSummarychangedPreviewChange[]changed_totalintegerissuesValidationIssue[]
POST/api/v1/rules/reorderPoner las reglas en un nuevo orden, alcance: configure
POST/api/v1/rules/validateJuzgar un borrador de regla, sin guardar nada, alcance: configure
Cuerpo
conditionsCondition[]· obligatoriodescriptionstring?enabledbooleanexclusionsCondition[]instance_idsstring[]?match_modeMatchModemedia_typestring· obligatorionamestring· obligatoriopriorityinteger?target_categorystring· obligatorio
Respuesta 200RuleVerdict
issuesValidationIssue[]validboolean
DELETE/api/v1/rules/{id}Quitar una regla, alcance: configure
GET/api/v1/rules/{id}Una regla, alcance: read
PUT/api/v1/rules/{id}Reemplazar una regla, alcance: configure
Parámetros
idstring· en la ruta · obligatorio
Cuerpo
conditionsCondition[]· obligatoriodescriptionstring?enabledbooleanexclusionsCondition[]instance_idsstring[]?match_modeMatchModemedia_typestring· obligatorionamestring· obligatoriopriorityinteger?target_categorystring· obligatorio
Respuesta 200Rule
POST/api/v1/rules/{id}/duplicateCopiar una regla, desactivada, alcance: configure
Categorías y carpetas
Las categorías, y las carpetas raíz que llevan a cada una.
GET/api/v1/categoriesLas categorías, con lo que usa cada una, alcance: read
No recibe nada.
Respuesta 200CategoryWithUsage[]
created_atstringdescriptionstring?display_orderintegeridstringis_defaultbooleannamestringroot_folder_countintegerrule_countinteger
POST/api/v1/categoriesCrear una categoría, alcance: configure
Cuerpo
descriptionstring?display_orderintegeris_defaultbooleannamestring· obligatorio
Respuesta 201Category
created_atstringdescriptionstring?display_orderintegeridstringis_defaultbooleannamestring
DELETE/api/v1/categories/{id}Quitar una categoría, alcance: configure
PUT/api/v1/categories/{id}Renombrar una categoría, alcance: configure
Parámetros
idstring· en la ruta · obligatorio
Cuerpo
namestring· obligatorio
Respuesta 200Category
created_atstringdescriptionstring?display_orderintegeridstringis_defaultbooleannamestring
GET/api/v1/root-foldersLas carpetas raíz, y la categoría a la que lleva cada una, alcance: read
No recibe nada.
Respuesta 200RootFolderWithInstance[]
accessiblebooleanarr_idinteger?categorystring?free_spaceinteger?idstringinstance_idstringlast_accessible_atstring?last_synced_atstring?originstringpathstringinstance_namestringinstance_typestring
POST/api/v1/root-foldersDeclarar un destino que el Arr no lista, alcance: configure
Cuerpo
instance_idstring· obligatoriopathstring· obligatorio
Respuesta 201Declared
idstringpathstringverifiedboolean
GET/api/v1/root-folders/conflictsLo que las asignaciones dejan sin decir, alcance: read
No recibe nada.
Respuesta 200MappingConflict[]
categorystring?instance_namestring?kindstringmessagestringseveritystring
DELETE/api/v1/root-folders/{id}Quitar un destino declarado, alcance: configure
PUT/api/v1/root-folders/{id}/categoryLlevar una carpeta a una categoría, o a ninguna, alcance: configure
Parámetros
idstring· en la ruta · obligatorio
Cuerpo
categorystring?· obligatorio
Respuesta 200Mapped
categorystring?updatedboolean
Copias de seguridad
Las copias que Routarr conserva, y hacer una ahora mismo.
GET/api/v1/backupsLas copias conservadas, alcance: read
POST/api/v1/backupsHacer una copia ahora mismo, alcance: operate
Parámetros
Preferstring?· cabecera
Respuesta 200BackupFile
created_atstringencryptedbooleannamestringsize_bytesinteger
Tipos
Cada forma que reciben o responden las operaciones de arriba. Un nombre de tipo abre aquí su entrada.
AlternativeDecision
categorystring· obligatorioconfidencenumberexcluded_bystring?reasonstring· obligatoriorule_namestring· obligatorio
ApplyAllRequest
confirmConfirmedmove_filesbooleansimulation_idstring· obligatorio
ApplyDecisionsRequest
confirmConfirmeddecision_idsstring[]· obligatoriomove_filesboolean
ApplyError
decision_idstring· obligatoriomedia_titlestring· obligatoriomessagestring· obligatorio
ApplyReport
appliedinteger· obligatorioerrorsApplyError[]· obligatoriofailedinteger· obligatoriomovinginteger· obligatoriorequestedinteger· obligatorioskippedinteger· obligatoriostoppedStopReason?supersededinteger· obligatorio
AppStats
applied_decisionsinteger· obligatorioenabled_rulesinteger· obligatoriofailed_decisionsinteger· obligatoriopending_decisionsinteger· obligatoriorunning_jobsinteger· obligatoriototal_instancesinteger· obligatoriototal_mediainteger· obligatoriototal_moviesinteger· obligatoriototal_overridesinteger· obligatoriototal_rulesinteger· obligatoriototal_seriesinteger· obligatoriounmapped_categoriesinteger· obligatorio
BackupFile
created_atstring· obligatorioencryptedboolean· obligatorionamestring· obligatoriosize_bytesinteger· obligatorio
BackupListResponse
backupsBackupFile[]· obligatorioretention_countinteger· obligatorio
BatchApplyReport
appliedinteger· obligatoriobatches_plannedinteger· obligatoriobatches_runinteger· obligatoriocandidatesinteger· obligatorioerrorsApplyError[]· obligatoriofailedinteger· obligatoriomovinginteger· obligatorioskippedinteger· obligatoriostoppedStopReason?stopped_earlyboolean· obligatoriosupersededinteger· obligatorio
BundledRule
CapacityForecast
fitsboolean· obligatoriofree_bytesinteger· obligatorioincoming_bytesinteger· obligatorioinstance_idstring· obligatorioinstance_namestring?itemsinteger· obligatoriopathstring· obligatoriosame_filesystem_bytesinteger· obligatorio
Category
created_atstring· obligatoriodescriptionstring?display_orderinteger· obligatorioidstring· obligatoriois_defaultboolean· obligatorionamestring· obligatorio
CategoryWithUsage
created_atstring· obligatoriodescriptionstring?display_orderinteger· obligatorioidstring· obligatoriois_defaultboolean· obligatorionamestring· obligatorioroot_folder_countinteger· obligatoriorule_countinteger· obligatorio
Condition
Una de estas formas, distinguidas por type
genre_containsvaluestring[]genre_contains_allvaluestring[]genre_not_containsvaluestring[]keyword_containsvaluestring[]keyword_contains_allvaluestring[]keyword_not_containsvaluestring[]original_languagevaluestring[]original_language_notvaluestring[]origin_countryvaluestring[]origin_country_allvaluestring[]year_rangevalueobjecttag_invaluestring[]tag_in_allvaluestring[]series_type_isvaluestring[]size_on_disk_over_gbvalueintegerseason_count_overvalueintegercertification_invaluestring[]status_isvaluestring[]current_root_foldervaluestringcurrent_root_folder_starts_withvaluestringhas_filesvaluebooleantitle_containsvaluestring[]tmdb_id_invalueinteger[]tvdb_id_invalueinteger[]imdb_id_invaluestring[]added_within_daysvalueintegermonitoredvaluebooleanhas_metadatavalueboolean
ConditionCatalog
conditionsConditionSpec[]· obligatoriomatch_modesstring[]· obligatorio
ConditionOutcome
expectedstringkeystring· obligatoriokindstring· obligatoriomatchedboolean· obligatorioobservedstring· obligatorioparamsobject· obligatoriosourcestring?
ConditionSpec
availableboolean· obligatoriocounterpartstring· obligatoriolabelstring· obligatoriolabel_keystring· obligatoriomedia_typesstring[]· obligatoriometadata_fieldstring?needs_metadataboolean· obligatorioquantifierstring· obligatoriosuggestionsstring· obligatoriotypestring· obligatoriovalue_typestring· obligatorio
Confirmed
Una lista de string
CreateCategoryRequest
descriptionstring?display_orderintegeris_defaultbooleannamestring· obligatorio
CreateOverrideRequest
media_idstring· obligatorioreasonstring?target_categorystring· obligatorio
CreateRuleRequest
Decision
actionstring· obligatorioactorstring?alternativesAlternativeDecision[]· obligatorioapplied_atstring?confidencenumbercurrent_root_folderstring?decided_atstring· obligatorioerror_messagestring?idstring· obligatorioinstance_idstring· obligatorioinstance_namestring?is_overrideboolean· obligatoriomatched_rule_idstring?matched_rule_namestring?media_idstring· obligatoriomedia_titlestring· obligatoriomedia_typestring· obligatorioreason_linesReasonLine[]· obligatorioreasonsstring[]· obligatorioreverted_atstring?revertiblebooleansimulation_idstring?statusstring· obligatoriosubjectstring?supersededbooleantarget_categorystring· obligatoriotarget_root_folderstring?
Declared
idstring· obligatoriopathstring· obligatorioverifiedboolean· obligatorio
DeclareRootFolder
instance_idstring· obligatoriopathstring· obligatorio
Deleted
deletedboolean· obligatorio
Explanation
actionstring· obligatorioconfidencenumber· obligatorioinstance_enabledboolean· obligatoriomediaMediaView· obligatoriometadataMediaMetadata?override_categorystring?rule_tracesRuleTrace[]· obligatoriorules_categorystring· obligatoriotarget_categorystring· obligatoriotarget_root_folderstring?winning_rulestring?
Facet
countinteger· obligatoriogroupstring?labelstring?valuestring· obligatorio
HealthResponse
databasestring· obligatorioinstancesInstanceHealth[]· obligatoriometadataMetadataHealth· obligatoriostatsAppStats· obligatoriostatusstring· obligatorioversionstring· obligatoriowarningsWarning[]· obligatorio
ImportRulesRequest
bundleRuleBundle· obligatoriocreate_missing_categoriesbooleanreplaceboolean
InstanceFailure
errorstring· obligatorioinstance_idstring· obligatorioinstance_namestring· obligatorio
InstanceHealth
detailstring?idstring· obligatorioinstance_typestring· obligatoriolast_syncstring?last_sync_statusstring?mapped_root_foldersinteger· obligatoriomedia_countinteger· obligatorionamestring· obligatoriostatusstring· obligatorioversionstring?
InstanceResponse
api_key_encryptedboolean· obligatorioapi_key_maskedstring· obligatorioapi_key_setboolean· obligatoriobase_urlstring· obligatoriocreated_atstring· obligatorioenabledboolean· obligatorioidstring· obligatorioinstance_typestring· obligatoriolast_sync_atstring?last_sync_attempt_atstring?last_sync_statusstring?namestring· obligatoriosync_interval_minutesinteger· obligatorioupdated_atstring· obligatoriowebhook_pathstring?webhook_tokenstring?webhook_urlstring?
Job
detailstring?errorstring?error_messagestring?finished_atstring?idstring· obligatorioinstance_idstring?kindstring· obligatorioprogress_currentinteger· obligatorioprogress_totalinteger· obligatorioresultobjectstarted_atstring· obligatoriostatusstring· obligatoriosubjectstring?triggerstring· obligatorio
LibraryFacets
certificationsFacet[]· obligatoriogenresFacet[]· obligatorioorigin_countriesFacet[]· obligatoriooriginal_languagesFacet[]· obligatorioroot_foldersFacet[]· obligatorioseries_typesFacet[]· obligatoriostatusesFacet[]· obligatoriotagsFacet[]· obligatoriototal_mediainteger· obligatoriovocabulariesVocabularies· obligatoriowithout_metadatainteger· obligatorio
LogEntry
actionstring· obligatorioactorstring?decision_idstring?detailsstring?error_messagestring?executed_atstring· obligatorioidstring· obligatorioinstance_idstring?media_idstring?media_titlestring?subjectstring?successboolean· obligatorio
Mapped
categorystring?updatedboolean· obligatorio
MappingConflict
categorystring?instance_namestring?kindstring· obligatoriomessagestring· obligatorioseveritystring· obligatorio
MatchMode
Uno de estos valores
allany
Me
subjectstring· obligatorio
Media
added_atstring?arr_idinteger· obligatoriocertificationstring?current_pathstring?current_root_folderstring?genresstring?has_filesboolean· obligatorioidstring· obligatorioimdb_idstring?instance_idstring· obligatoriolast_synced_atstring?media_typestring· obligatoriomonitoredboolean· obligatoriooriginal_languagestring?season_countinteger?series_typestring?size_on_diskinteger?sort_titlestring?statusstring?tagsstring?titlestring· obligatoriotmdb_idinteger?tvdb_idinteger?yearinteger?
MediaDetail
instance_namestring?mediaMediaView· obligatoriometadataMediaMetadata?overridePinnedCategory?
MediaListItem
arr_idinteger· obligatoriocomputed_categorystring?current_root_folderstring?has_filesboolean· obligatoriohas_metadataboolean· obligatorioidstring· obligatorioimdb_idstring?instance_idstring· obligatorioinstance_namestring· obligatoriolast_synced_atstring?media_typestring· obligatoriomonitoredboolean· obligatoriooverride_categorystring?statusstring?titlestring· obligatoriotmdb_idinteger?tvdb_idinteger?yearinteger?
MediaMetadata
certificationstring?certification_scalestring?field_sourcesobjectgenresstring[]keywordsstring[]origin_countriesstring[]original_languagestring?overviewstring?poster_pathstring?sourcesstring[]statusstring?
MediaView
added_atstring?arr_idinteger· obligatoriocertificationstring?current_pathstring?current_root_folderstring?genresstring?has_filesboolean· obligatorioidstring· obligatorioimdb_idstring?instance_idstring· obligatoriolast_synced_atstring?media_typestring· obligatoriomonitoredboolean· obligatoriooriginal_languagestring?season_countinteger?series_typestring?size_on_diskinteger?sort_titlestring?statusstring?tagsstring?titlestring· obligatoriotmdb_idinteger?tvdb_idinteger?yearinteger?genre_liststring[]· obligatoriotag_liststring[]· obligatorio
MetadataHealth
cached_itemsinteger· obligatoriomedia_missing_metadatainteger· obligatorioprovidersMetadataProviderHealth[]· obligatorio
MetadataProviderHealth
configuredboolean· obligatorioconnectedboolean?display_namestring· obligatorioidstring· obligatorioneeds_keyboolean· obligatorioreasonstring?
NewRuleTest
expected_categorystring?media_idstring· obligatorionamestring· obligatorio
OverrideEntry
created_atstring· obligatorioidstring· obligatoriomedia_idstring· obligatorioreasonstring?subjectstring?target_categorystring· obligatorio
OverrideWithMedia
created_atstring· obligatorioidstring· obligatoriomedia_idstring· obligatorioreasonstring?subjectstring?target_categorystring· obligatorioinstance_namestring· obligatoriomedia_titlestring· obligatoriomedia_typestring· obligatorio
Page_Decision
dataDecision[]· obligatoriopaginationPagination· obligatorio
Page_Job
dataJob[]· obligatoriopaginationPagination· obligatorio
Page_LogEntry
dataLogEntry[]· obligatoriopaginationPagination· obligatorio
Page_MediaListItem
dataMediaListItem[]· obligatoriopaginationPagination· obligatorio
Page_OverrideWithMedia
dataOverrideWithMedia[]· obligatoriopaginationPagination· obligatorio
Page_RuleTest
dataRuleTest[]· obligatoriopaginationPagination· obligatorio
Pagination
pageinteger· obligatorioper_pageinteger· obligatoriototalinteger· obligatoriototal_pagesinteger· obligatorio
PinnedCategory
reasonstring?target_categorystring· obligatorio
PinRequest
reasonstring?target_categorystring· obligatorio
Placement
answersPlacementAnswer[]· obligatorioerrorsInstanceFailure[]· obligatorio
PlacementAnswer
actionstring· obligatoriocategorystring· obligatorioconfidencenumber· obligatoriocurrent_root_folderstring?instance_idstring· obligatorioinstance_namestring· obligatoriois_overrideboolean· obligatoriomedia_idstring?root_folderPlacementFolder?rulestring?sourcestring· obligatoriotitlestring· obligatoriounanswered_fieldsstring[]· obligatorioyearinteger?
PlacementFolder
originstring· obligatoriopathstring· obligatorio
Pong
statusstring· obligatorio
PreviewChange
confidencenumber· obligatoriocurrent_root_folderstring?from_categorystring· obligatorioinstance_namestring?media_idstring· obligatoriomedia_titlestring· obligatoriomedia_typestring· obligatorioreasonsstring[]· obligatoriotarget_root_folderstring?to_categorystring· obligatorio
PreviewRequest
instance_idsstring[]?ruleCreateRuleRequest· obligatoriorule_idstring?sample_sizeinteger
PreviewResponse
afterPreviewSummary· obligatoriobeforePreviewSummary· obligatoriochangedPreviewChange[]· obligatoriochanged_totalinteger· obligatorioissuesValidationIssue[]· obligatorio
PreviewSummary
already_correctinteger· obligatorioexcluded_by_ruleinteger· obligatoriomoves_requiredinteger· obligatoriono_category_matchinteger· obligatorioskipped_unmappedinteger· obligatoriototal_mediainteger· obligatorio
ProviderDescription
configuredboolean· obligatoriodisplay_namestring· obligatoriofetchedboolean· obligatoriofieldsstring[]· obligatorioidstring· obligatoriokey_envstring?media_typesstring[]· obligatorioneeds_keyboolean· obligatoriowebsitestring?
ProvidersResponse
orderstring[]· obligatorioprovidersProviderDescription[]· obligatorio
ReasonLine
matchedboolean?textstring· obligatorio
RenameCategoryRequest
namestring· obligatorio
Reordered
reorderedinteger· obligatorio
ReorderRulesRequest
rule_idsstring[]· obligatorio
RevertDecisionsRequest
confirmConfirmeddecision_idsstring[]· obligatoriomove_filesboolean
RootFolder
accessibleboolean· obligatorioarr_idinteger?categorystring?free_spaceinteger?idstring· obligatorioinstance_idstring· obligatoriolast_accessible_atstring?last_synced_atstring?originstring· obligatoriopathstring· obligatorio
RootFolderWithInstance
accessibleboolean· obligatorioarr_idinteger?categorystring?free_spaceinteger?idstring· obligatorioinstance_idstring· obligatoriolast_accessible_atstring?last_synced_atstring?originstring· obligatoriopathstring· obligatorioinstance_namestring· obligatorioinstance_typestring· obligatorio
Rule
conditionsCondition[]· obligatoriocreated_atstring· obligatoriodescriptionstring?enabledboolean· obligatorioexclusionsCondition[]idstring· obligatorioinstance_idsstring[]?match_modeMatchModemedia_typestring· obligatorionamestring· obligatoriopriorityinteger· obligatoriotarget_categorystring· obligatorioupdated_atstring· obligatorio
RuleBundle
categoriesstring[]exported_atstring?rulesBundledRule[]· obligatorioversioninteger· obligatorio
RuleHealth
ambiguous_withstring?duplicate_ofstring?enabledboolean· obligatoriomatched_nothingboolean· obligatoriopriorityinteger· obligatoriorule_idstring· obligatoriorule_namestring· obligatorioshadowedinteger· obligatorioshadowed_bystring?vetoedinteger· obligatoriowoninteger· obligatorio
RuleHealthReport
rulesRuleHealth[]· obligatoriototal_mediainteger· obligatorio
RuleImportReport
adjustedstring[]· obligatorioimportedinteger· obligatorioreplacedboolean· obligatorioskippedstring[]· obligatorio
RuleTest
created_atstring· obligatorioevaluated_atstring· obligatorioexpected_categorystring· obligatorioidstring· obligatoriomedia_typestring· obligatorionamestring· obligatoriosource_media_titlestring?
RuleTestResult
actual_categorystring?errorstring?error_keystring?expected_categorystring· obligatorioidstring· obligatoriomatched_rulestring?namestring· obligatoriopassedboolean· obligatorio
RuleTestRun
failedinteger· obligatoriopassedinteger· obligatorioresultsRuleTestResult[]· obligatoriototalinteger· obligatorio
RuleTrace
categorystring· obligatorioconditionsConditionOutcome[]· obligatorioexcluded_bystring?matchedboolean· obligatoriooutcomestring· obligatoriopriorityinteger· obligatoriorule_idstring· obligatoriorule_namestring· obligatorio
RuleVerdict
issuesValidationIssue[]· obligatoriovalidboolean· obligatorio
SimulationRequest
instance_idsstring[]?max_returnedinteger?media_typestring?persistbooleanpersist_unchangedboolean
SimulationResult
already_correctinteger· obligatoriocapacityCapacityForecast[]· obligatoriodecisionsDecision[]· obligatorioelapsed_msinteger· obligatorioexcluded_by_ruleinteger· obligatoriomoves_requiredinteger· obligatoriono_category_matchinteger· obligatoriooverrides_appliedinteger· obligatorioreturnedinteger· obligatoriosimulation_idstring· obligatorioskipped_unmappedinteger· obligatoriototal_mediainteger· obligatorio
StatusResponse
dry_runboolean· obligatoriofailed_decisionsinteger· obligatoriopending_decisionsinteger· obligatoriorunning_jobsinteger· obligatorioversionstring· obligatoriowarningsWarning[]· obligatorio
StopReason
Uno de estos valores
dry_runcancelledshutdown
SyncReport
errorstring?instance_idstring· obligatorioinstance_namestring· obligatoriomediainteger· obligatorioremovedinteger· obligatorioroot_foldersinteger· obligatorio
UpdateRootFolderCategory
categorystring?· obligatorio
ValidationIssue
fieldstring· obligatoriokeystring· obligatoriomessagestringparamsobject· obligatorioseveritystring· obligatorio
Warning
codestring· obligatorioguide_stepstring?messagestring· obligatorioseveritystring· obligatorio