Skip to content

Latest commit

 

History

History
434 lines (292 loc) · 9.01 KB

os-volumes.inc

File metadata and controls

434 lines (292 loc) · 9.01 KB

Volume extension (os-volumes, os-snapshots) (DEPRECATED)

Warning

These APIs are proxy calls to the Volume service. Nova has deprecated all the proxy APIs and users should use the native APIs instead. These will fail with a 404 starting from microversion 2.36. See: Relevant Volume APIs.

Manages volumes and snapshots for use with the Compute API. Lists, shows details, creates, and deletes volumes and snapshots.

List Volumes

.. rest_method:: GET /os-volumes

Lists the volumes associated with the account.

Normal response codes: 200

Error response codes: unauthorized(401), forbidden(403)

Request

.. rest_parameters:: parameters.yaml

  - limit: limit_simple
  - offset: offset_simple

Response

.. rest_parameters:: parameters.yaml

  - volumes: volumes
  - attachments: volumeAttachments
  - attachments.device: attachment_device_resp
  - attachments.id: attachment_id_resp
  - attachments.serverId: attachment_server_id_resp
  - attachments.volumeId: attachment_volumeId_resp
  - availabilityZone: OS-EXT-AZ:availability_zone
  - createdAt: created
  - displayDescription: display_description
  - displayName: display_name
  - id: volume_id_resp
  - metadata: metadata_object
  - size: size
  - snapshotId: snapshot_id
  - status: volume_status
  - volumeType: volume_type


Example List Volumes

.. literalinclude:: ../../doc/api_samples/os-volumes/os-volumes-index-resp.json
   :language: javascript

Create Volume

.. rest_method:: POST /os-volumes

Creates a new volume.

Normal response codes: 200

Error response codes: badRequest(400), unauthorized(401), forbidden(403), itemNotFound(404)

Request

.. rest_parameters:: parameters.yaml

  - volume: volume
  - size: size
  - availability_zone: OS-EXT-AZ:availability_zone_optional
  - display_name: display_name_optional
  - display_description: display_description_optional
  - metadata: metadata
  - volume_type: volume_type_optional
  - snapshot_id: snapshot_id_optional

Example Create Volume

.. literalinclude:: ../../doc/api_samples/os-volumes/os-volumes-post-req.json
   :language: javascript

Response

.. rest_parameters:: parameters.yaml

  - volume: volume
  - attachments: volumeAttachments
  - attachments.device: attachment_device_resp
  - attachments.id: attachment_id_resp
  - attachments.serverId: attachment_server_id_resp
  - attachments.volumeId: attachment_volumeId_resp
  - availabilityZone: OS-EXT-AZ:availability_zone
  - createdAt: created
  - displayName: display_name
  - displayDescription: display_description
  - id: volume_id_resp
  - metadata: metadata_object
  - size: size
  - snapshotId: snapshot_id
  - status: volume_status
  - volumeType: volume_type


Example Create Volume

.. literalinclude:: ../../doc/api_samples/os-volumes/os-volumes-post-resp.json
   :language: javascript

List Volumes With Details

.. rest_method:: GET /os-volumes/detail

Lists all volumes with details.

Normal response codes: 200

Error response codes: unauthorized(401), forbidden(403)

Request

.. rest_parameters:: parameters.yaml

  - limit: limit_simple
  - offset: offset_simple

Response

.. rest_parameters:: parameters.yaml

  - volumes: volumes
  - attachments: volumeAttachments
  - attachments.device: attachment_device_resp
  - attachments.id: attachment_id_resp
  - attachments.serverId: attachment_server_id_resp
  - attachments.volumeId: attachment_volumeId_resp
  - availabilityZone: OS-EXT-AZ:availability_zone
  - createdAt: created
  - displayName: display_name
  - displayDescription: display_description
  - id: volume_id_resp
  - metadata: metadata_object
  - size: size
  - snapshotId: snapshot_id
  - status: volume_status
  - volumeType: volume_type


Example List Volumes With Details

.. literalinclude:: ../../doc/api_samples/os-volumes/os-volumes-detail-resp.json
   :language: javascript

Show Volume Details

.. rest_method:: GET /os-volumes/{volume_id}

Shows details for a given volume.

Normal response codes: 200

Error response codes: unauthorized(401), forbidden(403), itemNotFound(404)

Request

.. rest_parameters:: parameters.yaml

  - volume_id: volume_id_path

Response

