apiKey api_key

Fields
KeyIn
api_keyHeader
basic BasicAuth

Get cluster-federation service credentials

Gets the cluster-federation service credentials. This API is currently unavailable. It is reserved for future support of cluster federation functionality.

Auth
GET /api/v2/cf-service-credentials
Copy
Responses application/json
200

A successful response.

Get Service Credentials Responseobject

The response to get the service credentials for the CF service.

pubKeyIdstring

The key ID to be used while importing the public key into the Lightbits cluster.

pubKeystring

The base64-encoded public key to be imported into the Lightbits cluster.

After Base64 decoding, the contents should be saved as a file (e.g. into ) and passed as an argument to the following command to the corresponding Lightbits cluster, with and substituted as appropriate. lbcli create credential --project-name=system --id= --type=rsa256pubkey

401

Authentication required / Authentication failed

default

An unexpected error response.

Response
Copy

Login to the cluster federation.

Login to the cluster federation service. This API is currently unavailable. It is reserved for future support of cluster federation functionality.

Auth
POST /api/v2/cflogin
Copy
Responses application/json
200

A successful response.

Login Responseobject

The response to the login to the CF service.

tokenTypestring

The type of token.

expiresInstring

The time in seconds when the token will expire.

idTokenstring

The ID of the token.

401

Authentication required / Authentication failed

500

Internal error in the cluster-federation service.

default

An unexpected error response.

Response
Copy

List clusters.

List clusters attached to the cluster-federation. This API is currently unavailable. It is reserved for future support of cluster federation functionality.

Auth
GET /api/v2/clusters
Copy
Responses application/json
200

A successful response.

List Clusters Responseobject

The response to list the Lightbits clusters connected to the CF service.

clustersarray[object]
idstring

The UUID of the cluster. Must be a valid UUID.

namestring

The name of the cluster.

versionstring

The minimum version of the Lightbits release on the cluster.

subsystemNqnstring

The NQN of the subsystem of the cluster.

apiEndpointsarray[string]

The list of API endpoints of the cluster.

discoveryEndpointsarray[string]

The list of discovery endpoints of the cluster.

clusterConnectionStatusobject

The connection status of the cluster.

accessConnectionStatusstring

The connection status of the cluster.

Enum: Connected,Disconnected,Unauthorized

Default: Connected

provisionedToEffectiveStorageRatiostring
401

Authentication required / Authentication failed

default

An unexpected error response.

Response
Copy

Attach a new cluster.

Attaches a new cluster to the system. This API is currently unavailable. It is reserved for future support of cluster federation functionality.

Auth
Request Body application/json
Attach Cluster Requestobject

Request to attach a cluster to the CF service.

apiEndpointstring

Management API endpoint of the cluster to connect to. Any one of the API endpoints can be used must be of the form <host>:<port>, e.g.: 10.0.0.1:443, foo.bar.com:443.

POST /api/v2/clusters
Copy
Responses application/json
200

A successful response.

Attach Cluster Responseobject

Response to attach a Lightbits cluster to the CF service. ListWorkflows API and the returned workflow ID can be used to track the status of this operation.

workflowIdstring
400

Invalid argument.

401

Authentication required / Authentication failed

500

Internal error in the cluster-federation service.

default

An unexpected error response.

Response
Copy

Detach an existing cluster.

Detaches an existing cluster from the system. This API is currently unavailable. It is reserved for future support of cluster federation functionality.

Auth
Path Params
cidstring

UUID of the cluster to detach from the CF service (must be a valid UUID).

DELETE /api/v2/clusters/{cid}
Copy
Responses application/json
200

A successful response.

objectobject

Response to detach a Lightbits cluster from the CF service.

400

Invalid argument.

401

Authentication required / Authentication failed

500

Internal error in the cluster-federation service.

default

An unexpected error response.

Response
Copy

List workflows

List the running and completed workflows. This API is currently unavailable. It is reserved for future support of cluster federation functionality.

