Skip to main content
The S3-compatible gateway lets existing S3 tooling talk to Tapedrive without custom integration code. Point the AWS CLI, rclone, or an S3 SDK at a gateway endpoint and work with buckets and objects the way you already do. S3 support is part of tape-gateway, served on its own listener. Any gateway operator can enable it, and workloads that outgrow a hosted offering can run their own gateway.
Terminal recording of an S3 client working against the Tapedrive gateway

An S3 client against the gateway: configure it, put an object, list, get it back.

Key concepts

Writes have one extra rule: the gateway writes to your tape as an on-chain delegate. The tape must delegate to the gateway’s key before any S3 write succeeds (delegation).

How access works

Three levels:
  1. Anonymous requests can read and list, subject to the gateway’s metering (rate limits).
  2. Signed requests use SigV4 credentials scoped to specific buckets or to your own tape.
  3. Writes additionally require the on-chain delegation.
Credentials come from the gateway operator’s admin API: issued, scoped, budgeted, and revocable (configuration).

Set up a bucket

Every S3 tool needs the same two things: a bucket and a credential. Four steps, once per bucket. For Tapenet, complete the wallet and funding setup before reserving a tape. 1. Reserve a tape. Size it for what you will store, and pick how long it should live. --duration buys enough epochs to cover that time; epochs last one hour on Tapenet (epochs). Add --dry-run to see the cost and your balance first.
Output
The label on the second line is the bucket name S3 tools use. It is the address in a lowercase form, because S3 bucket names cannot carry uppercase letters. 2. Delegate it to the gateway. The gateway writes to your tape as a delegate, so it never holds your key. Ask the gateway for its delegate address, then set it on the tape:
Output
max_object_bytes is the largest single upload the gateway accepts. Set the delegate on the tape:
Output
You can take the delegation back at any time with tape revoke. 3. Get a credential. The gateway operator issues an access key pair scoped to your bucket through the gateway’s admin API (configuration). If you run the gateway, that is you. 4. Use the label as the bucket name. tape info prints it again whenever you need it:
Output
That label is my-bucket on every S3 page. The base58 address works too with clients that accept it. Then pick your tool from the quickstarts.