Configure S3 Storage
User
Configure S3 Storage
Configure S3-compatible storage (AWS S3, Cloudflare R2, MinIO, etc.)
POST
Configure S3 Storage
Overview
Set up your own S3-compatible storage for uploaded videos. Credentials are verified before saving.Header Parameters
Your API key for authentication
Request Body
S3 endpoint URL (e.g.,
https://s3.us-east-1.amazonaws.com or https://ACCOUNT_ID.r2.cloudflarestorage.com)Bucket name
AWS region (e.g.,
us-east-1, auto for R2)AWS Access Key ID or equivalent
AWS Secret Access Key or equivalent
Optional folder prefix for organizing uploads (e.g.,
downloads/2024/)Base folder name for uploaded files. Defaults to
videos if not specified. Set to a custom value to change the top-level folder where files are stored (e.g., downloads, media).Response
Success confirmation message
Storage provider type:
s3The configured bucket name
The configured folder prefix (if provided)
Examples
Success Response
Error Responses
Verification Process
When you submit storage configuration, Tornado:- Validates the request format and required fields
- Creates a storage client with your credentials
- Attempts to upload a small test file (
verify_credentials.txt) - Deletes the test file
- If successful, saves the configuration encrypted
Required IAM Permissions
Supported S3-Compatible Providers
| Provider | Endpoint Format | Region |
|---|---|---|
| AWS S3 | https://s3.{region}.amazonaws.com | Your region |
| Cloudflare R2 | https://{account_id}.r2.cloudflarestorage.com | auto |
| DigitalOcean Spaces | https://{region}.digitaloceanspaces.com | Your region |
| Backblaze B2 | https://s3.{region}.backblazeb2.com | Your region |
| Wasabi | https://s3.{region}.wasabisys.com | Your region |
| MinIO | Your MinIO URL | Your region |
| OVH Object Storage | https://s3.{region}.cloud.ovh.net | Your region |
