バルク操作 POST /v1/{account}?bulk-delete

複数のオブジェクト、またはコンテナを1回のリクエストで削除する。

クエリパラメーターに?bulk-deleteを指定してPOST要求を行うことで、複数のオブジェクト、またはコンテナを削除できます。1回のリクエストで10000個までオブジェクトを削除できます。リクエストボディには、改行区切りで削除対象のオブジェクト、コンテナを指定します。

削除対象のオブジェクトは、以下のフォーマットで指定します。オブジェクト名はUTF-8エンコーディングをした上で、URLエンコードしたものを指定してください。


     /container_name/obj_name
   

削除対象のコンテナは、以下のフォーマットで指定します。コンテナ名はUTF-8エンコーディングをした上で、URLエンコードしたものを指定してください。コンテナは削除時には空である必要があります。


     /container_name
   

リクエストが受け付けられた場合、常に200ステータスコードが返却されます。

オブジェクトの削除が実際に成功したかどうかは、以下の例にあるようなレスポンスボディを解析する必要があります。


     {"Number Not Found": 0,
     "Response Status": "200 OK",
     "Errors": [],
     "Number Deleted": 12,
     "Response Body": ""}
   

削除対象としたすべてのオブジェクト、コンテナを削除したか、すでに存在しなかった場合は、"Response Status"は"200 OK"となります。削除に失敗した場合は、"Response Status"には、400、5XXなどのレスポンスコードが返却されます。"Errors"にはエラーとなったオブジェクト名とエラーを示すレスポンスコードが含まれます。

失敗した場合のステータスコードについては、API共通のエラー情報も合わせてご参照ください。

Request Headers

X-Auth-Token

認証トークン。

Data Type Cardinality
String 1..1

Content-Type

text/plainを指定する。

Data Type Cardinality
String 0..1

Accept

application/json, application/xml, text/xmlを設定できます。

Data Type Cardinality
String 0..1

Request Parameter

{account}

プロジェクト単位でユニークに割り当てられる名前

Data Type Cardinality
String 1..1

Response Headers

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

delete

レスポンスのエンベロープ

Data Type Cardinality Parent Element Child Element(s)
delete 1..1 None number_deleted

number_not_found

response_body

response_status

errors

number_deleted

削除したオブジェクト・コンテナ数

Data Type Cardinality Parent Element Child Element(s)
String 1..1 delete None

number_not_found

存在しなかったオブジェクト・コンテナ数

Data Type Cardinality Parent Element Child Element(s)
String 1..1 delete None

response_body

レスポンスのメッセージ

Data Type Cardinality Parent Element Child Element(s)
String 1..1 delete None

response_status

レスポンスのステータスコード

Data Type Cardinality Parent Element Child Element(s)
String 1..1 delete None

errors

エラー情報

Data Type Cardinality Parent Element Child Element(s)
String 1..1 delete None

object

オブジェクト情報

Data Type Cardinality Parent Element Child Element(s)
String 1..1 errors name

status

name

オブジェクト名、またはコンテナ名

Data Type Cardinality Parent Element Child Element(s)
String 1..1 object None

status

エラーのステータスコード

Data Type Cardinality Parent Element Child Element(s)
String 1..1 object None

Example Bulk delete response: HTTP and JSON

Example of Request


       curl -i $publicURL?bulk-delete -X POST -H "X-Auth-Token:$token" -H "Accept: application/json" -H "Content-Type:text/plain" --data-binary @DeleteList.txt
     

Example of Response


       HTTP/1.1 200 OK
       X-Trans-Id: tx893edf2c486e4fe98e128-005786df1d
       Date: Thu, 14 Jul 2016 00:38:58 GMT
       Content-Type: application/json
       
       {
       "Number Not Found": 0,
       "Response Status": "200 OK",
       "Errors": [],
       "Number Deleted": 4,
       "Response Body": ""
       }
     

Example of Error Response


       HTTP/1.1 200 OK
       X-Trans-Id: txa5824c2ada3047d78a5d8-005786f942
       Date: Thu, 14 Jul 2016 02:30:28 GMT
       Content-Type: application/json
       
       {
       "Number Not Found": 0,
       "Response Status": "400 Bad Request",
       "Errors": [
       ["/container1", "409 Conflict"],
       ["/container2", "409 Conflict"],
       ["/container3", "409 Conflict"]
       ],
       "Number Deleted": 0,
       "Response Body": ""
       }
     

Example Bulk delete response: HTTP and XML

Example of Request


       curl -i $publicURL?bulk-delete -X POST -H "X-Auth-Token: $token" -H "Accept:application/xml" -H "Content-Type:text/plain" --data-binary @DeleteList.txt
     

Example of Response


       HTTP/1.1 200 OK
       X-Trans-Id: tx4aac9fc900e442f9a42f3-005783745e
       Date: Mon, 11 Jul 2016 10:26:38 GMT
       Content-Type: application/xml
       
       <?xml version="1.0" encoding="UTF-8"?>
       <delete>
       <number_deleted>4</number_deleted>
       <number_not_found>0</number_not_found>
       <response_body></response_body>
       <response_status>200 OK</response_status>
       <errors></errors>
       </delete>
     

Example of Error Response


       HTTP/1.1 200 OK
       X-Trans-Id: tx42fb89d1157b4d7f95c54-005787125b
       Date: Thu, 14 Jul 2016 04:17:31 GMT
       Content-Type: application/xml
       
       <?xml version="1.0" encoding="UTF-8"?>
       <delete>
       <number_deleted>0</number_deleted>
       <number_not_found>0</number_not_found>
       <response_body></response_body>
       <response_status>400 Bad Request</response_status>
       <errors>
       <object>
       <name>/container1</name>
       <status>409 Conflict</status>
       </object>
       <object>
       <name>/container2</name>
       <status>409 Conflict</status>
       </object>
       <object>
       <name>/container3</name>
       <status>409 Conflict</status>
       </object>
       </errors>
       </delete>