Help Center/ Object Storage Service/ User Guide/ Object Management/ Object Management/ Restoring Archive or Deep Archive Objects
Updated on 2026-08-21 GMT+08:00

Restoring Archive or Deep Archive Objects

Scenarios

To reduce storage costs, you can store objects that are rarely or hardly ever accessed in the Archive or Deep Archive storage class. You must restore these objects before you can download them, share them, change their storage class, or access them with a URL.

How Object Restore Works

The following describes how object restore works, including the restore process and the rules for combining restore validity periods.

After you restore an Archive or Deep Archive object, a copy in the Standard storage class is created. This copy is automatically deleted when its validity period expires. The restore operation does not change the storage class of the original object. The following describes how object restore works and the related costs.

Figure 1 How object restore works and the related costs
  1. Unrestored: The object cannot be read directly. Only non-read operations, such as metadata queries and deletion, are supported.

    In the Unrestored state, the object incurs storage costs.

  2. Restoring: The object cannot be read directly. Only non-read operations, such as metadata queries and deletion, are supported.
    • If this is the first time you call the RestoreObject API, it returns 202, indicating that the server has received the request.
    • If you submit another restore request while the object is being restored, the API returns 409, indicating an operation conflict.
    • In the Restoring state, the object incurs storage costs and restore costs (depending on the restore speed and the amount of data restored).
  3. Restored: A Standard object copy has been successfully created, but this copy does not appear in the bucket. You can now directly read the object (the restored copy).
    • If you call the RestoreObject API again during the validity period, the API returns 200 OK.
    • During the restore validity period, costs include: original object's storage costs, object copy's storage costs, request costs (restoring an object counts as one restore request), and outbound Internet traffic costs (if the object is accessed over the Internet).
  4. Restore validity period expired: The object copy is automatically deleted. Only the original object remains in the bucket. The object returns to the Unrestored state and cannot be read directly. Only non-read operations, such as metadata queries and deletion, are supported.

    In the Unrestored state, the object incurs storage costs.

If you initiate a restore request for an object at time A and set the validity period to N days, the restore expiration time will be A + N. Later, you make another restore request for the object at time B (B is earlier than A + N) and set the validity period to M days:

  • If B + M is later than A + N, the expiration time changes to B + M, and the total validity period is (B – A) + M, as shown in Figure 2.
Figure 2 Rules for combining restore validity periods

The validity period of restored objects starts from the first 08:00 (Beijing time) after the restore is completed. For example, if you restore objects between 08:00 on April 21, 2026 and 08:00 on April 22, 2026 and set the validity period to one day, the validity period begins at 08:00 on April 22, 2026 and the restored objects expire at 08:00 on April 23, 2026.

  • If B + M is earlier than A + N, the second restore will fail.

Restore Speeds and Validity Periods

OBS provides two restore speed options: expedited and standard. The time required to complete a restore varies depending on the storage class of the objects.

The validity period refers to the number of days during which restored objects remain readable. During this period, Standard object copies are available and can be read at any time.

Table 1 Restore speeds and validity periods

Object Storage Class

Restore Speed

Validity Period

Archive

  • Expedited: Objects are restored within 1 to 5 minutes.
  • Standard: Objects are restored within 3 to 5 hours.

1–30 days

Deep Archive

  • Expedited: Objects are restored within 3 to 5 hours.
  • Standard: Objects are restored within 5 to 12 hours.

1–30 days

Important Notes

  • After versioning is enabled, if you do not specify a version ID, OBS restores the current version. You can specify a version ID to restore a specific version.

Constraints

  • Archive and Deep Archive objects can remain in a restored state for a maximum of 30 days.
  • If an Archive or a Deep Archive object is being restored, its restore speed cannot be changed, and the restore task cannot be suspended or deleted.
  • If you attempt to restore an object that is being restored, error 409 will be reported. Wait for the current restore to finish before trying again.
  • Objects that are being restored cannot be added to a batch restore.

Prerequisites

You have the obs:object:RestoreObject permission. For details, see Granting Permissions to an IAM User Under the Current Account.

Ways to Restore objects

You can use OBS Console, APIs, SDKs, or obsutil to restore Archive or Deep Archive objects. You can also use OBS Browser+ to restore Archive objects.

Ways to View an Object's Restoration Status and Expiration Time

You can use OBS Console, APIs, SDK, or OBS Browser+ to view an object's restoration status and expiration time.