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.

401

Unauthorized: authentication failed.

403

Permission denied.

500

Internal Lightbits error.

default

An unexpected error response.

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.

400

Invalid argument.

401

Unauthorized: authentication failed.

403

Permission denied.

500

Internal Lightbits error.

default

An unexpected error response.

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
POST /api/v2/volumes
Copy
Responses application/json
200

A successful response.

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.

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.

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.

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
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