Manage versions and delete objects

Versioning keeps multiple versions of an object’s content under the same key. A delete marker is a history entry with no content: when it is current, the key appears deleted in a normal view. Deleting a key and deleting a specific version therefore have different effects.

Show versions

Open File > Accounts…, select the account, click Edit…, then open Capabilities > Data protection. Enable Object versions only if the service supports access to versions. If Read bucket versioning is available, S3Client checks that the bucket is Enabled or Suspended; reading an unknown state requires s3:GetBucketVersioning. Without that read capability, versions remain directly accessible. Listing requires s3:ListBucketVersions, and reading content requires s3:GetObjectVersion. See bucket versioning.

  1. In the S3 pane, select the bucket in tree view or open it in list view.
  2. Turn on Show versions in the bucket’s context menu or, in list view opened on that bucket, in the toolbar. Its folders inherit this mode.
  3. Wait for versions and delete markers to load.
  4. Select the desired row; use Properties > General to copy Version ID: and check Latest version:.

If Show versions remains unavailable while checking the bucket, wait. If its versioning state cannot be read, correct access and refresh the bucket with Refresh. Suspending versioning does not remove history.

A content version supports compatible operations, including copying and downloading. A delete marker cannot be downloaded or previewed and has no ACL, tags or Object Lock protection. An older version of a folder marker represents only that marker, not the contents of the folder and its subfolders.

Make older content current

This operation follows S3 copy conditions. A selected immutable version remains identified by its versionId even if the source ETag condition is disabled. The null version can be replaced and does not provide that immutability guarantee.

To make an older version current, S3Client copies its content under the same key. A source version with an immutable identifier remains unchanged. If versioning is enabled, the copy creates a new current version. If it is suspended, the copy can replace the null version. Your credentials must authorize reading the source, notably s3:GetObjectVersion, writing the destination, notably s3:PutObject, and the required encryption operations. Archived content must first be made readable.

Make current… requests source ACL preservation when the account’s ACL operations are enabled. If Enable ACL operations for this account is unchecked, the copy uses the destination default without ACL requests or headers; the historical version’s ACL is not guaranteed to be reproduced on the current object. See the effects of local deactivation.

  1. Turn on Show versions and select the content version to recover.
  2. Open Properties > General and wait for loading.
  3. Click Make current….
  4. In Make current, choose destination encryption: Reuse source settings, Use service settings, or an available explicit method.
  5. Check key or context options and ACL preservation warnings.
  6. Click OK to start the copy.
  7. Refresh and check the new current version and its content.

This button is offered for a specific content version, not for the current object opened with Show versions off or for a delete marker. When the selected version was the latest in the listing, the button is named Create new version… if bucket versioning is known to be enabled, or Copy as current… otherwise. The dialog uses the same name without the ellipsis. These commands copy the selected version to the same key; their label reflects the last listing and the known bucket state, both of which may have changed.

The button starts its own operation. Canceling properties afterward does not undo the copy. Its encryption parameters are separate from pending changes in the version’s properties. See encryption.

You can also copy a version elsewhere with the copy and move commands. A marker contains nothing to recover.

Check the scope before deleting

Check the display mode and selected rows. The usual permissions are s3:DeleteObject for a key and s3:DeleteObjectVersion for a version. Object Lock can prevent deletion even with these permissions.

Target and commandEffect
Current object, Show versions off, DeleteDeletes the current key. With versioning enabled, S3 normally creates a delete marker and keeps earlier versions. Without versioning, S3Client cannot recover the content. With versioning suspended, the null version may be deleted and a null marker created.
Logical folder, Show versions off, DeleteDeletes current keys under the prefix, including subfolders, regardless of display filters. Each key follows the current-object behavior described above; history is not purged.
Specific version, Delete Version or Delete VersionsPermanently deletes the selected versions. Removing the current version can reveal an earlier version or delete marker.
Marker, Remove Delete Marker or Remove Delete MarkersPermanently removes the selected markers. Removing a current marker makes the object visible if the preceding entry contains data.
Logical folder in version view, Delete All Objects and Versions…Permanently deletes versions and markers under the selected prefixes, including subfolders. It does not merely remove the folder marker. Incomplete multipart uploads are not aborted.

In version view, do not mix logical folders with version or marker rows in the same selection: Delete is then disabled. Select folders alone to delete all their contents, or rows alone to delete specific versions. A folder-marker version is an object row; deleting it does not delete the folder’s descendants.

The Delete multiple objects and Delete multiple object versions capabilities, under File > Accounts… > Edit… > Capabilities > Listing & deletion, allow requests to be batched. They are not required to delete multiple selected versions: S3Client can delete them individually. Deletion permissions are still required for each target.

Recursive deletion may partially succeed before an error or cancellation. Completed actions are not undone. Removing a current marker can expose content again; check this consequence before confirming.

Delete a selection

  1. In the S3 pane, choose the display mode matching your intended scope.
  2. Select the objects, versions or markers to delete.
  3. Use the displayed deletion command in the context menu.
  4. Read the confirmation and consequences.
  5. Confirm with Yes, or Delete permanently for complete folder deletion.
  6. Wait for completion, then use Refresh and, if needed, Show versions to check what remains.

For multiple selected versions in an account that supports Object Lock, the confirmation may offer Also delete selected versions locked in Governance mode. This option requires Read bucket Object Lock and Bypass Governance retention under Data protection, a bucket with Object Lock verified as enabled, and the s3:BypassGovernanceRetention permission. If the bucket’s state is unknown, verification requires a remote read and the s3:GetBucketObjectLockConfiguration permission. It bypasses neither Compliance nor a legal hold. See Object Lock.

This checkbox is not offered for a single selected version or in Delete All Objects and Versions…. Checking the bucket may require s3:GetBucketObjectLockConfiguration; if that check fails, deletion without bypass remains available.

Deletion partially completed, Deletion incomplete, Deletion canceled or Deletion completed with warnings means some actions may already have succeeded. Read the errors and refresh before trying again. An interrupted refresh can leave a view that does not reflect all deletions.

To delete by age, retain certain versions or abort incomplete uploads, use Delete with Options…, or Delete Objects and Versions with Options… in version view, from a single bucket or folder. See deletion with options.

Inconsistent version history returned by the service

If the service marks multiple versions of the same key as current, S3Client reports InconsistentVersionListing. The check includes delete markers and subsequent pages. S3Client does not change IsLatest values or infer the current version from timestamps or version IDs.

The affected listing is rejected instead of being presented as a complete history. Check the error for the object key, then use Refresh. If the error persists, send the diagnostic to your storage administrator. Concurrent changes can also make a listing inconsistent; the message alone does not establish that the provider is at fault.

Operations that target explicit version IDs without making decisions based on current-version status remain available. This check does not change permissions or Object Lock protection.