Updated on 2026-09-23 GMT+08:00

Restoring Deleted Objects

After versioning is enabled, you can restore data lost due to accidental operations or application failures using the following methods:

  • Copy a specific historical object version and upload it to the bucket, making it the current version.
  • Permanently delete a delete marker so that the most recent historical version becomes the current version.

Prerequisites

  • Versioning is enabled for the bucket that stores the objects.
  • To recover data by permanently deleting a delete marker, ensure that the bucket contains at least one historical version of the same object without a delete marker.

Restoring a Deleted Object by Copying a Specific Historical Version

You can use APIs or SDKs to restore a deleted object through copying a specific historical version. You cannot use OBS Console, OBS Browser+, or obsutil to do so.

Before copying, obtain the required version ID by referring to Viewing Object Versions (When Versioning Is Enabled or Suspended).

Restoring a Deleted Object by Permanently Deleting a Delete Marker

Deleting an object from a versioning-enabled bucket does not remove the object itself. Instead, OBS inserts a delete marker to indicate that the latest version of the object is in the deleted state, while the previous current version becomes a historical version. You can restore a deleted object by permanently deleting the delete marker.

You can remove a delete marker using OBS Console, APIs, SDKs, or obsutil, but not OBS Browser+.