Skip to main content

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)

Name Type Required Description 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

Name Type Required Description 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

Name Type Required Description application string Yes The name of the application instance to edit.

Body fields (JSON)

Name Type Required Description 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

Name Type Required Description 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)

Name Type Required Description 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

Name Type Required Description 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

Name Type Required Description application string Yes The application the volume belongs to. volume string Yes The volume to edit.

Body fields (JSON)

Name Type Required Description 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

Name Type Required Description 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

Name Type Required Description 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

Name Type Required Description 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)

Name Type Required Description 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)

Name Type Required Description 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)

Name Type Required Description 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