Incus · Capability

Incus external REST API — storage

Incus external REST API — storage. 70 operations. Lead operation: Get the storage pools. Self-contained Naftiko capability covering one Incus business surface.

Run with Naftiko Incusstorage

What You Can Do

GET
Storagepoolsget — Get the storage pools
/v1/1-0/storage-pools
POST
Storagepoolspost — Add a storage pool
/v1/1-0/storage-pools
DELETE
Storagepoolbucketdelete — Delete the storage bucket
/v1/1-0/storage-pools/{name}/buckets/{bucketname}
PATCH
Storagepoolbucketpatch — Partially update the storage bucket.
/v1/1-0/storage-pools/{name}/buckets/{bucketname}
PUT
Storagepoolbucketput — Update the storage bucket
/v1/1-0/storage-pools/{name}/buckets/{bucketname}
DELETE
Storagepoolbucketkeydelete — Delete the storage bucket key
/v1/1-0/storage-pools/{name}/buckets/{bucketname}/keys/{keyname}
PUT
Storagepoolbucketkeyput — Update the storage bucket key
/v1/1-0/storage-pools/{name}/buckets/{bucketname}/keys/{keyname}
GET
Storagepoolresources — Get storage pool resources information
/v1/1-0/storage-pools/{name}/resources
DELETE
Storagepoolsdelete — Delete the storage pool
/v1/1-0/storage-pools/{poolname}
GET
Storagepoolget — Get the storage pool
/v1/1-0/storage-pools/{poolname}
PATCH
Storagepoolpatch — Partially update the storage pool
/v1/1-0/storage-pools/{poolname}
PUT
Storagepoolput — Update the storage pool
/v1/1-0/storage-pools/{poolname}
GET
Storagepoolbucketsget — Get the storage pool buckets
/v1/1-0/storage-pools/{poolname}/buckets
POST
Storagepoolbucketpost — Add a storage pool bucket.
/v1/1-0/storage-pools/{poolname}/buckets
GET
Storagepoolbucketget — Get the storage pool bucket
/v1/1-0/storage-pools/{poolname}/buckets/{bucketname}
GET
Storagepoolbucketsbackupsget — Get the storage bucket backups
/v1/1-0/storage-pools/{poolname}/buckets/{bucketname}/backups
POST
Storagepoolbucketsbackupspost — Create a storage bucket backup
/v1/1-0/storage-pools/{poolname}/buckets/{bucketname}/backups
DELETE
Storagepoolbucketsbackupdelete — Delete a storage bucket backup
/v1/1-0/storage-pools/{poolname}/buckets/{bucketname}/backups/{backupname}
GET
Storagepoolbucketsbackupget — Get the storage bucket backup
/v1/1-0/storage-pools/{poolname}/buckets/{bucketname}/backups/{backupname}
POST
Storagepoolbucketsbackuppost — Rename a storage bucket backup
/v1/1-0/storage-pools/{poolname}/buckets/{bucketname}/backups/{backupname}
GET
Storagepoolbucketsbackupexportget — Get the raw backup file
/v1/1-0/storage-pools/{poolname}/buckets/{bucketname}/backups/{backupname}/export
GET
Storagepoolbucketsbackupsgetrecursion1 — Get the storage bucket backups
/v1/1-0/storage-pools/{poolname}/buckets/{bucketname}/backups-recursion-1
GET
Storagepoolbucketkeysget — Get the storage pool bucket keys
/v1/1-0/storage-pools/{poolname}/buckets/{bucketname}/keys
POST
Storagepoolbucketkeypost — Add a storage pool bucket key.
/v1/1-0/storage-pools/{poolname}/buckets/{bucketname}/keys
GET
Storagepoolbucketkeyget — Get the storage pool bucket key
/v1/1-0/storage-pools/{poolname}/buckets/{bucketname}/keys/{keyname}
GET
Storagepoolbucketkeysgetrecursion1 — Get the storage pool bucket keys
/v1/1-0/storage-pools/{poolname}/buckets/{bucketname}/keys-recursion-1
GET
Storagepoolbucketgetrecursion1 — Get the full storage pool bucket details
/v1/1-0/storage-pools/{poolname}/buckets/bucketname-recursion-1
GET
Storagepoolbucketsgetrecursion1 — Get the storage pool buckets
/v1/1-0/storage-pools/{poolname}/buckets-recursion-1
GET
Storagepoolbucketsgetrecursion2 — Get the storage pool bucket details
/v1/1-0/storage-pools/{poolname}/buckets-recursion-2
GET
Storagepoolvolumesget — Get the storage volumes
/v1/1-0/storage-pools/{poolname}/volumes
POST
Storagepoolvolumespost — Add a storage volume
/v1/1-0/storage-pools/{poolname}/volumes
GET
Storagepoolvolumestypeget — Get the storage volumes
/v1/1-0/storage-pools/{poolname}/volumes/{type}
POST
Storagepoolvolumestypepost — Add a storage volume
/v1/1-0/storage-pools/{poolname}/volumes/{type}
DELETE
Storagepoolvolumetypedelete — Delete the storage volume
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}
GET
Storagepoolvolumetypeget — Get the storage volume
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}
PATCH
Storagepoolvolumetypepatch — Partially update the storage volume
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}
POST
Storagepoolvolumetypepost — Rename or move/migrate a storage volume
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}
PUT
Storagepoolvolumetypeput — Update the storage volume
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}
GET
Storagepoolvolumestypebackupsget — Get the storage volume backups
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/backups
POST
Storagepoolvolumestypebackupspost — Create a storage volume backup
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/backups
DELETE
Storagepoolvolumestypebackupdelete — Delete a storage volume backup
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/backups/{backupname}
GET
Storagepoolvolumestypebackupget — Get the storage volume backup
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/backups/{backupname}
POST
Storagepoolvolumestypebackuppost — Rename a storage volume backup
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/backups/{backupname}
GET
Storagepoolvolumestypebackupexportget — Get the raw backup file
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/backups/{backupname}/export
GET
Storagepoolvolumestypebackupsgetrecursion1 — Get the storage volume backups
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/backups-recursion-1
GET
Storagepoolvolumetypebitmapsget — Get the storage volume dirty bitmaps
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/bitmaps
POST
Storagepoolvolumestypebitmapspost — Create a storage volume bitmap
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/bitmaps
DELETE
Storagepoolvolumestypebitmapdelete — Delete a storage volume bitmap
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/bitmaps/{bitmapname}
GET
Storagepoolvolumetypebitmapget — Get the storage volume dirty bitmap
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/bitmaps/{bitmapname}
GET
Storagepoolvolumetypebitmapsgetrecursion1 — Get the storage volume dirty bitmaps
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/bitmaps-recursion-1
DELETE
Storagepoolvolumetypefilesdelete — Delete a file
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/files
GET
Storagepoolvolumetypefilesget — Get a file
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/files
HEAD
Storagepoolvolumetypefileshead — Get metadata for a file
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/files
POST
Storagepoolvolumetypefilespost — Create or replace a file
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/files
GET
Storagepoolvolumetypenbdget — Get the storage volume NBD connection
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/nbd
GET
Storagepoolvolumetypesftpget — Get the storage volume SFTP connection
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/sftp
GET
Storagepoolvolumestypesnapshotsget — Get the storage volume snapshots
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/snapshots
POST
Storagepoolvolumestypesnapshotspost — Create a storage volume snapshot
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/snapshots
DELETE
Storagepoolvolumestypesnapshotdelete — Delete a storage volume snapshot
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/snapshots/{snapshotname}
GET
Storagepoolvolumestypesnapshotget — Get the storage volume snapshot
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/snapshots/{snapshotname}
PATCH
Storagepoolvolumestypesnapshotpatch — Partially update the storage volume snapshot
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/snapshots/{snapshotname}
POST
Storagepoolvolumestypesnapshotpost — Rename a storage volume snapshot
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/snapshots/{snapshotname}
PUT
Storagepoolvolumestypesnapshotput — Update the storage volume snapshot
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/snapshots/{snapshotname}
GET
Storagepoolvolumestypesnapshotsgetrecursion1 — Get the storage volume snapshots
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/snapshots-recursion-1
GET
Storagepoolvolumetypestateget — Get the storage volume state
/v1/1-0/storage-pools/{poolname}/volumes/{type}/{volumename}/state
GET
Storagepoolvolumetypegetrecursion1 — Get the full storage volume details
/v1/1-0/storage-pools/{poolname}/volumes/{type}/volumename-recursion-1
GET
Storagepoolvolumestypegetrecursion1 — Get the storage volumes
/v1/1-0/storage-pools/{poolname}/volumes/type-recursion-1
GET
Storagepoolvolumestypegetrecursion2 — Get the storage volumes with all details
/v1/1-0/storage-pools/{poolname}/volumes/type-recursion-2
GET
Storagepoolvolumesgetrecursion1 — Get the storage volumes
/v1/1-0/storage-pools/{poolname}/volumes-recursion-1
GET
Storagepoolsgetrecursion1 — Get the storage pools
/v1/1-0/storage-pools-recursion-1

