autobrr Licenses API

The Licenses API from autobrr — 6 operation(s) for licenses.

Operations 6

POST /api/license/activate Activate license #
POST /api/license/validate Validate license #
GET /api/license/licensed Check premium access #
GET /api/license/licenses List licenses #
DELETE /api/license/{licenseKey} Delete license #
POST /api/license/refresh Refresh licenses #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/autobrr:autobrr-licenses-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

autobrr-licenses-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: qui Licenses API
  description: 'qui API for managing multiple qBittorrent instances.

    If allowedHosts is configured, a missing, invalid, or unlisted received Host

    returns HTTP 400 before authentication or routing. X-Forwarded-Host is ignored.

    Request ports do not affect matching. Only direct loopback GET and HEAD

    requests to /health, /healthz/readiness, and /healthz/liveness bypass the list.


    For automation create and update requests, set `conditions.category.enabled` to `true`

    and `conditions.category.category` to an empty string to remove the torrent category.

    Set `conditions.category.enabled` to `false` to disable the category action.'
  version: 1.0.0
  license:
    name: GPL-2.0-or-later
    url: https://opensource.org/licenses/GPL-2.0
servers:
- url: http://localhost:7476
  description: Local development server
- url: /
  description: Current server
security:
- ApiKeyAuth: []
- SessionAuth: []
tags:
- name: Licenses
paths:
  /api/license/activate:
    post:
      tags:
      - Licenses
      summary: Activate license
      description: Activate a license key and store it for the current user
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - licenseKey
              properties:
                licenseKey:
                  type: string
      responses:
        '200':
          description: License activated successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  valid:
                    type: boolean
                  productName:
                    type: string
                  expiresAt:
                    type: string
                    format: date-time
                  message:
                    type: string
                  error:
                    type: string
                    nullable: true
        '400':
          description: Invalid request payload
        '403':
          description: License activation failed
      operationId: postApiLicenseActivate
      x-operation-id-source: derived
  /api/license/validate:
    post:
      tags:
      - Licenses
      summary: Validate license
      description: Validate a license key and ensure it remains active
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - licenseKey
              properties:
                licenseKey:
                  type: string
      responses:
        '200':
          description: License validated successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  valid:
                    type: boolean
                  productName:
                    type: string
                  expiresAt:
                    type: string
                    format: date-time
                  message:
                    type: string
                  error:
                    type: string
                    nullable: true
        '400':
          description: Invalid request payload
        '403':
          description: License validation failed
        '404':
          description: License not found
      operationId: postApiLicenseValidate
      x-operation-id-source: derived
  /api/license/licensed:
    get:
      tags:
      - Licenses
      summary: Check premium access
      description: Check if any active licenses grant premium access
      responses:
        '200':
          description: Premium access status
          content:
            application/json:
              schema:
                type: object
                properties:
                  hasPremiumAccess:
                    type: boolean
      operationId: getApiLicenseLicensed
      x-operation-id-source: derived
  /api/license/licenses:
    get:
      tags:
      - Licenses
      summary: List licenses
      description: List all stored licenses
      responses:
        '200':
          description: Licenses retrieved
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    licenseKey:
                      type: string
                    productName:
                      type: string
                    status:
                      type: string
                    createdAt:
                      type: string
                      format: date-time
      operationId: getApiLicenseLicenses
      x-operation-id-source: derived
  /api/license/{licenseKey}:
    delete:
      tags:
      - Licenses
      summary: Delete license
      description: Remove a stored license
      parameters:
      - name: licenseKey
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: License deleted successfully
        '400':
          description: Invalid license key
      operationId: deleteApiLicenseByLicenseKey
      x-operation-id-source: derived
  /api/license/refresh:
    post:
      tags:
      - Licenses
      summary: Refresh licenses
      description: Refresh all stored licenses from the licensing service
      responses:
        '200':
          description: Licenses refreshed successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
        '500':
          description: Failed to refresh licenses
      operationId: postApiLicenseRefresh
      x-operation-id-source: derived
components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key
      description: API key for authentication
    ApiKeyQuery:
      type: apiKey
      in: query
      name: apikey
      description: API key via query parameter for external webhook integrations
    SessionAuth:
      type: apiKey
      in: cookie
      name: qui_user_session
      description: 'Browser session cookie set by the qui web UI. POST, PUT, PATCH, and DELETE

        requests authenticated by this cookie must also send an `X-Requested-With`

        header. Other clients should use an API key.

        '