Back

Blog details

AIOZ Storage CLI Quickstart: AWS CLI with a Custom Endpoint

AIOZ Network
4 min readAugust 16, 2026
aioz-storage

Same pattern as every other AIOZ Storage integration this series has covered: there's no AIOZ-specific command-line tool. AIOZ's own CLI documentation is a single flag, --endpoint-url https://s3.aiozstorage.network, added to the standard AWS CLI. This quickstart covers configuring the AWS CLI once, then every bucket and object operation AIOZ's docs list.

TL;DR:

  • Install and configure the standard AWS CLI (aws configure), the same tool used against Amazon S3 itself.
  • Every command follows the pattern aws s3 --endpoint-url https://s3.aiozstorage.network [operation], nothing else changes.
  • AIOZ's own CLI docs don't mention addressing_style at all, unlike the SDKs, which all explicitly require path-style requests, worth knowing if a command ever fails with a hostname-resolution error.

Installing and Configuring the AWS CLI

AIOZ's CLI documentation points directly to AWS's own install and configuration guides, there's no AIOZ-specific installer:

# Install (see AWS's official guide for your OS)
# https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html

aws configure

aws configure asks for an access key ID, secret access key, default region, and output format. Use the access key and secret from your AIOZ Storage access grant (the same credential pair the SDKs authenticate with) and any region string, AIOZ Storage isn't region-partitioned, so the value doesn't route anything, it just needs to be present.

The Endpoint Flag Every Command Needs

AIOZ Storage's S3 endpoint is https://s3.aiozstorage.network. Every aws s3 command in this guide passes it explicitly with --endpoint-url:

aws s3 --endpoint-url https://s3.aiozstorage.network ls

If you're running many commands in one session, exporting it once saves retyping:

export AWS_ENDPOINT_URL=https://s3.aiozstorage.network
aws s3 ls

AWS_ENDPOINT_URL is a standard AWS CLI v2 environment variable, not an AIOZ-specific one, it works the same way against any S3-compatible endpoint.

Terminal window showing lines of command-line code

Bucket Operations

# Create a bucket
aws s3 --endpoint-url https://s3.aiozstorage.network mb s3://my-bucket

# List your buckets
aws s3 --endpoint-url https://s3.aiozstorage.network ls

# Delete an empty bucket
aws s3 --endpoint-url https://s3.aiozstorage.network rb s3://my-bucket

rb only removes empty buckets by default. Add --force to delete a bucket and everything in it in one step, the same behavior as against Amazon S3.

Object Operations

# List objects in a bucket
aws s3 --endpoint-url https://s3.aiozstorage.network ls s3://my-bucket

# Upload a file
aws s3 --endpoint-url https://s3.aiozstorage.network cp ./local-file.txt s3://my-bucket

# Download a file
aws s3 --endpoint-url https://s3.aiozstorage.network cp s3://my-bucket/local-file.txt ./downloaded.txt

# Copy an object within AIOZ Storage
aws s3 --endpoint-url https://s3.aiozstorage.network cp s3://my-bucket/file.txt s3://my-bucket/file-copy.txt

# Delete one object
aws s3 --endpoint-url https://s3.aiozstorage.network rm s3://my-bucket/local-file.txt

# Delete every object under a prefix
aws s3 --endpoint-url https://s3.aiozstorage.network rm s3://my-bucket/ --recursive

cp handles both directions based on which side of the command has the s3:// prefix, upload when it's the destination, download when it's the source. There's no separate upload/download command to remember.

Close-up of code displayed on a computer screen

If a Command Fails to Resolve the Endpoint

AIOZ's CLI docs list these commands with no additional configuration beyond --endpoint-url, and the AWS CLI's default addressing_style is auto, which falls back from virtual-hosted-style (bucket.endpoint/key) to path-style (endpoint/bucket/key) automatically for bucket names that aren't valid as DNS labels. That covers most cases. If you hit a hostname-resolution error on an otherwise-valid bucket name, force path style explicitly the same way the JavaScript, Python, and Go SDKs all require it:

# ~/.aws/config
[profile aioz-storage]
region = us-east-1
s3 =
    addressing_style = path

Then run commands with --profile aioz-storage, or set AWS_PROFILE=aioz-storage.

Frequently Asked Questions

Is there a dedicated AIOZ Storage CLI?
No. AIOZ Storage's S3-compatible API works with the standard AWS CLI, pointed at a custom endpoint with --endpoint-url https://s3.aiozstorage.network.

Do I need a separate account or API key for the CLI versus the SDKs?
No, the same access grant credentials (access key ID and secret access key) work for the CLI, the SDKs, and Postman.

Can I avoid retyping --endpoint-url on every command?
Yes, export AWS_ENDPOINT_URL=https://s3.aiozstorage.network once per shell session, or set a named profile's config to always use it.

Does aws s3 rb delete a bucket that still has files in it?
No, not by default. Add --force to delete the bucket and its contents together.

Do I need to set addressing_style to path for the CLI, like the SDKs require?
AIOZ's own CLI docs don't mention it, and the CLI's default auto mode falls back to path style automatically for DNS-incompatible bucket names. If a command fails to resolve the endpoint on a valid bucket name, setting addressing_style = path explicitly in your AWS config profile is the same fix the SDKs require by default.

Does aws s3 cp sync entire folders, or only single files?
cp handles both, add --recursive to copy a whole local directory or an entire bucket prefix in one command.

References

We only send updates when meaningful changes ship, and you can unsubscribe anytime

Related Content

blog thumbnail

What AI Agent Sandboxes on Modal and E2B Actually Store

AI agent sandboxes need external storage for files that outlive the sandbox. Real providers like Modal and E2B mount S3-compatible buckets, AIOZ Storage included.

aioz-storage
6 min readAugust 22, 2026
blog thumbnail

Offloading LangGraph Agent Checkpoints to AIOZ Storage

AIOZ storage can back LangGraph's S3 checkpoint offload tier, but not the whole backend. Here is the real DynamoDB-plus-S3 setup and its credential gap.

aioz-storage
6 min readAugust 21, 2026
blog thumbnail

AIOZ Storage as a Dataset and Model-Output Backend

AIOZ storage for AI datasets means S3-compatible buckets for training data and model outputs, no native versioning or lifecycle policies. Here is the honest scope.

aioz-storage
6 min readAugust 20, 2026
blog thumbnail

AIOZ Storage for AI and Data Pipelines: What's Real

AIOZ storage for AI workloads means S3-compatible object storage for datasets, checkpoints, and model outputs. No vector database. Here is what is real.

aioz-storage
6 min readAugust 19, 2026
blog thumbnail

Managing Team Access and Sub-Users on AIOZ Storage

Add AIOZ storage team members through the dashboard's 3-step wizard: name and password, per-bucket permissions, and a one-time credential download.

aioz-storage
6 min readAugust 18, 2026
blog thumbnail

Calling AIOZ Storage's S3 API Directly with Postman

No Postman collection to import. AIOZ Storage docs show building raw S3 requests by hand, authenticated with AWS Signature and your access grant keys.

aioz-storage
4 min readAugust 17, 2026