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.
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.
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.
1 2 3 4 | DELETE /ObjectName HTTP/1.1 Host: bucketname.obs.region.example.com Date: date Authorization: authorization |
Table 1 describes the request parameters.
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.
This request uses common headers. For details, see Table 3.
This request involves no elements.
1 2 | HTTP/1.1 status_code Date: date |
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.
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 |
This response contains no elements.
No special error responses are returned. For details about error responses, see Table 2.
1 2 3 4 5 6 | 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= |
1 2 3 4 5 | 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 |
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
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
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
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