バルク操作 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>