.. rest_parameters:: parameters.yaml

  - volume: volume
  - attachments: volumeAttachments
  - attachment.device: attachment_device_resp
  - attachments.id: attachment_id_resp
  - attachments.serverId: attachment_server_id_resp
  - attachments.volumeId: attachment_volumeId_resp
  - availabilityZone: OS-EXT-AZ:availability_zone
  - createdAt: created
  - displayName: display_name
  - displayDescription: display_description
  - id: volume_id_resp
  - metadata: metadata_object
  - size: size
  - snapshotId: snapshot_id
  - status: volume_status
  - volumeType: volume_type


Example Show Volume Details

.. literalinclude:: ../../doc/api_samples/os-volumes/os-volumes-get-resp.json
   :language: javascript

Delete Volume

.. rest_method:: DELETE /os-volumes/{volume_id}

Deletes a volume.

Normal response codes: 202

Error response codes: unauthorized(401), forbidden(403), itemNotFound(404)

Request

.. rest_parameters:: parameters.yaml

  - volume_id: volume_id_path

Response

There is no body content for the response of a successful DELETE query

List Snapshots

.. rest_method:: GET /os-snapshots

Lists snapshots.

Normal response codes: 200

Error response codes: unauthorized(401), forbidden(403)

Request

.. rest_parameters:: parameters.yaml

  - limit: limit_simple
  - offset: offset_simple

Response

.. rest_parameters:: parameters.yaml

  - snapshots: snapshots
  - id: snapshot_id
  - createdAt: created
  - displayName: snapshot_name
  - displayDescription: snapshot_description
  - size: size
  - status: snapshot_status
  - volumeId: volume_id


Example List Snapshots

.. literalinclude:: ../../doc/api_samples/os-volumes/snapshots-list-resp.json
   :language: javascript

Create Snapshot

.. rest_method:: POST /os-snapshots

Creates a new snapshot.

Normal response codes: 200

Error response codes: badRequest(400), unauthorized(401), forbidden(403)

Request

.. rest_parameters:: parameters.yaml

  - snapshot: snapshot
  - volume_id: volume_id
  - display_description: snapshot_description_optional
  - display_name: snapshot_name_optional
  - force: force_snapshot

Example Create Snapshot

.. literalinclude:: ../../doc/api_samples/os-volumes/snapshot-create-req.json
   :language: javascript

Response

.. rest_parameters:: parameters.yaml

  - snapshot: snapshot
  - id: snapshot_id
  - createdAt: created
  - displayName: snapshot_name
  - displayDescription: snapshot_description
  - volumeId: volume_id
  - size: size
  - status: snapshot_status

Example Create Snapshot

.. literalinclude:: ../../doc/api_samples/os-volumes/snapshot-create-resp.json
   :language: javascript

List Snapshots With Details

.. rest_method:: GET /os-snapshots/detail

Lists all snapshots with details.

Normal response codes: 200

Error response codes: unauthorized(401), forbidden(403)

Request

.. rest_parameters:: parameters.yaml

  - limit: limit_simple
  - offset: offset_simple

Response

.. rest_parameters:: parameters.yaml

  - snapshots: snapshots
  - id: snapshot_id
  - createdAt: created
  - displayName: snapshot_name
  - displayDescription: snapshot_description
  - volumeId: volume_id
  - size: size
  - status: snapshot_status


Example List Snapshots With Details

.. literalinclude:: ../../doc/api_samples/os-volumes/snapshots-detail-resp.json
   :language: javascript

Show Snapshot Details

.. rest_method:: GET /os-snapshots/{snapshot_id}

Shows details for a given snapshot.

Normal response codes: 200

Error response codes: unauthorized(401), forbidden(403), itemNotFound(404)

Request

.. rest_parameters:: parameters.yaml

  - snapshot_id: snapshot_id_path

Response

.. rest_parameters:: parameters.yaml

  - snapshot: snapshot
  - id: snapshot_id
  - createdAt: created
  - displayName: snapshot_name
  - displayDescription: snapshot_description
  - volumeId: volume_id
  - size: size
  - status: snapshot_status


Example Show Snapshot Details

.. literalinclude:: ../../doc/api_samples/os-volumes/snapshots-show-resp.json
   :language: javascript

Delete Snapshot

.. rest_method:: DELETE /os-snapshots/{snapshot_id}

Deletes a snapshot from the account.

This operation is asynchronous. You must list snapshots repeatedly to determine whether the snapshot was deleted.

Normal response codes: 202

Error response codes: unauthorized(401), forbidden(403), itemNotFound(404)

Request

.. rest_parameters:: parameters.yaml

  - snapshot_id: snapshot_id_path


Response

There is no body content for the response of a successful DELETE query