Overview
ObjectBasin stores immutable objects in buckets and serves them from the node closest to the caller. The API is S3-compatible; the media gateway adds signed URLs and cache headers.
Architecture at a glance
client ──SigV4──▶ api.objectbasin.com ──▶ region gateway ──▶ 3 storage nodes (ack after 3/3)
└──▶ metadata service (versioned, hourly backup)
viewer ──signed URL──▶ media.objectbasin.com ──▶ nearest read node ──▶ origin node on miss
Core concepts
| Concept | What it is |
|---|---|
| Bucket | Namespace inside one region. Has its own keys, policy and usage counters. |
| Object | Immutable bytes plus metadata. Overwrites create a new version; the old one is dropped after the lifecycle window. |
| Part | Piece of a multipart upload. Stored as soon as it validates; placement is spread across failure domains. |
| Signed URL | Time-limited GET link for viewers, so you never expose an API key to a browser. |
Endpoints
| Host | Purpose |
|---|---|
api.objectbasin.com | Management and data API (S3 and REST). |
media.objectbasin.com | Read-only gateway for signed URLs and public buckets. |
media.objectbasin.com/{bucket}/{key} | Path-style reads of public buckets and signed URLs. |
Consistency
Reads are strongly consistent in the region that owns the bucket. After a write returns 200, every subsequent read from any node in that region sees the new version. Cross-region replication is asynchronous and typically completes within a few seconds; the x-objectbasin-replica header reports replication state.
Next steps
- Quickstart — first bucket in four commands
- API reference — every endpoint and error code
- SDKs & tools — AWS CLI, boto3, rclone