Lyve Cloud API Guides
Lyve Cloud API 

Was this content helpful?

S3 API Compatibility Guide

This guide provides details of the supported, and unsupported Lyve Cloud API calls relative to Amazon Web Services’ Simple Storage Service (AWS S3). This guide is intended for S3 aware application developers and architects responsible for storing data.

Public bucket access

Lyve Cloud does not support:

  • Any anonymous access to buckets, as all API calls to Lyve Cloud must be authenticated.
  • Generating a pre-signed URL with a custom domain name to access s3 buckets.
  • Cross-Origin Resource Sharing (CORS) for websites, nor does it support hosting static websites using custom domains.
  • Creating a prefix with an empty name.
  • Creating an object with the same prefix name at the same level.
  • Unlisting of prefixes when using the ls command, even if it contains only delete markers when versioning is enabled.

Signature Versions

Lyve Cloud supports Signature Version 4 (SigV4).

Supported S3 API calls

Lyve Cloud supports the most commonly used standard S3 API calls as listed in the following table. Some API calls are rejected if the service account does not have appropriate permissions. Lyve Cloud supports Signature Version 4 (SigV4). The following list specifies API calls allowed for each Lyve Cloud permission type.

   

Permissions

General API All Operations Read Only Write Only
    Specific buckets All buckets
Buckets CreateBucket × × ×
DeleteBucket × ×
GetBucketLocation
GetBucketReplication ×
HeadBucket ×
ListBucket ×
GetObjectLockConfiguration ×
PutObjectLockConfiguration × ×
Object CopyObject ×
DeleteObject × ×
DeleteObjects × ×
GetObject ×
GetObjectRetention ×
HeadObject ×
ListObjects ×
ListObjectsV2 ×
ListObjectVersions ×
PutObject ×
PutObjectRetention × ×
SelectObjectContent ×
Upload AbortMultipartUpload ×
CreateMultipartUpload ×
CompleteMultipartUpload ×
ListMultipartUploads ×
ListParts ×
UploadPart ×
UploadPartCopy ×
Tagging DeleteBucketTagging × ×
GetBucketTagging ×
GetObjectTagging ×
PutBucketTagging ×
PutObjectTagging ×

Unsupported S3 API calls

The following S3 calls are not supported in Lyve Cloud.

  • ACLGetBucketAcl, GetObjectAcl, PutBucketAcl, and PutObjectAcl

  • AnalyticsDeleteBucketAnalyticsConfiguration, GetBucketAnalyticsConfiguration, ListBucketAnalyticsConfigurations, and PutBucketAnalyticsConfiguration

  • Bucket InventoryDeleteBucketInventoryConfiguration, GetBucketInventoryConfiguration, ListBucketInventoryConfigurations, PutBucketInventoryConfiguration

  • Bucket OwnershipDeleteBucketOwnershipControls, GetBucketOwnershipControls, PutBucketOwnershipControls

  • Bucket WebsiteDeleteBucketWebsite, GetBucketWebsite, PutBucketWebsite

  • Bucket NotificationGetBucketNotification, GetBucketNotificationConfiguration, PutBucketNotification, PutBucketNotificationConfiguration

  • Bucket EncryptionDeleteBucketEncryption, GetBucketEncryption, PutBucketEncryption

  • Bucket LifecycleDeleteBucketLifecycle, GetBucketLifecycle, GetBucketLifecycleConfiguration, PutBucketLifecycle, PutBucketLifecycleConfiguration

  • Bucket PolicyDeleteBucketPolicy, GetBucketPolicy, GetBucketPolicyStatus, PutBucketPolicy

  • CORS - DeleteBucketCors, GetBucketCors, PutBucketCors

  • Logging - GetBucketLogging, PutBucketLogging

  • Metrics - DeleteBucketMetricsConfiguration, GetBucketMetricsConfiguration, ListBucketMetricsConfigurations, PutBucketMetricsConfiguration

  • Object Locking - GetObjectLegalHold, PutObjectLegalHold

  • Public Access - DeletePublicAccessBlock, GetPublicAccessBlock, PutPublicAccessBlock

  • Replication- DeleteBucketReplication, PutBucketReplication, GetBucketReplication

  • Tiering - DeleteBucketIntelligentTieringConfiguration, GetBucketIntelligentTieringConfiguration, ListBucketIntelligentTieringConfigurations, PutBucketIntelligentTieringConfiguration, RestoreObject

  • Transfer acceleration - GetBucketAccelerateConfiguration, PutBucketAccelerateConfiguration

  • Torrent - GetObjectTorrent

  • PaymentPutBucketRequestPayment, GetBucketRequestPayment

  • VersioningPutBucketVersioning, GetBucketVersioning