Auth
Query String
pageSizeinteger
nextPageTokenstring
GET /api/v2/workflows
Copy
Responses application/json
200

A successful response.

List Workflows Responseobject

The response to list the workflows. Note that the initial CF service will only return the last 100 workflows.

workflowsarray[object]
idstring

The UUID of the workflow.

createdAtdate-time

The time the workflow was created.

startedAtdate-time

The time the workflow started.

endedAtdate-time

The time the workflow completed.

typestring

The type of workflow (e.g. attach cluster).

statestring

The state of the workflow.

msgstring

A detailed message providing additional information on the workflow state. This is mainly used in case of failure.

progressobject

Progress information of the workflow.

percentint32

The percentage of the workflow that has been completed.

stagestring

The current stage of the workflow.

attachClusterRequestobject

Request to attach a cluster to the CF service.

apiEndpointstring

Management API endpoint of the cluster to connect to. Any one of the API endpoints can be used must be of the form <host>:<port>, e.g.: 10.0.0.1:443, foo.bar.com:443.

nextPageTokenstring
400

Invalid argument.

401

Authentication required / Authentication failed

500

Internal error in the cluster-federation service.

default

An unexpected error response.

Response
Copy

Get a specific workflow

Gets a specific workflow by its ID. This API is currently unavailable. It is reserved for future support of cluster federation functionality.

Auth
Path Params
workflowIdstring

Workflow ID to get

GET /api/v2/workflows/{workflowId}
Copy
Responses application/json
200

A successful response.

Get Workflow Responseobject

The response to get a workflow by its ID.

workflowobject

The workflow information.

idstring

The UUID of the workflow.

createdAtdate-time

The time the workflow was created.

startedAtdate-time

The time the workflow started.

endedAtdate-time

The time the workflow completed.

typestring

The type of workflow (e.g. attach cluster).

statestring

The state of the workflow.

msgstring

A detailed message providing additional information on the workflow state. This is mainly used in case of failure.

progressobject

Progress information of the workflow.

percentint32

The percentage of the workflow that has been completed.

stagestring

The current stage of the workflow.

attachClusterRequestobject

Request to attach a cluster to the CF service.

apiEndpointstring

Management API endpoint of the cluster to connect to. Any one of the API endpoints can be used must be of the form <host>:<port>, e.g.: 10.0.0.1:443, foo.bar.com:443.

400

Invalid argument.

401

Authentication required / Authentication failed

500

Internal error in the cluster-federation service.

default

An unexpected error response.

Response
Copy

Cluster Operations

Retrieve cluster information.

Cluster information - e.g., cluster UUID and SubsystemNQN - is exposed via this API.

Auth
GET /api/v2/cluster
Copy
Responses application/json
200

A successful response.

objectobject
UUIDstring

UUID of cluster

subsystemNQNstring

Subsystem NQN that should be used by the hosts to connect to volumes on this cluster.

currentMaxReplicasint64

A maximal number of replicas that a new volume can have, given the current state of the nodes. This value depends on the healthiness of the nodes.

supportedMaxReplicasint64

Maximum number of replicas per volume supported by cluster.

A maximal number of replicas that a volume can have, given cluster installation parameters (Number of Servers, Failure Domains...).

statisticsobject

Cluster statistics (storage capacity, used storage, compression ration...)

installedPhysicalStoragestring

All installed SSDs capacities over all servers in a cluster, given in bytes.

managedPhysicalStoragestring

Sum of all managed and healthy SSDs capacities, given in bytes.

effectivePhysicalStoragestring

Effective Physical storage excluding overhead of OVP and Parity, given in bytes.

logicalStoragestring

Sum of capacities of all allocated volumes, given in bytes.

logicalUsedStoragestring

Logical storage space used by all volumes (n of LBAs x 4096), given in bytes.

physicalUsedStoragestring

Physical storage space occupied by all volumes (data only), given in bytes.

physicalUsedStorageIncludingParitystring

Physical storage space occupied by all data including Parity overhead when EC enabled (physical ndisks/(ndisks -1)), given in bytes.

