Object Storage
enum Object Storage is a fully S3-compatible storage service operated in Frankfurt, Germany. It works with any S3 client, SDK, or tool and is a drop-in replacement for AWS S3 with European data sovereignty.
Endpoint
Section titled “Endpoint”| Endpoint | fra.s3.enum.cloud |
| Protocol | HTTPS |
| Bucket addressing | Subdomain-style: <bucket>.fra.s3.enum.cloud |
Getting started
Section titled “Getting started”-
Create a storage user in your project. Access keys are returned immediately:
Terminal window enumctl storage users create --display-name my-app -
Configure your S3 client with the access key, secret key, and the endpoint
https://fra.s3.enum.cloud.
See the CLI reference for all available storage commands.
Client configuration
Section titled “Client configuration”Add a profile to ~/.aws/config:
[profile enum]endpoint_url = https://fra.s3.enum.cloudSet your credentials in ~/.aws/credentials:
[enum]aws_access_key_id = <your-access-key>aws_secret_access_key = <your-secret-key>Then use the profile:
aws s3 ls --profile enumaws s3 cp file.txt s3://my-bucket/ --profile enumAlternatively, pass the endpoint per command without a profile:
aws s3 ls --endpoint-url https://fra.s3.enum.cloudCreate ~/.s3cfg or run s3cmd --configure:
host_base = fra.s3.enum.cloudhost_bucket = %(bucket)s.fra.s3.enum.cloudaccess_key = <your-access-key>secret_key = <your-secret-key>use_https = Trues3cmd lss3cmd put file.txt s3://my-bucket/export S3_ENDPOINT_URL=https://fra.s3.enum.cloudexport AWS_ACCESS_KEY_ID=<your-access-key>export AWS_SECRET_ACCESS_KEY=<your-secret-key>
s5cmd lss5cmd cp file.txt s3://my-bucket/Quotas and limits
Section titled “Quotas and limits”Default quotas are applied to every new project and bucket. These protect the shared cluster from runaway usage while staying compatible with standard S3 client behavior.
Per-project limits
Section titled “Per-project limits”| Limit | Default |
|---|---|
| Storage | 10 TiB |
| Buckets | 100 |
Per-organization limits
Section titled “Per-organization limits”| Limit | Default |
|---|---|
| Projects | 3 |
Per-bucket rate limits
Section titled “Per-bucket rate limits”| Limit | Default |
|---|---|
| Read ops/s | 5,500 |
| Write ops/s | 3,500 |
S3 protocol defaults
Section titled “S3 protocol defaults”These limits follow the S3 standard and are not customized. They apply to all accounts equally.
| Limit | Value |
|---|---|
| Maximum object size | 5 TiB |
| Maximum single PUT size | 5 GiB |
| Multipart upload part size | 5 MiB - 5 GiB |
| Maximum parts per multipart upload | 10,000 |
| Object count per bucket | Unlimited |
Supported S3 features
Section titled “Supported S3 features”- Versioning to protect against accidental overwrites and deletions
- Lifecycle policies to automate object expiration and transition rules
- Server-Side Encryption (SSE) with AES-256 encryption at rest for all objects
- CORS for cross-origin resource sharing rules per bucket
- Object Lock for WORM-compliant immutable storage, compliance, and ransomware protection
Technical specifications
Section titled “Technical specifications”| Durability | 99.9999999% (9 nines) |
| Availability SLA | 99.9% |
| Redundancy | Erasure coding across failure domains |
| Encryption at rest | AES-256 |
| Encryption in transit | TLS |
| Data location | Frankfurt, Germany |