MCP Tools

get-storage-pools

Get the storage pools

read-only idempotent
add-storage-pool

Add a storage pool

delete-storage-bucket

Delete the storage bucket

idempotent
partially-update-storage-bucket

Partially update the storage bucket.

idempotent
update-storage-bucket

Update the storage bucket

idempotent
delete-storage-bucket-key

Delete the storage bucket key

idempotent
update-storage-bucket-key

Update the storage bucket key

idempotent
get-storage-pool-resources-information

Get storage pool resources information

read-only idempotent
delete-storage-pool

Delete the storage pool

idempotent
get-storage-pool

Get the storage pool

read-only idempotent
partially-update-storage-pool

Partially update the storage pool

idempotent
update-storage-pool

Update the storage pool

idempotent
get-storage-pool-buckets

Get the storage pool buckets

read-only idempotent
add-storage-pool-bucket

Add a storage pool bucket.

get-storage-pool-bucket

Get the storage pool bucket

read-only idempotent
get-storage-bucket-backups

Get the storage bucket backups

read-only idempotent
create-storage-bucket-backup

Create a storage bucket backup

delete-storage-bucket-backup

Delete a storage bucket backup

idempotent
get-storage-bucket-backup

Get the storage bucket backup

read-only idempotent
rename-storage-bucket-backup

