diff --git a/.gitignore b/.gitignore
index 45e6b1a39..d903078ef 100644
--- a/.gitignore
+++ b/.gitignore
@@ -188,6 +188,10 @@ packages.config.md5sum
**/.idea/**/*.iml
**/.idea/**/contentModel.xml
**/.idea/**/modules.xml
+
# ignore node_modules symlink
node_modules
node_modules.nosync
+
+# API doc generation
+.config/
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 2794e0b85..14749108f 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -823,6 +823,50 @@ stages:
FORCE_COLOR: 0
YARN_CACHE_FOLDER: $(yarnCacheFolder)
+ - job: Api_Docs
+ displayName: API Docs
+ dependsOn: Prepare
+ condition: |
+ and
+ (
+ and(succeeded(), eq(variables['Build.SourceBranch'], 'refs/heads/develop')),
+ and(succeeded(), eq(dependencies.Prepare.outputs['setVar.backendNotUpdated'], '0'))
+ )
+
+ pool:
+ vmImage: windows-2019
+
+ steps:
+ - task: UseDotNet@2
+ displayName: 'Install .net core'
+ inputs:
+ version: $(dotnetVersion)
+ - checkout: self # Need history for Sonar analysis
+ submodules: true
+ - bash: ./docs.sh Windows
+ displayName: Create Openapi.json
+ - bash: git commit -am 'Automated API Docs update'
+ displayName: Commit APIDoc Change
+ - task: CreatePullRequest@1
+ inputs:
+ repoType: 'GitHub'
+ githubEndpoint: 'github release'
+ githubRepository: '$(Build.Repository.Name)'
+ sourceBranch: 'api-docs'
+ targetBranch: 'develop'
+ title: 'Update API Docs'
+ - task: CopyFiles@2
+ displayName: 'Copy openapi.json to: $(Build.ArtifactStagingDirectory)'
+ inputs:
+ SourceFolder: '$(Build.SourcesDirectory)'
+ Contents: |
+ **/*openapi.json
+ TargetFolder: '$(Build.ArtifactStagingDirectory)/api_docs'
+ - publish: $(Build.ArtifactStagingDirectory)/api_docs
+ artifact: 'APIDocs'
+ displayName: Publish API Docs Bundle
+ condition: and(succeeded(), eq(variables['System.JobAttempt'], '1'))
+
- job: Analyze_Backend
displayName: Backend
dependsOn: Prepare
diff --git a/docs.sh b/docs.sh
new file mode 100644
index 000000000..bc9a94ff0
--- /dev/null
+++ b/docs.sh
@@ -0,0 +1,38 @@
+PLATFORM=$1
+
+if [ "$PLATFORM" = "Windows" ]; then
+ RUNTIME="win-x64"
+elif [ "$PLATFORM" = "Linux" ]; then
+ WHERE="linux-x64"
+elif [ "$PLATFORM" = "Mac" ]; then
+ WHERE="osx-x64"
+else
+ echo "Platform must be provided as first arguement: Windows, Linux or Mac"
+ exit 1
+fi
+
+outputFolder='_output'
+testPackageFolder='_tests'
+
+rm -rf $outputFolder
+rm -rf $testPackageFolder
+
+slnFile=src/Prowlarr.sln
+
+platform=Posix
+
+dotnet clean $slnFile -c Debug
+dotnet clean $slnFile -c Release
+
+dotnet msbuild -restore $slnFile -p:Configuration=Debug -p:Platform=$platform -p:RuntimeIdentifiers=$RUNTIME -t:PublishAllRids
+
+dotnet new tool-manifest
+dotnet tool install --version 6.2.3 Swashbuckle.AspNetCore.Cli
+
+dotnet tool run swagger tofile --output ./src/Prowlarr.Api.V1/openapi.json "$outputFolder/net6.0/$RUNTIME/prowlarr.console.dll" v1 &
+
+sleep 10
+
+kill %1
+
+exit 0
\ No newline at end of file
diff --git a/src/NzbDrone.Host/Prowlarr.Host.csproj b/src/NzbDrone.Host/Prowlarr.Host.csproj
index 204117551..0b6b294e2 100644
--- a/src/NzbDrone.Host/Prowlarr.Host.csproj
+++ b/src/NzbDrone.Host/Prowlarr.Host.csproj
@@ -7,6 +7,7 @@
+
diff --git a/src/NzbDrone.Host/Startup.cs b/src/NzbDrone.Host/Startup.cs
index 8a63849ac..bd3a0ad7b 100644
--- a/src/NzbDrone.Host/Startup.cs
+++ b/src/NzbDrone.Host/Startup.cs
@@ -9,6 +9,7 @@ using Microsoft.AspNetCore.HttpOverrides;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
+using Microsoft.OpenApi.Models;
using NLog.Extensions.Logging;
using NzbDrone.Common.EnvironmentInfo;
using NzbDrone.Common.Instrumentation;
@@ -90,6 +91,63 @@ namespace NzbDrone.Host
})
.AddControllersAsServices();
+ services.AddSwaggerGen(c =>
+ {
+ c.SwaggerDoc("v1", new OpenApiInfo
+ {
+ Version = "1.0.0",
+ Title = "Prowlarr",
+ Description = "Prowlarr API docs",
+ License = new OpenApiLicense
+ {
+ Name = "GPL-3.0",
+ Url = new Uri("https://github.com/Prowlarr/Prowlarr/blob/develop/LICENSE")
+ }
+ });
+
+ var apiKeyHeader = new OpenApiSecurityScheme
+ {
+ Name = "X-Api-Key",
+ Type = SecuritySchemeType.ApiKey,
+ Scheme = "apiKey",
+ Description = "Apikey passed as header",
+ In = ParameterLocation.Header,
+ Reference = new OpenApiReference
+ {
+ Type = ReferenceType.SecurityScheme,
+ Id = "X-Api-Key"
+ },
+ };
+
+ c.AddSecurityDefinition("X-Api-Key", apiKeyHeader);
+
+ c.AddSecurityRequirement(new OpenApiSecurityRequirement
+ {
+ { apiKeyHeader, new string[] { } }
+ });
+
+ var apikeyQuery = new OpenApiSecurityScheme
+ {
+ Name = "apikey",
+ Type = SecuritySchemeType.ApiKey,
+ Scheme = "apiKey",
+ Description = "Apikey passed as header",
+ In = ParameterLocation.Query,
+ Reference = new OpenApiReference
+ {
+ Type = ReferenceType.SecurityScheme,
+ Id = "apikey"
+ },
+ };
+
+ c.AddSecurityDefinition("apikey", apikeyQuery);
+
+ c.AddSecurityRequirement(new OpenApiSecurityRequirement
+ {
+ { apikeyQuery, new string[] { } }
+ });
+ });
+
services
.AddSignalR()
.AddJsonProtocol(options =>
@@ -181,6 +239,20 @@ namespace NzbDrone.Host
app.UseWebSockets();
+ // Enable middleware to serve generated Swagger as a JSON endpoint.
+ if (BuildInfo.IsDebug)
+ {
+ app.UseSwagger(c =>
+ {
+ c.PreSerializeFilters.Add((swagger, httpReq) =>
+ {
+ swagger.Servers = new List { new OpenApiServer { Url = $"{httpReq.Scheme}://{httpReq.Host.Value}" } };
+ });
+
+ c.RouteTemplate = "docs/{documentName}/openapi.json";
+ });
+ }
+
app.UseEndpoints(x =>
{
x.MapHub("/signalr/messages").RequireAuthorization("SignalR");
diff --git a/src/Prowlarr.Api.V1/Profiles/App/AppProfileController.cs b/src/Prowlarr.Api.V1/Profiles/App/AppProfileController.cs
index b3bc82a09..2225ace22 100644
--- a/src/Prowlarr.Api.V1/Profiles/App/AppProfileController.cs
+++ b/src/Prowlarr.Api.V1/Profiles/App/AppProfileController.cs
@@ -20,6 +20,7 @@ namespace Prowlarr.Api.V1.Profiles.App
}
[RestPostById]
+ [Produces("application/json")]
public ActionResult Create(AppProfileResource resource)
{
var model = resource.ToModel();
@@ -28,12 +29,14 @@ namespace Prowlarr.Api.V1.Profiles.App
}
[RestDeleteById]
+ [Produces("application/json")]
public void DeleteProfile(int id)
{
_profileService.Delete(id);
}
[RestPutById]
+ [Produces("application/json")]
public ActionResult Update(AppProfileResource resource)
{
var model = resource.ToModel();
@@ -43,12 +46,17 @@ namespace Prowlarr.Api.V1.Profiles.App
return Accepted(model.Id);
}
+ [Produces("application/json")]
+ [ProducesResponseType(typeof(AppProfileResource), 200)]
+ [ProducesResponseType(typeof(IDictionary), 404)]
+ [ProducesResponseType(500)]
public override AppProfileResource GetResourceById(int id)
{
return _profileService.Get(id).ToResource();
}
[HttpGet]
+ [Produces("application/json")]
public List GetAll()
{
return _profileService.All().ToResource();
diff --git a/src/Prowlarr.Api.V1/swagger.json b/src/Prowlarr.Api.V1/swagger.json
deleted file mode 100644
index d739dd2cf..000000000
--- a/src/Prowlarr.Api.V1/swagger.json
+++ /dev/null
@@ -1,6900 +0,0 @@
-{
- "openapi": "3.0.1",
- "info": {
- "title": "Prowlarr",
- "version": "1.0.0"
- },
- "paths": {
- "/api/v1/applications/{id}": {
- "get": {
- "tags": [
- "Application"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- }
- }
- }
- }
- },
- "put": {
- "tags": [
- "Application"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- }
- }
- }
- }
- },
- "delete": {
- "tags": [
- "Application"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/applications": {
- "get": {
- "tags": [
- "Application"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- }
- }
- }
- }
- }
- },
- "post": {
- "tags": [
- "Application"
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/applications/schema": {
- "get": {
- "tags": [
- "Application"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/applications/test": {
- "post": {
- "tags": [
- "Application"
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/applications/testall": {
- "post": {
- "tags": [
- "Application"
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/applications/action/{name}": {
- "post": {
- "tags": [
- "Application"
- ],
- "parameters": [
- {
- "name": "name",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/ApplicationResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/appprofile": {
- "post": {
- "tags": [
- "AppProfile"
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/AppProfileResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/AppProfileResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/AppProfileResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/AppProfileResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/AppProfileResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/AppProfileResource"
- }
- }
- }
- }
- }
- },
- "get": {
- "tags": [
- "AppProfile"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/AppProfileResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/AppProfileResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/AppProfileResource"
- }
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/appprofile/{id}": {
- "delete": {
- "tags": [
- "AppProfile"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- },
- "put": {
- "tags": [
- "AppProfile"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/AppProfileResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/AppProfileResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/AppProfileResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/AppProfileResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/AppProfileResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/AppProfileResource"
- }
- }
- }
- }
- }
- },
- "get": {
- "tags": [
- "AppProfile"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/AppProfileResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/AppProfileResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/AppProfileResource"
- }
- }
- }
- }
- }
- }
- },
- "/login": {
- "post": {
- "tags": [
- "Authentication"
- ],
- "parameters": [
- {
- "name": "returnUrl",
- "in": "query",
- "schema": {
- "type": "string"
- }
- }
- ],
- "requestBody": {
- "content": {
- "multipart/form-data": {
- "schema": {
- "type": "object",
- "properties": {
- "Username": {
- "type": "string"
- },
- "Password": {
- "type": "string"
- },
- "RememberMe": {
- "type": "string"
- }
- }
- },
- "encoding": {
- "Username": {
- "style": "form"
- },
- "Password": {
- "style": "form"
- },
- "RememberMe": {
- "style": "form"
- }
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- },
- "get": {
- "tags": [
- "StaticResource"
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/logout": {
- "get": {
- "tags": [
- "Authentication"
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/system/backup": {
- "get": {
- "tags": [
- "Backup"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/BackupResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/BackupResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/BackupResource"
- }
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/system/backup/{id}": {
- "delete": {
- "tags": [
- "Backup"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/system/backup/restore/{id}": {
- "post": {
- "tags": [
- "Backup"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/system/backup/restore/upload": {
- "post": {
- "tags": [
- "Backup"
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/command/{id}": {
- "get": {
- "tags": [
- "Command"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/CommandResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/CommandResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/CommandResource"
- }
- }
- }
- }
- }
- },
- "delete": {
- "tags": [
- "Command"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/command": {
- "post": {
- "tags": [
- "Command"
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/CommandResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/CommandResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/CommandResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/CommandResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/CommandResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/CommandResource"
- }
- }
- }
- }
- }
- },
- "get": {
- "tags": [
- "Command"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/CommandResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/CommandResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/CommandResource"
- }
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/customfilter/{id}": {
- "get": {
- "tags": [
- "CustomFilter"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/CustomFilterResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/CustomFilterResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/CustomFilterResource"
- }
- }
- }
- }
- }
- },
- "put": {
- "tags": [
- "CustomFilter"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/CustomFilterResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/CustomFilterResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/CustomFilterResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/CustomFilterResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/CustomFilterResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/CustomFilterResource"
- }
- }
- }
- }
- }
- },
- "delete": {
- "tags": [
- "CustomFilter"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/customfilter": {
- "get": {
- "tags": [
- "CustomFilter"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/CustomFilterResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/CustomFilterResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/CustomFilterResource"
- }
- }
- }
- }
- }
- }
- },
- "post": {
- "tags": [
- "CustomFilter"
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/CustomFilterResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/CustomFilterResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/CustomFilterResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/CustomFilterResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/CustomFilterResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/CustomFilterResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/config/development/{id}": {
- "put": {
- "tags": [
- "DevelopmentConfig"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/DevelopmentConfigResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/DevelopmentConfigResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/DevelopmentConfigResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/DevelopmentConfigResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/DevelopmentConfigResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/DevelopmentConfigResource"
- }
- }
- }
- }
- }
- },
- "get": {
- "tags": [
- "DevelopmentConfig"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/DevelopmentConfigResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/DevelopmentConfigResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/DevelopmentConfigResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/config/development": {
- "get": {
- "tags": [
- "DevelopmentConfig"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/DevelopmentConfigResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/DevelopmentConfigResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/DevelopmentConfigResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/downloadclient/{id}": {
- "get": {
- "tags": [
- "DownloadClient"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- }
- }
- }
- }
- },
- "put": {
- "tags": [
- "DownloadClient"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- }
- }
- }
- }
- },
- "delete": {
- "tags": [
- "DownloadClient"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/downloadclient": {
- "get": {
- "tags": [
- "DownloadClient"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- }
- }
- }
- }
- }
- },
- "post": {
- "tags": [
- "DownloadClient"
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/downloadclient/schema": {
- "get": {
- "tags": [
- "DownloadClient"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/downloadclient/test": {
- "post": {
- "tags": [
- "DownloadClient"
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/downloadclient/testall": {
- "post": {
- "tags": [
- "DownloadClient"
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/downloadclient/action/{name}": {
- "post": {
- "tags": [
- "DownloadClient"
- ],
- "parameters": [
- {
- "name": "name",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/config/downloadclient/{id}": {
- "get": {
- "tags": [
- "DownloadClientConfig"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientConfigResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientConfigResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientConfigResource"
- }
- }
- }
- }
- }
- },
- "put": {
- "tags": [
- "DownloadClientConfig"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientConfigResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientConfigResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientConfigResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientConfigResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientConfigResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientConfigResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/config/downloadclient": {
- "get": {
- "tags": [
- "DownloadClientConfig"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientConfigResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientConfigResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/DownloadClientConfigResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/filesystem": {
- "get": {
- "tags": [
- "FileSystem"
- ],
- "parameters": [
- {
- "name": "path",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "includeFiles",
- "in": "query",
- "schema": {
- "type": "boolean",
- "default": false
- }
- },
- {
- "name": "allowFoldersWithoutTrailingSlashes",
- "in": "query",
- "schema": {
- "type": "boolean",
- "default": false
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/filesystem/type": {
- "get": {
- "tags": [
- "FileSystem"
- ],
- "parameters": [
- {
- "name": "path",
- "in": "query",
- "schema": {
- "type": "string"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/health/{id}": {
- "get": {
- "tags": [
- "Health"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/HealthResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/HealthResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/HealthResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/health": {
- "get": {
- "tags": [
- "Health"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/HealthResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/HealthResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/HealthResource"
- }
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/history": {
- "get": {
- "tags": [
- "History"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/HistoryResourcePagingResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/HistoryResourcePagingResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/HistoryResourcePagingResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/history/since": {
- "get": {
- "tags": [
- "History"
- ],
- "parameters": [
- {
- "name": "date",
- "in": "query",
- "schema": {
- "type": "string",
- "format": "date-time"
- }
- },
- {
- "name": "eventType",
- "in": "query",
- "schema": {
- "$ref": "#/components/schemas/HistoryEventType"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/HistoryResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/HistoryResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/HistoryResource"
- }
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/history/indexer": {
- "get": {
- "tags": [
- "History"
- ],
- "parameters": [
- {
- "name": "indexerId",
- "in": "query",
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "eventType",
- "in": "query",
- "schema": {
- "$ref": "#/components/schemas/HistoryEventType"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/HistoryResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/HistoryResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/HistoryResource"
- }
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/config/host/{id}": {
- "get": {
- "tags": [
- "HostConfig"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/HostConfigResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/HostConfigResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/HostConfigResource"
- }
- }
- }
- }
- }
- },
- "put": {
- "tags": [
- "HostConfig"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/HostConfigResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/HostConfigResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/HostConfigResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/HostConfigResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/HostConfigResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/HostConfigResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/config/host": {
- "get": {
- "tags": [
- "HostConfig"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/HostConfigResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/HostConfigResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/HostConfigResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/indexer/{id}": {
- "get": {
- "tags": [
- "Indexer"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- }
- }
- }
- }
- },
- "put": {
- "tags": [
- "Indexer"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- }
- }
- }
- }
- },
- "delete": {
- "tags": [
- "Indexer"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/indexer": {
- "get": {
- "tags": [
- "Indexer"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- }
- }
- }
- }
- }
- },
- "post": {
- "tags": [
- "Indexer"
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/indexer/schema": {
- "get": {
- "tags": [
- "Indexer"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/indexer/test": {
- "post": {
- "tags": [
- "Indexer"
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/indexer/testall": {
- "post": {
- "tags": [
- "Indexer"
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/indexer/action/{name}": {
- "post": {
- "tags": [
- "Indexer"
- ],
- "parameters": [
- {
- "name": "name",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/config/indexer/{id}": {
- "get": {
- "tags": [
- "IndexerConfig"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/IndexerConfigResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerConfigResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerConfigResource"
- }
- }
- }
- }
- }
- },
- "put": {
- "tags": [
- "IndexerConfig"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerConfigResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerConfigResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerConfigResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/IndexerConfigResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerConfigResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerConfigResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/config/indexer": {
- "get": {
- "tags": [
- "IndexerConfig"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/IndexerConfigResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerConfigResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerConfigResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/indexer/categories": {
- "get": {
- "tags": [
- "IndexerDefaultCategories"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerCategory"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerCategory"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerCategory"
- }
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/indexer/editor": {
- "put": {
- "tags": [
- "IndexerEditor"
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerEditorResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerEditorResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerEditorResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- },
- "delete": {
- "tags": [
- "IndexerEditor"
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerEditorResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerEditorResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerEditorResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/indexerproxy/{id}": {
- "get": {
- "tags": [
- "IndexerProxy"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- }
- }
- }
- }
- },
- "put": {
- "tags": [
- "IndexerProxy"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- }
- }
- }
- }
- },
- "delete": {
- "tags": [
- "IndexerProxy"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/indexerproxy": {
- "get": {
- "tags": [
- "IndexerProxy"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- }
- }
- }
- }
- }
- },
- "post": {
- "tags": [
- "IndexerProxy"
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/indexerproxy/schema": {
- "get": {
- "tags": [
- "IndexerProxy"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/indexerproxy/test": {
- "post": {
- "tags": [
- "IndexerProxy"
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/indexerproxy/testall": {
- "post": {
- "tags": [
- "IndexerProxy"
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/indexerproxy/action/{name}": {
- "post": {
- "tags": [
- "IndexerProxy"
- ],
- "parameters": [
- {
- "name": "name",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/indexerstats": {
- "get": {
- "tags": [
- "IndexerStats"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/IndexerStatsResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerStatsResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerStatsResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/indexerstatus/{id}": {
- "get": {
- "tags": [
- "IndexerStatus"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/IndexerStatusResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerStatusResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/IndexerStatusResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/indexerstatus": {
- "get": {
- "tags": [
- "IndexerStatus"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerStatusResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerStatusResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerStatusResource"
- }
- }
- }
- }
- }
- }
- }
- },
- "/initialize.js": {
- "get": {
- "tags": [
- "InitializeJs"
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/language/{id}": {
- "get": {
- "tags": [
- "Language"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/LanguageResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/LanguageResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/LanguageResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/language": {
- "get": {
- "tags": [
- "Language"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/LanguageResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/LanguageResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/LanguageResource"
- }
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/localization": {
- "get": {
- "tags": [
- "Localization"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "string"
- }
- },
- "application/json": {
- "schema": {
- "type": "string"
- }
- },
- "text/json": {
- "schema": {
- "type": "string"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/log": {
- "get": {
- "tags": [
- "Log"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/LogResourcePagingResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/LogResourcePagingResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/LogResourcePagingResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/log/file": {
- "get": {
- "tags": [
- "LogFile"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/LogFileResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/LogFileResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/LogFileResource"
- }
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/log/file/{filename}": {
- "get": {
- "tags": [
- "LogFile"
- ],
- "parameters": [
- {
- "name": "filename",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/indexer/{id}/newznab": {
- "get": {
- "tags": [
- "Newznab"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "t",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "q",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "cat",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "imdbid",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "tmdbid",
- "in": "query",
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "extended",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "limit",
- "in": "query",
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "offset",
- "in": "query",
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "rid",
- "in": "query",
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "tvmazeid",
- "in": "query",
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "traktid",
- "in": "query",
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "tvdbid",
- "in": "query",
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "season",
- "in": "query",
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "ep",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "album",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "artist",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "label",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "track",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "year",
- "in": "query",
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "genre",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "author",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "title",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "configured",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "source",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "host",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "server",
- "in": "query",
- "schema": {
- "type": "string"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/{id}/api": {
- "get": {
- "tags": [
- "Newznab"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "t",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "q",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "cat",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "imdbid",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "tmdbid",
- "in": "query",
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "extended",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "limit",
- "in": "query",
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "offset",
- "in": "query",
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "rid",
- "in": "query",
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "tvmazeid",
- "in": "query",
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "traktid",
- "in": "query",
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "tvdbid",
- "in": "query",
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "season",
- "in": "query",
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "ep",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "album",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "artist",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "label",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "track",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "year",
- "in": "query",
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "genre",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "author",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "title",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "configured",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "source",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "host",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "server",
- "in": "query",
- "schema": {
- "type": "string"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/indexer/{id}/download": {
- "get": {
- "tags": [
- "Newznab"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "link",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "file",
- "in": "query",
- "schema": {
- "type": "string"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/{id}/download": {
- "get": {
- "tags": [
- "Newznab"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- },
- {
- "name": "link",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "file",
- "in": "query",
- "schema": {
- "type": "string"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/notification/{id}": {
- "get": {
- "tags": [
- "Notification"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- }
- }
- }
- }
- },
- "put": {
- "tags": [
- "Notification"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- }
- }
- }
- }
- },
- "delete": {
- "tags": [
- "Notification"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/notification": {
- "get": {
- "tags": [
- "Notification"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- }
- }
- }
- }
- }
- },
- "post": {
- "tags": [
- "Notification"
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/notification/schema": {
- "get": {
- "tags": [
- "Notification"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/notification/test": {
- "post": {
- "tags": [
- "Notification"
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/notification/testall": {
- "post": {
- "tags": [
- "Notification"
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/notification/action/{name}": {
- "post": {
- "tags": [
- "Notification"
- ],
- "parameters": [
- {
- "name": "name",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/NotificationResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/appprofile/schema": {
- "get": {
- "tags": [
- "QualityProfileSchema"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/AppProfileResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/AppProfileResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/AppProfileResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/search/{id}": {
- "get": {
- "tags": [
- "Search"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/SearchResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/SearchResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/SearchResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/search": {
- "post": {
- "tags": [
- "Search"
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/SearchResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/SearchResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/SearchResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/SearchResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/SearchResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/SearchResource"
- }
- }
- }
- }
- }
- },
- "get": {
- "tags": [
- "Search"
- ],
- "parameters": [
- {
- "name": "query",
- "in": "query",
- "schema": {
- "type": "string"
- }
- },
- {
- "name": "indexerIds",
- "in": "query",
- "schema": {
- "type": "array",
- "items": {
- "type": "integer",
- "format": "int32"
- }
- }
- },
- {
- "name": "categories",
- "in": "query",
- "schema": {
- "type": "array",
- "items": {
- "type": "integer",
- "format": "int32"
- }
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/SearchResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/SearchResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/SearchResource"
- }
- }
- }
- }
- }
- }
- }
- },
- "/content/{path}": {
- "get": {
- "tags": [
- "StaticResource"
- ],
- "parameters": [
- {
- "name": "path",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/": {
- "get": {
- "tags": [
- "StaticResource"
- ],
- "parameters": [
- {
- "name": "path",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/{path}": {
- "get": {
- "tags": [
- "StaticResource"
- ],
- "parameters": [
- {
- "name": "path",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/system/status": {
- "get": {
- "tags": [
- "System"
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/system/routes": {
- "get": {
- "tags": [
- "System"
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/system/routes/duplicate": {
- "get": {
- "tags": [
- "System"
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/system/shutdown": {
- "post": {
- "tags": [
- "System"
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/system/restart": {
- "post": {
- "tags": [
- "System"
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/tag/{id}": {
- "get": {
- "tags": [
- "Tag"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/TagResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/TagResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/TagResource"
- }
- }
- }
- }
- }
- },
- "put": {
- "tags": [
- "Tag"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/TagResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/TagResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/TagResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/TagResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/TagResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/TagResource"
- }
- }
- }
- }
- }
- },
- "delete": {
- "tags": [
- "Tag"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- },
- "/api/v1/tag": {
- "get": {
- "tags": [
- "Tag"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/TagResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/TagResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/TagResource"
- }
- }
- }
- }
- }
- }
- },
- "post": {
- "tags": [
- "Tag"
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/TagResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/TagResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/TagResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/TagResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/TagResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/TagResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/tag/detail/{id}": {
- "get": {
- "tags": [
- "TagDetails"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/TagDetailsResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/TagDetailsResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/TagDetailsResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/tag/detail": {
- "get": {
- "tags": [
- "TagDetails"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/TagDetailsResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/TagDetailsResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/TagDetailsResource"
- }
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/system/task": {
- "get": {
- "tags": [
- "Task"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/TaskResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/TaskResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/TaskResource"
- }
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/system/task/{id}": {
- "get": {
- "tags": [
- "Task"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/TaskResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/TaskResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/TaskResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/config/ui/{id}": {
- "get": {
- "tags": [
- "UiConfig"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "integer",
- "format": "int32"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/UiConfigResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/UiConfigResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/UiConfigResource"
- }
- }
- }
- }
- }
- },
- "put": {
- "tags": [
- "UiConfig"
- ],
- "parameters": [
- {
- "name": "id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "requestBody": {
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/UiConfigResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/UiConfigResource"
- }
- },
- "application/*+json": {
- "schema": {
- "$ref": "#/components/schemas/UiConfigResource"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/UiConfigResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/UiConfigResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/UiConfigResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/config/ui": {
- "get": {
- "tags": [
- "UiConfig"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "$ref": "#/components/schemas/UiConfigResource"
- }
- },
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/UiConfigResource"
- }
- },
- "text/json": {
- "schema": {
- "$ref": "#/components/schemas/UiConfigResource"
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/update": {
- "get": {
- "tags": [
- "Update"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/UpdateResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/UpdateResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/UpdateResource"
- }
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/log/file/update": {
- "get": {
- "tags": [
- "UpdateLogFile"
- ],
- "responses": {
- "200": {
- "description": "Success",
- "content": {
- "text/plain": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/LogFileResource"
- }
- }
- },
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/LogFileResource"
- }
- }
- },
- "text/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/LogFileResource"
- }
- }
- }
- }
- }
- }
- }
- },
- "/api/v1/log/file/update/{filename}": {
- "get": {
- "tags": [
- "UpdateLogFile"
- ],
- "parameters": [
- {
- "name": "filename",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success"
- }
- }
- }
- }
- },
- "components": {
- "schemas": {
- "ApplicationResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "name": {
- "type": "string",
- "nullable": true
- },
- "fields": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/Field"
- },
- "nullable": true
- },
- "implementationName": {
- "type": "string",
- "nullable": true
- },
- "implementation": {
- "type": "string",
- "nullable": true
- },
- "configContract": {
- "type": "string",
- "nullable": true
- },
- "infoLink": {
- "type": "string",
- "nullable": true
- },
- "message": {
- "$ref": "#/components/schemas/ProviderMessage"
- },
- "tags": {
- "uniqueItems": true,
- "type": "array",
- "items": {
- "type": "integer",
- "format": "int32"
- },
- "nullable": true
- },
- "presets": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/ApplicationResource"
- },
- "nullable": true
- },
- "syncLevel": {
- "$ref": "#/components/schemas/ApplicationSyncLevel"
- },
- "testCommand": {
- "type": "string",
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "ApplicationSyncLevel": {
- "enum": [
- "disabled",
- "addOnly",
- "fullSync"
- ],
- "type": "string"
- },
- "ApplyTags": {
- "enum": [
- "add",
- "remove",
- "replace"
- ],
- "type": "string"
- },
- "AppProfileResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "name": {
- "type": "string",
- "nullable": true
- },
- "enableRss": {
- "type": "boolean"
- },
- "enableInteractiveSearch": {
- "type": "boolean"
- },
- "enableAutomaticSearch": {
- "type": "boolean"
- }
- },
- "additionalProperties": false
- },
- "AuthenticationType": {
- "enum": [
- "none",
- "basic",
- "forms"
- ],
- "type": "string"
- },
- "BackupResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "name": {
- "type": "string",
- "nullable": true
- },
- "path": {
- "type": "string",
- "nullable": true
- },
- "type": {
- "$ref": "#/components/schemas/BackupType"
- },
- "time": {
- "type": "string",
- "format": "date-time"
- }
- },
- "additionalProperties": false
- },
- "BackupType": {
- "enum": [
- "scheduled",
- "manual",
- "update"
- ],
- "type": "string"
- },
- "CertificateValidationType": {
- "enum": [
- "enabled",
- "disabledForLocalAddresses",
- "disabled"
- ],
- "type": "string"
- },
- "Command": {
- "type": "object",
- "properties": {
- "sendUpdatesToClient": {
- "type": "boolean"
- },
- "updateScheduledTask": {
- "type": "boolean",
- "readOnly": true
- },
- "completionMessage": {
- "type": "string",
- "nullable": true,
- "readOnly": true
- },
- "requiresDiskAccess": {
- "type": "boolean",
- "readOnly": true
- },
- "isExclusive": {
- "type": "boolean",
- "readOnly": true
- },
- "isTypeExclusive": {
- "type": "boolean",
- "readOnly": true
- },
- "name": {
- "type": "string",
- "nullable": true,
- "readOnly": true
- },
- "lastExecutionTime": {
- "type": "string",
- "format": "date-time",
- "nullable": true
- },
- "lastStartTime": {
- "type": "string",
- "format": "date-time",
- "nullable": true
- },
- "trigger": {
- "$ref": "#/components/schemas/CommandTrigger"
- },
- "suppressMessages": {
- "type": "boolean"
- },
- "clientUserAgent": {
- "type": "string",
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "CommandPriority": {
- "enum": [
- "normal",
- "high",
- "low"
- ],
- "type": "string"
- },
- "CommandResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "name": {
- "type": "string",
- "nullable": true
- },
- "commandName": {
- "type": "string",
- "nullable": true
- },
- "message": {
- "type": "string",
- "nullable": true
- },
- "body": {
- "$ref": "#/components/schemas/Command"
- },
- "priority": {
- "$ref": "#/components/schemas/CommandPriority"
- },
- "status": {
- "$ref": "#/components/schemas/CommandStatus"
- },
- "queued": {
- "type": "string",
- "format": "date-time"
- },
- "started": {
- "type": "string",
- "format": "date-time",
- "nullable": true
- },
- "ended": {
- "type": "string",
- "format": "date-time",
- "nullable": true
- },
- "duration": {
- "$ref": "#/components/schemas/TimeSpan"
- },
- "exception": {
- "type": "string",
- "nullable": true
- },
- "trigger": {
- "$ref": "#/components/schemas/CommandTrigger"
- },
- "clientUserAgent": {
- "type": "string",
- "nullable": true
- },
- "stateChangeTime": {
- "type": "string",
- "format": "date-time",
- "nullable": true
- },
- "sendUpdatesToClient": {
- "type": "boolean"
- },
- "updateScheduledTask": {
- "type": "boolean"
- },
- "lastExecutionTime": {
- "type": "string",
- "format": "date-time",
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "CommandStatus": {
- "enum": [
- "queued",
- "started",
- "completed",
- "failed",
- "aborted",
- "cancelled",
- "orphaned"
- ],
- "type": "string"
- },
- "CommandTrigger": {
- "enum": [
- "unspecified",
- "manual",
- "scheduled"
- ],
- "type": "string"
- },
- "CustomFilterResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "type": {
- "type": "string",
- "nullable": true
- },
- "label": {
- "type": "string",
- "nullable": true
- },
- "filters": {
- "type": "array",
- "items": {
- "type": "object",
- "additionalProperties": { }
- },
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "DevelopmentConfigResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "consoleLogLevel": {
- "type": "string",
- "nullable": true
- },
- "logSql": {
- "type": "boolean"
- },
- "logIndexerResponse": {
- "type": "boolean"
- },
- "logRotate": {
- "type": "integer",
- "format": "int32"
- },
- "filterSentryEvents": {
- "type": "boolean"
- }
- },
- "additionalProperties": false
- },
- "DownloadClientConfigResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "downloadClientWorkingFolders": {
- "type": "string",
- "nullable": true
- },
- "enableCompletedDownloadHandling": {
- "type": "boolean"
- },
- "removeCompletedDownloads": {
- "type": "boolean"
- },
- "checkForFinishedDownloadInterval": {
- "type": "integer",
- "format": "int32"
- },
- "autoRedownloadFailed": {
- "type": "boolean"
- },
- "removeFailedDownloads": {
- "type": "boolean"
- }
- },
- "additionalProperties": false
- },
- "DownloadClientResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "name": {
- "type": "string",
- "nullable": true
- },
- "fields": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/Field"
- },
- "nullable": true
- },
- "implementationName": {
- "type": "string",
- "nullable": true
- },
- "implementation": {
- "type": "string",
- "nullable": true
- },
- "configContract": {
- "type": "string",
- "nullable": true
- },
- "infoLink": {
- "type": "string",
- "nullable": true
- },
- "message": {
- "$ref": "#/components/schemas/ProviderMessage"
- },
- "tags": {
- "uniqueItems": true,
- "type": "array",
- "items": {
- "type": "integer",
- "format": "int32"
- },
- "nullable": true
- },
- "presets": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/DownloadClientResource"
- },
- "nullable": true
- },
- "enable": {
- "type": "boolean"
- },
- "protocol": {
- "$ref": "#/components/schemas/DownloadProtocol"
- },
- "priority": {
- "type": "integer",
- "format": "int32"
- }
- },
- "additionalProperties": false
- },
- "DownloadProtocol": {
- "enum": [
- "unknown",
- "usenet",
- "torrent"
- ],
- "type": "string"
- },
- "Field": {
- "type": "object",
- "properties": {
- "order": {
- "type": "integer",
- "format": "int32"
- },
- "name": {
- "type": "string",
- "nullable": true
- },
- "label": {
- "type": "string",
- "nullable": true
- },
- "unit": {
- "type": "string",
- "nullable": true
- },
- "helpText": {
- "type": "string",
- "nullable": true
- },
- "helpLink": {
- "type": "string",
- "nullable": true
- },
- "value": {
- "nullable": true
- },
- "type": {
- "type": "string",
- "nullable": true
- },
- "advanced": {
- "type": "boolean"
- },
- "selectOptions": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/SelectOption"
- },
- "nullable": true
- },
- "selectOptionsProviderAction": {
- "type": "string",
- "nullable": true
- },
- "section": {
- "type": "string",
- "nullable": true
- },
- "hidden": {
- "type": "string",
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "HealthCheckResult": {
- "enum": [
- "ok",
- "notice",
- "warning",
- "error"
- ],
- "type": "string"
- },
- "HealthResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "source": {
- "type": "string",
- "nullable": true
- },
- "type": {
- "$ref": "#/components/schemas/HealthCheckResult"
- },
- "message": {
- "type": "string",
- "nullable": true
- },
- "wikiUrl": {
- "$ref": "#/components/schemas/HttpUri"
- }
- },
- "additionalProperties": false
- },
- "HistoryEventType": {
- "enum": [
- "unknown",
- "releaseGrabbed",
- "indexerQuery",
- "indexerRss",
- "indexerAuth",
- "indexerInfo"
- ],
- "type": "string"
- },
- "HistoryResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "indexerId": {
- "type": "integer",
- "format": "int32"
- },
- "date": {
- "type": "string",
- "format": "date-time"
- },
- "downloadId": {
- "type": "string",
- "nullable": true
- },
- "successful": {
- "type": "boolean"
- },
- "eventType": {
- "$ref": "#/components/schemas/HistoryEventType"
- },
- "data": {
- "type": "object",
- "additionalProperties": {
- "type": "string"
- },
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "HistoryResourcePagingResource": {
- "type": "object",
- "properties": {
- "page": {
- "type": "integer",
- "format": "int32"
- },
- "pageSize": {
- "type": "integer",
- "format": "int32"
- },
- "sortKey": {
- "type": "string",
- "nullable": true
- },
- "sortDirection": {
- "$ref": "#/components/schemas/SortDirection"
- },
- "filters": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/PagingResourceFilter"
- },
- "nullable": true
- },
- "totalRecords": {
- "type": "integer",
- "format": "int32"
- },
- "records": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/HistoryResource"
- },
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "HostConfigResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "bindAddress": {
- "type": "string",
- "nullable": true
- },
- "port": {
- "type": "integer",
- "format": "int32"
- },
- "sslPort": {
- "type": "integer",
- "format": "int32"
- },
- "enableSsl": {
- "type": "boolean"
- },
- "launchBrowser": {
- "type": "boolean"
- },
- "authenticationMethod": {
- "$ref": "#/components/schemas/AuthenticationType"
- },
- "analyticsEnabled": {
- "type": "boolean"
- },
- "username": {
- "type": "string",
- "nullable": true
- },
- "password": {
- "type": "string",
- "nullable": true
- },
- "logLevel": {
- "type": "string",
- "nullable": true
- },
- "consoleLogLevel": {
- "type": "string",
- "nullable": true
- },
- "branch": {
- "type": "string",
- "nullable": true
- },
- "apiKey": {
- "type": "string",
- "nullable": true
- },
- "sslCertPath": {
- "type": "string",
- "nullable": true
- },
- "sslCertPassword": {
- "type": "string",
- "nullable": true
- },
- "urlBase": {
- "type": "string",
- "nullable": true
- },
- "updateAutomatically": {
- "type": "boolean"
- },
- "updateMechanism": {
- "$ref": "#/components/schemas/UpdateMechanism"
- },
- "updateScriptPath": {
- "type": "string",
- "nullable": true
- },
- "proxyEnabled": {
- "type": "boolean"
- },
- "proxyType": {
- "$ref": "#/components/schemas/ProxyType"
- },
- "proxyHostname": {
- "type": "string",
- "nullable": true
- },
- "proxyPort": {
- "type": "integer",
- "format": "int32"
- },
- "proxyUsername": {
- "type": "string",
- "nullable": true
- },
- "proxyPassword": {
- "type": "string",
- "nullable": true
- },
- "proxyBypassFilter": {
- "type": "string",
- "nullable": true
- },
- "proxyBypassLocalAddresses": {
- "type": "boolean"
- },
- "certificateValidation": {
- "$ref": "#/components/schemas/CertificateValidationType"
- },
- "backupFolder": {
- "type": "string",
- "nullable": true
- },
- "backupInterval": {
- "type": "integer",
- "format": "int32"
- },
- "backupRetention": {
- "type": "integer",
- "format": "int32"
- },
- "historyCleanupDays": {
- "type": "integer",
- "format": "int32"
- }
- },
- "additionalProperties": false
- },
- "HostStatistics": {
- "type": "object",
- "properties": {
- "host": {
- "type": "string",
- "nullable": true
- },
- "numberOfQueries": {
- "type": "integer",
- "format": "int32"
- },
- "numberOfGrabs": {
- "type": "integer",
- "format": "int32"
- }
- },
- "additionalProperties": false
- },
- "HttpUri": {
- "type": "object",
- "properties": {
- "fullUri": {
- "type": "string",
- "nullable": true,
- "readOnly": true
- },
- "scheme": {
- "type": "string",
- "nullable": true,
- "readOnly": true
- },
- "host": {
- "type": "string",
- "nullable": true,
- "readOnly": true
- },
- "port": {
- "type": "integer",
- "format": "int32",
- "nullable": true,
- "readOnly": true
- },
- "path": {
- "type": "string",
- "nullable": true,
- "readOnly": true
- },
- "query": {
- "type": "string",
- "nullable": true,
- "readOnly": true
- },
- "fragment": {
- "type": "string",
- "nullable": true,
- "readOnly": true
- }
- },
- "additionalProperties": false
- },
- "IndexerCapabilityResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "limitsMax": {
- "type": "integer",
- "format": "int32",
- "nullable": true
- },
- "limitsDefault": {
- "type": "integer",
- "format": "int32",
- "nullable": true
- },
- "categories": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerCategory"
- },
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "IndexerCategory": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "name": {
- "type": "string",
- "nullable": true
- },
- "description": {
- "type": "string",
- "nullable": true
- },
- "subCategories": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerCategory"
- },
- "nullable": true,
- "readOnly": true
- }
- },
- "additionalProperties": false
- },
- "IndexerConfigResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "minimumAge": {
- "type": "integer",
- "format": "int32"
- },
- "maximumSize": {
- "type": "integer",
- "format": "int32"
- },
- "retention": {
- "type": "integer",
- "format": "int32"
- },
- "rssSyncInterval": {
- "type": "integer",
- "format": "int32"
- },
- "preferIndexerFlags": {
- "type": "boolean"
- },
- "availabilityDelay": {
- "type": "integer",
- "format": "int32"
- },
- "allowHardcodedSubs": {
- "type": "boolean"
- },
- "whitelistedHardcodedSubs": {
- "type": "string",
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "IndexerEditorResource": {
- "type": "object",
- "properties": {
- "indexerIds": {
- "type": "array",
- "items": {
- "type": "integer",
- "format": "int32"
- },
- "nullable": true
- },
- "enable": {
- "type": "string",
- "nullable": true
- },
- "appProfileId": {
- "type": "integer",
- "format": "int32",
- "nullable": true
- },
- "tags": {
- "type": "array",
- "items": {
- "type": "integer",
- "format": "int32"
- },
- "nullable": true
- },
- "applyTags": {
- "$ref": "#/components/schemas/ApplyTags"
- }
- },
- "additionalProperties": false
- },
- "IndexerPrivacy": {
- "enum": [
- "public",
- "semiPublic",
- "private"
- ],
- "type": "string"
- },
- "IndexerProxyResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "name": {
- "type": "string",
- "nullable": true
- },
- "fields": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/Field"
- },
- "nullable": true
- },
- "implementationName": {
- "type": "string",
- "nullable": true
- },
- "implementation": {
- "type": "string",
- "nullable": true
- },
- "configContract": {
- "type": "string",
- "nullable": true
- },
- "infoLink": {
- "type": "string",
- "nullable": true
- },
- "message": {
- "$ref": "#/components/schemas/ProviderMessage"
- },
- "tags": {
- "uniqueItems": true,
- "type": "array",
- "items": {
- "type": "integer",
- "format": "int32"
- },
- "nullable": true
- },
- "presets": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerProxyResource"
- },
- "nullable": true
- },
- "link": {
- "type": "string",
- "nullable": true
- },
- "onHealthIssue": {
- "type": "boolean"
- },
- "supportsOnHealthIssue": {
- "type": "boolean"
- },
- "includeHealthWarnings": {
- "type": "boolean"
- },
- "testCommand": {
- "type": "string",
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "IndexerResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "name": {
- "type": "string",
- "nullable": true
- },
- "fields": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/Field"
- },
- "nullable": true
- },
- "implementationName": {
- "type": "string",
- "nullable": true
- },
- "implementation": {
- "type": "string",
- "nullable": true
- },
- "configContract": {
- "type": "string",
- "nullable": true
- },
- "infoLink": {
- "type": "string",
- "nullable": true
- },
- "message": {
- "$ref": "#/components/schemas/ProviderMessage"
- },
- "tags": {
- "uniqueItems": true,
- "type": "array",
- "items": {
- "type": "integer",
- "format": "int32"
- },
- "nullable": true
- },
- "presets": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerResource"
- },
- "nullable": true
- },
- "indexerUrls": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "nullable": true
- },
- "description": {
- "type": "string",
- "nullable": true
- },
- "language": {
- "type": "string",
- "nullable": true
- },
- "encoding": {
- "type": "string",
- "nullable": true
- },
- "enable": {
- "type": "boolean"
- },
- "redirect": {
- "type": "boolean"
- },
- "supportsRss": {
- "type": "boolean"
- },
- "supportsSearch": {
- "type": "boolean"
- },
- "supportsRedirect": {
- "type": "boolean"
- },
- "appProfileId": {
- "type": "integer",
- "format": "int32"
- },
- "protocol": {
- "$ref": "#/components/schemas/DownloadProtocol"
- },
- "privacy": {
- "$ref": "#/components/schemas/IndexerPrivacy"
- },
- "capabilities": {
- "$ref": "#/components/schemas/IndexerCapabilityResource"
- },
- "priority": {
- "type": "integer",
- "format": "int32"
- },
- "added": {
- "type": "string",
- "format": "date-time"
- },
- "status": {
- "$ref": "#/components/schemas/IndexerStatusResource"
- },
- "sortName": {
- "type": "string",
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "IndexerStatistics": {
- "type": "object",
- "properties": {
- "indexerId": {
- "type": "integer",
- "format": "int32"
- },
- "indexerName": {
- "type": "string",
- "nullable": true
- },
- "averageResponseTime": {
- "type": "integer",
- "format": "int32"
- },
- "numberOfQueries": {
- "type": "integer",
- "format": "int32"
- },
- "numberOfGrabs": {
- "type": "integer",
- "format": "int32"
- },
- "numberOfRssQueries": {
- "type": "integer",
- "format": "int32"
- },
- "numberOfAuthQueries": {
- "type": "integer",
- "format": "int32"
- },
- "numberOfFailedQueries": {
- "type": "integer",
- "format": "int32"
- },
- "numberOfFailedGrabs": {
- "type": "integer",
- "format": "int32"
- },
- "numberOfFailedRssQueries": {
- "type": "integer",
- "format": "int32"
- },
- "numberOfFailedAuthQueries": {
- "type": "integer",
- "format": "int32"
- }
- },
- "additionalProperties": false
- },
- "IndexerStatsResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "indexers": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerStatistics"
- },
- "nullable": true
- },
- "userAgents": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/UserAgentStatistics"
- },
- "nullable": true
- },
- "hosts": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/HostStatistics"
- },
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "IndexerStatusResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "indexerId": {
- "type": "integer",
- "format": "int32"
- },
- "disabledTill": {
- "type": "string",
- "format": "date-time",
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "LanguageResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "name": {
- "type": "string",
- "nullable": true
- },
- "nameLower": {
- "type": "string",
- "nullable": true,
- "readOnly": true
- }
- },
- "additionalProperties": false
- },
- "LogFileResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "filename": {
- "type": "string",
- "nullable": true
- },
- "lastWriteTime": {
- "type": "string",
- "format": "date-time"
- },
- "contentsUrl": {
- "type": "string",
- "nullable": true
- },
- "downloadUrl": {
- "type": "string",
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "LogResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "time": {
- "type": "string",
- "format": "date-time"
- },
- "exception": {
- "type": "string",
- "nullable": true
- },
- "exceptionType": {
- "type": "string",
- "nullable": true
- },
- "level": {
- "type": "string",
- "nullable": true
- },
- "logger": {
- "type": "string",
- "nullable": true
- },
- "message": {
- "type": "string",
- "nullable": true
- },
- "method": {
- "type": "string",
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "LogResourcePagingResource": {
- "type": "object",
- "properties": {
- "page": {
- "type": "integer",
- "format": "int32"
- },
- "pageSize": {
- "type": "integer",
- "format": "int32"
- },
- "sortKey": {
- "type": "string",
- "nullable": true
- },
- "sortDirection": {
- "$ref": "#/components/schemas/SortDirection"
- },
- "filters": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/PagingResourceFilter"
- },
- "nullable": true
- },
- "totalRecords": {
- "type": "integer",
- "format": "int32"
- },
- "records": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/LogResource"
- },
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "NotificationResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "name": {
- "type": "string",
- "nullable": true
- },
- "fields": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/Field"
- },
- "nullable": true
- },
- "implementationName": {
- "type": "string",
- "nullable": true
- },
- "implementation": {
- "type": "string",
- "nullable": true
- },
- "configContract": {
- "type": "string",
- "nullable": true
- },
- "infoLink": {
- "type": "string",
- "nullable": true
- },
- "message": {
- "$ref": "#/components/schemas/ProviderMessage"
- },
- "tags": {
- "uniqueItems": true,
- "type": "array",
- "items": {
- "type": "integer",
- "format": "int32"
- },
- "nullable": true
- },
- "presets": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/NotificationResource"
- },
- "nullable": true
- },
- "link": {
- "type": "string",
- "nullable": true
- },
- "onHealthIssue": {
- "type": "boolean"
- },
- "supportsOnHealthIssue": {
- "type": "boolean"
- },
- "includeHealthWarnings": {
- "type": "boolean"
- },
- "testCommand": {
- "type": "string",
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "PagingResourceFilter": {
- "type": "object",
- "properties": {
- "key": {
- "type": "string",
- "nullable": true
- },
- "value": {
- "type": "string",
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "ProviderMessage": {
- "type": "object",
- "properties": {
- "message": {
- "type": "string",
- "nullable": true
- },
- "type": {
- "$ref": "#/components/schemas/ProviderMessageType"
- }
- },
- "additionalProperties": false
- },
- "ProviderMessageType": {
- "enum": [
- "info",
- "warning",
- "error"
- ],
- "type": "string"
- },
- "ProxyType": {
- "enum": [
- "http",
- "socks4",
- "socks5"
- ],
- "type": "string"
- },
- "SearchResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "guid": {
- "type": "string",
- "nullable": true
- },
- "age": {
- "type": "integer",
- "format": "int32"
- },
- "ageHours": {
- "type": "number",
- "format": "double"
- },
- "ageMinutes": {
- "type": "number",
- "format": "double"
- },
- "size": {
- "type": "integer",
- "format": "int64"
- },
- "files": {
- "type": "integer",
- "format": "int32",
- "nullable": true
- },
- "grabs": {
- "type": "integer",
- "format": "int32",
- "nullable": true
- },
- "indexerId": {
- "type": "integer",
- "format": "int32"
- },
- "indexer": {
- "type": "string",
- "nullable": true
- },
- "subGroup": {
- "type": "string",
- "nullable": true
- },
- "releaseHash": {
- "type": "string",
- "nullable": true
- },
- "title": {
- "type": "string",
- "nullable": true
- },
- "approved": {
- "type": "boolean"
- },
- "imdbId": {
- "type": "integer",
- "format": "int32"
- },
- "publishDate": {
- "type": "string",
- "format": "date-time"
- },
- "commentUrl": {
- "type": "string",
- "nullable": true
- },
- "downloadUrl": {
- "type": "string",
- "nullable": true
- },
- "infoUrl": {
- "type": "string",
- "nullable": true
- },
- "posterUrl": {
- "type": "string",
- "nullable": true
- },
- "indexerFlags": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "nullable": true
- },
- "categories": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/IndexerCategory"
- },
- "nullable": true
- },
- "magnetUrl": {
- "type": "string",
- "nullable": true
- },
- "infoHash": {
- "type": "string",
- "nullable": true
- },
- "seeders": {
- "type": "integer",
- "format": "int32",
- "nullable": true
- },
- "leechers": {
- "type": "integer",
- "format": "int32",
- "nullable": true
- },
- "protocol": {
- "$ref": "#/components/schemas/DownloadProtocol"
- }
- },
- "additionalProperties": false
- },
- "SelectOption": {
- "type": "object",
- "properties": {
- "value": {
- "type": "integer",
- "format": "int32"
- },
- "name": {
- "type": "string",
- "nullable": true
- },
- "order": {
- "type": "integer",
- "format": "int32"
- },
- "hint": {
- "type": "string",
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "SortDirection": {
- "enum": [
- "default",
- "ascending",
- "descending"
- ],
- "type": "string"
- },
- "TagDetailsResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "label": {
- "type": "string",
- "nullable": true
- },
- "notificationIds": {
- "type": "array",
- "items": {
- "type": "integer",
- "format": "int32"
- },
- "nullable": true
- },
- "indexerIds": {
- "type": "array",
- "items": {
- "type": "integer",
- "format": "int32"
- },
- "nullable": true
- },
- "indexerProxyIds": {
- "type": "array",
- "items": {
- "type": "integer",
- "format": "int32"
- },
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "TagResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "label": {
- "type": "string",
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "TaskResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "name": {
- "type": "string",
- "nullable": true
- },
- "taskName": {
- "type": "string",
- "nullable": true
- },
- "interval": {
- "type": "integer",
- "format": "int32"
- },
- "lastExecution": {
- "type": "string",
- "format": "date-time"
- },
- "lastStartTime": {
- "type": "string",
- "format": "date-time"
- },
- "nextExecution": {
- "type": "string",
- "format": "date-time"
- },
- "lastDuration": {
- "$ref": "#/components/schemas/TimeSpan"
- }
- },
- "additionalProperties": false
- },
- "TimeSpan": {
- "type": "object",
- "properties": {
- "ticks": {
- "type": "integer",
- "format": "int64",
- "readOnly": true
- },
- "days": {
- "type": "integer",
- "format": "int32",
- "readOnly": true
- },
- "hours": {
- "type": "integer",
- "format": "int32",
- "readOnly": true
- },
- "milliseconds": {
- "type": "integer",
- "format": "int32",
- "readOnly": true
- },
- "minutes": {
- "type": "integer",
- "format": "int32",
- "readOnly": true
- },
- "seconds": {
- "type": "integer",
- "format": "int32",
- "readOnly": true
- },
- "totalDays": {
- "type": "number",
- "format": "double",
- "readOnly": true
- },
- "totalHours": {
- "type": "number",
- "format": "double",
- "readOnly": true
- },
- "totalMilliseconds": {
- "type": "number",
- "format": "double",
- "readOnly": true
- },
- "totalMinutes": {
- "type": "number",
- "format": "double",
- "readOnly": true
- },
- "totalSeconds": {
- "type": "number",
- "format": "double",
- "readOnly": true
- }
- },
- "additionalProperties": false
- },
- "UiConfigResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "firstDayOfWeek": {
- "type": "integer",
- "format": "int32"
- },
- "calendarWeekColumnHeader": {
- "type": "string",
- "nullable": true
- },
- "shortDateFormat": {
- "type": "string",
- "nullable": true
- },
- "longDateFormat": {
- "type": "string",
- "nullable": true
- },
- "timeFormat": {
- "type": "string",
- "nullable": true
- },
- "showRelativeDates": {
- "type": "boolean"
- },
- "enableColorImpairedMode": {
- "type": "boolean"
- },
- "movieInfoLanguage": {
- "type": "integer",
- "format": "int32"
- },
- "uiLanguage": {
- "type": "integer",
- "format": "int32"
- }
- },
- "additionalProperties": false
- },
- "UpdateChanges": {
- "type": "object",
- "properties": {
- "new": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "nullable": true
- },
- "fixed": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "UpdateMechanism": {
- "enum": [
- "builtIn",
- "script",
- "external",
- "apt",
- "docker"
- ],
- "type": "string"
- },
- "UpdateResource": {
- "type": "object",
- "properties": {
- "id": {
- "type": "integer",
- "format": "int32"
- },
- "version": {
- "$ref": "#/components/schemas/Version"
- },
- "branch": {
- "type": "string",
- "nullable": true
- },
- "releaseDate": {
- "type": "string",
- "format": "date-time"
- },
- "fileName": {
- "type": "string",
- "nullable": true
- },
- "url": {
- "type": "string",
- "nullable": true
- },
- "installed": {
- "type": "boolean"
- },
- "installedOn": {
- "type": "string",
- "format": "date-time",
- "nullable": true
- },
- "installable": {
- "type": "boolean"
- },
- "latest": {
- "type": "boolean"
- },
- "changes": {
- "$ref": "#/components/schemas/UpdateChanges"
- },
- "hash": {
- "type": "string",
- "nullable": true
- }
- },
- "additionalProperties": false
- },
- "UserAgentStatistics": {
- "type": "object",
- "properties": {
- "userAgent": {
- "type": "string",
- "nullable": true
- },
- "numberOfQueries": {
- "type": "integer",
- "format": "int32"
- },
- "numberOfGrabs": {
- "type": "integer",
- "format": "int32"
- }
- },
- "additionalProperties": false
- },
- "Version": {
- "type": "object",
- "properties": {
- "major": {
- "type": "integer",
- "format": "int32",
- "readOnly": true
- },
- "minor": {
- "type": "integer",
- "format": "int32",
- "readOnly": true
- },
- "build": {
- "type": "integer",
- "format": "int32",
- "readOnly": true
- },
- "revision": {
- "type": "integer",
- "format": "int32",
- "readOnly": true
- },
- "majorRevision": {
- "type": "integer",
- "format": "int32",
- "readOnly": true
- },
- "minorRevision": {
- "type": "integer",
- "format": "int32",
- "readOnly": true
- }
- },
- "additionalProperties": false
- }
- }
- }
-}
\ No newline at end of file