HEAD Object

You can use the S3 HEAD Object request to retrieve metadata from an object without returning the object itself. If the object is stored in a Cloud Storage Pool, you can use HEAD Object to determine the object's transition state.

Unsupported request header

The following request header is not supported and returns XNotImplemented:

Response headers for Cloud Storage Pool objects

If the object is stored in a Cloud Storage Pool, the following response headers are returned:
  • x-amz-storage-class: GLACIER
  • x-amz-restore

The response headers provide information about the state of an object as it is moved to a Cloud Storage Pool bucket and optionally transitioned to Glacier and restored.

State of object Response to HEAD object
Object ingested into StorageGRID but not yet evaluated by ILM, or object stored in a traditional storage pool or using erasure coding 200 OK

(No special response header is returned.)

Object in Cloud Storage Pool but not yet transitioned to Glacier

200 OK

x-amz-storage-class: GLACIER

x-amz-restore: ongoing-request="false", expiry-date="Sat, 23 July 20 2030 00:00:00 GMT"

Until the object is transitioned to Glacier, the value for expiry-date is set to some distant time in the future. The exact time of transition is not controlled by the StorageGRID system.

Object transitioned to Glacier from the Cloud Storage Pool bucket

202 OK

x-amz-storage-class: GLACIER

Object in process of being restored from Glacier to the Cloud Storage Pool bucket

200 OK

x-amz-storage-class: GLACIER

x-amz-restore: ongoing-request="true"

Object fully restored to the Cloud Storage Pool bucket

200 OK

x-amz-storage-class: GLACIER

x-amz-restore: ongoing-request="false", expiry-date="Sat, 23 July 20 2018 00:00:00 GMT"

The expiry-date indicates when the temporary copy of the restored object will be deleted from the Cloud Storage Pool bucket.

Multipart or segmented objects in a Cloud Storage Pool

If you uploaded a multipart object or if StorageGRID split a large object into segments, StorageGRID determines whether the object is available in the Cloud Storage Pool bucket by sampling a subset of the object's parts or segments. In some cases, a HEAD Object request might incorrectly return x-amz-restore: ongoing-request="false" when some parts of the object have already been transitioned to Glacier or when some parts of the object have not yet been restored.

Versioning

If a versionId subresource is not specified, the operation fetches the most recent version of the object in a versioned bucket. If the current version of the object is a delete marker, a "Not Found" status is returned with the x-amz-delete-marker response header set to true.