freePhysicalStoragestring

Free storage before entering to read-only mode , given in bytes.

estimatedFreeLogicalStoragestring

Estimated free storage before entering to read-only mode assuming current compression ratio, given in bytes.

estimatedLogicalStoragestring

Estimate of total available logical storage based on current compression ratio (effective * compression)

compressionRationumber

compression ratio logicalUsedStorage/physicalUsedStorage

ETagstring

Identifier for a specific version of a resource.

healthobject

Cluster health: OK- cluster healthy, Warning - Inactive node(s) and/or degraded volumes in cluster, Error - ReadOnly/Unavailable volumes in cluster.

statestring

Enum: None,OK,Warning,Error

Default: None

numDegradedVolumesint64
numReadOnlyVolumesint64
numNotAvailableVolumesint64
numInactiveNodesint64
numHealthyVolumesint64
MinVersionInClusterstring

Lowest version of Lightbits running on one of the servers in the cluster.

MinAllowedVersionstring

For Lightbits internal use.

MaxAllowedVersionstring

Lightbits version this cluster can be upgraded to.

apiEndpointsarray[string]

A list of REST/gRPC endpoints - : pairs that the API listen on. Example entries:

  • 192.168.16.16:443
  • 192.168.16.17:443
discoveryEndpointsarray[string]

A list of TCP endpoints - : pairs that the Discovery Service listen on. Example entries:

  • 192.168.16.16:8009
  • 192.168.16.17:8009
clusterNamestring

Cluster name.

lastUpgradeobject

Parameters of the last (or active) cluster upgrade process.

Statusstring

The status of the upgrade operation

Enum: Unknown,None,UpgradeFailed,Upgrading

Default: Unknown

StartTimedate-time

The time of the upgrade task start

EndTimedate-time

The time of closing the upgrade task (completed or failed). Reset when the next upgrade starts.

TargetVersionstring

The version that should be installed by the end of the process.

ErrorMessagestring

Free formatted text, describes the error if such an error occurred.

ProgressStepint64

Current upgrade step. You can use ProgressTotal to calculate percentage as ProgressStep/ProgressTotal.

ProgressTotalint64

Total possible upgrade progress steps.

inBandAuthModestring

Defines whether In-Band Authentication is enabled for the cluster(Enabled/Disabled). When enabled, authentication is required for hosts to connect to the Lightbits cluster.

Enum: UnKnown,Enabled,Disabled

Default: UnKnown

encryptionStatusobject

Information about the state of Cluster Level Encryption.

encryptionStatestring

Indicates the encryption state of the cluster encryption status

Enum: Disabled,Enabling,Enabled,Unknown

Default: Disabled

kekGenerationstring

The current generation of the KEK

kekUpdateDatedate-time

The date of the last KEK update

previousKekGenerationsarray[string]

The previous generations of the KEK

rotationStatestring

Indicates the rotation state of the cluster encryption encryption status

Enum: NoRotation,DistributingKEK,EncryptyingDEKs

Default: NoRotation

federatedAuthenticationStatusobject

Information about the state of Federated Authentication

federatedAuthenticationEnabledboolean
idpHealthInfosarray[object]
serverNamestring
idpHealthStatusstring

Enum: IdpHealthStatus_Healthy,IdpHealthStatus_UnHealthy,IdpHealthStatus_Unknown

Default: IdpHealthStatus_Healthy

timestampdate-time
healthErrorMessagestring
401

Unauthorized: authentication failed.

403

Permission denied.

500

Internal Lightbits error.

default

An unexpected error response.

Response
Copy

List volumes.

List can be filtered by failure domain. List can be partially returned by given offset UUID and size of the list. If offset is not provided, list is returned from the start. If offset UUID is provided, list starts from the next volume after the provided offset UUID. If limit is provided, length of the returned list is bounded by the limit. If limit is not provided, list is returned until the end. projectName is mandatory unless you are the admin. List can also be filtered by a specific source snapshot.

