ListVolumeDetailsForServerVolumeAttachment

From Hostway API Documentation
(Difference between revisions)
Jump to: navigation, search
m (1 revision: Release 86)
 
(4 intermediate revisions by 3 users not shown)
Line 1: Line 1:
This operation will return the volume details for the specific server's volume attachment.
+
This operation returns volume details for the specific server's volume attachment.
  
=='''GET''' /servers/'''server_id'''/os-volume_attachments/'''volume_id'''''==
+
='''GET''' /accounts/''{accountId}''/flexcloud/servers/''{server_id}''/os-volume_attachments/''{volume_id}''=
 +
 
 +
== Parameters ==
 +
; accountId - ''string''
 +
: The selected account Id.
  
=== Parameters ===
 
 
; server_id
 
; server_id
 
: The unique identifier of the server.
 
: The unique identifier of the server.
Line 10: Line 13:
 
: The unique volume identifier.
 
: The unique volume identifier.
  
=== Result ===
+
== Result ==
==== JSON ====
+
=== JSON ===
 
  <nowiki>
 
  <nowiki>
 
{
 
{
Line 25: Line 28:
 
         "links": [
 
         "links": [
 
           {
 
           {
               "href": "http://{api_server}/volumes/{volume_id}/",  
+
               "href": "http://{api_server}/accounts/{accountId}/flexcloud/volumes/{volume_id}/",  
 
               "rel": "self"
 
               "rel": "self"
 
           }
 
           }
Line 32: Line 35:
 
         "created_at": "2012-05-03 11:35:44"
 
         "created_at": "2012-05-03 11:35:44"
 
   }
 
   }
}
+
}</nowiki>
</nowiki>
+
  
=====volume=====
+
====volume====
 
; id - ''string''
 
; id - ''string''
 
: Identifier of the volume instance.
 
: Identifier of the volume instance.
Line 69: Line 71:
 
: Volume creation timestamp.
 
: Volume creation timestamp.
  
=== Response Codes ===
+
== Response Codes ==
 
; Success:
 
; Success:
 
:''HTTP/1.1 200 OK''
 
:''HTTP/1.1 200 OK''
Line 77: Line 79:
 
:''HTTP/1.1 404 Not Found'' - The resource does not exist.
 
:''HTTP/1.1 404 Not Found'' - The resource does not exist.
  
=== Examples ===
+
== Examples ==
 
'''Successfully get volume details for a server volume attachment'''
 
'''Successfully get volume details for a server volume attachment'''
:'''GET''' http(s)://{api_server}/servers/test-server-0013/os-volume_attachments/hbs2012May03_0OxRg0Jz7
+
:'''GET''' http(s)://{api_server}/accounts/{accountId}/flexcloud/servers/test-server-0013/os-volume_attachments/hbs2012May03_0OxRg0Jz7
  
 
''Request Headers:''
 
''Request Headers:''
Line 97: Line 99:
 
       "links": [
 
       "links": [
 
           {
 
           {
             "href": "http://{api_server}/volumes/hbs2012May03_0OxRg0Jz7/",  
+
             "href": "http://{api_server}/account/{accountId}/flexcloud/volumes/hbs2012May03_0OxRg0Jz7/",  
 
             "rel": "self"
 
             "rel": "self"
 
           }
 
           }
Line 110: Line 112:
 
       "size": "30GB"
 
       "size": "30GB"
 
     }
 
     }
}
+
}</nowiki>
</nowiki>
+
  
 
'''Failure while trying to get volume details for a volume that does not exist'''
 
'''Failure while trying to get volume details for a volume that does not exist'''
:'''GET''' http(s)://{api_server}/servers/test-server-0013/os-volume_attachments/<span style="color:red">fake_volume_id</span>
+
:'''GET''' http(s)://{api_server}/accounts/{accountId}/flexcloud/servers/test-server-0013/os-volume_attachments/<span style="color:red">fake_volume_id</span>
  
 
''Request Headers:''
 
''Request Headers:''
Line 125: Line 126:
  
 
''Response Body:''
 
''Response Body:''
  {
+
  <nowiki>
 +
{
 
     "itemNotFound":  
 
     "itemNotFound":  
 
       {
 
       {
 
           "message": "Resource not found",  
 
           "message": "Resource not found",  
 
           "code": 404,  
 
           "code": 404,  
           "details": ""
+
           "details": "",
 +
          "errorid": "59e0b3dd-2173-432a-8ff5-60efe16e83bf"
 
       }
 
       }
  }
+
  }</nowiki>
  
 
