Sitelet https://filebase.com/docs/s3-api/overview
Skip to main content

S3 API overview

The Filebase S3 API implements the same operations as AWS S3 — PutObject, GetObject, ListObjectsV2, multipart upload, pre-signed URLs, CORS, and the rest. Any S3-compatible client, SDK, framework integration, or third-party tool that targets AWS S3 can target Filebase by changing two values.

Endpoint​

https://s3.filebase.io

This single endpoint serves every Filebase bucket, globally. Filebase does not expose per-region endpoints — bucket access is routed transparently by the Filebase CDN.

HTTP requests are redirected to HTTPS on port 443. There is no plaintext endpoint and no way to opt out.

Region​

auto

Use the literal string auto. The AWS SDKs require a region value to compute the SigV4 signing key — auto satisfies that requirement and tells Filebase to route to whichever backend serves the bucket.

If your tool or SDK rejects auto as a region (rare — most accept any non-empty string), use us-east-1 as a fallback.

Authentication​

Every authenticated request is signed with AWS Signature Version 4 (AWS4-HMAC-SHA256). Filebase does not accept SigV2.

You don't write the signing logic yourself — every modern S3 client does it for you. You just supply the access key pair via standard mechanisms:

  • AWS CLI: aws configure
  • SDKs: a credentials block in the client constructor
  • Environment variables: AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY

See authentication for the full reference.

Addressing styles​

Filebase supports both addressing styles — use whichever your SDK or tool defaults to:

https://s3.filebase.io/<bucket-name>/<object-key> ✓ path style
https://<bucket-name>.s3.filebase.io/<object-key> ✓ virtual-host style

You don't need to set any path-style flag (forcePathStyle, addressing_style, UsePathStyle, etc.) — leave the SDK at its default. Both styles are signed and served identically.

For anonymous reads from public buckets, use the virtual-host style URL: https://<bucket>.s3.filebase.io/<key>. This is the URL the Filebase CDN serves, and it's what you'd embed in a website or email out.

Supported operations​

See the supported operations reference for the full list and the compatibility matrix for the precise behavior of each.

The most-used operations:

  • Object lifecycle: PutObject, GetObject, HeadObject, DeleteObject, CopyObject
  • Listing: ListObjectsV2, ListObjects
  • Buckets: CreateBucket, DeleteBucket, HeadBucket, ListBuckets, GetBucketLocation
  • Multipart upload: CreateMultipartUpload, UploadPart, CompleteMultipartUpload, AbortMultipartUpload
  • ACL: GetBucketAcl, PutBucketAcl, GetObjectAcl (returns the bucket ACL)
  • CORS: GetBucketCors, PutBucketCors, DeleteBucketCors
  • Lifecycle: GetBucketLifecycle, GetBucketLifecycleConfiguration
  • Versioning: GetBucketVersioning
  • Logging: GetBucketLogging

Operation classes​

Each successful S3 API request is billed as Class A, Class B, or free. See pricing for rates, free-tier inclusions, and worked examples.

Class A operations​

State-mutating — writes and configuration changes.

ListBuckets, PutBucket, ListObjects, PutObject, CopyObject, CompleteMultipartUpload, CreateMultipartUpload, ListMultipartUploads, UploadPart, ListParts, PutBucketEncryption, PutBucketCors.

Class B operations​

State-reading — non-mutating reads of objects, metadata, or configuration.

HeadBucket, HeadObject, GetObject, GetBucketEncryption, GetBucketLocation, GetBucketCors, GetBucketLifecycleConfiguration.

Free operations​

Never billed, on any plan.

DeleteObject, DeleteBucket, AbortMultipartUpload.

Response format​

When a response has a body, it's returned as UTF-8 encoded XML — same as AWS S3. Error responses follow the standard S3 error schema (Code, Message, Resource, RequestId).

Rate limit​

500 requests per second per account. See rate limits.

What's next​