Auth
Query String
UUIDstring

UUID. List only volume with matching UUID.

namestring

Name. List only volumes with specified name.

failureDomainstring

failureDomain. List volumes according to failureDomains volumes replicas are placed on.

offsetUUIDstring

offsetUUID. When provided, returned list starts with next to offsetUUID volume.

limitstring

limit. Limits the number of volumes in the response (default/maximum value is 1000 volumes).

projectNamestring

projectName. Optional. Return only volumes of the given project.

snapshotUUIDstring

source snapshot UUID. Return only volumes created from this source snapshot.

showAllboolean

showAll. Optional. Show also volumes in Deleting state (the default is false).

GET /api/v2/volumes
Copy
Responses application/json
200

A successful response.

objectobject
volumesarray[object]
statestring

Indicates the current state of the volume in its creation/update/delete lifetime. It will reflect the state of execution of a user invoked API (CreateVolume, UpdateVolume..) or an internal operation (Volume migration).

Enum: Unknown,Creating,Available,Deleting,Deleted,Failed,Updating,Rollback,Migrating

Default: Unknown

protectionStatestring

Indicates volume's data availability derived from the health of each of the replica's it resides on.

Enum: Unknown,FullyProtected,Degraded,ReadOnly,NotAvailable

Default: Unknown

replicaCountint64

The number of replicas a volume can have. Valid values are 1, 2, and 3.

nodeListarray[string]

List of node UUIDs this volume is placed over.

UUIDstring
nsidint64

Volume's Namespace ID

aclobject

Access control list of strings (host NQN). Valid values: list of strings/ALLOW_ANY/ALLOW_NONE

valuesarray[string]
compressionstring

valid values: true/enable/enabled or false/disable/disabled

sizestring
namestring

A volume's name is unique at the project level. Name length must be between 1 and 253 characters and can contain any of: alphanumeric characters (a-z, A-Z, 0-9) ,hyphen (-), underscore (_) and period (.).

rebuildProgressstring

Progress of the volume's replica rebuild operation in percent.

statisticsobject

Volume statistics. Contains information about the physical used capacity, used memory, compression ratio, and more.

logicalUsedStoragestring

Logical storage space used by volume, given in bytes.

physicalUsedStoragestring

Physical storage space used by volume excluding parity, given in bytes.

compressionRationumber

compression ratio userWritten/physicalCapacity.

totalCompressionRationumber

compression ratio sum(userWritten) / sum(physical capacity).

physicalCapacitystring

The physical capacity that exists in this volume layer.

physicalOwnedCapacitystring

The capacity that would be freed when the volume is deleted.

physicalOwnedMemorystring
physicalMemorystring
userWrittenstring
unrecoverableDataIntegrityErrorsint64

Number of data integrity errors that could not be recovered by the system.

recoverableDataIntegrityErrorsint64

Number of data integrity errors that were recovered by the system.

IPAclobject

Access control list of IP addresses. Valid values: list of valid IP addresses/ALLOW_ANY/ALLOW_NONE (optional, default: ALLOW_ANY).

valuesarray[string]
ETagstring

Identifier for a specific version of a resource.

connectedHostsarray[string]
sectorSizeint64

Volume sector size. Valid values: 4K (default), 512B.

projectNamestring

Project name.

sourceSnapshotUUIDstring

For a cloned volume, specify the source snapshot of this clone.

sourceSnapshotNamestring

For a cloned volume, specify the source snapshot of this clone.

placementRestrictionsarray[object]
operatorstring

Volume affinity operator. Specifies that placement logic will match nodes that have labels in labelValueKeyPairs list.

Enum: Unknown,In

Default: Unknown

labelValueKeyPairsarray[object]

Volume affinity KeyPairs. Key currently must be one of: fd (failure domain). Value should specify the failure domains we want to match. PrimaryFd (primary failure domain). Value should specify the primary failure domain we want to match. ClusterId (cluster ID - cluster federation only). Value should specify the cluster ID we want to match.

keystring

