List images (2)
GET /v2/images
Normal response codes: 200
本操作ではリクエストボディ部は不要です。
指定していた場合はリクエストボディ部は無視されます。
レスポンスボディ部は、クライアントが利用可能なイメージの一覧です。以下はその一例です。
{
"images": [
{
"id": "da3b75d9-3f4a-40e7-8a2c-bfab23927dea",
"name": "cirros-0.3.0-x86_64-uec-ramdisk",
"status": "active",
"visibility": "private",
"size": 2254249,
"checksum": "2cec138d7dae2aa59038ef8c9aec2390",
"tags": ["ping", "pong"],
"created_at": "2012-08-10T19:23:50Z",
"updated_at": "2012-08-10T19:23:50Z",
"self": "/v2/images/da3b75d9-3f4a-40e7-8a2c-bfab23927dea",
"file": "/v2/images/da3b75d9-3f4a-40e7-8a2c-bfab23927dea/file",
"schema": "/v2/schemas/image"
},
{
"id": "0d5bcbc7-b066-4217-83f4-7111a60a399a",
"name": "cirros-0.3.0-x86_64-uec",
"status": "active",
"visibility": "private",
"size": 25165824,
"checksum": "2f81976cae15c16ef0010c51e3a6c163",
"tags": [],
"created_at": "2012-08-10T19:23:50Z",
"updated_at": "2012-08-10T19:23:50Z",
"self": "/v2/images/0d5bcbc7-b066-4217-83f4-7111a60a399a",
"file": "/v2/images/0d5bcbc7-b066-4217-83f4-7111a60a399a/file",
"schema": "/v2/schemas/image"
},
{
"id": "e6421c88-b1ed-4407-8824-b57298249091",
"name": "cirros-0.3.0-x86_64-uec-kernel",
"status": "active",
"visibility": "private",
"size": 4731440,
"checksum": "cfb203e7267a28e435dbcb05af5910a9",
"tags": [],
"created_at": "2012-08-10T19:23:49Z",
"updated_at": "2012-08-10T19:23:49Z",
"self": "/v2/images/e6421c88-b1ed-4407-8824-b57298249091",
"file": "/v2/images/e6421c88-b1ed-4407-8824-b57298249091/file",
"schema": "/v2/schemas/image"
}
],
"first": "/v2/images?limit=3",
"next": "/v2/images?limit=3&marker=e6421c88-b1ed-4407-8824-b57298249091",
"schema": "/v2/schemas/images"
}
{
"images": [
{
"status": "active",
"name": "fj_sa_20180427_003",
"tags": [],
"container_format": "bare",
"created_at": "2018-04-27T08:06:53Z",
"sync_status_reason": "ERROR:A timeout occurred during synchronize image the
server(http://10.7.0.201:9292 <http://10.7.0.201:9292/>) in the image operation.
image_id=3eb2d8df-487b-4e82-a5ad.....",
"disk_format": "qcow2",
"updated_at": "2018-04-27T08:20:26Z",
"visibility": "private",
"self": "/v2/images/3eb2d8df-487b-4e82-a5ad.....",
"min_disk": 0,
"protected": false,
"min_ram": 0,
"file": "/v2/images/3eb2d8df-487b-4e82-a5ad...../file",
"checksum": "e2df1a86f3cb356aaeecc6badc5a2d",
"owner": "776a290892b747c4af8cec2a.....",
"size": 194008676,
"id": "3eb2d8df-487b-4e82-a5ad.....",
"schema": "/v2/schemas/image"
}
],
"schema": "/v2/schemas/images",
"first": "/v2/images?name=fjh_asa_20180427_003"
}
ページネーション
この機能は、大量のイメージのサブセットを返却し、次の対象のサブセットの取得に使用できるリンクを提供します。「次へ」のリンクが存在することを確認し、以降のHTTP GETリクエストのURIとして使用します。「次へ」のリンクが提供されなくなるまで同様の操作をしてください。「次へ」のリンクは、最初のリクエストで送信したクエリパラメーターを保持します。「先頭へ」のリンクを使用して、イメージセットの最初のページに戻ることができます。
イメージ間を手動で移動できるよう、"limit"と"marker"という2つのクエリパラメーターが用意されています。"limit"パラメーターは、特定のページサイズを指定するために使用します。
limitパラメーターで指定した数までのレスポンスが返却されます。"marker"パラメーターは、前回表示したイメージのIDを示すために使用します。最初の"limit"リクエストを作成してから、レスポンスの最後のイメージのIDをその後の"limit"リクエストで"marker"パラメーターに指定すして利用します。
フィルタリング
一覧表示操作では、返却された結果を絞り込むために、数種類のクエリパラメーターを利用できます。クライアントは、多くのイメージ属性(name=Ubuntu、visibility=publicなど)を利用して比較用のフィルターを提供できます。クライアントは、タグや、JSON Schemaで"link"として定義されたもの(self, file,schemaなど)に関しては、フィルタリングできません。
クエリパラメーターの"size_min"および"size_max"を使用して、それぞれの"size"属性("size"はディスク上に保存されたイメージサイズを意味し、単位はバイトです)に基づき、より大きいイメージとより小さいイメージをフィルタリングします。例えば、"size_min"フィルターとして1048576、"size_max"フィルターとして4194304を指定すると、サイズが1~4 MBのイメージのみ含むようコンテナをフィルタリングします。
ソート
結果は、"sort_key"と"sort_dir"パラメーターを使用して並べ替えることができます。
本APIは、「sort_key」として、あらゆるイメージ属性の自然順ソートを利用しています。
すべてのイメージ属性をsort_keyとして使用できます(tag属性およびlink属性を除く)。
"sort_dir"パラメーターは、ソート方向を示します。指定可能な値は"asc"(昇順)と"desc"(降順)です。sort_key と sort_dir のデフォルト値はそれぞれ、'created_at' と 'desc'です。
プロパティ保護
Images APIバージョン2.2では、クラウドプロバイダーはプロパティ保護機能を利用することができます。管理者以外のユーザーがAPIを実行した場合、プロパティによってはイメージ詳細レスポンスに表示されないものがあります。