Use this file to discover all available pages before exploring further.
Updated May 8, 2026Raff Object Storage speaks the standard S3 API. Point any AWS-S3 SDK or compatible tool at Raff’s endpoint with your access keys and you’re connected — no Raff-specific library needed.This page is the practical “drop into your code” guide. For the conceptual side (which AWS features port and which don’t), see S3 compatibility.
Virtual-host by default (<bucket>.s3.raffusercloud.com); use path style if your bucket name contains dots
Plug those into any of the SDK examples below.
Set region to us-east explicitly. SDKs default to us-east-1 (AWS naming) and SigV4 signs with that — Raff rejects signatures from the wrong region. Skipping this step is the #1 reason first-time integrations fail.
rclone ls raff:my-bucketrclone copy ./local-dir raff:my-bucket/path --progressrclone sync raff:source-bucket raff:dest-bucket --progressrclone mount raff:my-bucket /mnt/raff # mount a bucket as a filesystem
rclone is excellent for migrating from AWS / DO / Vultr to Raff — point one remote at the source, another at Raff, and rclone sync.
mc alias set raff https://s3.raffusercloud.com YOUR_ACCESS_KEY_ID YOUR_SECRET_ACCESS_KEYmc ls raff/mc cp local.txt raff/my-bucket/uploads/mc mirror ./local-dir raff/my-bucket/pathmc share download raff/my-bucket/uploads/local.txt --expire 1h
mc is the fastest CLI for bulk operations and has good defaults for parallelism.
Every modern SDK transparently switches to multipart upload for files above ~5-10 MB:
The file is split into parts (typically 5-25 MB each).
Parts upload in parallel.
Failed parts retry individually — the whole file doesn’t restart.
The server assembles parts on CompleteMultipartUpload.
You don’t have to think about this for normal use — boto3.upload_file, aws s3 cp, rclone copy, and the JS / Go transfer managers all handle multipart automatically.When hand-rolling multipart (rare), respect the protocol limits:
Minimum part size: 5 MiB (except the last part)
Maximum part size: 5 GiB
Maximum parts per upload: 10,000
Aborted multipart uploads keep their parts billed as storage until cleaned up. Use the Abort Multipart Upload template in bucket policies, or call AbortMultipartUpload from your code, to clean up after failures.
Every SDK can generate a presigned URL: a time-limited HTTPS link that lets anyone download (or upload) without having Raff credentials. The recipient just opens the URL.
Use when
Don’t use when
Email a one-off download link
Permanent public assets (use a public bucket / object instead)
Limit a third-party’s access to one file with a deadline
You need to revoke before expiry (you can’t — only key rotation revokes)
See examples above for boto3, the AWS SDK v3 (getSignedUrl), aws-cli (s3 presign), and mc share. The mechanism and signing semantics are identical to AWS S3.
Update your application’s endpoint, region, and credentials.
Remove any code that calls AWS-only features — see S3 compatibility.
If you have a sizable migration coming, support can help — we can run the migration end-to-end and hand you a working Raff bucket with your data in place.