Enum: Unknown,FD,PrimaryFD,ClusterID

Default: Unknown

valuestring
qosPolicyUUIDstring

Optional volume's QoS policy UUID (if not specified the QoS policy defined in volume's project is used).

qosPolicyNamestring

Optional volume's QoS policy name (if not specified the QoS policy defined in volume's project is used)

primaryNodeUUIDstring

UUID of the primary node data is Read/Written for this volume.

creationTimedate-time

Time of volume creation (UTC).

labelsarray[object]

Optionally add labels to a volume.

keystring
valuestring
clusterIdstring

The ID of the cluster where the volume resides.

400

Invalid argument.

401

Unauthorized: authentication failed.

403

Permission denied.

500

Internal Lightbits error.

default

An unexpected error response.

Response
Copy

Create volume.

A volume has a user-defined name, capacity, and a string-based Access Control List (ACL). User can also select to enable compression and define IP-ACL (IP address-based control list).

Auth
Request Body application/json
objectobject
namestring

A volume's name is unique at the project level. Name length must be between 1 and 253 characters and can contain any of: alphanumeric characters (a-z, A-Z, 0-9) ,hyphen (-), underscore (_) and period (.).

pattern: ^[a-zA-Z0-9-_\.]{1,253}$

sizestring

Volume size.

aclobject

Access control list of strings (host NQN). Valid values: list of strings/ALLOW_ANY/ALLOW_NONE.

valuesarray[string]
compressionstring

Volume compression. Valid values: true/enable/enabled/false/disable/disabled (default value is disable compression).

replicaCountint64

The number of replicas a volume can have. Valid values are 1, 2, and 3.

IPAclobject

Access control list of IP addresses. Valid values: list of valid IP addresses/ALLOW_ANY/ALLOW_NONE (optional, default: ALLOW_ANY).

valuesarray[string]
minReplicasint64

not used.

sectorSizestring

Volume sector size. Valid values: 4K (default), 512B.

Enum: sectorSize_Default,sectorSize_512B,sectorSize_4K

Default: sectorSize_Default

projectNamestring

Name of the project the volume belongs to.

sourceSnapshotUUIDstring

Optionally specify a source snapshot to create a clone from (specify either sourceSnapshotUUID or sourceSnapshotName).

sourceSnapshotNamestring

Optionally specify a source snapshot to create a clone from (specify either sourceSnapshotUUID or sourceSnapshotName).

placementRestrictionsarray[object]

Specify volume affinity labels for placement restrictions This may only be specified for volumes of single replication (replicaCount=1), and where Dynamic Rebalance is disabled (feature flags FailInPlace and ProactiveRebalance, lbcli get feature-flag are false).

operatorstring

Volume affinity operator. Specifies that placement logic will match nodes that have labels in labelValueKeyPairs list.

Enum: Unknown,In

Default: Unknown

labelValueKeyPairsarray[object]

Volume affinity KeyPairs. Key currently must be one of: fd (failure domain). Value should specify the failure domains we want to match. PrimaryFd (primary failure domain). Value should specify the primary failure domain we want to match. ClusterId (cluster ID - cluster federation only). Value should specify the cluster ID we want to match.

keystring

Enum: Unknown,FD,PrimaryFD,ClusterID

Default: Unknown

valuestring
qosPolicyUUIDstring
qosPolicyNamestring
labelsarray[object]

User-defined labels are optional for a volume. Labels are key-value pairs. A volume can have up to 16 labels. label-key and label-value length must be between 1 and 253 characters and can contain any of: alphanumeric characters (a-z, A-Z, 0-9), hyphen (-), underscore (_), and period (.). When creating a clone, if labels are passed, the clone will be created with them. Otherwise, the labels are copied from the snapshot used for the clone.

keystring
valuestring
POST /api/v2/volumes
Copy
Responses application/json
200

A successful response.

objectobject
statestring

Indicates the current state of the volume in its creation/update/delete lifetime. It will reflect the state of execution of a user invoked API (CreateVolume, UpdateVolume..) or an internal operation (Volume migration).