'''Failure while trying to get volume details for a server that does not exist'''
 
'''Failure while trying to get volume details for a server that does not exist'''
:'''GET''' http(s)://{api_server}/servers/<span style="color:red">fake_server_id</span>/os-volume_attachments/hbs2012May03_0OxRg0Jz7
+
:'''GET''' http(s)://{api_server}/accounts/{accountId}/flexcloud/servers/<span style="color:red">fake_server_id</span>/os-volume_attachments/hbs2012May03_0OxRg0Jz7
  
 
''Request Headers:''
 
''Request Headers:''
Line 146: Line 149:
  
 
''Response Body:''
 
''Response Body:''
 +
<nowiki>
 
  {
 
  {
 
     "itemNotFound":  
 
     "itemNotFound":  
Line 151: Line 155:
 
           "message": "Resource not found",  
 
           "message": "Resource not found",  
 
           "code": 404,  
 
           "code": 404,  
           "details": ""
+
           "details": "",
 +
          "errorid": "59e0b3dd-2173-432a-8ff5-60efe16e83bf"
 
       }
 
       }
  }
+
  }</nowiki>
 +
 
 
'''Unauthorized request'''
 
'''Unauthorized request'''
:'''GET''' http(s)://{api_server}/servers/test-server-0013/os-volume_attachments/hbs2012May03_0OxRg0Jz7
+
:'''GET''' http(s)://{api_server}/accounts/{accountId}/flexcloud/servers/test-server-0013/os-volume_attachments/hbs2012May03_0OxRg0Jz7
  
 
''Request Headers:''
 
''Request Headers:''
Line 172: Line 178:
 
     does not understand how to supply the credentials required.
 
     does not understand how to supply the credentials required.
  
[[Category:Hostway API]]
+
'''Failure while trying to pass invalid account number'''
[[Category:FlexCloud Server API]]
+
:'''GET''' http(s)://{api_server}/accounts/fake/flexcloud/servers/{id}/os-volume_attachments
  
<!--  THIS CODE ENABLES DISQUS COMMENTS ON THE PAGE - DELETE TO DISABLE COMMENTING-->
+
''Response Code:''
 +
<pre>HTTP/1.1 404 Not Found</pre>
  
{{#widget:DISQUS
+
''Response Body:''
|id=hostway
+
<nowiki>
|uniqid={{PAGENAME}}
+
{
|url={{fullurl:{{PAGENAME}}}}
+
    "itemNotFound" : {
}}
+
      "message": "Resource not found",
 +
      "code": 404,
 +
      "details": "",
 +
      "errorid": "59e0b3dd-2173-432a-8ff5-60efe16e83bf"
 +
    }
 +
}</nowiki>
  
<!--  ########################################################################### -->
+
== Alternative URI /servers/{server_id}/os-volume_attachments/{volume_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 /servers/{server_id}/os-volume_attachments/{volume_id}</code>
 +
 
 +
[[Category:Hostway API]]
 +
[[Category:FlexCloud Server API]]

Latest revision as of 12:00, 11 October 2013

This operation returns volume details for the specific server's volume attachment.

Contents

[edit] GET /accounts/{accountId}/flexcloud/servers/{server_id}/os-volume_attachments/{volume_id}

[edit] Parameters

accountId - string
The selected account Id.
server_id
The unique identifier of the server.
volume_id
The unique volume identifier.

[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 volume details for a server volume attachment

GET http(s)://{api_server}/accounts/{accountId}/flexcloud/servers/test-server-0013/os-volume_attachments/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}/account/{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 get volume details for a volume that does not exist

GET http(s)://{api_server}/accounts/{accountId}/flexcloud/servers/test-server-0013/os-volume_attachments/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 get volume details for a server that does not exist

GET http(s)://{api_server}/accounts/{accountId}/flexcloud/servers/fake_server_id/os-volume_attachments/hbs2012May03_0OxRg0Jz7

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

Unauthorized request

GET http(s)://{api_server}/accounts/{accountId}/flexcloud/servers/test-server-0013/os-volume_attachments/hbs2012May03_0OxRg0Jz7

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(s)://{api_server}/accounts/fake/flexcloud/servers/{id}/os-volume_attachments

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 /servers/{server_id}/os-volume_attachments/{volume_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 /servers/{server_id}/os-volume_attachments/{volume_id}

Personal tools
Namespaces
Variants
Actions
APIs
Navigation
Toolbox