Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Incus storage API

The storage API from Incus — 39 operation(s) for storage.

Incus storage API is one of 22 APIs that Incus publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include storage. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, authentication docs, and a GitHub repository.

This API exposes 70 operations across 39 paths, and defines 36 schemas. It is described by OpenAPI 2.0, at version 1.0.

70 operations 39 paths 36 schemas 9 DELETE37 GET1 HEAD4 PATCH14 POST5 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 2.0
API Version
1.0
License
Resource Areas
1

Paths & Operations 70

Across 39 paths, the API surfaces 70 operations — 9 DELETE, 37 GET, 1 HEAD, 4 PATCH, 14 POST, 5 PUT. Each is listed below with its method, path, parameters, and response codes.

storage 70
GET
/1.0/storage-pools
Get the storage pools
storage_pools_get 2 params → 200403500
POST
/1.0/storage-pools
Add a storage pool
storage_pools_post 3 params → 200400403500
DELETE
/1.0/storage-pools/{name}/buckets/{bucketName}
Delete the storage bucket
storage_pool_bucket_delete 4 params → 200400403500
PATCH
/1.0/storage-pools/{name}/buckets/{bucketName}
Partially update the storage bucket.
storage_pool_bucket_patch 5 params → 200400403412500
PUT
/1.0/storage-pools/{name}/buckets/{bucketName}
Update the storage bucket
storage_pool_bucket_put 5 params → 200400403412500
DELETE
/1.0/storage-pools/{name}/buckets/{bucketName}/keys/{keyName}
Delete the storage bucket key
storage_pool_bucket_key_delete 5 params → 200400403500
PUT
/1.0/storage-pools/{name}/buckets/{bucketName}/keys/{keyName}
Update the storage bucket key
storage_pool_bucket_key_put 6 params → 200400403412500
GET
/1.0/storage-pools/{name}/resources
Get storage pool resources information
storage_pool_resources 2 params → 200403500
DELETE
/1.0/storage-pools/{poolName}
Delete the storage pool
storage_pools_delete 2 params → 200400403500
GET
/1.0/storage-pools/{poolName}
Get the storage pool
storage_pool_get 3 params → 200403500
PATCH
/1.0/storage-pools/{poolName}
Partially update the storage pool
storage_pool_patch 4 params → 200400403412500
PUT
/1.0/storage-pools/{poolName}
Update the storage pool
storage_pool_put 4 params → 200400403412500
GET
/1.0/storage-pools/{poolName}/buckets
Get the storage pool buckets
storage_pool_buckets_get 4 params → 200403500
POST
/1.0/storage-pools/{poolName}/buckets
Add a storage pool bucket.
storage_pool_bucket_post 3 params → 200400403500
GET
/1.0/storage-pools/{poolName}/buckets/{bucketName}
Get the storage pool bucket
storage_pool_bucket_get 3 params → 200403500
GET
/1.0/storage-pools/{poolName}/buckets/{bucketName}/backups
Get the storage bucket backups
storage_pool_buckets_backups_get 4 params → 200403500
POST
/1.0/storage-pools/{poolName}/buckets/{bucketName}/backups
Create a storage bucket backup
storage_pool_buckets_backups_post 5 params → 202400403500
DELETE
/1.0/storage-pools/{poolName}/buckets/{bucketName}/backups/{backupName}
Delete a storage bucket backup
storage_pool_buckets_backup_delete 5 params → 202400403500
GET
/1.0/storage-pools/{poolName}/buckets/{bucketName}/backups/{backupName}
Get the storage bucket backup
storage_pool_buckets_backup_get 5 params → 200403500
POST
/1.0/storage-pools/{poolName}/buckets/{bucketName}/backups/{backupName}
Rename a storage bucket backup
storage_pool_buckets_backup_post 6 params → 202400403500
GET
/1.0/storage-pools/{poolName}/buckets/{bucketName}/backups/{backupName}/export
Get the raw backup file
storage_pool_buckets_backup_export_get 5 params → 200403500
GET
/1.0/storage-pools/{poolName}/buckets/{bucketName}/backups?recursion=1
Get the storage bucket backups
storage_pool_buckets_backups_get_recursion1 4 params → 200403500
GET
/1.0/storage-pools/{poolName}/buckets/{bucketName}/keys
Get the storage pool bucket keys
storage_pool_bucket_keys_get 3 params → 200403500
POST
/1.0/storage-pools/{poolName}/buckets/{bucketName}/keys
Add a storage pool bucket key.
storage_pool_bucket_key_post 4 params → 200400403500
GET
/1.0/storage-pools/{poolName}/buckets/{bucketName}/keys/{keyName}
Get the storage pool bucket key
storage_pool_bucket_key_get 4 params → 200403500
GET
/1.0/storage-pools/{poolName}/buckets/{bucketName}/keys?recursion=1
Get the storage pool bucket keys
storage_pool_bucket_keys_get_recursion1 3 params → 200403500
GET
/1.0/storage-pools/{poolName}/buckets/{bucketName}?recursion=1
Get the full storage pool bucket details
storage_pool_bucket_get_recursion1 3 params → 200403500
GET
/1.0/storage-pools/{poolName}/buckets?recursion=1
Get the storage pool buckets
storage_pool_buckets_get_recursion1 4 params → 200403500
GET
/1.0/storage-pools/{poolName}/buckets?recursion=2
Get the storage pool bucket details
storage_pool_buckets_get_recursion2 4 params → 200403500
GET
/1.0/storage-pools/{poolName}/volumes
Get the storage volumes
storage_pool_volumes_get 4 params → 200403500
POST
/1.0/storage-pools/{poolName}/volumes
Add a storage volume
storage_pool_volumes_post 4 params → 200202400403500
GET
/1.0/storage-pools/{poolName}/volumes/{type}
Get the storage volumes
storage_pool_volumes_type_get 4 params → 200403500
POST
/1.0/storage-pools/{poolName}/volumes/{type}
Add a storage volume
storage_pool_volumes_type_post 5 params → 200202400403500
DELETE
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}
Delete the storage volume
storage_pool_volume_type_delete 5 params → 200400403500
GET
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}
Get the storage volume
storage_pool_volume_type_get 5 params → 200403500
PATCH
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}
Partially update the storage volume
storage_pool_volume_type_patch 6 params → 200400403412500
POST
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}
Rename or move/migrate a storage volume
storage_pool_volume_type_post 6 params → 202400403500
PUT
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}
Update the storage volume
storage_pool_volume_type_put 6 params → 200400403412500
GET
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/backups
Get the storage volume backups
storage_pool_volumes_type_backups_get 5 params → 200403500
POST
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/backups
Create a storage volume backup
storage_pool_volumes_type_backups_post 6 params → 202400403500
DELETE
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/backups/{backupName}
Delete a storage volume backup
storage_pool_volumes_type_backup_delete 6 params → 202400403500
GET
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/backups/{backupName}
Get the storage volume backup
storage_pool_volumes_type_backup_get 6 params → 200403500
POST
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/backups/{backupName}
Rename a storage volume backup
storage_pool_volumes_type_backup_post 7 params → 202400403500
GET
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/backups/{backupName}/export
Get the raw backup file
storage_pool_volumes_type_backup_export_get 6 params → 200403500
GET
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/backups?recursion=1
Get the storage volume backups
storage_pool_volumes_type_backups_get_recursion1 5 params → 200403500
GET
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/bitmaps
Get the storage volume dirty bitmaps
storage_pool_volume_type_bitmaps_get 5 params → 200403500
POST
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/bitmaps
Create a storage volume bitmap
storage_pool_volumes_type_bitmaps_post 6 params → 202400403500
DELETE
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/bitmaps/{bitmapName}
Delete a storage volume bitmap
storage_pool_volumes_type_bitmap_delete 6 params → 202400403500
GET
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/bitmaps/{bitmapName}
Get the storage volume dirty bitmap
storage_pool_volume_type_bitmap_get 6 params → 200403500
GET
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/bitmaps?recursion=1
Get the storage volume dirty bitmaps
storage_pool_volume_type_bitmaps_get_recursion1 5 params → 200403500
DELETE
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/files
Delete a file
storage_pool_volume_type_files_delete 6 params → 200400403404500
GET
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/files
Get a file
storage_pool_volume_type_files_get 5 params → 200400403404500
HEAD
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/files
Get metadata for a file
storage_pool_volume_type_files_head 5 params → 200400403404500
POST
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/files
Create or replace a file
storage_pool_volume_type_files_post 11 params → 200400403404500
GET
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/nbd
Get the storage volume NBD connection
storage_pool_volume_type_nbd_get 3 params → 101400403404500
GET
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/sftp
Get the storage volume SFTP connection
storage_pool_volume_type_sftp_get 3 params → 101400403404500
GET
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/snapshots
Get the storage volume snapshots
storage_pool_volumes_type_snapshots_get 5 params → 200403500
POST
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/snapshots
Create a storage volume snapshot
storage_pool_volumes_type_snapshots_post 6 params → 202400403500
DELETE
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/snapshots/{snapshotName}
Delete a storage volume snapshot
storage_pool_volumes_type_snapshot_delete 6 params → 202400403500
GET
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/snapshots/{snapshotName}
Get the storage volume snapshot
storage_pool_volumes_type_snapshot_get 6 params → 200403500
PATCH
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/snapshots/{snapshotName}
Partially update the storage volume snapshot
storage_pool_volumes_type_snapshot_patch 7 params → 200400403412500
POST
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/snapshots/{snapshotName}
Rename a storage volume snapshot
storage_pool_volumes_type_snapshot_post 7 params → 202400403500
PUT
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/snapshots/{snapshotName}
Update the storage volume snapshot
storage_pool_volumes_type_snapshot_put 7 params → 200400403412500
GET
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/snapshots?recursion=1
Get the storage volume snapshots
storage_pool_volumes_type_snapshots_get_recursion1 5 params → 200403500
GET
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}/state
Get the storage volume state
storage_pool_volume_type_state_get 5 params → 200403500
GET
/1.0/storage-pools/{poolName}/volumes/{type}/{volumeName}?recursion=1
Get the full storage volume details
storage_pool_volume_type_get_recursion1 5 params → 200403500
GET
/1.0/storage-pools/{poolName}/volumes/{type}?recursion=1
Get the storage volumes
storage_pool_volumes_type_get_recursion1 4 params → 200403500
GET
/1.0/storage-pools/{poolName}/volumes/{type}?recursion=2
Get the storage volumes with all details
storage_pool_volumes_type_get_recursion2 4 params → 200403500
GET
/1.0/storage-pools/{poolName}/volumes?recursion=1
Get the storage volumes
storage_pool_volumes_get_recursion1 4 params → 200403500
GET
/1.0/storage-pools?recursion=1
Get the storage pools
storage_pools_get_recursion1 2 params → 200403500