Enum: Unknown,Creating,Available,Deleting,Deleted,Failed,Updating,Rollback,Migrating

Default: Unknown

protectionStatestring

Indicates volume's data availability derived from the health of each of the replica's it resides on.

Enum: Unknown,FullyProtected,Degraded,ReadOnly,NotAvailable

Default: Unknown

replicaCountint64

The number of replicas a volume can have. Valid values are 1, 2, and 3.

nodeListarray[string]

List of node UUIDs this volume is placed over.

UUIDstring
nsidint64

Volume's Namespace ID

aclobject

Access control list of strings (host NQN). Valid values: list of strings/ALLOW_ANY/ALLOW_NONE

valuesarray[string]
compressionstring

valid values: true/enable/enabled or false/disable/disabled

sizestring
namestring

A volume's name is unique at the project level. Name length must be between 1 and 253 characters and can contain any of: alphanumeric characters (a-z, A-Z, 0-9) ,hyphen (-), underscore (_) and period (.).

rebuildProgressstring

Progress of the volume's replica rebuild operation in percent.

statisticsobject

Volume statistics. Contains information about the physical used capacity, used memory, compression ratio, and more.

logicalUsedStoragestring

Logical storage space used by volume, given in bytes.

physicalUsedStoragestring

Physical storage space used by volume excluding parity, given in bytes.

compressionRationumber

compression ratio userWritten/physicalCapacity.

totalCompressionRationumber

compression ratio sum(userWritten) / sum(physical capacity).

physicalCapacitystring

The physical capacity that exists in this volume layer.

physicalOwnedCapacitystring

The capacity that would be freed when the volume is deleted.

physicalOwnedMemorystring
physicalMemorystring
userWrittenstring
unrecoverableDataIntegrityErrorsint64

Number of data integrity errors that could not be recovered by the system.

recoverableDataIntegrityErrorsint64

Number of data integrity errors that were recovered by the system.

IPAclobject

Access control list of IP addresses. Valid values: list of valid IP addresses/ALLOW_ANY/ALLOW_NONE (optional, default: ALLOW_ANY).

valuesarray[string]
ETagstring

Identifier for a specific version of a resource.

connectedHostsarray[string]
sectorSizeint64

Volume sector size. Valid values: 4K (default), 512B.

projectNamestring

Project name.

sourceSnapshotUUIDstring

For a cloned volume, specify the source snapshot of this clone.

sourceSnapshotNamestring

For a cloned volume, specify the source snapshot of this clone.

placementRestrictionsarray[object]
operatorstring

Volume affinity operator. Specifies that placement logic will match nodes that have labels in labelValueKeyPairs list.

Enum: Unknown,In

Default: Unknown

labelValueKeyPairsarray[object]

Volume affinity KeyPairs. Key currently must be one of: fd (failure domain). Value should specify the failure domains we want to match. PrimaryFd (primary failure domain). Value should specify the primary failure domain we want to match. ClusterId (cluster ID - cluster federation only). Value should specify the cluster ID we want to match.

keystring

Enum: Unknown,FD,PrimaryFD,ClusterID

Default: Unknown

valuestring
qosPolicyUUIDstring

Optional volume's QoS policy UUID (if not specified the QoS policy defined in volume's project is used).

qosPolicyNamestring

Optional volume's QoS policy name (if not specified the QoS policy defined in volume's project is used)

primaryNodeUUIDstring

UUID of the primary node data is Read/Written for this volume.

creationTimedate-time

Time of volume creation (UTC).

labelsarray[object]

Optionally add labels to a volume.

keystring
valuestring
clusterIdstring

The ID of the cluster where the volume resides.

400

An invalid argument was provided, due to one of the following reasons: a mandatory argument is missing, name contains illegal characters, size is not a positive integer, replica count is outside of a valid range, ACL or IP-ACL are invalid.

401

Unauthorized: authentication failed.

403

Permission denied.

409

A volume with the provided name already exists.

