Skip to navigation

What works with Zata

Which S3 features Zata supports, and the limits to know before you start.

Zata speaks the Amazon S3 API, so most S3 tools and SDKs work without changes. Use this page to check whether a feature your app needs is supported, and which limits apply.

Connection

FeatureOn Zata
Path-style URLs (https://idr01.zata.ai/my-bucket)Supported (recommended)
Virtual-host style URLs (https://my-bucket.idr01.zata.ai)Supported. Bucket names with a dot fail the certificate check in this style, so use path-style for them.
Signature V4Supported (recommended)
Signature V2Supported
Region nameNot checked. Use us-east-1.
HTTPSRequired. http:// is redirected to https://. The certificates are public (Let’s Encrypt), so you never need a custom certificate.
Endpointshttps://idr01.zata.ai (Indore) and https://bom01.zata.ai (Mumbai). Each bucket and each access key belongs to one region.

Two things in newer tools need a setting:

  • Default checksums in AWS SDKs and the AWS CLI (versions from January 2025): large uploads fail with XAmzContentSHA256Mismatch until you set checksums to “when required”. See Tools built on the AWS SDK.
  • Tools that sign the Accept-Encoding header get 403 SignatureDoesNotMatch, because this header changes on the way to Zata. rclone needs sign_accept_encoding = false (rclone on Linux), and Go apps need a small fix (Go). Python tools are not affected.

Features

FeatureSupportedNotes
Buckets, objects and foldersYesFolders are name prefixes, as on Amazon S3.
Multipart uploadYesSee Limits.
Server-side copy (CopyObject)Yes
Presigned URLsYesDownload (GET) and upload (PUT) links work. An upload must send the same Content-Type that was signed. See Share a file.
VersioningYesTurn it on in the bucket settings. See Bucket settings and Delete and restore files.
Object LockYesGovernance mode, compliance mode and legal hold. Can only be turned on when the bucket is created. See Object Lock.
Lifecycle rulesYesRules that filter by object size, or keep the newest N old versions, work in Mumbai only. See Lifecycle rules.
Bucket and object tagsYesSee Tags.
ACLsYesSee Bucket ACL and Object ACL.
Bucket policiesPartlyA subset of the AWS policy language: no IAM policies and no ${...} variables. Principals are Zata user IDs, not AWS account IDs. See What policies support.
S3 SelectYes
CORS (browser access)On requestAsk Zata support. See Browser and SDK access.
Server-side encryption (SSE-S3, SSE-C, SSE-KMS)NoRequests with encryption headers are rejected (InvalidRequest). Turn the tool’s encryption option off, or encrypt files before you upload them.
Storage classesStandard onlyGLACIER, DEEP_ARCHIVE, STANDARD_IA and other classes are rejected (InvalidArgument). Leave the storage class empty or set STANDARD.
STS, temporary credentials, IAM roles, AssumeRoleNoUse sub-users to give limited access.
IAM users and IAM policiesNoUse sub-users and bucket policies.
Server access logsNoYou cannot see Zata’s request logs. Use your tool’s debug output; Zata support can check the logs on Zata’s side.

Limits

LimitValue
Single upload (one PUT request)Up to 5 GB. Larger files must use multipart upload, otherwise EntityTooLarge.
Multipart part sizeAt least 5 MB for every part except the last, otherwise EntityTooSmall
Parts per multipart uploadUp to 10,000
Part orderParts can be uploaded in any order.
Unfinished multipart uploadsKeep using storage until they are completed or cancelled. See Large uploads.
ETag of a multipart uploadEnds in -N (the number of parts) and is not the file’s MD5. A different ETag does not mean the file is damaged.
Clock differenceRequests are rejected with RequestTimeTooSkewed when your computer’s clock is more than about 15 minutes off.

Sub-user keys

A sub-user’s access key works like the owner’s key, with these differences:

  • It cannot create buckets (AccessDenied).
  • Its bucket list is empty, even for buckets it can use. Open the bucket by its name.
  • It can only do what the account owner allowed on each bucket. See Access types.