swift/doc/source/s3_compat.rst
karen chan 6097660f0c s3api: Implement object versioning API
Translate AWS S3 Object Versioning API requests to native Swift Object
Versioning API, speficially:

 * bucket versioning status
 * bucket versioned objects listing params
 * object GETorHEAD & DELETE versionId
 * multi_delete versionId

Change-Id: I8296681b61996e073b3ba12ad46f99042dc15c37
Co-Authored-By: Tim Burke <tim.burke@gmail.com>
Co-Authored-By: Clay Gerrard <clay.gerrard@gmail.com>
2020-01-28 14:00:08 -08:00

11 KiB

S3/Swift REST API Comparison Matrix

General compatibility statement

S3 is a product from Amazon, and as such, it includes "features" that are outside the scope of Swift itself. For example, Swift doesn't have anything to do with billing, whereas S3 buckets can be tied to Amazon's billing system. Similarly, log delivery is a service outside of Swift. It's entirely possible for a Swift deployment to provide that functionality, but it is not part of Swift itself. Likewise, a Swift deployment can provide similar geographic availability as S3, but this is tied to the deployer's willingness to build the infrastructure and support systems to do so.

Amazon S3 operations

S3 REST API method Category Swift S3 API
GET Object Core-API Yes
HEAD Object Core-API Yes
PUT Object Core-API Yes
PUT Object Copy Core-API Yes
DELETE Object Core-API Yes
Initiate Multipart Upload Core-API Yes
Upload Part Core-API Yes
Upload Part Copy Core-API Yes
Complete Multipart Upload Core-API Yes
Abort Multipart Upload Core-API Yes
List Parts Core-API Yes
GET Object ACL Core-API Yes
PUT Object ACL Core-API Yes
PUT Bucket Core-API Yes
GET Bucket List Objects Core-API Yes
HEAD Bucket Core-API Yes
DELETE Bucket Core-API Yes
List Multipart Uploads Core-API Yes
GET Bucket acl Core-API Yes
PUT Bucket acl Core-API Yes
Object tagging Core-API Yes
Versioning Versioning Yes
Bucket notification Notifications No
Bucket Lifecycle123456 Bucket Lifecycle No
Bucket policy Advanced ACLs No
Public website78910 Public Website No
Billing1112 Billing No
GET Bucket location Advanced Feature Yes
Delete Multiple Objects Advanced Feature Yes
GET Object torrent Advanced Feature No
Bucket inventory Advanced Feature No
GET Bucket service Advanced Feature No
Bucket accelerate CDN Integration No


  1. POST restore↩︎

  2. Bucket lifecycle↩︎

  3. Bucket logging↩︎

  4. Bucket analytics↩︎

  5. Bucket metrics↩︎

  6. Bucket replication↩︎

  7. OPTIONS object↩︎

  8. Object POST from HTML form↩︎

  9. Bucket public website↩︎

  10. Bucket CORS↩︎

  11. Request payment↩︎

  12. Bucket tagging↩︎