500

Internal Lightbits error.

default

An unexpected error response.

Response
Copy

Get volume information.

Get volume information by provided UUID

Auth
Path Params
UUIDstring

UUID

Optional. The volume's UUID. Either UUID or Name must be provided to identify the volume to get.

Query String
namestring

Name. Optional. The volume's name. Either UUID or Name must be provided to identify the volume to get.

projectNamestring

projectName. Name of project volume belongs to.

GET /api/v2/volumes/{UUID}
Copy
Responses application/json
200

A successful response.

objectobject
statestring

Indicates the current state of the volume in its creation/update/delete lifetime. It will reflect the state of execution of a user invoked API (CreateVolume, UpdateVolume..) or an internal operation (Volume migration).

Enum: Unknown,Creating,Available,Deleting,Deleted,Failed,Updating,Rollback,Migrating

Default: Unknown

protectionStatestring

Indicates volume's data availability derived from the health of each of the replica's it resides on.

Enum: Unknown,FullyProtected,Degraded,ReadOnly,NotAvailable

Default: Unknown

replicaCountint64

The number of replicas a volume can have. Valid values are 1, 2, and 3.

nodeListarray[string]

List of node UUIDs this volume is placed over.

UUIDstring
nsidint64

Volume's Namespace ID

aclobject

Access control list of strings (host NQN). Valid values: list of strings/ALLOW_ANY/ALLOW_NONE

valuesarray[string]
compressionstring

valid values: true/enable/enabled or false/disable/disabled

sizestring
namestring

A volume's name is unique at the project level. Name length must be between 1 and 253 characters and can contain any of: alphanumeric characters (a-z, A-Z, 0-9) ,hyphen (-), underscore (_) and period (.).

rebuildProgressstring

Progress of the volume's replica rebuild operation in percent.

statisticsobject

Volume statistics. Contains information about the physical used capacity, used memory, compression ratio, and more.

logicalUsedStoragestring

Logical storage space used by volume, given in bytes.

physicalUsedStoragestring

Physical storage space used by volume excluding parity, given in bytes.

compressionRationumber

compression ratio userWritten/physicalCapacity.

totalCompressionRationumber

compression ratio sum(userWritten) / sum(physical capacity).

physicalCapacitystring

The physical capacity that exists in this volume layer.

physicalOwnedCapacitystring

The capacity that would be freed when the volume is deleted.

physicalOwnedMemorystring
physicalMemorystring
userWrittenstring
unrecoverableDataIntegrityErrorsint64

Number of data integrity errors that could not be recovered by the system.

recoverableDataIntegrityErrorsint64

Number of data integrity errors that were recovered by the system.

IPAclobject

Access control list of IP addresses. Valid values: list of valid IP addresses/ALLOW_ANY/ALLOW_NONE (optional, default: ALLOW_ANY).

valuesarray[string]
ETagstring

Identifier for a specific version of a resource.

connectedHostsarray[string]
sectorSizeint64

Volume sector size. Valid values: 4K (default), 512B.

projectNamestring

Project name.

sourceSnapshotUUIDstring

For a cloned volume, specify the source snapshot of this clone.

sourceSnapshotNamestring

For a cloned volume, specify the source snapshot of this clone.

placementRestrictionsarray[object]
operatorstring

Volume affinity operator. Specifies that placement logic will match nodes that have labels in labelValueKeyPairs list.

Enum: Unknown,In

Default: Unknown

labelValueKeyPairsarray[object]

Volume affinity KeyPairs. Key currently must be one of: fd (failure domain). Value should specify the failure domains we want to match. PrimaryFd (primary failure domain). Value should specify the primary failure domain we want to match. ClusterId (cluster ID - cluster federation only). Value should specify the cluster ID we want to match.

keystring

Enum: Unknown,FD,PrimaryFD,ClusterID

Default: Unknown

valuestring
qosPolicyUUIDstring

Optional volume's QoS policy UUID (if not specified the QoS policy defined in volume's project is used).

