Skip to content
Ahura OS
Get $10 free
All services
Remember

Ahura Store

Persistent files and objects.

Durable storage for anything too big or too long-lived for memory: documents, datasets, model outputs, logs. Agents upload and download directly.

What it does

  • Objects of any size

    Store files from a few bytes to many gigabytes under simple paths.

  • Direct transfer

    Short-lived signed links let agents and your own systems move data without a middleman.

  • Metadata and listing

    Tag, list and find objects without downloading them.

  • Pay for what you use

    Billed for storage and calls only. Delete an object or let it expire and the charge stops.

  • Retention and TTL

    Set a time to live or a keep-until date on any object, and a lifetime on the partition.

  • Three storage classes

    Fast for small hot objects, Standard for everything, Archive for the lowest cost on data you keep.

  • Lifecycle aware

    Objects follow their partition: they freeze, thaw and expire with it.

An agent calls it like this

{ "tool": "store.put", "path": "reports/q3.json", "class": "standard", "content_type": "application/json" }

Interactive simulation

Try Ahura Store

Press Run to send the call. The dashboard shows what it would use in a partition. Simulated: nothing is actually executed.

ahura mcp · ptn_demo_7f3a

# Ask for a signed upload link. The bytes then go straight to storage.

→ POST /mcp

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "store.upload_url",
    "arguments": {
      "path": "reports/q3.json",
      "class": "standard",
      "content_type": "application/json",
      "size": 2457600
    }
  }
}

# List what is there.

→ POST /mcp

{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/call",
  "params": {
    "name": "store.list",
    "arguments": {
      "prefix": "reports/"
    }
  }
}

# Get a signed download link. Signing is local, so it returns at once.

→ POST /mcp

{
  "jsonrpc": "2.0",
  "id": 3,
  "method": "tools/call",
  "params": {
    "name": "store.get",
    "arguments": {
      "path": "reports/q3.json"
    }
  }
}

Ready. Press Run.

ptn_demo_7f3a

Partition · N. Virginia · created just now

Simulated
Activeus-eastRetention hold
Run time
0.0s
0 calls
Size
2.3MB
0.00 ACU used

Services in this partition

  • Store

    0 calls · 0.00 ACU

Spend by service

Ledger

  • No usage yet.

Why it matters

Where Ahura Store beats managing your own buckets.

Object storage is easy to start and hard to run safely: permissions, lifecycles, orphans, links and bills all drift over time.

Buckets you manage

  • Design bucket layout, permissions and lifecycle rules for every project.
  • Hand out credentials or build a service to sign upload and download links.
  • Orphaned files and forgotten test data pile up, with no record of who owns what.
  • Cleaning up when a project ends is a manual job nobody schedules.

Ahura Store

  • Objects are scoped to a partition automatically, private by default, with no policy to write.
  • Short-lived upload and download links come from one call, with multipart handled for you.
  • Hashes, tags and metadata are recorded on every object, and orphans are cleaned up.
  • Set an expiry or retention on any object, and the partition’s end clears the rest.
  • Governance

    Retention and expiry per object, destruction per partition.

  • Integrity

    SHA-256 recorded on commit.

  • Cost

    Three storage classes, billed for what you keep.

  • Reach

    One store:// address works across AI, QC and VM.

Ahura Store keeps the current version of each object. It does not keep a history of overwritten versions.

In depth

What Ahura Store can do.

  • Inline or direct

    Send small objects straight through the tool call, up to 4 MB. For anything larger, ask for an upload link and send the bytes directly.

  • Multipart for big files

    Very large uploads are split into parts automatically, so a multi-gigabyte file is as reliable as a small one.

  • Verified on arrival

    Uploads are committed and checked, and a SHA-256 hash is recorded, so you can prove what you stored.

  • Folders without the baggage

    Slash-separated keys behave like folders. List by prefix, or by folder with a delimiter.

  • Conditional writes

    Write only if the object is unchanged, or only if it does not exist yet. Safe for shared state.

  • Copy, move and tag

    Reorganise within a partition without downloading anything. Attach up to 20 tags and a small metadata map.

  • One address for everything

    Every object has a store:// address that other services accept, so AI, QC and VM can read and write it directly.

  • Private by default

    No object is ever public. Links are short-lived and only ever reach one partition’s files.

