オブジェクト作成 PUT /v1/{account}/{container}/{object}{?multipart-manifest}
指定したコンテンツとメタデータを使用して新しいオブジェクトを作成する。あるいは、指定したコンテンツとメタデータで既存のオブジェクトを置き換える。
この操作を使ってマニフェストオブジェクトをコピーする場合、新しいオブジェクトは、すべてのセグメントを結合した通常オブジェクトになります。従って、結合サイズが5GBを超えるようなオブジェクトをコピーすることはできません。
オブジェクトの作成に成功した場合、201 Createdステータスコードを返却します。
リクエストがタイムアウトした場合は408 Request Timeoutエラーコードを返却します。
Transfer-EncodingまたはContent-Lengthリクエストヘッダーのどちらも指定されていない場合、411 Length Requiredエラーコードを返却します。
もしETagに設定した値とデータのMD5チェックサムが一致しない場合は、422 Unprocessable Entityエラーコードを返却します。
Request Headers
X-Object-Manifest
動的ラージオブジェクトのマニフェストオブジェクト設定をします。この値は{container}/{prefix}のようにコンテナ名と分割オブジェクトのプレフィクス名を取ります。また、コンテナ名および分割オブジェクトのプレフィクス名はUTF-8エンコードをしてからさらにURLエンコードしてからヘッダーに設定する必要があります。
Data Type | Cardinality |
---|---|
String | 0..1 |
X-Auth-Token
認証トークン
Data Type | Cardinality |
---|---|
String | 1..1 |
Content-Length
オブジェクトのサイズ(バイト)。chunked形式の転送を行う場合は設定できません。
Data Type | Cardinality |
---|---|
String | 0..1 |
Transfer-Encoding
chunked形式の転送を行う場合はTransfer-Encoding: chunkedを設定します。もし本ヘッダーを使用する場合は、Content-Lengthヘッダーを付与してはいけません。
Data Type | Cardinality |
---|---|
String | 0..1 |
Content-Type
オブジェクトのMIMEタイプを変更します。
Data Type | Cardinality |
---|---|
String | 0..1 |
X-Detect-Content-Type
trueを設定すると、オブジェクトストレージがファイル拡張子に基づいたMIME typeを自動的に設定するようになります。Content-Typeヘッダーによる設定は無視されるようになります。
Data Type | Cardinality |
---|---|
Boolean | 0..1 |
X-Copy-From
複製元オブジェクト名を指定します。
この値は{container}/{object}の形式で指定します。
また、この値はUTF-8エンコードをしてからさらにURLエンコードしてからヘッダーに設定する必要があります。
X-Copy-Fromヘッダーを用いたPUT操作を行うこととCOPY操作を行うことは同様です。
Data Type | Cardinality |
---|---|
String | 0..1 |
ETag
リクエストボディのMD5チェックサム。例えば、アップロードするファイルのMD5チェックサムです。完全なアップロードを行うために、あらかじめオブジェクトのMD5チェックサムを計算しておき、本ヘッダーに設定してリクエストすることを強くおすすめします。なお、この値は引用符で囲まない値となります。
Data Type | Cardinality |
---|---|
String | 0..1 |
Content-Disposition
ブラウザの振る舞いを設定します。
設定する値については、http://www.ietf.org/rfc/rfc2183.txtをご参照ください。
Data Type | Cardinality |
---|---|
String | 0..1 |
Content-Encoding
Content-Encodingメタデータを設定します。
Data Type | Cardinality |
---|---|
String | 0..1 |
X-Delete-At
オブジェクトが削除される日をUNIX Epochタイムスタンプの形式で指定する。
Data Type | Cardinality |
---|---|
Int | 0..1 |
X-Delete-After
オブジェクトが削除されるまでの秒数を指定する。この値はオブジェクトストレージ内でX-Delete-Atに変換される。
Data Type | Cardinality |
---|---|
Int | 0..1 |
X-Object-Meta-name
オブジェクトメタデータ。{name}はメタデータ項目の名前。
Data Type | Cardinality |
---|---|
String | 0..* |
If-None-Match
Expect: 100-Continueと組み合わせて使用します。サーバが既にヘッダーに指定したデータのキャッシュを持っているかどうか確認するために使用されます。
Data Type | Cardinality |
---|---|
String | 0..1 |
Request Parameter
{account}
プロジェクト単位でユニークに割り当てられる名前
Data Type | Cardinality |
---|---|
String | 1..1 |
{container}
コンテナ名
Data Type | Cardinality |
---|---|
String | 1..1 |
{object}
オブジェクト名
Data Type | Cardinality |
---|---|
String | 1..1 |
multipart-manifest
?multipart-manifest=putを指定すると、オブジェクトは静的ラージオブジェクトのマニフェストとしてアップロードされます。リクエストボディにはマニフェストを記述したものを含めます。
Data Type | Cardinality |
---|---|
String | 0..1 |
Response Headers
Content-Length
レスポンスボディのバイト数
Data Type | Cardinality |
---|---|
String | 1..1 |
ETag
オブジェクトのサイズが5GBよりも小さい場合、この値はアップロードしたオブジェクトのMD5チェックサムとなります。この値は引用符で囲まれません。
もし、リクエストでETagヘッダーを付与してPUT操作が成功していた場合、この値は指定したETagと同じになります。
また、ETagヘッダーを付与していなかった場合は、この値とアップロードしたオブジェクトのETag値が同じか確認してください。
静的ラージオブジェクトの場合、マニフェストの各セグメントのETagとMD5 checksumsを連結した文字列に対して、MD5 checksum を取得した値が返却される。
動的ラージオブジェクトの場合は、この値は空文字のMD5チェックサムとなります。
Data Type | Cardinality |
---|---|
String | 1..1 |
Content-Type
オブジェクトのMIMEタイプ
Data Type | Cardinality |
---|---|
String | 1..1 |
X-Trans-Id
このリクエストに付与されるID。トラブルについて問い合わせる際に利用されます。
Data Type | Cardinality |
---|---|
Uuid | 1..1 |
Date
トランザクションの実行された日付と時間
Data Type | Cardinality |
---|---|
Datetime | 1..1 |
Response Elements
特にありません
Example of Request
curl -i $publicURL/janeausten/helloworld.txt -T ./helloworld.txt -X PUT -H "Content-Length: 1" -H "Content-Type: text/html; charset=UTF-8" -H "X-Auth-Token: $token"
Example of Response
HTTP/1.1 201 Created
Last-Modified: Fri, 17 Jan 2014 17:28:35 GMT
Content-Length: 116
Etag: d41d8cd98f00b204e9800998ecf8427e
Content-Type: text/html; charset=UTF-8
X-Trans-Id: tx4d5e4f06d357462bb732f-0052d96843
Date: Fri, 17 Jan 2014 17:28:35 GMT