qosPolicyNamestring

Optional volume's QoS policy name (if not specified the QoS policy defined in volume's project is used)

primaryNodeUUIDstring

UUID of the primary node data is Read/Written for this volume.

creationTimedate-time

Time of volume creation (UTC).

labelsarray[object]

Optionally add labels to a volume.

keystring
valuestring
clusterIdstring

The ID of the cluster where the volume resides.

400

Invalid argument.

401

Unauthorized: authentication failed.

403

Permission denied.

404

Provided volume UUID is not found.

500

Internal Lightbits error.

default

An unexpected error response.

Response
Copy

Delete volume.

Deletes a volume according to the provided UUID or Name. Deletion of a volume is a long operation. The status of deletion can be queried by a GET operation on the volume. As long as the operation runs, the volume state is Deleting. Once the operation has completed, GET volume returns a NotFound error response.

Auth
Path Params
UUIDstring

UUID

The volume's UUID for the delete volume request (optional; either UUID or Name must be provided to identify the volume to delete).

Query String
namestring

name. The volume's name for the delete volume request (optional; either UUID or Name must be provided to identify the volume to delete).

projectNamestring

projectName. The project name of the volume to delete.

DELETE /api/v2/volumes/{UUID}
Copy
Responses application/json
200

A successful response.

objectobject
400

Provided invalid UUID, Name, or volume state does not allow deletion (Deleting/Failed).

401

Unauthorized: authentication failed.

403

Permission denied.

404

Volume with provided UUID or Name is not found.

409

There is a user operation in progress on the volume

412

Etag mismatch.

500

Internal Lightbits error.

503

Volume is in a temporary state that does not currently allow deletion (Creating/Updating).

default

An unexpected error response.

Response
Copy

Update volume.

Update volume enables the change of the following attributes: size compression ACL list IP-ACL list QoS labels.

Auth
Path Params
UUIDstring

UUID

Optional identifier of the volume to update (command must use either name or UUID fields to identify volume).

Request Body application/json
objectobject
UUIDstring

Optional identifier of the volume to update (command must use either name or UUID fields to identify volume).

aclobject

Access control list of strings (host NQN). Valid values: list of strings/ALLOW_ANY/ALLOW_NONE

valuesarray[string]
IPAclobject

Access control list of IP addresses. Valid values: list of valid IP addresses/ALLOW_ANY/ALLOW_NONE

valuesarray[string]
sizestring
compressionstring

valid values: true/enable/enabled or false/disable/disabled

projectNamestring

Name of the project the volume belongs to.

qosPolicyUUIDstring
qosPolicyNamestring
Forceboolean

To intentionally shrink volume size, provide updated volume size and set force to true.

namestring

Optional identifier of the volume to update (command must use either name or UUID fields to identify volume).

labelsarray[object]

User-defined labels are optional for a volume. Labels are key-value pairs. A volume can have up to 16 labels. label-key and label-value length must be between 1 and 253 characters and can contain any of: alphanumeric characters (a-z, A-Z, 0-9) ,hyphen (-), underscore (_) and period (.). If labels are passed during volume update, the existing volume's labels are replaced with the new ones. Otherwise, the labels are untouched.

keystring
valuestring
newNamestring

Volume new name. A volume's name is unique on the project level. Name length must be between 1 and 253 characters and can contain any of: alphanumeric characters (a-z, A-Z, 0-9) ,hyphen (-), underscore (_) and period (.).

PUT /api/v2/volumes/{UUID}
Copy
Responses application/json
200

A successful response.

objectobject
400

Invalid argument or a volume is in a state that cannot be updated (Deleting/Failed).

401

Unauthorized: authentication failed.

403

Permission denied.

404

Returned when the volume with given UUID is not found.

409

There is a user operation in progress on the volume.

412

Etag mismatch.

500

Internal Lightbits error.

501

Unimplemented capability (updating capacity).

503

Volume is in temporary state and cannot be updated now (Creating/Updating).

default

An unexpected error response.

Response
Copy