Schemas 36

The contract defines 36 schemas that model the data the API accepts and returns. The most detailed are StorageVolumeFull (13 properties), StorageVolumeSource (12 properties), Operation (12 properties), StorageVolume (10 properties). Each schema is shown below with its type and property counts.

StorageBucketsPost
object
StorageBucketsPost represents the fields of a new storage pool bucket
3 properties
StatusCode
integer
StorageVolumeStateUsage
object
StorageVolumeStateUsage represents the disk usage of a volume
2 properties
StorageBucket
object
StorageBucket represents the fields of a storage pool bucket
6 properties
StorageVolumeSnapshotPut
object
StorageVolumeSnapshotPut represents the modifiable fields of a storage volume
2 properties
StorageBucketBackupsPost
object
StorageBucketBackupsPost represents the fields available for a new storage bucket backup
3 properties
BackupTarget
object
6 properties
StorageVolumePostTarget
object
StorageVolumePostTarget represents the migration target host and operation
3 properties
StorageVolumeBitmapsPost
object
StorageVolumeBitmapsPost represents the fields available for a new volume bitmap
4 properties
StorageVolumeSource
object
StorageVolumeSource represents the creation source for a new storage volume
12 properties
ResourcesStoragePoolSpace
object
ResourcesStoragePoolSpace represents the space available to a given storage pool
2 properties
StorageBucketKeysPost
object
StorageBucketKeysPost represents the fields of a new storage pool bucket key
5 properties
StorageBucketKey
object
StorageBucketKey represents the fields of a storage pool bucket key
5 properties
StorageBucketKeyPut
object
StorageBucketKeyPut represents the modifiable fields of a storage pool bucket key
4 properties
StorageVolumesPost
object
StorageVolumesPost represents the fields of a new storage pool volume
7 properties
StorageVolumePost
object
StorageVolumePost represents the fields required to rename a storage pool volume
7 properties
StorageVolumeBackup
object
StorageVolumeBackup represents a volume backup
5 properties
StorageBucketBackup
object
StorageBucketBackup represents the fields available for a new storage bucket backup
3 properties
ResourcesStoragePoolInodes
object
ResourcesStoragePoolInodes represents the inodes available to a given storage pool
2 properties
StorageVolumeState
object
StorageVolumeState represents the live state of the volume
1 property
StorageVolumeSnapshotPost
object
StorageVolumeSnapshotPost represents the fields required to rename/move a storage volume snapshot
3 properties
StorageVolumePut
object
StorageVolumePut represents the modifiable fields of a storage volume
3 properties
StorageVolumeBackupsPost
object
StorageVolumeBackupsPost represents the fields available for a new volume backup
6 properties
ResourcesStoragePool
object
ResourcesStoragePool represents the resources available to a given storage pool
2 properties
StoragePool
object
7 properties
StorageBucketBackupPost
object
StorageBucketBackupPost represents the fields available for the renaming of a bucket backup
1 property
StorageVolumeBitmap
object
StorageVolumeBitmap represents a volume bitmap
7 properties
StorageVolume
object
10 properties
StorageBucketFull
object
8 properties
StorageVolumeSnapshotsPost
object
StorageVolumeSnapshotsPost represents the fields available for a new storage volume snapshot
2 properties
StoragePoolPut
object
2 properties
Operation
object
Operation represents a background operation
12 properties
StorageVolumeSnapshot
object
StorageVolumeSnapshot represents a storage volume snapshot
6 properties
StoragePoolsPost
object
StoragePoolsPost represents the fields of a new storage pool
4 properties
StorageVolumeFull
object
13 properties
StorageBucketPut
object
StorageBucketPut represents the modifiable fields of a storage pool bucket
2 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

incus-storage-api-openapi.yml Raw ↑

Other APIs Incus publishes across the network.

Incus certificates API
Incus cluster API
Incus cluster-groups API
Incus images API
Incus instances API
Incus Metadata API
Incus metrics API
Incus network-acls API
Incus network-address-sets API
Incus network-allocations API
Incus network-forwards API
Incus network-integrations API