ImageList

From Hostway API Documentation
(Difference between revisions)
Jump to: navigation, search
m (1 revision: Release 86)
 
(5 intermediate revisions by 3 users not shown)
Line 1: Line 1:
This operation will list all images.
+
= GET /accounts/''{accountId}''/flexcloud/images?name=''{imageName}''&status=''{imageStatus}''&type=''{imageType}''&zone=''{zoneId}'' =
 +
Lists all images.
 +
__TOC__
 +
== Request ==
 +
<code>GET /accounts/''{accountId}''/flexcloud/images?name=''{imageName}''&status=''{imageStatus}''&type=''{imageType}''&zone=''{zoneId}''</code>
  
='''GET''' /images?''name=imageName&status=imageStatus&type=imageType&zone=zoneTextKey''=
+
=== Parameters ===
 +
; accountId - ''string''
 +
: The selected account Id.
  
== Parameters ==
 
 
; name - ''string''
 
; name - ''string''
 
: ''Optional'' image name to search for.
 
: ''Optional'' image name to search for.
  
 
; status - ''string''
 
; status - ''string''
: ''Optional'' Image status to search for. Values: '''ACTIVE''', '''SAVING''', '''DELETED'''
+
: ''Optional'' Image status to search for. Values: '''ACTIVE''', '''SAVING''', '''DELETED'''.
  
 
; type - ''string''
 
; type - ''string''
: ''Optional'' type of the image to search for. Values: '''BASE''', '''SERVER'''
+
: ''Optional'' type of the image to search for. Values: '''BASE''', '''SERVER'''.
  
 
; zone - ''string''
 
; zone - ''string''
: ''Optional'' Zone textkey of the image to search for.
+
: ''Optional'' the zone where the image is available.
  
 +
== Response ==
  
== Result ==
+
=== Status Code ===
=== JSON ===
+
; 200 OK
 +
: Success
 +
 
 +
; 401 Unauthorized
 +
: Failure - 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
 +
: Failure - The Resource does not exist
 +
 
 +
=== Response Body ===
 
  <nowiki>
 
  <nowiki>
 
{
 
{
  "images":[
+
  "images":[
      {
+
    {
        "name":"{display_image_name}",
+
      "name":"{display_image_name}",
        "links":[
+
      "links":[
            {
+
        {"href":"</nowiki>{{APIBaseURL}}<nowiki>/accounts/{accountId}/flexcloud/images/{image_id}/", "rel":"self"},
              "href":"http://{api_server}/images/{image_id}/",
+
        {"href":"</nowiki>{{APIBaseURL}}<nowiki>/accounts/{accountId}/flexcloud/images/{image_id}/", "rel":"bookmark"}
              "rel":"self"
+
      ],
            },
+
      "id": "{image_id}",
            {
+
      "zones": ["{zone_id_1}", "{zone_id_2}"]
              "href":"http://{api_server}/images/{image_id}/",
+
    },
              "rel":"bookmark"
+
    {
            }
+
      "name":"{display_image_name}",
        ],
+
      "links":[
        "id": "{image_id}",
+
        {"href":"</nowiki>{{APIBaseURL}}<nowiki>/accounts/{accountId}/flexcloud/images/{image_id}/", "rel":"self"},
        "zones": ["{zone_textkey}", "{zone_textkey2}"]
+
        {"href":"</nowiki>{{APIBaseURL}}<nowiki>/accounts/{accountId}/flexcloud/images/{image_id}/", "rel":"bookmark"}
      },
+
      ],
      {
+
      "id":"{image_id}",
        "name":"{display_image_name}",
+
      "zones": ["{zone_id}"]
        "links":[
+
    }
            {
+
  ]
              "href":"http://{api_server}/images/{image_id}/",
+
}</nowiki>
              "rel":"self"
+
            },
+
            {
+
              "href":"http://{api_server}/images/{image_id}/",
+
              "rel":"bookmark"
+
            }
+
        ],
+
        "id":"{image_id}",
+
        "zones": ["{zone_textkey}"]
+
      }
+
  ]
+
}
+
</nowiki>
+
  
 +
==== Parameters ====
 
; id - ''string''
 
; id - ''string''
 
: Unique identifier for this image.
 
: Unique identifier for this image.
Line 66: Line 69:
  
 
; zones - ''string''
 
; zones - ''string''
: Zones
+
: Zones where the image is available.
  
== Response Codes ==
+
== Examples ==
; 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.
+
=== Successfully list images ===
 +
