The API is S3-compatible. If your tooling already speaks S3, only the endpoint changes.
Requests are signed with AWS Signature Version 4. Create an access key pair in the console, then export it the usual way.
export AWS_ACCESS_KEY_ID=CS0EXAMPLEKEYID
export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
export AWS_DEFAULT_REGION=eu-central-1
aws --endpoint-url https://s3.cloudstore.example \
s3 cp report.pdf s3://project-assets/reports/2026-09.pdf
aws --endpoint-url https://s3.cloudstore.example \
s3 sync ./public s3://project-assets/public --delete
Generate a link that expires. The signature is computed locally, so the secret key never leaves your process.
aws --endpoint-url https://s3.cloudstore.example \
s3 presign s3://project-assets/reports/2026-09.pdf --expires-in 3600
Rules are evaluated once per day. Expired objects are removed asynchronously and stop being billed at removal time.
| Field | Type | Description |
|---|---|---|
prefix | string | Key prefix the rule applies to |
expiration_days | integer | Delete objects older than N days |
noncurrent_days | integer | Delete non-current versions after N days |
abort_multipart | integer | Abort incomplete uploads after N days |
| Limit | Value |
|---|---|
| Maximum object size | 5 TB |
| Maximum single-part upload | 5 GB |
| Buckets per account | Unlimited |
| Key length | 1024 bytes |