List Load Balancers
From Hostway API Documentation
Revision as of 12:23, 5 August 2014 by Donghyun.kim (Talk)
Contents |
GET /accounts/{accountId}/loadbalancers
This operation lists existing load balancers.
Request
GET /accounts/{accountId}/loadbalancers?virtualIp={virtualIp}®ion={region}
Request Parameters
- accountId - string
- The selected account Id.
URI Parameters
- virtualIp - string
- optional, only loadbalancers with specified virtualIp will be returned
- region - string
- optional, only loadbalancers in the specified region will be returned
- sortField
- Indicates which field should be used for sorting.
- Legal values are 'region', 'displayName', 'virtualIp' and 'virtualIpPort'
- This parameter is optional
- sortOrder
- Indicates the order in which the result should be sorted.
- Legal values are 'asc' and 'desc'
- This parameter is optional. If 'sortField' was specified and 'sortOrder' was omitted, then the result will be sorted in ascending order.
- pageSize
- Indicates the number of prices to be included on each page of the result (if pagination is desired)
- This parameter is optional. If 'page' is specified and 'pageSize' is omitted, then the result will show 100 prices per page.
- page
- Indicates the 1-based index of the page to view.
- The value must be an integer between 1 and the maximum number of pages (returned in the 'last' element of the 'links' attribute of the result)
- This parameter is optional, but if 'pageSize' was specified, then 'page' is also required.
Response
Response Codes
- 200 OK
- 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.
- 404 Not Found
- The resource does not exist.
Response Body
{ "list" : [ { "id": "743", "protocol": "HTTP", "algorithm": "ROUND_ROBIN", "region": "ote.2008.tampa", "virtualIp": "10.140.141.88", "port": 80, "healthMonitor": {}, "timeout": 5, "displayName": "test-lb-name", "nodes": [ { "serverRef": "http://localhost:6543/accounts/jello614636/flexcloud/servers/jello614636-USOTE-2008-TAMPA-0002", "id": "1344", "condition": "ENABLED", "port": 80 } ], "sessionPersistence": {} } ], "links" : [ { "href" : "http://{api-server}/accounts/{accountId}/loadbalancers", "rel" : "self" } ], }
Parameters
- list
- the list of loadbalancers
- links - list
- Hypermedia for this resource.
Examples
Successfully list load balancers
Request
GET /accounts/{accountId}/loadbalancers Content-Type:application/json Charset=UTF-8 Authorization:Base64-encoded username & password string
Response
HTTP/1.1 200 OK { "list" : [ { "id": "743", "protocol": "HTTP", "algorithm": "ROUND_ROBIN", "region": "ote.2008.tampa", "virtualIp": "10.140.141.88", "port": 80, "healthMonitor": {}, "timeout": 5, "displayName": "test-lb-name", "nodes": [ { "serverRef": "http://{api-server}/accounts/{accountId}/flexcloud/servers/{serverId}", "id": "1344", "condition": "ENABLED", "port": 80 } ], "sessionPersistence": {} } ], "links" : [ { "href" : "http://{api-server}/accounts/{accountId}/loadbalancers", "rel" : "self" } ], }
Successfully list load balancers with pagination
Request
GET /accounts/{accountId}/loadbalancers?page=2&pageSize=3 Content-Type:application/json Charset=UTF-8 Authorization:Base64-encoded username & password string
Response
HTTP/1.1 200 OK { "list" : [ { "id": "743", "protocol": "HTTP", "algorithm": "ROUND_ROBIN", "region": "ote.2008.tampa", "virtualIp": "10.140.141.88", "port": 80, "healthMonitor": {}, "timeout": 5, "displayName": "test-lb-name", "nodes": [ { "serverRef": "http://{api-server}/accounts/{accountId}/flexcloud/servers/{serverId}", "id": "1344", "condition": "ENABLED", "port": 80 } ], "sessionPersistence": {} }, ... ], "links" : [ { "href" : "http://{api-server}/accounts/{accountId}/loadbalancers?page=2&pageSize=3", "rel" : "self" }, { "href" : "http://{api-server}/accounts/{accountId}/loadbalancers?page=1&pageSize=3", "rel" : "first" }, { "href" : "http://{api-server}/accounts/{accountId}/loadbalancers?page=1&pageSize=3", "rel" : "previous" }, { "href" : "http://{api-server}/accounts/{accountId}/loadbalancers?page=3&pageSize=3", "rel" : "next" }, { "href" : "http://{api-server}/accounts/{accountId}/loadbalancers?page=3&pageSize=3", "rel ' : "last" } ] }
Failure while trying to make unauthorized access
Request
POST /accounts/{accountId}/loadbalancers Content-Type:application/json Charset=UTF-8 Authorization:Base64-encoded fake_authentication_string
Response
HTTP/1.1 401 Unauthorized
Failure while trying to pass invalid account number
Request
POST /accounts/fake/loadbalancers Content-Type:application/json Charset=UTF-8 Authorization:Base64-encoded <span style="color:red">fake_authentication_string</span>
Response
HTTP/1.1 404 Not Found { "itemNotFound" : { "message": "Resource not found", "code": 404, "details": "", "errorid": "59e0b3dd-2173-432a-8ff5-60efe16e83bf" } }