'''Request'''
 +
<nowiki>
 +
GET /accounts/{accountId}/flexcloud/images
 +
Authorization: Basic {Base64-encoded username:password string} </nowiki>
  
== Examples ==
+
'''Response'''
'''Successfully list images'''
+
<nowiki>
:'''GET''' {api_server}/images
+
200 OK
  
''Request Headers:''
+
{
     Content-Type:application/json
+
  "images": [
     Charset=UTF-8
+
     {
     Authorization:Base64-encoded username & password string
+
      "name": "test_public_image",
 +
      "links": [
 +
        {"href": "</nowiki>{{APIBaseURL}}<nowiki>/accounts/{accountId}/flexcloud/images/123/", "rel": "self"},
 +
        {"href": "</nowiki>{{APIBaseURL}}<nowiki>/accounts/{accountId}/flexcloud/images/123/", "rel": "bookmark"}
 +
      ],
 +
      "id": "123",
 +
      "zones": ["AUS001"]
 +
     },
 +
     {
 +
      "name": "test_debian_image",
 +
      "links": [
 +
        {"href": "</nowiki>{{APIBaseURL}}<nowiki>/accounts/{accountId}/flexcloud/images/290/", "rel": "self"},
 +
        {"href": "</nowiki>{{APIBaseURL}}<nowiki>/accounts/{accountId}/flexcloud/images/290/", "rel": "bookmark"}
 +
      ],
 +
      "id": "290",
 +
      "zones": ["AUS001"]
 +
    },
 +
    {
 +
      "name": "test_private_image",
 +
      "links":  [
 +
        {"href": "</nowiki>{{APIBaseURL}}<nowiki>/accounts/{accountId}/flexcloud/images/233/", "rel": "self"},
 +
        {"href": "</nowiki>{{APIBaseURL}}<nowiki>/accounts/{accountId}/flexcloud/images/233/", "rel": "bookmark"}
 +
      ],
 +
      "id": "233",
 +
      "zones": ["AUS001"]
 +
    }
 +
  ]
 +
}</nowiki>
  
''Response Code:''
+
=== Failure while trying to make an unauthorized request ===
<pre>HTTP/1.1 200 OK</pre>
+
'''Request'''
 +
<nowiki>
 +
GET /accounts/{accountId}/flexcloud/images
 +
Authorization: Basic {invalid authorization} </nowiki>
  
''Response Body:''
+
'''Response'''
 
  <nowiki>
 
  <nowiki>
    {
+
401 Unauthorized </nowiki>
      "images": [
+
          {
+
            "name": "test_public_image",
+
            "links": [
+
                {
+
                  "href": "http://{api_server}/images/123/",
+
                  "rel": "self"
+
                },
+
                {
+
                  "href": "http://{api_server}/images/123/",
+
                  "rel": "bookmark"
+
                }
+
            ],
+
            "id": "123",
+
            "zones": ["AUS001"]
+
          },
+
          {
+
            "name": "test_debian_image",
+
            "links": [
+
                {
+
                    "href": "http://{api_server}/images/290/",
+
                    "rel": "self"
+
                },
+
                {
+
                    "href": "http://{api_server}/images/290/",
+
                    "rel": "bookmark"
+
                }
+
              ],
+
              "id": "290",
+
              "zones": ["AUS001"]
+
          },
+
          {
+
              "name": "test_private_image",
+
              "links":  [
+
                  {
+
                    "href": "http://{api_server}/images/233/",
+
                    "rel": "self"
+
                  },
+
                  {
+
                    "href": "http://{api_server}/images/233/",
+
                    "rel": "bookmark"
+
                  }
+
              ],
+
              "id": "233",
+
              "zones": ["AUS001"]
+
          }
+
      ]
+
    }
+
</nowiki>
+
  
  
'''Failure while trying to make an unauthorized request'''
+
=== Account Number not found ===
:'''GET''' {api_server}/images
+
'''Request'''
 +
<nowiki>
 +
GET /accounts/fake/flexcloud/images
 +
Authorization: Basic {Base64-encoded username:password string}</nowiki>
 +
 
 +
'''Response'''
 +
<nowiki>
 +
{
 +
    "itemNotFound": {
 +
        "guid": "23684df5-0532-4794-802d-fdc82e4e7e7c",
 +
        "message": "Resource not found",
 +
        "code": 404,
 +
        "details": ""
 +
    }
 +
}</nowiki>
  
''Request Headers:''
+
== Alternative URI /images ==
    Content-Type:application/json
