ServerListDetails
From Hostway API Documentation
(Difference between revisions)
Mike.robski (Talk | contribs) |
Mike.robski (Talk | contribs) m (1 revision: Release 98) |
||
(8 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
− | |||
This operation will list all [[Server|servers]] including their details. | This operation will list all [[Server|servers]] including their details. | ||
− | === | + | ='''GET''' /accounts/''{accountId}''/flexcloud/servers/detail?''name=serverName&status=serverStatus&image=imageRef&zone=ZoneTextKey®ion=regionTextKey''= |
+ | |||
+ | == Parameters == | ||
+ | ; accountId - ''string'' | ||
+ | : The selected account Id. | ||
+ | |||
; name - ''string'' | ; name - ''string'' | ||
: Server name to search for. | : Server name to search for. | ||
; status - ''string'' | ; status - ''string'' | ||
− | : Server status to search for. Values: '''BUILD''', '''ACTIVE''', '''SUSPENDED''', '''DELETED''', ''' | + | : Server status to search for. Values: '''BUILD''', '''ACTIVE''', '''SUSPENDED''', '''DELETED''', '''STOPPED''', '''PROCESSING''' |
+ | : without status filtering, return servers with '''ACTIVE''', '''PROCESSING''' or '''STOPPED''' | ||
; image - ''string'' | ; image - ''string'' | ||
− | : Absolute URL of the image to filter servers by. ''e.g. <nowiki>http://{api_server}/images/{image_id}/</nowiki>'' | + | : Absolute URL of the image to filter servers by. ''e.g. <nowiki>http://{api_server}/accounts/{accountId}/flexcloud/images/{image_id}/</nowiki>'' |
+ | |||
+ | ; zone - ''string'' | ||
+ | : Zone text key | ||
+ | |||
+ | ; region - ''string'' | ||
+ | : optional, region text key | ||
− | + | == Result == | |
− | + | === JSON === | |
<nowiki> | <nowiki> | ||
{ | { | ||
Line 37: | Line 48: | ||
"links":[ | "links":[ | ||
{ | { | ||
− | "href":"http://{api_server}/servers/{server_id}/", | + | "href":"http://{api_server}/accounts/{accountId}/flexcloud/servers/{server_id}/", |
"rel":"self" | "rel":"self" | ||
} | } | ||
Line 45: | Line 56: | ||
"links":[ | "links":[ | ||
{ | { | ||
− | "href":"http://{api_server}/images/{image_id}/", | + | "href":"http://{api_server}/accounts/{accountId}/flexcloud/images/{image_id}/", |
"rel":"self" | "rel":"self" | ||
} | } | ||
Line 56: | Line 67: | ||
"links":[ | "links":[ | ||
{ | { | ||
− | "href":"http://{api_server}/flavors/{flavor_id}/", | + | "href":"http://{api_server}/accounts/{accountId}/flexcloud/flavors/{flavor_id}/", |
"rel":"self" | "rel":"self" | ||
} | } | ||
], | ], | ||
"id":{flavor_id} | "id":{flavor_id} | ||
+ | }, | ||
+ | "securityGroup": { | ||
+ | "id":"{security_group_id}", | ||
+ | "links":[ | ||
+ | { | ||
+ | "href":"http://{api_server}/accounts/{accountId}/flexcloud/os-security-groups/{security_group_id}/", | ||
+ | "rel":"self" | ||
+ | } | ||
+ | ] | ||
}, | }, | ||
"id":"{server_id}", | "id":"{server_id}", | ||
+ | "zone": "{zone_textkey}", | ||
"name":"{display_server_name}", | "name":"{display_server_name}", | ||
"created":"2011-12-05T12:51:28", | "created":"2011-12-05T12:51:28", | ||
Line 92: | Line 113: | ||
"links":[ | "links":[ | ||
{ | { | ||
− | "href":"http://{api_server}/servers/{server_id}/", | + | "href":"http://{api_server}/accounts/{accountId}/flexcloud/servers/{server_id}/", |
"rel":"self" | "rel":"self" | ||
} | } | ||
Line 100: | Line 121: | ||
"links":[ | "links":[ | ||
{ | { | ||
− | "href":"http://{api_server}/images/{image_id}/", | + | "href":"http://{api_server}/accounts/{accountId}/flexcloud/images/{image_id}/", |
"rel":"self" | "rel":"self" | ||
} | } | ||
Line 111: | Line 132: | ||
"links":[ | "links":[ | ||
{ | { | ||
− | "href":"http://{server_name}/flavors/{flavor_id}/", | + | "href":"http://{server_name}/accounts/{accountId}/flexcloud/flavors/{flavor_id}/", |
"rel":"self" | "rel":"self" | ||
} | } | ||
], | ], | ||
"id":{flavor_id} | "id":{flavor_id} | ||
+ | }, | ||
+ | "securityGroup": { | ||
+ | "id":"{security_group_id}", | ||
+ | "links":[ | ||
+ | { | ||
+ | "href":"http://{api_server}/accounts/{accountId}/flexcloud/os-security-groups/{security_group_id}/", | ||
+ | "rel":"self" | ||
+ | } | ||
+ | ] | ||
}, | }, | ||
"id":"{server_id}", | "id":"{server_id}", | ||
+ | "zone": "{zone_textkey}", | ||
"name":"{display_server_name}", | "name":"{display_server_name}", | ||
"created":"2011-11-17T10:14:58", | "created":"2011-11-17T10:14:58", | ||
Line 128: | Line 159: | ||
} | } | ||
] | ] | ||
− | } | + | }</nowiki> |
− | </nowiki> | + | |
− | + | ==== server ==== | |
; id - ''string'' | ; id - ''string'' | ||
: Unique identifier for this server. | : Unique identifier for this server. | ||
Line 171: | Line 201: | ||
: Unused - always null. | : Unused - always null. | ||
− | + | ; zone | |
+ | : zone text key | ||
+ | |||
+ | ==== addresses ==== | ||
; addresses.public.version - ''number'' | ; addresses.public.version - ''number'' | ||
: IP version of this address. Values: '''4''' | : IP version of this address. Values: '''4''' | ||
Line 184: | Line 217: | ||
: Private IP address of this server | : Private IP address of this server | ||
− | + | ==== image ==== | |
; image.name - ''string'' | ; image.name - ''string'' | ||
: The display name of the image this server is based on. | : The display name of the image this server is based on. | ||
Line 194: | Line 227: | ||
: Unique identifier for image this server is based on. | : Unique identifier for image this server is based on. | ||
− | + | ==== flavor ==== | |
; flavor.name - ''string'' | ; flavor.name - ''string'' | ||
: The display name of the flavor this server is based on. | : The display name of the flavor this server is based on. | ||
Line 204: | Line 237: | ||
: Unique identifier for flavor this server is based on. | : Unique identifier for flavor this server is based on. | ||
− | === Response Codes | + | ==== securityGroup ==== |
+ | ; securityGroup.id - ''string'' | ||
+ | : the id of the securityGroup that is assigned to this server | ||
+ | ; securityGroup.links - ''list'' | ||
+ | : [[Hypermedia]] for the securityGroup. | ||
+ | |||
+ | == Response Codes == | ||
; Success | ; Success | ||
: ''HTTP/1.1 200 OK'' | : ''HTTP/1.1 200 OK'' | ||
Line 211: | Line 250: | ||
: ''HTTP/1.1 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. | : ''HTTP/1.1 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 | |
+ | :''HTTP/1.1 404 Not Found'' : Resource does not exist | ||
+ | |||
+ | == Examples == | ||
'''Successfully get server list with details''' | '''Successfully get server list with details''' | ||
− | :'''GET''' /servers/detail | + | :'''GET''' /accounts/{accountId}/flexcloud/servers/detail |
''- Response:'' | ''- Response:'' | ||
''OK (200)'': | ''OK (200)'': | ||
Line 239: | Line 281: | ||
"links":[ | "links":[ | ||
{ | { | ||
− | "href":"http://{server_name}/servers/test_server_0013/", | + | "href":"http://{server_name}/accounts/{accountId}/flexcloud/servers/test_server_0013/", |
"rel":"self" | "rel":"self" | ||
} | } | ||
Line 247: | Line 289: | ||
"links":[ | "links":[ | ||
{ | { | ||
− | "href":"http://{server_name}/images/test_ubuntu_image/", | + | "href":"http://{server_name}/accounts/{accountId}/flexcloud/images/test_ubuntu_image/", |
"rel":"self" | "rel":"self" | ||
} | } | ||
Line 258: | Line 300: | ||
"links":[ | "links":[ | ||
{ | { | ||
− | "href":"http://{server_name}/flavors/3/", | + | "href":"http://{server_name}/accounts/{accountId}/flexcloud/flavors/3/", |
"rel":"self" | "rel":"self" | ||
} | } | ||
], | ], | ||
"id":3 | "id":3 | ||
+ | }, | ||
+ | "securityGroup":{ | ||
+ | "id":"group2012Nov02_jD6NX8BsK", | ||
+ | "links":[ | ||
+ | { | ||
+ | "href":"http://{server_name}/accounts/{accountId}/flexcloud/os-security-groups/group2012Nov02_jD6NX8BsK/", | ||
+ | "rel":"self" | ||
+ | } | ||
+ | ] | ||
}, | }, | ||
"id":"test_server_0013", | "id":"test_server_0013", | ||
+ | "zone": "AUS001", | ||
"name":"test_server_updated", | "name":"test_server_updated", | ||
"created":"2011-12-05T12:51:28", | "created":"2011-12-05T12:51:28", | ||
Line 294: | Line 346: | ||
"links":[ | "links":[ | ||
{ | { | ||
− | "href":"http://{server_name}/servers/test_server_0015/", | + | "href":"http://{server_name}/accounts/{accountId}/flexcloud/servers/test_server_0015/", |
"rel":"self" | "rel":"self" | ||
} | } | ||
Line 302: | Line 354: | ||
"links":[ | "links":[ | ||
{ | { | ||
− | "href":"http://{server_name}/images/test_windows_image/", | + | "href":"http://{server_name}/accounts/{accountId}/flexcloud/images/test_windows_image/", |
"rel":"self" | "rel":"self" | ||
} | } | ||
Line 313: | Line 365: | ||
"links":[ | "links":[ | ||
{ | { | ||
− | "href":"http://{server_name}/flavors/3/", | + | "href":"http://{server_name}/accounts/{accountId}/flexcloud/flavors/3/", |
"rel":"self" | "rel":"self" | ||
} | } | ||
], | ], | ||
"id":3 | "id":3 | ||
+ | }, | ||
+ | "securityGroup":{ | ||
+ | "id":"group2012Nov02_jD6NX8BsK", | ||
+ | "links":[ | ||
+ | { | ||
+ | "href":"http://{server_name}/accounts/{accountId}/flexcloud/os-security-groups/group2012Nov02_jD6NX8BsK/", | ||
+ | "rel":"self" | ||
+ | } | ||
+ | ] | ||
}, | }, | ||
"id":"test_server_0015", | "id":"test_server_0015", | ||
+ | "zone": "AUS001", | ||
"name":"test_server_created", | "name":"test_server_created", | ||
"created":"2011-11-17T10:14:58", | "created":"2011-11-17T10:14:58", | ||
Line 330: | Line 392: | ||
} | } | ||
] | ] | ||
− | } | + | }</nowiki> |
− | </nowiki> | + | |
'''Failure while trying to make an unauthorized call''' | '''Failure while trying to make an unauthorized call''' | ||
Line 341: | Line 402: | ||
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''' http(s)://{api_server}/accounts/{accountId}/flexcloud/servers/detail | |
− | < | + | ''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 /servers/detail == |
+ | 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/detail</code> | ||
+ | |||
+ | [[Category:Hostway API]] | ||
+ | [[Category:FlexCloud Server API]] |
Latest revision as of 07:52, 15 September 2014
This operation will list all servers including their details.
Contents |
[edit] GET /accounts/{accountId}/flexcloud/servers/detail?name=serverName&status=serverStatus&image=imageRef&zone=ZoneTextKey®ion=regionTextKey
[edit] Parameters
- accountId - string
- The selected account Id.
- name - string
- Server name to search for.
- status - string
- Server status to search for. Values: BUILD, ACTIVE, SUSPENDED, DELETED, STOPPED, PROCESSING
- without status filtering, return servers with ACTIVE, PROCESSING or STOPPED
- image - string
- Absolute URL of the image to filter servers by. e.g. http://{api_server}/accounts/{accountId}/flexcloud/images/{image_id}/
- zone - string
- Zone text key
- region - string
- optional, region text key
[edit] Result
[edit] JSON
{ "servers":[ { "status":"{state_status}", "updated":"", "hostId":"{host_id}", "addresses":{ "public":[ { "version":4, "addr":"{ip_address}" } ], "private":[ { "version":4, "addr":"{ip_address}" } ] }, "links":[ { "href":"http://{api_server}/accounts/{accountId}/flexcloud/servers/{server_id}/", "rel":"self" } ], "image":{ "name":"{display_image_name}", "links":[ { "href":"http://{api_server}/accounts/{accountId}/flexcloud/images/{image_id}/", "rel":"self" } ], "id":"{image_id}" }, "userId":"{user_account_id}", "flavor":{ "name":"{display_flavor_name}", "links":[ { "href":"http://{api_server}/accounts/{accountId}/flexcloud/flavors/{flavor_id}/", "rel":"self" } ], "id":{flavor_id} }, "securityGroup": { "id":"{security_group_id}", "links":[ { "href":"http://{api_server}/accounts/{accountId}/flexcloud/os-security-groups/{security_group_id}/", "rel":"self" } ] }, "id":"{server_id}", "zone": "{zone_textkey}", "name":"{display_server_name}", "created":"2011-12-05T12:51:28", "tenantId":"", "accessIPv4":"{ip_address}", "accessIPv6":"", "progress":100, "metadata":{ } }, { "status":"{state_status}", "updated":"", "hostId":"{host_id}", "addresses":{ "public":[ { "version":4, "addr":"{ip_address}" } ], "private":[ { "version":4, "addr":"{ip_address}" } ] }, "links":[ { "href":"http://{api_server}/accounts/{accountId}/flexcloud/servers/{server_id}/", "rel":"self" } ], "image":{ "name":"{display_image_name}", "links":[ { "href":"http://{api_server}/accounts/{accountId}/flexcloud/images/{image_id}/", "rel":"self" } ], "id":"{image_id}" }, "userId":"{user_account_id}", "flavor":{ "name":"{display_flavor_name}", "links":[ { "href":"http://{server_name}/accounts/{accountId}/flexcloud/flavors/{flavor_id}/", "rel":"self" } ], "id":{flavor_id} }, "securityGroup": { "id":"{security_group_id}", "links":[ { "href":"http://{api_server}/accounts/{accountId}/flexcloud/os-security-groups/{security_group_id}/", "rel":"self" } ] }, "id":"{server_id}", "zone": "{zone_textkey}", "name":"{display_server_name}", "created":"2011-11-17T10:14:58", "tenantId":"", "accessIPv4":"{ip_address}", "accessIPv6":"", "progress":100, "metadata":{ } } ] }
[edit] server
- id - string
- Unique identifier for this server.
- links - list
- Hypermedia for this resource.
- status - string
- Current state of the server. Values: BUILD, ACTIVE, SUSPENDED, DELETED, UNKNOWN
- hostId - string
- Id of the physical host this virtual machine is running on.
- userId - string
- Unique identifier for the owner of this server.
- name - string
- Display name for this server.
- created - string
- The date and time this server was created. ISO 8601 format, YYYY-MM-DDTHH:MM:SS.
- accessIPv4 - string
- The default included public IPv4 address.
- progress - number
- The current progress of this server while in BUILD status. The value is in the range of 0 - 100, but currently will only be 0, 50 or 100.
- metadata - object
- Unused - always an empty object.
- tenantId
- Unused - always null.
- accessIPv6
- Unused - always null.
- updated
- Unused - always null.
- zone
- zone text key
[edit] addresses
- addresses.public.version - number
- IP version of this address. Values: 4
- addresses.public.addr = string
- Public IP address of this server
- addresses.private.version - number
- IP version of this address. Values: 4
- addresses.private.addr - string
- Private IP address of this server
[edit] image
- image.name - string
- The display name of the image this server is based on.
- image.links - list
- Hypermedia for the image.
- image.id - string
- Unique identifier for image this server is based on.
[edit] flavor
- flavor.name - string
- The display name of the flavor this server is based on.
- flavor.links - list
- Hypermedia for the flavor.
- flavor.id - string
- Unique identifier for flavor this server is based on.
[edit] securityGroup
- securityGroup.id - string
- the id of the securityGroup that is assigned to this server
- securityGroup.links - list
- Hypermedia for the securityGroup.
[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 the wrong credentials (e.g., bad password), or your browser does not understand how to supply the credentials required.
- Failure
- HTTP/1.1 404 Not Found : Resource does not exist
[edit] Examples
Successfully get server list with details
- GET /accounts/{accountId}/flexcloud/servers/detail
- Response: OK (200):
{ "servers":[ { "status":"ACTIVE", "updated":"", "hostId":"{host_id}", "addresses":{ "public":[ { "version":4, "addr":"{ip_address}" } ], "private":[ { "version":4, "addr":"{ip_address}" } ] }, "links":[ { "href":"http://{server_name}/accounts/{accountId}/flexcloud/servers/test_server_0013/", "rel":"self" } ], "image":{ "name":"Ubuntu 10.10 x64", "links":[ { "href":"http://{server_name}/accounts/{accountId}/flexcloud/images/test_ubuntu_image/", "rel":"self" } ], "id":"test_ubuntu_image" }, "userId":"{user_account_id}", "flavor":{ "name":"1024MB Server3", "links":[ { "href":"http://{server_name}/accounts/{accountId}/flexcloud/flavors/3/", "rel":"self" } ], "id":3 }, "securityGroup":{ "id":"group2012Nov02_jD6NX8BsK", "links":[ { "href":"http://{server_name}/accounts/{accountId}/flexcloud/os-security-groups/group2012Nov02_jD6NX8BsK/", "rel":"self" } ] }, "id":"test_server_0013", "zone": "AUS001", "name":"test_server_updated", "created":"2011-12-05T12:51:28", "tenantId":"", "accessIPv4":"{ip_address}", "accessIPv6":"", "progress":100, "metadata":{ } }, { "status":"ACTIVE", "updated":"", "hostId":"{host_id}", "addresses":{ "public":[ { "version":4, "addr":"{ip_address}" } ], "private":[ { "version":4, "addr":"{ip_address}" } ] }, "links":[ { "href":"http://{server_name}/accounts/{accountId}/flexcloud/servers/test_server_0015/", "rel":"self" } ], "image":{ "name":"Windows 2008 R2 Standard", "links":[ { "href":"http://{server_name}/accounts/{accountId}/flexcloud/images/test_windows_image/", "rel":"self" } ], "id":"test_windows_image" }, "userId":"{user_account_id}", "flavor":{ "name":"1024MB Server3", "links":[ { "href":"http://{server_name}/accounts/{accountId}/flexcloud/flavors/3/", "rel":"self" } ], "id":3 }, "securityGroup":{ "id":"group2012Nov02_jD6NX8BsK", "links":[ { "href":"http://{server_name}/accounts/{accountId}/flexcloud/os-security-groups/group2012Nov02_jD6NX8BsK/", "rel":"self" } ] }, "id":"test_server_0015", "zone": "AUS001", "name":"test_server_created", "created":"2011-11-17T10:14:58", "tenantId":"", "accessIPv4":"{ip_address}", "accessIPv6":"", "progress":100, "metadata":{ } } ] }
Failure while trying to make an unauthorized call - Response: Unauthorized (401):
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/{accountId}/flexcloud/servers/detail
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/detail
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/detail