Skip to content

gaul/undocumented-s3-apis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 

Repository files navigation

Undocumented S3 APIs

Undocumented Amazon S3 APIs and third-party extensions. This documents features outside the official Amazon S3 REST APIs. Note that these are not consistently supported across implementations.

Amazon APIs

GET object by multipart number

Object metadata exposes the number of multipart upload parts via the x-amz-mp-parts-count header. Subsequent GET object requests can retrieve individual parts via the partNumber parameter. This allows retrieving individual multipart upload parts, including the original ETag.

HEAD bucket exposes region

HEAD bucket exposes the region via x-amz-bucket-region even if the request lacks authentication. This allows clients to interrogate a bucket so that they can route subsequent requests to the correct endpoint.

Multipart Upload ETag

Single part upload ETag are the MD5 hash of the object content. Multipart upload ETag concatenate the MD5 of each part, MD5 this data, and append a hyphen and the number of parts.

Third-party APIs

GET bucket unordered

allow-unordered=true parameter overrides key sorting which allows higher performance with large buckets. Cannot be used with delimiter.

HEAD bucket extended

Returns bucket statistics via x-rgw-bytes-used and x-rgw-object-count headers.

PUT object append

Append to an existing object at a given offset via the append and position parameters. Responses include x-oss-next-append-position and x-rgw-next-append-position which indicate the next valid append offset.

PUT object conditional

If-Match and If-None-Match (Ceph) and x-goog-if-generation-match and x-goog-if-metageneration-match (Google) headers allow atomic replacement of objects.

Resumable uploads

Initiate a resumable upload with POST object with the x-goog-resumable header. Use the response Location to issue a PUT object with given Content-Length and Content-Range headers. Continuing issuing these requests to build larger objects.

Small file archives

Allows interaction with ZIP file contents as if they were objects. HeadObject, GetObject, and ListObjectsV2 support these operations when the header x-minio-extract has a true value.

References

About

Undocumented Amazon S3 APIs and third-party extensions

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published