+
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]].
    Charset=UTF-8
+
    Authorization:Base64-encoded <span style="color:red">fake_authentication_string</span>
+
  
''Response Code:''
+
<code>GET /images</code>
<pre>HTTP/1.1 401 Unauthorized</pre>
+
  
''Response Body:''
+
== See also ==
    401 Unauthorized
+
* [[FlexCloud Server|FlexCloud Server API]]
    This server could not verify that you are authorized to
+
* [[Common Features]]
    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.
+
  
 +
{{disqus}}
 
[[Category:Hostway API]]
 
[[Category:Hostway API]]
 
[[Category:FlexCloud Server API]]
 
[[Category:FlexCloud Server API]]

Latest revision as of 11:00, 11 October 2013

GET /accounts/{accountId}/flexcloud/images?name={imageName}&status={imageStatus}&type={imageType}&zone={zoneId}

Lists all images.

Contents

Request

GET /accounts/{accountId}/flexcloud/images?name={imageName}&status={imageStatus}&type={imageType}&zone={zoneId}

Parameters

accountId - string
The selected account Id.
name - string
Optional image name to search for.
status - string
Optional Image status to search for. Values: ACTIVE, SAVING, DELETED.
type - string
Optional type of the image to search for. Values: BASE, SERVER.
zone - string
Optional the zone where the image is available.

Response

Status Code

200 OK
Success
401 Unauthorized
Failure - 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
Failure - The Resource does not exist

Response Body

{
  "images":[
    {
      "name":"{display_image_name}",
      "links":[
        {"href":"https://api.hostway.com/accounts/{accountId}/flexcloud/images/{image_id}/", "rel":"self"},
        {"href":"https://api.hostway.com/accounts/{accountId}/flexcloud/images/{image_id}/", "rel":"bookmark"}
      ],
      "id": "{image_id}",
      "zones": ["{zone_id_1}", "{zone_id_2}"]
    },
    {
      "name":"{display_image_name}",
      "links":[
        {"href":"https://api.hostway.com/accounts/{accountId}/flexcloud/images/{image_id}/", "rel":"self"},
        {"href":"https://api.hostway.com/accounts/{accountId}/flexcloud/images/{image_id}/", "rel":"bookmark"}
      ],
      "id":"{image_id}",
      "zones": ["{zone_id}"]
    }
  ]
}

Parameters

id - string
Unique identifier for this image.
links - array
Hypermedia for this resource.
name - string
Display name for this image.
zones - string
Zones where the image is available.

Examples

Successfully list images

Request

GET /accounts/{accountId}/flexcloud/images
Authorization: Basic {Base64-encoded username:password string} 

Response

200 OK

{
  "images": [
    {
      "name": "test_public_image", 
      "links": [
        {"href": "https://api.hostway.com/accounts/{accountId}/flexcloud/images/123/", "rel": "self"},
        {"href": "https://api.hostway.com/accounts/{accountId}/flexcloud/images/123/", "rel": "bookmark"}
      ], 
      "id": "123",
      "zones": ["AUS001"]
    }, 
    {
      "name": "test_debian_image", 
      "links": [
        {"href": "https://api.hostway.com/accounts/{accountId}/flexcloud/images/290/", "rel": "self"},
        {"href": "https://api.hostway.com/accounts/{accountId}/flexcloud/images/290/", "rel": "bookmark"}
      ], 
      "id": "290",
      "zones": ["AUS001"]
    },
    {
      "name": "test_private_image", 
      "links":  [
        {"href": "https://api.hostway.com/accounts/{accountId}/flexcloud/images/233/", "rel": "self"},
        {"href": "https://api.hostway.com/accounts/{accountId}/flexcloud/images/233/", "rel": "bookmark"}
      ], 
      "id": "233",
      "zones": ["AUS001"]
    }
  ]
}

Failure while trying to make an unauthorized request

Request

GET /accounts/{accountId}/flexcloud/images
Authorization: Basic {invalid authorization} 

Response

401 Unauthorized 


Account Number not found

Request

GET /accounts/fake/flexcloud/images
Authorization: Basic {Base64-encoded username:password string}

Response

{
    "itemNotFound": {
        "guid": "23684df5-0532-4794-802d-fdc82e4e7e7c",
        "message": "Resource not found",
        "code": 404,
        "details": ""
    }
}

Alternative URI /images

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 /images

See also


blog comments powered by Disqus

Personal tools
Namespaces
Variants
Actions
APIs
Navigation
Toolbox