Upload binary image data¶
Overview¶
Uploads binary image data.
Classification¶
Upload
API Operation Object¶
file
Synchronous / Asynchronous¶
synchronous
Request¶
HTTP Request Method¶
PUT
HTTP Request Path¶
{api_endpoint}/v2/images/{image_id}/file
HTTP Request Header¶
Format¶
X-Auth-Token: <token_id>
Content-Type: application/octet-stream
User-Agent, Host, Accept, Content-Length, Expect: 100-continue fields are automatically added
HTTP Request Body¶
Format¶
<image_data>
Request Parameter¶
name |
style |
format |
description |
required/optional |
default value |
action for invalid parameter |
response code for invalid parameter |
---|---|---|---|---|---|---|---|
image_id |
URL |
UUID |
An identifier for the image |
required |
- |
Terminate |
400, 404 |
token_id |
Header |
authentication token string |
keystone authentication token |
required |
- |
Terminate |
401 |
image_data |
Body |
application/octet-stream |
raw binary data that represents the actual virtual disk |
required |
- |
Terminate |
500 (if empty) |
Response¶
HTTP Response Header¶
Format¶
HTTP/1.1 <response_code> <message> (ex. 204 No Content)
<response_code>: see "HTTP Responses" section
<message>: message based on the response code
skip auto insert field such as "X-Compute-Request-Id" and "Content-Length", "Date"
Response Code¶
response code |
condition |
---|---|
204 |
normal end |
400 |
Specify not uuid in the image_id |
- |
Disk_format and container_format are not set in the specified image |
401 |
unauthorized |
403 |
requested by non-admin user whose project is the member but not the owner of specified private image |
404 |
specify non-existent image_id |
- |
specify the image_id of deleted image |
- |
if authority of non admin, requested by user whose project is not the member and not the owner of specified private image (assuming that the image has owner) |
409 |
Specify the image whose status is not queued |
- |
Specified image_data which is already existing in the specified image |
410 |
Specified image vanished during the upload |
413 |
Specified image's file size exceeds the total capacity which user can use across all storage systems |
415 |
Content-Type does not specify application/octet-stream in Header |
500 |
empty body |
503 |
Not permitted to write image on storage media |
Sample API Request and Response¶
Sample API Request¶
Request URI¶
https://example.com/v2/images/{image_id}/file
Request Header¶
X-Auth-Token: ajk3adjiown02
Content-Type: application/octet-stream
User-Agent, Host, Accept, Content-Length, Expect: 100-continue fields are automatically added
Request Body¶
<image_data>
Sample API Response¶
Response Header¶
HTTP/1.1 204 No Content
<response_code>: see "HTTP Responses" section
<message>: message based on the response code
skip auto insert field such as "X-Compute-Request-Id" and "Content-Length", "Date"
Response Body¶
none
Execution Example¶
HTTP Request¶
PUT /v2/images/cf433676-4896-400d-8ec1-05118365d9d2/file HTTP/1.1
User-Agent: curl/7.35.0
Host: 192.168.11.141:9292
Accept: */*
X-Auth-Token: 7cf85eab947a4b8dbd6efe66b031d27f
Content-Type: application/octet-stream
Content-Length: 1863
Expect: 100-continue
(raw binary image data)
HTTP Response¶
HTTP/1.1 100 Continue
HTTP/1.1 204 No Content
Content-Type: text/html; charset=UTF-8
Content-Length: 0
X-Openstack-Request-Id: req-69b1ba04-b9f0-479f-874c-66b54682a104
Date: Tue, 26 Aug 2014 03:45:06 GMT
Error Execution Example¶
HTTP Request¶
PUT /v2/images/0cb9328d-dd8c-41bb-b378-404b854b93b9/fil HTTP/1.1
User-Agent: curl/7.35.0
Host: 192.168.56.250:9292
Accept: */*
X-Auth-Token: ad42e90aed984598b69d3ac7ab455e63
Content-Type: application/octet-stream
Content-Length: 26
HTTP Response¶
HTTP/1.1 404 Not Found
Content-Length: 154
Content-Type: text/html; charset=UTF-8
X-Openstack-Request-Id: req-e0eb1c7f-e186-4810-b8f8-951b31b42489
Date: Fri, 16 Oct 2015 02:17:23 GMT
404 Not Found
The resource could not be found.