Volumes API
Manage persistent volumes. See Volumes for the conceptual model.
Endpoints
Section titled “Endpoints”| Method | Path | Description |
|---|---|---|
POST |
/volumes |
Create a volume |
GET |
/volumes |
List volumes |
DELETE |
/volumes/{id} |
Delete a volume |
All requests require Authorization: Bearer <token> and project scoping.
The volume object
Section titled “The volume object”{ "id": "…", "project_id": "…", "name": "app-data", "size": 10737418240, "tags": { "team": "core" }, "created_at": 1720000000, "updated_at": 1720000123}| Field | Type | Description |
|---|---|---|
name |
string | Friendly volume name |
size |
int | Size in bytes (e.g. 10737418240 = 10 GB) |
tags |
object | Optional key: value metadata |
Create a volume
Section titled “Create a volume”curl -X POST https://api.cumin.dev/volumes \ -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/json" \ -d '{ "project_id": "…", "name": "app-data", "size": 10737418240 }'Response:
{ "id": "…" }List volumes
Section titled “List volumes”curl https://api.cumin.dev/volumes \ -H "Authorization: Bearer $TOKEN"Delete a volume
Section titled “Delete a volume”curl -X DELETE https://api.cumin.dev/volumes/<volume-id> \ -H "Authorization: Bearer $TOKEN"Mounting a volume
Section titled “Mounting a volume”Volumes are used by referencing their id in an app’s mounts list. See the
Apps API for the full app payload.
Next steps
Section titled “Next steps”- Volumes — when to use volumes vs. S3
- Apps API — mount volumes into apps
- PostgreSQL API — databases are backed by a volume