Skip to content

Addis Ababa, Ethiopia. Support on 6993.MCP ready. Attach your agents 100% self-service. Sign up using google or phone number. No sales call to get started

System status

S3-compatibleobject storage

Buckets on AletCloud's storage fabric, reached at one endpoint with the tools you already use. Change the endpoint and the region, and code written against AWS keeps working.

From 5 GB at 50 ETB a month, in et-addis-1.

A bucket, a key, and the tool you already have.

Nothing here is an AletCloud client library. The endpoint speaks S3, so the four steps end with the same commands and SDK calls you would write against anybody else's storage.

01

Create the bucket

A name, a capacity and whether the objects are readable by anyone. Versioning is a switch at creation, and the bucket exists by the time the dialog closes.

Bucket name

shop-media

3 to 63 characters, lowercase letters, numbers and hyphens. It cannot start or end with a hyphen.

Storage tier

5 GB50 ETB/mo10 GB90 ETB/mo50 GB400 ETB/mo100 GB750 ETB/mo
PrivateOnly your access keys read and writePublic readObjects are readable over the internet
Object versioningKeep previous versions of overwritten objects

02

Scope a key to it

Each key pair reaches this bucket and no other bucket on the account, so an app, a script or an agent gets its own and loses it the moment you revoke it. The secret is shown once, at the moment it is made.

Access keysshop-media
key label, optionalGenerate key
shop-web-uploadAK01M4K7P2QX9TZD6RWBRevoke

Revoking one key leaves every other key on the bucket working.

03

Point your tools at it

Two environment variables and the AWS CLI, boto3, the JavaScript SDK or s3cmd are talking to Addis instead of Virginia. For a one-off handover, a presigned URL gives somebody an hour on a single object without a key.

export AWS_ENDPOINT_URL=https://s3.aletcloud.com
export AWS_REGION=et-addis-1

$ aws s3 cp poster.jpg s3://t01-shop-media/
upload: ./poster.jpg to s3://t01-shop-media/poster.jpg
Presigned URLGET, one hour

https://s3.aletcloud.com/t01-shop-media/poster.jpg?X-Amz-Expires=3600

04

Wire it into an app

Pick a hosted app and the console mints a key, writes the five variables into its environment and redeploys it. Nothing is copied through a clipboard, and the secret never leaves the platform.

shop-webEnvironment
AWS_ACCESS_KEY_ID
AK01M4K7P2QX9TZD6RWB
AWS_SECRET_ACCESS_KEY
written once, hidden
AWS_ENDPOINT_URL
https://s3.aletcloud.com
AWS_REGION
et-addis-1
S3_BUCKET
t01-shop-media

Redeployed, and reading from the bucket on the next request.

What every bucket carries.

All seven on the 5 GB bucket and on the 100 GB one. Nothing here is held back for the larger tiers.

S3-compatible API

Works with the AWS SDKs, the CLI, s3cmd and anything else that speaks S3. The endpoint and the region change; the code does not.

Buckets in seconds

Name it, pick a capacity, and there is an endpoint and a key pair waiting. Uploading can start before you have finished reading this card.

Scoped access keys

Issue a key pair per app or per agent and revoke it on its own. A key reaches the bucket it was made for and nothing else on the account.

Public or private

Serve assets straight off a public URL, or keep the bucket closed and hand out presigned links that expire. The setting is per bucket and changes whenever.

One-click app wiring

Connect a bucket to a hosted app and the S3 variables are written into its environment and the app redeployed, with no secret passing through you.

Local and low latency

The objects sit in Addis Ababa, a few milliseconds from anyone in the country and inside Ethiopian jurisdiction rather than under somebody else.

Work from your AI IDECreate buckets, issue keys and manage storage from Claude Code, Cursor or Codex over MCP.Agents over MCP

Pricing

Top up through chapa.

5 GB

50ETB a month

10 ETB per GB a month

Documents and a small media library

Create a bucket

10 GB

90ETB a month

9 ETB per GB a month

An app serving its own images

Create a bucket

50 GB

400ETB a month

8 ETB per GB a month

Uploads from a user base

Create a bucket

100 GB

750ETB a month

7.50 ETB per GB a month

Video, archives and backups

Create a bucket
The tier is the bucket, not the account
Every bucket carries its own capacity and its own monthly figure, so a 5 GB bucket for invoices sits next to a 100 GB one for video without either paying for the other.
Change tier whenever
Up at any time. Down as well, as long as what is already stored fits inside the smaller tier. The endpoint, the bucket name and the keys are untouched by it.
Requests are not metered
What is billed is the tier. Reads, writes and presigned links are not counted against it, and traffic between a bucket and an app or a server on AletCloud never leaves the data centre.
Deleting is deleting
Removing a bucket removes every object in it and cannot be undone. Versioning keeps the older copy of an overwritten object, not of a deleted bucket.

Questions people ask

Short answers to the ones that come up most. For anything else, call 6993 and a person answers.

Ask us something else
Is it really S3-compatible?

Yes. It speaks the S3 API, so the AWS SDKs, the AWS CLI, s3cmd and most S3 libraries work once they are pointed at the AletCloud endpoint, region and keys. The code does not change.

How is a bucket billed?

By its tier. Each bucket carries its own capacity and its own monthly figure, from 5 GB at 50 ETB a month, charged by the minute from the wallet. Reads, writes and presigned links are not counted. Buckets and access keys are unlimited.

Can I serve public files or a website?

Yes. Set a bucket to public read and its objects answer on a public URL. Keep it private and hand out presigned links that expire. The setting is per bucket and changes whenever you want.

Start building locally.

13 ETB buys you an afternoon. Signup is a phone number and one SMS.

If it does not work the way this page says it does, call 6993 and say so.