mirror of
https://github.com/qdrant/qdrant.git
synced 2026-07-30 14:41:00 -05:00
* [AI] generate openapi schema for stream download of shard snapshot * bump number of APIs * cover API with access test * fix test * fix test
299 lines
9.3 KiB
YAML
299 lines
9.3 KiB
YAML
#@ load("openapi.lib.yml", "response", "response_with_accepted", "reference", "type", "array")
|
|
|
|
paths:
|
|
/collections/{collection_name}/snapshots/upload:
|
|
post:
|
|
tags:
|
|
- Snapshots
|
|
summary: Recover from an uploaded snapshot
|
|
description: Recover local collection data from an uploaded snapshot. This will overwrite any data, stored on this node, for the collection. If collection does not exist - it will be created.
|
|
operationId: recover_from_uploaded_snapshot
|
|
parameters:
|
|
- name: collection_name
|
|
in: path
|
|
description: Name of the collection
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: wait
|
|
in: query
|
|
description: "If true, wait for changes to actually happen. If false - let changes happen in background. Default is true."
|
|
required: false
|
|
schema:
|
|
type: boolean
|
|
- name: priority
|
|
in: query
|
|
description: "Defines source of truth for snapshot recovery"
|
|
required: false
|
|
schema:
|
|
$ref: "#/components/schemas/SnapshotPriority"
|
|
- name: checksum
|
|
in: query
|
|
description: "Optional SHA256 checksum to verify snapshot integrity before recovery."
|
|
required: false
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
description: Snapshot to recover from
|
|
content:
|
|
multipart/form-data:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
snapshot:
|
|
type: string
|
|
format: binary
|
|
responses: #@ response_with_accepted(type("boolean"))
|
|
/collections/{collection_name}/snapshots/recover:
|
|
put:
|
|
tags:
|
|
- Snapshots
|
|
summary: Recover from a snapshot
|
|
description: Recover local collection data from a snapshot. This will overwrite any data, stored on this node, for the collection. If collection does not exist - it will be created.
|
|
operationId: recover_from_snapshot
|
|
parameters:
|
|
- name: collection_name
|
|
in: path
|
|
description: Name of the collection
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: wait
|
|
in: query
|
|
description: "If true, wait for changes to actually happen. If false - let changes happen in background. Default is true."
|
|
required: false
|
|
schema:
|
|
type: boolean
|
|
requestBody:
|
|
description: Snapshot to recover from
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/SnapshotRecover"
|
|
responses: #@ response_with_accepted(type("boolean"))
|
|
|
|
/collections/{collection_name}/snapshots:
|
|
get:
|
|
tags:
|
|
- Snapshots
|
|
summary: List collection snapshots
|
|
description: Get list of snapshots for a collection
|
|
operationId: list_snapshots
|
|
parameters:
|
|
- name: collection_name
|
|
in: path
|
|
description: Name of the collection
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses: #@ response(array(reference("SnapshotDescription")))
|
|
|
|
post:
|
|
tags:
|
|
- Snapshots
|
|
summary: Create collection snapshot
|
|
description: Create new snapshot for a collection
|
|
operationId: create_snapshot
|
|
parameters:
|
|
- name: collection_name
|
|
in: path
|
|
description: Name of the collection for which to create a snapshot
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: wait
|
|
in: query
|
|
description: "If true, wait for changes to actually happen. If false - let changes happen in background. Default is true."
|
|
required: false
|
|
schema:
|
|
type: boolean
|
|
responses: #@ response_with_accepted(reference("SnapshotDescription"))
|
|
|
|
/collections/{collection_name}/snapshots/{snapshot_name}:
|
|
delete:
|
|
tags:
|
|
- Snapshots
|
|
summary: Delete collection snapshot
|
|
description: Delete snapshot for a collection
|
|
operationId: delete_snapshot
|
|
parameters:
|
|
- name: collection_name
|
|
in: path
|
|
description: Name of the collection for which to delete a snapshot
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: snapshot_name
|
|
in: path
|
|
description: Name of the snapshot to delete
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: wait
|
|
in: query
|
|
description: "If true, wait for changes to actually happen. If false - let changes happen in background. Default is true."
|
|
required: false
|
|
schema:
|
|
type: boolean
|
|
responses: #@ response_with_accepted(type("boolean"))
|
|
get:
|
|
tags:
|
|
- Snapshots
|
|
summary: Download collection snapshot
|
|
description: Download specified snapshot from a collection as a file
|
|
operationId: get_snapshot
|
|
parameters:
|
|
- name: collection_name
|
|
in: path
|
|
description: Name of the collection
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: snapshot_name
|
|
in: path
|
|
description: Name of the snapshot to download
|
|
required: true
|
|
schema:
|
|
type: string
|
|
|
|
responses:
|
|
default:
|
|
description: error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ErrorResponse"
|
|
4XX:
|
|
description: error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ErrorResponse"
|
|
'200':
|
|
description: Snapshot file
|
|
content:
|
|
application/octet-stream:
|
|
schema:
|
|
type: string
|
|
format: binary
|
|
|
|
/snapshots:
|
|
get:
|
|
tags:
|
|
- Snapshots
|
|
summary: List of storage snapshots
|
|
description: Get list of snapshots of the whole storage
|
|
operationId: list_full_snapshots
|
|
responses: #@ response(array(reference("SnapshotDescription")))
|
|
|
|
post:
|
|
tags:
|
|
- Snapshots
|
|
summary: Create storage snapshot
|
|
description: Create new snapshot of the whole storage
|
|
operationId: create_full_snapshot
|
|
parameters:
|
|
- name: wait
|
|
in: query
|
|
description: "If true, wait for changes to actually happen. If false - let changes happen in background. Default is true."
|
|
required: false
|
|
schema:
|
|
type: boolean
|
|
responses: #@ response_with_accepted(reference("SnapshotDescription"))
|
|
|
|
/snapshots/{snapshot_name}:
|
|
delete:
|
|
tags:
|
|
- Snapshots
|
|
summary: Delete storage snapshot
|
|
description: Delete snapshot of the whole storage
|
|
operationId: delete_full_snapshot
|
|
parameters:
|
|
- name: snapshot_name
|
|
in: path
|
|
description: Name of the full snapshot to delete
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: wait
|
|
in: query
|
|
description: "If true, wait for changes to actually happen. If false - let changes happen in background. Default is true."
|
|
required: false
|
|
schema:
|
|
type: boolean
|
|
responses: #@ response_with_accepted(type("boolean"))
|
|
get:
|
|
tags:
|
|
- Snapshots
|
|
summary: Download storage snapshot
|
|
description: Download specified snapshot of the whole storage as a file
|
|
operationId: get_full_snapshot
|
|
parameters:
|
|
- name: snapshot_name
|
|
in: path
|
|
description: Name of the snapshot to download
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ErrorResponse"
|
|
4XX:
|
|
description: error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ErrorResponse"
|
|
'200':
|
|
description: Snapshot file
|
|
content:
|
|
application/octet-stream:
|
|
schema:
|
|
type: string
|
|
format: binary
|
|
|
|
/collections/{collection_name}/shards/{shard_id}/snapshot:
|
|
get:
|
|
tags:
|
|
- Snapshots
|
|
summary: Download shard snapshot
|
|
description: Stream the current state of a shard as a snapshot file
|
|
operationId: stream_shard_snapshot
|
|
parameters:
|
|
- name: collection_name
|
|
in: path
|
|
description: Name of the collection
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: shard_id
|
|
in: path
|
|
description: Id of the shard
|
|
required: true
|
|
schema:
|
|
type: integer
|
|
responses:
|
|
default:
|
|
description: error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ErrorResponse"
|
|
4XX:
|
|
description: error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ErrorResponse"
|
|
'200':
|
|
description: Snapshot file
|
|
content:
|
|
application/octet-stream:
|
|
schema:
|
|
type: string
|
|
format: binary
|