Rename a storage bucket backup

get-raw-backup-file

Get the raw backup file

read-only idempotent
get-storage-bucket-backups-2

Get the storage bucket backups

read-only idempotent
get-storage-pool-bucket-keys

Get the storage pool bucket keys

read-only idempotent
add-storage-pool-bucket-key

Add a storage pool bucket key.

get-storage-pool-bucket-key

Get the storage pool bucket key

read-only idempotent
get-storage-pool-bucket-keys-2

Get the storage pool bucket keys

read-only idempotent
get-full-storage-pool-bucket

Get the full storage pool bucket details

read-only idempotent
get-storage-pool-buckets-2

Get the storage pool buckets

read-only idempotent
get-storage-pool-bucket-details

Get the storage pool bucket details

read-only idempotent
get-storage-volumes

Get the storage volumes

read-only idempotent
add-storage-volume

Add a storage volume

get-storage-volumes-2

Get the storage volumes

read-only idempotent
add-storage-volume-2

Add a storage volume

delete-storage-volume

Delete the storage volume

idempotent
get-storage-volume

Get the storage volume

read-only idempotent
partially-update-storage-volume

Partially update the storage volume

idempotent
rename-move-migrate-storage-volume

Rename or move/migrate a storage volume

update-storage-volume

Update the storage volume

idempotent
get-storage-volume-backups

Get the storage volume backups

read-only idempotent
create-storage-volume-backup

Create a storage volume backup

delete-storage-volume-backup

Delete a storage volume backup

idempotent
get-storage-volume-backup

Get the storage volume backup

read-only idempotent
rename-storage-volume-backup

Rename a storage volume backup

get-raw-backup-file-2

Get the raw backup file

read-only idempotent
get-storage-volume-backups-2

Get the storage volume backups

read-only idempotent
get-storage-volume-dirty-bitmaps

Get the storage volume dirty bitmaps

read-only idempotent
create-storage-volume-bitmap

Create a storage volume bitmap

delete-storage-volume-bitmap

Delete a storage volume bitmap

idempotent
get-storage-volume-dirty-bitmap

Get the storage volume dirty bitmap

read-only idempotent
get-storage-volume-dirty-bitmaps-2

Get the storage volume dirty bitmaps

read-only idempotent
delete-file

Delete a file

idempotent
get-file

Get a file

read-only idempotent
get-metadata-file

Get metadata for a file

create-replace-file

Create or replace a file

get-storage-volume-nbd-connection

Get the storage volume NBD connection

read-only idempotent
get-storage-volume-sftp-connection

Get the storage volume SFTP connection

read-only idempotent
get-storage-volume-snapshots

Get the storage volume snapshots

read-only idempotent
create-storage-volume-snapshot

Create a storage volume snapshot

delete-storage-volume-snapshot

Delete a storage volume snapshot

idempotent
get-storage-volume-snapshot

