REST endpoints: Applications and volumes
REST
These endpoints:endpoints mirror the CLI commands described in Applications, Volumes. Each endpoint runs the CLI command named under its heading, so the behavior, defaults, and restrictions are the same; this page lists how to call it over REST.
Conventions that apply to every endpoint (request format, the async and outputType parameters, and the response envelope) are in Requests and responses. In the tables below, Required is Yes when the parameter must always be supplied, No when it is optional, and Depends when it is required only in some combinations (for example, either an application and volume, or a consistency group ID); the CLI chapter for the same command explains the combinations.
POST /applications/create
Create an application instance.
CLI command: applications create
Body fields (JSON)
Application
string
Yes
The name of the application.
Description
string
No
Application description.
Force
boolean
No
Skip the confirmation prompt.
Template
string
No
Create the application from a predefined template.
DELETE /applications/delete
Delete an application instance.
CLI command: applications delete
Query parameters
application
string
Yes
The name of the application instance to delete.
force
boolean
No
Skip the confirmation prompt.
PUT /applications/edit
Edit an application instance.
CLI command: applications edit
Query parameters
application
string
Yes
The name of the application instance to edit.
Body fields (JSON)
Application
string
Yes
The name of the application instance to edit.
Description
string
No
New description for the application.
GET /applications/list
List application instances.
CLI command: applications list
Query parameters
application
string
No
Filter by application name.
desc
boolean
No
Show application description.
cg
boolean
No
Show consistency groups.
vols
boolean
No
Show volumes.
Response: a list of ApplicationElement objects in Result, each with: Application (string), Template (string), Description (string), Volumes (array of VolumeElement), ConsistencyGroups (array of ConsistencyGroupElement), Vms (array of VmElement), InitializeForTesting (boolean), Force (boolean).
POST /applications/volumes/create
Create a volume.
CLI command: applications volumes create
Body fields (JSON)
Application
string
Yes
The application to create the volume in.
Volume
string
Yes
Volume name.
CapacityInBytes
integer
No
The volume's capacity. Specified in bytes.
Pool
string
Yes
The drive pool to create the volume on.
N
integer
Yes
The data fragments of the volume.
K
integer
Yes
The redundancy fragments of the volume.
MetadataPool
string
No
The drive pool to create the volume metadata on.
MetadataN
integer
No
The data fragments of the metadata.
MetadataK
integer
No
The redundancy fragments of the metadata.
GroupedVolume
string
No
The new volume will be created in the same consistency group as this volume.
Cgid
integer
No
Create this volume in this consistency group.
EncryptionKey
string
No
Encrypt the volume using the supplied key.
SaveEncryptedRecoveryKey
boolean
No
Save an asymmetrically-encrypted recovery key.
SectorSize
string
No
The volume's sector size: 512b or 4K.
StripedPools
array of string
No
Create a striped volume by adding additional pools.
StripedMetadataPools
array of string
No
Add additional metadata pools for the striped volume.
Log2StrideSectors
integer
No
Stride setting for the striped volume.
SnapshotCapacityInBytes
integer
No
Snapshot capacity threshold. Specified in bytes.
DisableSpaceReclamation
boolean
No
Disable Space Reclamation (UNMAP) on this volume.
Force
boolean
No
Force operation.
DELETE /applications/volumes/delete
Delete volumes.
CLI command: applications volumes delete
Query parameters
application
string
Yes
The name of the application.
volume
string
Yes
The volume to delete.
force
boolean
No
Skip the confirmation prompt.
PUT /applications/volumes/edit
Edit a volume's settings.
CLI command: applications volumes edit
Query parameters
application
string
Yes
The application the volume belongs to.
volume
string
Yes
The volume to edit.
Body fields (JSON)
Volume
string
Yes
The volume to edit.
CapacityInBytes
integer
No
The volume's new capacity. Specified in bytes.
SnapshotCapacityInBytes
integer
No
Snapshot capacity threshold. Specified in bytes.
ScsiThinProvisioningThresholdInPercentage
number
No
The capacity usage threshold at which the SAN volume emits a THIN PROVISIONING THRESHOLD UAC. Specified as a percentage.
OwnerNode
string
No
Change the owner node of the volume.
Force
boolean
No
Skip the confirmation prompt.
GET /applications/volumes/list
List volumes.
CLI command: applications volumes list
Query parameters
application
string
No
Filter by application name.
volume
string
No
Filter by volume name.
details
boolean
No
Show volume details.
consistencyGroups
boolean
No
Show consistency groups.
snapshots
boolean
No
Show volume snapshots.
blockConnectivity
boolean
No
Show block connectivity.
fileConnectivity
boolean
No
Show file connectivity.
capacity
boolean
No
Show capacity statistics.
performance
boolean
No
Show performance statistics.
Response: a list of ApplicationElement objects in Result.Applications, each with: Application (string), Template (string), Description (string), Volumes (array of VolumeElement), ConsistencyGroups (array of ConsistencyGroupElement), Vms (array of VmElement), InitializeForTesting (boolean), Force (boolean).
DELETE /applications/volumes/recycle_bin/delete
Permanently delete a volume.
CLI command: applications volumes recycle_bin delete
Query parameters
application
string
Yes
The name of the application.
volume
string
Yes
The volume to permanently delete.
force
boolean
No
Skip the confirmation prompt.
GET /applications/volumes/recycle_bin/list
List deleted volumes in the recycle bin.
CLI command: applications volumes recycle_bin list
Query parameters
application
string
No
Filter by application name.
volume
string
No
Filter by volume name.
details
boolean
No
Show volume details.
consistencyGroups
boolean
No
Show consistency groups.
snapshots
boolean
No
Show volume snapshots.
capacity
boolean
No
Show capacity statistics.
Response: a list of ApplicationElement objects in Result.Applications, each with: Application (string), Template (string), Description (string), Volumes (array of VolumeElement), ConsistencyGroups (array of ConsistencyGroupElement), Vms (array of VmElement), InitializeForTesting (boolean), Force (boolean).
PUT /applications/volumes/recycle_bin/restore
Restore a volume from the recycle bin.
CLI command: applications volumes recycle_bin restore
Body fields (JSON)
Application
string
Yes
The name of the application.
Volume
string
Yes
The volume to restore.
PUT /applications/volumes/recycle_settings/edit
Edit recycle bin settings.
CLI command: applications volumes recycle_settings edit
Body fields (JSON)
Enable
boolean
Depends
Enable the recycle bin. In REST one field covers a pair of CLI flags: true applies --enable, false applies --disable, and omitting the field applies neither.
TimeLimitInHours
integer
Yes
Number of hours a volume remains in the recycle bin before being permanently deleted.
GET /applications/volumes/recycle_settings/list
View recycle bin settings.
CLI command: applications volumes recycle_settings list
This endpoint takes no parameters.
Response: an object of type RecycleBinElement in Result, with: Id (integer), Description (string), TimeLimitInHours (integer).
POST /applications/volumes/vclone
Create a thin-clone of a volume/consistency group.
CLI command: applications volumes vclone
Body fields (JSON)
Application
string
Yes
The name of the application.
Volume
string
Depends
The volume to clone.
Cgid
integer
Depends
The consistency group to clone.
Suffix
string
Yes
A suffix for the cloned volume(s).
Vss
boolean
No
Use VSS during the clone process.
See also: Requests and responses - Authentication - Examples