Deleting an Object

Functions

You can perform this operation to delete an object. If you try to delete an object that does not exist, OBS will return a success message.

Versioning

When versioning is enabled for a bucket, a delete request that does not specify a version ID cannot permanently delete the object. Instead, OBS creates a delete marker with a unique version ID. When versioning is suspended for a bucket, a delete request that does not specify a version ID deletes the object whose version ID is null and creates a delete marker with a version ID of null.

To delete an object of a specified version, the versionId parameter can be used to specify the desired version.

To restore a deleted object, you need to specify the delete marker version in the versionId parameter when deleting it.

WORM

OBS automatically enables versioning when you enable WORM for a bucket. If you delete an object without specifying a version ID, OBS does not really delete this object thanks to versioning, but inserts a delete marker with a unique version ID, which turns into the current version. If you specify a version ID when deleting an object protected by WORM, OBS prevents you from deleting this object and returns a 403 error. Delete markers are not protected by WORM.

Request Syntax

DELETE /ObjectName HTTP/1.1
Host: bucketname.obs.region.example.com
Date: date
Authorization: authorization

Request Parameters

Table 1 describes the request parameters.

Important

For deleting an object, only parameters listed in Table 1 are supported. If the request contains parameters that cannot be identified by OBS, the server returns the 400 error code.

Table 1 Request parameters

Parameter

Description

Mandatory

versionId

Object version ID

Type: string

No

Request Headers

This request uses common headers. For details, see Table 3.

Request Elements

This request involves no elements.

Response Syntax

HTTP/1.1 status_code
Date: date

Response Headers

The response to the request uses common headers. For details, see Table 1.

If versioning is enabled for the bucket, the headers listed in Table 2 may also be used.

Table 2 Additional response headers

Header

Description

x-obs-delete-marker

Indicates whether an object is deleted. If the object is not marked as deleted, the response does not contain this header.

Type: boolean

Value options: true, false

The default value is false.

x-obs-version-id

Object version ID. If the object has no version number specified, the response does not contain this header.

Valid value: string

Default value: none

Response Elements

This response contains no elements.

Error Responses

No special error responses are returned. For details about error responses, see Table 2.

Sample Request

DELETE /object2 HTTP/1.1
User-Agent: curl/7.29.0
Host: examplebucket.obs.region.example.com
Accept: */*
Date: WED, 01 Jul 2015 04:19:21 GMT
Authorization: OBS H4IPJX0TQTHTHEBQQCEC:MfK9JCnSFHCrJmjv7iRkRrrce2s=

Sample Response

HTTP/1.1 204 No Content
Server: OBS
x-obs-request-id: 8DF400000163D3F51DEA05AC9CA066F1
x-obs-id-2: 32AAAUgAIAABAAAQAAEAABAAAQAAEAABCSgkM4Dij80gAeFY8pAZIwx72QhDeBZ5
Date: WED, 01 Jul 2015 04:19:21 GMT

Sample Request: Specifying versionId to Delete a Specific Object Version

DELETE /object2?versionId=G001118A49821905FFFFD28739D419DA HTTP/1.1
Authorization: OBS H4IPJX0TQTHTHEBQQCEC:iqSPeUBl66PwXDApxjRKk6hlcN4=
User-Agent: curl/7.29.0
Host: examplebucket.obs.region.example.com
Date: WED, 01 Jul 2015 02:37:22 GMT
Content-Type: application/xml

Sample Response: Specifying versionId to Delete a Specific Object Version

x-obs-id-2: 32AAAUgAIAABAAAQAAEAABAAAQAAEAABCS3WJqDiMsxgGHKQrlqST9veFKpDgE50
x-obs-request-id: 0000018A4997390DD306CCDA0DEC814F
Server: OBS
Date: WED, 01 Jul 2015 02:37:22 GMT
x-obs-version-id: G001118A49821905FFFFD28739D419DA

Sample Request: Specifying versionId to Delete a Delete Marker

DELETE /object2?versionId=G001118A6456208AFFFFD24829FCF614
Authorization: OBS H4IPJX0TQTHTHEBQQCEC:iqSPeUBl66PwXDApxjRKk6hlcN4=
User-Agent: curl/7.29.0
Host: examplebucket.obs.region.example.com
Date: WED, 01 Jul 2015 02:37:22 GMT
Content-Type: application/xml

Sample Response: Specifying versionId to Delete a Delete Marker

x-obs-id-2: 32AAAUgAIAABAAAQAAEAABAAAQAAEAABCS3WJqDiMsxgGHKQrlqST9veFKpDgE50
x-obs-request-id: 0000018A4997390DD306CCDA0DEC814F
Server: OBS
Date: WED, 01 Jul 2015 02:37:22 GMT
x-obs-version-id: G001118A6456208AFFFFD24829FCF614