View Single Volume
From Hostway API Documentation
(Difference between revisions)
Mike.robski (Talk | contribs) |
Mike.robski (Talk | contribs) m (1 revision: Release 86) |
||
(2 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
This operation will return details of a single volume. | This operation will return details of a single volume. | ||
− | ='''GET''' / | + | ='''GET''' /accounts/''{accountId}''/flexcloud/volumes/''{id}''= |
This operation will return details of a single volume. | This operation will return details of a single volume. | ||
== Request Parameters == | == Request Parameters == | ||
+ | ; accountId - ''string'' | ||
+ | : The selected account Id. | ||
+ | |||
; id | ; id | ||
: The unique identifier of the volume. | : The unique identifier of the volume. | ||
Line 23: | Line 26: | ||
"links": [ | "links": [ | ||
{ | { | ||
− | "href": "http://{api_server}/volumes/{volume_id}/", | + | "href": "http://{api_server}/accounts/{accountId}/flexcloud/volumes/{volume_id}/", |
"rel": "self" | "rel": "self" | ||
} | } | ||
Line 30: | Line 33: | ||
"created_at": "2012-05-03 11:35:44" | "created_at": "2012-05-03 11:35:44" | ||
} | } | ||
− | } | + | }</nowiki> |
− | </nowiki> | + | |
====volume==== | ====volume==== | ||
Line 77: | Line 79: | ||
== Examples == | == Examples == | ||
'''Successfully get single volume details''' | '''Successfully get single volume details''' | ||
− | :'''GET''' <nowiki>http://{api_server}/volumes/hbs2012May03_0OxRg0Jz7</nowiki> | + | :'''GET''' <nowiki>http://{api_server}/accounts/{accountId}/flexcloud/volumes/hbs2012May03_0OxRg0Jz7</nowiki> |
''Request Headers:'' | ''Request Headers:'' | ||
Line 95: | Line 97: | ||
"links": [ | "links": [ | ||
{ | { | ||
− | "href": "http://{api_server}/volumes/hbs2012May03_0OxRg0Jz7/", | + | "href": "http://{api_server}/accounts/{accountId}/flexcloud/volumes/hbs2012May03_0OxRg0Jz7/", |
"rel": "self" | "rel": "self" | ||
} | } | ||
Line 112: | Line 114: | ||
'''Failure while trying to request for a volume that does not exist''' | '''Failure while trying to request for a volume that does not exist''' | ||
− | :'''GET''' http(s)://{api_server}/volumes/{<span style="color:red">fake_volume_id</span>} | + | :'''GET''' http(s)://{api_server}/accounts/{accountId}/flexcloud/volumes/{<span style="color:red">fake_volume_id</span>} |
''Request Headers:'' | ''Request Headers:'' | ||
Line 134: | Line 136: | ||
'''Failure while trying to make an unauthorized request''' | '''Failure while trying to make an unauthorized request''' | ||
− | :'''GET''' <nowiki>http://{api_server}/volume/{volume_id}</nowiki> | + | :'''GET''' <nowiki>http://{api_server}/accounts/{accountId}/flexcloud/volume/{volume_id}</nowiki> |
''Request Headers:'' | ''Request Headers:'' | ||
Line 150: | Line 152: | ||
wrong credentials (e.g., bad password), or your browser | wrong credentials (e.g., bad password), or your browser | ||
does not understand how to supply the credentials required. | does not understand how to supply the credentials required. | ||
+ | |||
+ | '''Failure while trying to pass invalid account number''' | ||
+ | :'''GET''' <nowiki>http://{api_server}/accounts/fake/flexcloud/volume/{volume_id}</nowiki> | ||
+ | |||
+ | ''Response Code:'' | ||
+ | <pre>HTTP/1.1 404 Not Found</pre> | ||
+ | |||
+ | ''Response Body:'' | ||
+ | <nowiki> | ||
+ | { | ||
+ | "itemNotFound" : { | ||
+ | "message": "Resource not found", | ||
+ | "code": 404, | ||
+ | "details": "", | ||
+ | "errorid": "59e0b3dd-2173-432a-8ff5-60efe16e83bf" | ||
+ | } | ||
+ | }</nowiki> | ||
+ | |||
+ | == Alternative URI /volumes/{id} == | ||
+ | An alternative way to execute this call is to omit the ''accountId'' portion of the URI. In this case the system assumes the request is executed for the account identified in the [[Authentication|authorization header]]. | ||
+ | |||
+ | <code>GET /volumes/{id}</code> | ||
[[Category:Hostway API]] | [[Category:Hostway API]] | ||
[[Category:FlexCloud Server API]] | [[Category:FlexCloud Server API]] |
Latest revision as of 11:00, 11 October 2013
This operation will return details of a single volume.
Contents |
[edit] GET /accounts/{accountId}/flexcloud/volumes/{id}
This operation will return details of a single volume.
[edit] Request Parameters
- accountId - string
- The selected account Id.
- id
- The unique identifier of the volume.
[edit] Result
[edit] JSON
{ "volume" : { "id": "{volume_id}", "display_name" : "{display_volume_name}", "display_description" : "{display_volume_description}", "size" : {size_quantity}, "volume_type" : "{volume_type_id}", "metadata" : {}, "availability_zone" : "{availability_zone_id}", "attachments": [], "links": [ { "href": "http://{api_server}/accounts/{accountId}/flexcloud/volumes/{volume_id}/", "rel": "self" } ], "snapshot_id": "", "created_at": "2012-05-03 11:35:44" } }
[edit] volume
- id - string
- Identifier of the volume instance.
- display_name - string
- Display name for this volume.
- display_description - string
- Descriptive information for this volume.
- size - int
- Volume size.
- volume_type - string
- Identifier of the volume type used. *(Not used in the current version).
- metadata - string
- Additional metadata info.
- availability_zone - string
- Identifier of the availability zone into which this volume was created.
- attachments - list
- List of attachments this volume is associated with.
- links - array
- Hypermedia for this resource.
- snapshot_id - string
- Identifier of the snapshot associated with this volume if exists.
- created_at - string
- Volume creation timestamp.
[edit] Response Codes
- Success
- HTTP/1.1 200 OK
- Failure
- HTTP/1.1 401 Unauthorized - This server could not verify that you are authorized to access the document you requested. Either you supplied incorrect credentials (e.g., bad password), or your browser does not understand how to supply the credentials required.
- HTTP/1.1 404 Not Found - The resource does not exist.
[edit] Examples
Successfully get single volume details
- GET http://{api_server}/accounts/{accountId}/flexcloud/volumes/hbs2012May03_0OxRg0Jz7
Request Headers:
Content-Type:application/json Charset=UTF-8 Authorization:Base64-encoded username & password string
Response Code:
HTTP/1.1 200 OK
Response Body:
{ "volume": { "display_name": "vol-test-003", "attachments": [], "links": [ { "href": "http://{api_server}/accounts/{accountId}/flexcloud/volumes/hbs2012May03_0OxRg0Jz7/", "rel": "self" } ], "availability_zone": "test_zone", "created_at": "2012-05-03 11:35:44", "volume_type": "", "display_description": "Another test volume.", "snapshot_id": "", "metadata": {}, "id": "hbs2012May03_0OxRg0Jz7", "size": "30GB" } }
Failure while trying to request for a volume that does not exist
- GET http(s)://{api_server}/accounts/{accountId}/flexcloud/volumes/{fake_volume_id}
Request Headers:
Content-Type:application/json Charset=UTF-8 Authorization:Base64-encoded username & password string
Response Code:
HTTP/1.1 404 Not Found
Response Body:
{ "itemNotFound": { "message": "Resource not found", "code": 404, "details": "", "errorid": "59e0b3dd-2173-432a-8ff5-60efe16e83bf" } }
Failure while trying to make an unauthorized request
- GET http://{api_server}/accounts/{accountId}/flexcloud/volume/{volume_id}
Request Headers:
Content-Type:application/json
Charset=UTF-8
Authorization:Base64-encoded fake_authentication_string
Response Code:
HTTP/1.1 401 Unauthorized
Response Body:
401 Unauthorized This server could not verify that you are authorized to access the document you requested. Either you supplied the wrong credentials (e.g., bad password), or your browser does not understand how to supply the credentials required.
Failure while trying to pass invalid account number
- GET http://{api_server}/accounts/fake/flexcloud/volume/{volume_id}
Response Code:
HTTP/1.1 404 Not Found
Response Body:
{ "itemNotFound" : { "message": "Resource not found", "code": 404, "details": "", "errorid": "59e0b3dd-2173-432a-8ff5-60efe16e83bf" } }
[edit] Alternative URI /volumes/{id}
An alternative way to execute this call is to omit the accountId portion of the URI. In this case the system assumes the request is executed for the account identified in the authorization header.
GET /volumes/{id}