Get the storage volume snapshot

read-only idempotent
partially-update-storage-volume-snapshot

Partially update the storage volume snapshot

idempotent
rename-storage-volume-snapshot

Rename a storage volume snapshot

update-storage-volume-snapshot

Update the storage volume snapshot

idempotent
get-storage-volume-snapshots-2

Get the storage volume snapshots

read-only idempotent
get-storage-volume-state

Get the storage volume state

read-only idempotent
get-full-storage-volume-details

Get the full storage volume details

read-only idempotent
get-storage-volumes-3

Get the storage volumes

read-only idempotent
get-storage-volumes-all-details

Get the storage volumes with all details

read-only idempotent
get-storage-volumes-4

Get the storage volumes

read-only idempotent
get-storage-pools-2

Get the storage pools

read-only idempotent

Capability Spec

incus-storage.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Incus external REST API — storage
  description: 'Incus external REST API — storage. 70 operations. Lead operation: Get the storage pools. Self-contained Naftiko
    capability covering one Incus business surface.'
  tags:
  - Incus
  - storage
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    INCUS_API_KEY: INCUS_API_KEY
capability:
  consumes:
  - type: http
    namespace: incus-storage
    baseUri: ''
    description: Incus external REST API — storage business capability. Self-contained, no shared references.
    resources:
    - name: 1.0-storage-pools
      path: /1.0/storage-pools
      operations:
      - name: storagepoolsget
        method: GET
        description: Get the storage pools
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: project
          in: query
          type: string
          description: Project name
        - name: filter
          in: query
          type: string
          description: Collection filter
      - name: storagepoolspost
        method: POST
        description: Add a storage pool
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
        - name: storage
          in: body
          type: string
          description: Storage pool
          required: true
    - name: 1.0-storage-pools-name-buckets-bucketName
      path: /1.0/storage-pools/{name}/buckets/{bucketName}
      operations:
      - name: storagepoolbucketdelete
        method: DELETE
        description: Delete the storage bucket
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Resource name
          required: true
        - name: bucketName
          in: path
          type: string
          description: Storage bucket name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
      - name: storagepoolbucketpatch
        method: PATCH
        description: Partially update the storage bucket.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Resource name
          required: true
        - name: bucketName
          in: path
          type: string
          description: Storage bucket name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
        - name: storage bucket
          in: body
          type: string
          description: Storage bucket configuration
          required: true
      - name: storagepoolbucketput
        method: PUT
        description: Update the storage bucket
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Resource name
          required: true
        - name: bucketName
          in: path
          type: string
          description: Storage bucket name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
        - name: storage bucket
          in: body
          type: string
          description: Storage bucket configuration
          required: true
    - name: 1.0-storage-pools-name-buckets-bucketName-keys-keyName
      path: /1.0/storage-pools/{name}/buckets/{bucketName}/keys/{keyName}
      operations:
      - name: storagepoolbucketkeydelete
        method: DELETE
        description: Delete the storage bucket key
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Resource name
          required: true
        - name: bucketName
          in: path
          type: string
          description: Storage bucket name
          required: true
        - name: keyName
          in: path
          type: string
          description: Storage bucket key name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
      - name: storagepoolbucketkeyput
        method: PUT
        description: Update the storage bucket key
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Resource name
          required: true
        - name: bucketName
          in: path
          type: string
          description: Storage bucket name
          required: true
        - name: keyName
          in: path
          type: string
          description: Storage bucket key name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
        - name: storage bucket
          in: body
          type: string
          description: Storage bucket key configuration
          required: true
    - name: 1.0-storage-pools-name-resources
      path: /1.0/storage-pools/{name}/resources
      operations:
      - name: storagepoolresources
        method: GET
        description: Get storage pool resources information
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Resource name
          required: true
        - name: target
          in: query
          type: string
          description: Cluster member name
    - name: 1.0-storage-pools-poolName
      path: /1.0/storage-pools/{poolName}
      operations:
      - name: storagepoolsdelete
        method: DELETE
        description: Delete the storage pool
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
      - name: storagepoolget
        method: GET
        description: Get the storage pool
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
      - name: storagepoolpatch
        method: PATCH
        description: Partially update the storage pool
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
        - name: storage pool
          in: body
          type: string
          description: Storage pool configuration
          required: true
      - name: storagepoolput
        method: PUT
        description: Update the storage pool
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
        - name: storage pool
          in: body
          type: string
          description: Storage pool configuration
          required: true
    - name: 1.0-storage-pools-poolName-buckets
      path: /1.0/storage-pools/{poolName}/buckets
      operations:
      - name: storagepoolbucketsget
        method: GET
        description: Get the storage pool buckets
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: all-projects
          in: query
          type: boolean
          description: Retrieve storage pool buckets from all projects
        - name: filter
          in: query
          type: string
          description: Collection filter
      - name: storagepoolbucketpost
        method: POST
        description: Add a storage pool bucket.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: bucket
          in: body
          type: string
          description: Bucket
          required: true
    - name: 1.0-storage-pools-poolName-buckets-bucketName
      path: /1.0/storage-pools/{poolName}/buckets/{bucketName}
      operations:
      - name: storagepoolbucketget
        method: GET
        description: Get the storage pool bucket
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: bucketName
          in: path
          type: string
          description: Storage bucket name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
    - name: 1.0-storage-pools-poolName-buckets-bucketName-backups
      path: /1.0/storage-pools/{poolName}/buckets/{bucketName}/backups
      operations:
      - name: storagepoolbucketsbackupsget
        method: GET
        description: Get the storage bucket backups
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: bucketName
          in: path
          type: string
          description: Storage bucket name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
      - name: storagepoolbucketsbackupspost
        method: POST
        description: Create a storage bucket backup
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: bucketName
          in: path
          type: string
          description: Storage bucket name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
        - name: bucket
          in: body
          type: string
          description: Storage bucket backup
          required: true
    - name: 1.0-storage-pools-poolName-buckets-bucketName-backups-backupName
      path: /1.0/storage-pools/{poolName}/buckets/{bucketName}/backups/{backupName}
      operations:
      - name: storagepoolbucketsbackupdelete
        method: DELETE
        description: Delete a storage bucket backup
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: bucketName
          in: path
          type: string
          description: Storage bucket name
          required: true
        - name: backupName
          in: path
          type: string
          description: Backup name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
      - name: storagepoolbucketsbackupget
        method: GET
        description: Get the storage bucket backup
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: bucketName
          in: path
          type: string
          description: Storage bucket name
          required: true
        - name: backupName
          in: path
          type: string
          description: Backup name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
      - name: storagepoolbucketsbackuppost
        method: POST
        description: Rename a storage bucket backup
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: bucketName
          in: path
          type: string
          description: Storage bucket name
          required: true
        - name: backupName
          in: path
          type: string
          description: Backup name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
        - name: bucket rename
          in: body
          type: string
          description: Storage bucket backup
          required: true
    - name: 1.0-storage-pools-poolName-buckets-bucketName-backups-backupName-export
      path: /1.0/storage-pools/{poolName}/buckets/{bucketName}/backups/{backupName}/export
      operations:
      - name: storagepoolbucketsbackupexportget
        method: GET
        description: Get the raw backup file
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: bucketName
          in: path
          type: string
          description: Storage bucket name
          required: true
        - name: backupName
          in: path
          type: string
          description: Backup name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
    - name: 1.0-storage-pools-poolName-buckets-bucketName-backups?recursion=1
      path: /1.0/storage-pools/{poolName}/buckets/{bucketName}/backups?recursion=1
      operations:
      - name: storagepoolbucketsbackupsgetrecursion1
        method: GET
        description: Get the storage bucket backups
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: bucketName
          in: path
          type: string
          description: Storage bucket name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
    - name: 1.0-storage-pools-poolName-buckets-bucketName-keys
      path: /1.0/storage-pools/{poolName}/buckets/{bucketName}/keys
      operations:
      - name: storagepoolbucketkeysget
        method: GET
        description: Get the storage pool bucket keys
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: bucketName
          in: path
          type: string
          description: Storage bucket name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
      - name: storagepoolbucketkeypost
        method: POST
        description: Add a storage pool bucket key.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: bucketName
          in: path
          type: string
          description: Storage bucket name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: bucket
          in: body
          type: string
          description: Bucket
          required: true
    - name: 1.0-storage-pools-poolName-buckets-bucketName-keys-keyName
      path: /1.0/storage-pools/{poolName}/buckets/{bucketName}/keys/{keyName}
      operations:
      - name: storagepoolbucketkeyget
        method: GET
        description: Get the storage pool bucket key
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: bucketName
          in: path
          type: string
          description: Storage bucket name
          required: true
        - name: keyName
          in: path
          type: string
          description: Storage bucket key name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
    - name: 1.0-storage-pools-poolName-buckets-bucketName-keys?recursion=1
      path: /1.0/storage-pools/{poolName}/buckets/{bucketName}/keys?recursion=1
      operations:
      - name: storagepoolbucketkeysgetrecursion1
        method: GET
        description: Get the storage pool bucket keys
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: bucketName
          in: path
          type: string
          description: Storage bucket name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
    - name: 1.0-storage-pools-poolName-buckets-bucketName}?recursion=1
      path: /1.0/storage-pools/{poolName}/buckets/{bucketName}?recursion=1
      operations:
      - name: storagepoolbucketgetrecursion1
        method: GET
        description: Get the full storage pool bucket details
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: bucketName
          in: path
          type: string
          description: Storage bucket name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
    - name: 1.0-storage-pools-poolName-buckets?recursion=1
      path: /1.0/storage-pools/{poolName}/buckets?recursion=1
      operations:
      - name: storagepoolbucketsgetrecursion1
        method: GET
        description: Get the storage pool buckets
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: all-projects
          in: query
          type: boolean
          description: Retrieve storage pool buckets from all projects
        - name: filter
          in: query
          type: string
          description: Collection filter
    - name: 1.0-storage-pools-poolName-buckets?recursion=2
      path: /1.0/storage-pools/{poolName}/buckets?recursion=2
      operations:
      - name: storagepoolbucketsgetrecursion2
        method: GET
        description: Get the storage pool bucket details
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: all-projects
          in: query
          type: boolean
          description: Retrieve storage pool buckets from all projects
        - name: filter
          in: query
          type: string
          description: Collection filter
    - name: 1.0-storage-pools-poolName-volumes
      path: /1.0/storage-pools/{poolName}/volumes
      operations:
      - name: storagepoolvolumesget
        method: GET
        description: Get the storage volumes
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
        - name: filter
          in: query
          type: string
          description: Collection filter
      - name: storagepoolvolumespost
        method: POST
        description: Add a storage volume
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
        - name: volume
          in: body
          type: string
          description: Storage volume
          required: true
    - name: 1.0-storage-pools-poolName-volumes-type
      path: /1.0/storage-pools/{poolName}/volumes/{type}
      operations:
      - name: storagepoolvolumestypeget
        method: GET
        description: Get the storage volumes
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: type
          in: path
          type: string
          description: Storage volume type
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
      - name: storagepoolvolumestypepost
        method: POST
        description: Add a storage volume
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: type
          in: path
          type: string
          description: Storage volume type
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
        - name: volume
          in: body
          type: string
          description: Storage volume
          required: true
    - name: 1.0-storage-pools-poolName-volumes-type-volumeName
      path: /1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}
      operations:
      - name: storagepoolvolumetypedelete
        method: DELETE
        description: Delete the storage volume
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: type
          in: path
          type: string
          description: Storage volume type
          required: true
        - name: volumeName
          in: path
          type: string
          description: Storage volume name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
      - name: storagepoolvolumetypeget
        method: GET
        description: Get the storage volume
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: type
          in: path
          type: string
          description: Storage volume type
          required: true
        - name: volumeName
          in: path
          type: string
          description: Storage volume name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
      - name: storagepoolvolumetypepatch
        method: PATCH
        description: Partially update the storage volume
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: type
          in: path
          type: string
          description: Storage volume type
          required: true
        - name: volumeName
          in: path
          type: string
          description: Storage volume name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
        - name: storage volume
          in: body
          type: string
          description: Storage volume configuration
          required: true
      - name: storagepoolvolumetypepost
        method: POST
        description: Rename or move/migrate a storage volume
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: type
          in: path
          type: string
          description: Storage volume type
          required: true
        - name: volumeName
          in: path
          type: string
          description: Storage volume name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
        - name: migration
          in: body
          type: string
          description: Migration request
      - name: storagepoolvolumetypeput
        method: PUT
        description: Update the storage volume
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: poolName
          in: path
          type: string
          description: Storage pool name
          required: true
        - name: type
          in: path
          type: string
          description: Storage volume type
          required: true
        - name: volumeName
          in: path
          type: string
          description: Storage volume name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member name
        - name: storage volume
          in: body
          type: string
          description: Storage volume configuration
          required: true
    - name: 1.0-storage-pools-poolName-volumes-type-volumeName-backups
      path: /1.0/storage-pools/{poolName}/volumes/{type

# --- truncated at 32 KB (134 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/incus/refs/heads/main/capabilities/incus-storage.yaml