Storage classes

Three classes. Pick per object.

Choose how each object is stored. Fast for small and hot, Standard for everything, Archive when you want it cheap and plan to keep it.

  • fast

    Fast

    The quickest reads and writes.

    Object size
    Objects under 100 KB
    Speed
    Fastest
    Cost
    Medium
    Minimum commitment
    None
    • • Small, frequently used objects
    • • Config, prompts and short documents
    • • Anything an agent reads in a tight loop

    Objects of 100 KB or more are not accepted in this class.

  • standard

    Standard

    The default for everything else.

    Object size
    Any size
    Speed
    Medium
    Cost
    Low
    Minimum commitment
    None
    • • Datasets, reports and model output
    • • Files of any size
    • • Most working storage
  • archive

    Archive

    Lowest cost for data you keep.

    Object size
    Any size
    Speed
    Same as Standard
    Cost
    Lowest
    Minimum commitment
    3-month minimum
    • • Records you must keep but rarely change
    • • Completed project outputs
    • • Logs and evidence

    Billed for at least three months, even if you delete sooner.

Storage class comparison
FastStandardArchive
Object sizeUnder 100 KBAnyAny
SpeedFastestMediumMedium
CostMediumLowLowest
Minimum commitmentNoneNone3 months

Set the class when you write an object. Archive is for data you keep, and stays readable at Standard speed. It is separate from freezing a partition, which moves a whole project to long-term cold storage. How freezing works

Pay for what you use

Agents pay only for what they use.

Storage is metered, not rented. An agent pays for the bytes it keeps and the calls it makes, and the charge stops the moment the data is gone.

  • Storage

    Billed for the space your objects occupy, for as long as they exist, at the rate of their class.

  • Requests

    Each upload, download and listing is a priced call. An object nobody touches costs only its storage.

  • Transfer

    Data moved in and out is counted per call, so a large download costs more than a small one.

  • Nothing idle

    No provisioned capacity, no reserved volumes, no minimum spend. The one exception is Archive’s 3-month minimum, which you choose.

Because each call is paid for as it happens, usage is metered against your account, and a spending limit keeps a runaway agent from filling storage. How billing works

Retention and expiry

Decide how long every object lives.

Data you no longer need is a cost and a liability. Ahura Store lets you set its end of life at three levels, and they work together.

  • Object TTL

    Give any object its own time to live. When it expires it is deleted automatically and the meter stops.

    Good for: Scratch files, temporary results, short-lived exports.

  • Object retention

    Set a keep-until date on an object. Until that date it cannot be deleted or overwritten, by anyone, including the agent that wrote it.

    Good for: Records, evidence and anything you are required to keep.

  • Partition TTL

    A partition has its own lifetime. When it ends, the partition is destroyed and every object inside goes with it.

    Good for: Whole projects with a known end date.

How they combine

  • The earlier date wins for deletion. An object with a 7-day TTL in a partition that lives for a year is deleted after 7 days.
  • Retention beats TTL. An object under retention is kept until its keep-until date, even if its TTL or the partition’s lifetime would otherwise remove it. The partition is held frozen until then rather than destroyed.
  • Partition end clears the rest. Everything without a retention hold is destroyed with the partition, and any storage credit still owed is returned.
  • Everything is recorded. Expiry, retention and deletion are logged against the object, which helps with audits and deletion requests.

Archive-class objects keep their 3-month minimum even if a TTL would delete them sooner. More on data retention and compliance

Every call, listed

11 tools your agent can call. Each one is a standard MCP tool with a typed schema and a price shown in tools/list.

Write

store.put
Upload an object inline, with type, tags, metadata and conditions.
store.upload_url
Get a short-lived upload link, with multipart for large files.
store.commit
Finish an upload: verify it and make it visible.
store.copy / store.move
Duplicate or rename an object within the partition.
store.tag
Replace an object’s tags.
store.delete
Delete an object, or a whole prefix in batches.

Read

store.get
Download inline, or receive a link for large objects. Ranges supported.
store.download_url
A short-lived download link, with an optional filename.
store.head
Metadata only.
store.list
List by prefix or folder, with paging.
store.stats
Object count and total size.

Industries using Ahura Store