API keys
Upload from code
Your key authenticates uploads to the storage gateway. Keep it private, anyone with it can store and delete files on your account.
You do not have an API key yet. Create one to start uploading, no wallet needed.
Store a file
Returns the file as JSON with its id, Merkle root and term. Send X-Merkle-Root with your own root and the gateway refuses to store anything that does not match.
List, fetch and prove
Proofs return one 4 KiB chunk with its Merkle path, so a client can check storage without downloading the whole file.
Endpoints
| Method | Path | What it does |
|---|---|---|
| GET | /api/v1/status | Node capacity, limits and hashing parameters. No key. |
| POST | /api/v1/files | Store a raw body. Headers: X-Filename, X-Privacy, X-Merkle-Root, X-Mime. |
| GET | /api/v1/files | Files on your account. |
| GET | /api/v1/files/:id | Public metadata, anchor status and the memo to sign. |
| GET | /api/v1/files/:id/content | The stored bytes, with an X-Merkle-Root header. |
| GET | /api/v1/files/:id/proof?index=n | One chunk and its Merkle proof. |
| POST | /api/v1/files/:id/renew | Extend the term by 30 days. |
| POST | /api/v1/files/:id/anchor | Submit a Solana memo signature for verification. |
| DELETE | /api/v1/files/:id | Remove the bytes from the node. |
| GET | /api/v1/proofs | The public proof ledger. |