Tools & SDKs
AWS CLI
The AWS CLI talks S3 out of the box. The only change from real S3 is pointing it at the gateway URL and forcing path-style addressing.
Profile
[profile uploom]
region = us-east-1
output = json
endpoint_url = https://s3.uploom.io
s3 =
addressing_style = path And credentials in ~/.aws/credentials:
[uploom]
aws_access_key_id =
aws_secret_access_key = Try it
AWS_PROFILE=uploom aws s3 ls
# 2026-06-13 13:42:53 bucket-a
# 2026-06-13 13:42:53 bucket-b
AWS_PROFILE=uploom aws s3 ls s3://bucket-a/
AWS_PROFILE=uploom aws s3 cp ./photo.jpg s3://bucket-a/photos/2026/
AWS_PROFILE=uploom aws s3 cp s3://bucket-a/photos/2026/photo.jpg ./photo.jpg Making it the default
To use the gateway for all S3 commands, set the
AWS_ENDPOINT_URL_S3 environment variable:
export AWS_ENDPOINT_URL_S3=https://s3.uploom.io
export AWS_PROFILE=uploom Troubleshooting
- "The bucket does not exist" — the CLI is using
virtual-host style. Force path style in the profile:
s3.addressing_style = path. - SSL errors — make sure
AWS_CA_BUNDLEisn't pointing at a stale cert (only relevant for self-hosted gateways). - Clock-skewed — sync with NTP.