{
  "openapi": "3.0.1",
  "info": {
    "title": "Prowlarr",
    "description": "Prowlarr API docs",
    "license": {
      "name": "GPL-3.0",
      "url": "https://github.com/Prowlarr/Prowlarr/blob/develop/LICENSE"
    },
    "version": "1.0.0"
  },
  "servers": [
    {
      "url": "{protocol}://{hostpath}",
      "variables": {
        "protocol": {
          "default": "http",
          "enum": [
            "http",
            "https"
          ]
        },
        "hostpath": {
          "default": "localhost:9696"
        }
      }
    }
  ],
  "paths": {
    "/api": {
      "get": {
        "tags": [
          "ApiInfo"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiInfoResource"
                }
              }
            }
          }
        }
      }
    },
    "/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": {
              "application/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": {
              "application/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": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApplicationResource"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/applications/schema": {
      "get": {
        "tags": [
          "Application"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/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": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AppProfileResource"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "AppProfile"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/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": {
              "application/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": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AppProfileResource"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "500": {
            "description": "Server Error"
          }
        }
      }
    },
    "/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": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommandResource"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Command"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/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": {
              "application/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": {
              "application/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": {
              "application/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": {
              "application/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": {
              "application/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": {
              "application/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": {
              "application/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": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DownloadClientResource"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/downloadclient/schema": {
      "get": {
        "tags": [
          "DownloadClient"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/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": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DownloadClientConfigResource"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/config/downloadclient": {
      "get": {
        "tags": [
          "DownloadClientConfig"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/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": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/HealthResource"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/history": {
      "get": {
        "tags": [
          "History"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/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": {
              "application/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": {
              "application/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": {
              "application/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": {
              "application/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": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IndexerResource"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/indexer/schema": {
      "get": {
        "tags": [
          "Indexer"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/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/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": {
              "application/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": {
              "application/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": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IndexerProxyResource"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/indexerproxy/schema": {
      "get": {
        "tags": [
          "IndexerProxy"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/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"
        ],
        "parameters": [
          {
            "name": "startDate",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "endDate",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        ],
        "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/localization": {
      "get": {
        "tags": [
          "Localization"
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/api/v1/localization/options": {
      "get": {
        "tags": [
          "Localization"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/LocalizationOption"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/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": {
              "pattern": "[-.a-zA-Z0-9]+?\\.txt",
              "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": "doubanid",
            "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": "publisher",
            "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": "doubanid",
            "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": "publisher",
            "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": {
              "application/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": {
              "application/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": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotificationResource"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/notification/schema": {
      "get": {
        "tags": [
          "Notification"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/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/ReleaseResource"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ReleaseResource"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ReleaseResource"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/search": {
      "post": {
        "tags": [
          "Search"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReleaseResource"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ReleaseResource"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ReleaseResource"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ReleaseResource"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ReleaseResource"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ReleaseResource"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Search"
        ],
        "parameters": [
          {
            "name": "Query",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Type",
            "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"
              }
            }
          },
          {
            "name": "Limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ReleaseResource"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ReleaseResource"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ReleaseResource"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/search/bulk": {
      "post": {
        "tags": [
          "Search"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ReleaseResource"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ReleaseResource"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ReleaseResource"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ReleaseResource"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ReleaseResource"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ReleaseResource"
                }
              }
            }
          }
        }
      }
    },
    "/content/{path}": {
      "get": {
        "tags": [
          "StaticResource"
        ],
        "parameters": [
          {
            "name": "path",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^(?!api/).*",
              "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": {
              "pattern": "^(?!api/).*",
              "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}": {
      "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": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UiConfigResource"
                }
              }
            }
          }
        }
      },
      "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"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/config/ui": {
      "get": {
        "tags": [
          "UiConfig"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/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": {
              "pattern": "[-.a-zA-Z0-9]+?\\.txt",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "ApiInfoResource": {
        "type": "object",
        "properties": {
          "current": {
            "type": "string",
            "nullable": true
          },
          "deprecated": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AppProfileResource": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int32"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "enableRss": {
            "type": "boolean"
          },
          "enableInteractiveSearch": {
            "type": "boolean"
          },
          "enableAutomaticSearch": {
            "type": "boolean"
          },
          "minimumSeeders": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "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"
      },
      "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"
          },
          "size": {
            "type": "integer",
            "format": "int64"
          },
          "time": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "BackupType": {
        "enum": [
          "scheduled",
          "manual",
          "update"
        ],
        "type": "string"
      },
      "BookSearchParam": {
        "enum": [
          "q",
          "title",
          "author",
          "publisher",
          "genre",
          "year"
        ],
        "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"
          }
        },
        "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
          },
          "placeholder": {
            "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
            },
            "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
          },
          "instanceName": {
            "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
          },
          "supportsRawSearch": {
            "type": "boolean"
          },
          "searchParams": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SearchParam"
            },
            "nullable": true
          },
          "tvSearchParams": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TvSearchParam"
            },
            "nullable": true
          },
          "movieSearchParams": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MovieSearchParam"
            },
            "nullable": true
          },
          "musicSearchParams": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MusicSearchParam"
            },
            "nullable": true
          },
          "bookSearchParams": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BookSearchParam"
            },
            "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
      },
      "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",
          "semiPrivate",
          "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
          },
          "legacyUrls": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "definitionName": {
            "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
      },
      "LocalizationOption": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "value": {
            "type": "string",
            "nullable": 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
      },
      "MovieSearchParam": {
        "enum": [
          "q",
          "imdbId",
          "tmdbId",
          "imdbTitle",
          "imdbYear",
          "traktId",
          "genre",
          "doubanId",
          "year"
        ],
        "type": "string"
      },
      "MusicSearchParam": {
        "enum": [
          "q",
          "album",
          "artist",
          "label",
          "year",
          "genre",
          "track"
        ],
        "type": "string"
      },
      "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"
          },
          "onApplicationUpdate": {
            "type": "boolean"
          },
          "supportsOnHealthIssue": {
            "type": "boolean"
          },
          "includeHealthWarnings": {
            "type": "boolean"
          },
          "supportsOnApplicationUpdate": {
            "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"
      },
      "ReleaseResource": {
        "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
      },
      "SearchParam": {
        "enum": [
          "q"
        ],
        "type": "string"
      },
      "SelectOption": {
        "type": "object",
        "properties": {
          "value": {
            "type": "integer",
            "format": "int32"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "order": {
            "type": "integer",
            "format": "int32"
          },
          "hint": {
            "type": "string",
            "nullable": true
          },
          "parentValue": {
            "type": "integer",
            "format": "int32",
            "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"
          },
          "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
      },
      "TvSearchParam": {
        "enum": [
          "q",
          "season",
          "ep",
          "imdbId",
          "tvdbId",
          "rId",
          "tvMazeId",
          "traktId",
          "tmdbId",
          "doubanId",
          "genre",
          "year"
        ],
        "type": "string"
      },
      "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"
          },
          "uiLanguage": {
            "type": "string",
            "nullable": true
          },
          "theme": {
            "type": "string",
            "nullable": true
          }
        },
        "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
      }
    },
    "securitySchemes": {
      "X-Api-Key": {
        "type": "apiKey",
        "description": "Apikey passed as header",
        "name": "X-Api-Key",
        "in": "header"
      },
      "apikey": {
        "type": "apiKey",
        "description": "Apikey passed as header",
        "name": "apikey",
        "in": "query"
      }
    }
  },
  "security": [
    {
      "X-Api-Key": [ ]
    },
    {
      "apikey": [ ]
    }
  ]
}