autobrr Disc Scans API
BDInfo scans of Blu-ray Discs (BDMV folders and .iso files) in torrents
BDInfo scans of Blu-ray Discs (BDMV folders and .iso files) in torrents
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/autobrr:autobrr-disc-scans-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
title: qui Disc Scans 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: Disc Scans
description: BDInfo scans of Blu-ray Discs (BDMV folders and .iso files) in torrents
paths:
/api/instances/{instanceID}/torrents/{hash}/disc-scans:
get:
tags:
- Disc Scans
summary: List Disc scans for a torrent
description: Returns the newest Disc scan per Disc path of the torrent, so the Content tab can render one BDInfo button state per Disc.
parameters:
- $ref: '#/components/parameters/instanceID'
- $ref: '#/components/parameters/hash'
responses:
'200':
description: Newest Disc scan per Disc path
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/DiscScanRun'
'400':
description: Invalid instance ID or hash
operationId: getApiInstancesByInstanceIDTorrentsByHashDiscScans
x-operation-id-source: derived
post:
tags:
- Disc Scans
summary: Start a Disc scan or return the cached report
description: 'Queues a BDInfo scan of one Disc in the torrent: a folder that holds a BDMV folder, or an .iso file. Scans run one at a time.
If the Disc already has a completed report, the cached run is returned unless `force` is true. A queued or running scan on the same Disc is always returned.
Requires filesystem access on the instance.'
parameters:
- $ref: '#/components/parameters/instanceID'
- $ref: '#/components/parameters/hash'
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- discPath
properties:
discPath:
type: string
description: Torrent-relative, slash-delimited path of the Disc. "." is the torrent root.
example: Box Set/Disc 1
force:
type: boolean
default: false
description: Skip the cached report and queue a new scan (Rescan)
responses:
'200':
description: The queued, running, or cached Disc scan
content:
application/json:
schema:
$ref: '#/components/schemas/DiscScanRun'
'400':
description: Invalid request body, or the path is not a Disc in this torrent
'403':
description: Instance does not have filesystem access
'404':
description: Instance, torrent, or Disc not found on disk
operationId: postApiInstancesByInstanceIDTorrentsByHashDiscScans
x-operation-id-source: derived
/api/instances/{instanceID}/disc-scans/{runID}:
get:
tags:
- Disc Scans
summary: Get a Disc scan
parameters:
- $ref: '#/components/parameters/instanceID'
- name: runID
in: path
required: true
schema:
type: integer
format: int64
responses:
'200':
description: Disc scan
content:
application/json:
schema:
$ref: '#/components/schemas/DiscScanRun'
'404':
description: Disc scan not found
operationId: getApiInstancesByInstanceIDDiscScansByRunID
x-operation-id-source: derived
/api/instances/{instanceID}/disc-scans/{runID}/cancel:
post:
tags:
- Disc Scans
summary: Cancel a Disc scan
description: Cancels a pending or scanning Disc scan. A running scan stops through its context and stores no report.
parameters:
- $ref: '#/components/parameters/instanceID'
- name: runID
in: path
required: true
schema:
type: integer
format: int64
responses:
'200':
description: The canceled Disc scan
content:
application/json:
schema:
$ref: '#/components/schemas/DiscScanRun'
'404':
description: Disc scan not found
'409':
description: Disc scan already finished
operationId: postApiInstancesByInstanceIDDiscScansByRunIDCancel
x-operation-id-source: derived
components:
parameters:
instanceID:
name: instanceID
in: path
required: true
schema:
type: integer
minimum: 0
description: qBittorrent instance ID. 0 is the unified scope on the endpoints that support it.
hash:
name: hash
in: path
required: true
schema:
type: string
description: Torrent hash
schemas:
DiscScanRun:
type: object
description: One queued or running BDInfo scan of one Disc, and after completion its cached Disc report.
properties:
id:
type: integer
format: int64
instanceId:
type: integer
torrentHash:
type: string
discPath:
type: string
description: Torrent-relative, slash-delimited path of the Disc
resolvedPath:
type: string
description: On-disk path of the Disc; the cache key together with instanceId
status:
type: string
enum:
- pending
- scanning
- completed
- failed
- canceled
errorMessage:
type: string
processedBytes:
type: integer
format: int64
totalBytes:
type: integer
format: int64
queuePosition:
type: integer
description: 1-based position in the queue while pending; omitted otherwise
report:
type: string
description: Full BDInfo report, set when completed
quickSummary:
type: string
description: BDInfo quick summary block, set when completed
forumsBlock:
type: string
description: BDInfo forum paste block (BBCode), set when completed
createdAt:
type: string
format: date-time
startedAt:
type: string
format: date-time
completedAt:
type: string
format: date-time
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.
'