Volumes
AuthorizationBearer <token>Bearer project API key.
Scope: read:volumes
limit?integerMaximum number of items to return, 1–200 (default 100)
int641 <= value <= 200100cursor?stringOpaque continuation token returned as next_cursor by a previous request
The page of volumes
application/json- response
Response envelope for GET /volumes.
next_cursor?|The opaque continuation token, or null on the last page.
volumes*array<>The volumes in this page.
curl -X GET 'https://example.com/volumes'{ "next_cursor": "string", "volumes": [ { "created_at": "2019-08-24T14:15:22Z", "error": "string", "id": "string", "last_used_at": "2019-08-24T14:15:22Z", "name": "string", "options": {}, "size_gib": 0, "status": "ready", "type": "disk", "updated_at": "2019-08-24T14:15:22Z", "used_bytes": 0, "used_bytes_at": "2019-08-24T14:15:22Z" } ]}AuthorizationBearer <token>Bearer project API key.
Scope: write:volumes
application/json- body
bucket?|Settings for an existing bucket. Omit them to create a managed bucket.
name*stringThe project-unique volume name.
size_gib?|Scratch size in GiB. Defaults to 100. Disk volumes only — supplying it on a bucket volume is a 400.
int32type?|The volume type. Defaults to disk.
The created volume
application/json- response
A volume available to the project.
created_at*stringWhen the volume was created.
date-timeerror?|The failure detail, or null when the volume has not failed.
id*stringThe volume ID.
last_used_at?|When the volume was last attached, or null when it has not been used.
date-timename*stringThe project-unique volume name.
options?Type-specific options. Disk volumes use an empty object; bucket volumes include their bucket settings and credential secret names.
size_gib?|Scratch capacity in GiB. Disk volumes only — a bucket volume has no
capacity of its own and reports null.
int32status*VolumeStatusThe volume status.
"ready""deleting""deleted""error"type*VolumeTypeThe volume type.
"disk""bucket"updated_at*stringWhen the volume metadata last changed.
date-timeused_bytes?|Logical file usage in bytes, or null before the first usage report.
int64used_bytes_at?|When used_bytes was observed, or null when usage is unknown.
date-timecurl -X POST 'https://example.com/volumes' \ -H 'Content-Type: application/json' \ -d '{ "name": "string"}'{ "created_at": "2019-08-24T14:15:22Z", "error": "string", "id": "string", "last_used_at": "2019-08-24T14:15:22Z", "name": "string", "options": {}, "size_gib": 0, "status": "ready", "type": "disk", "updated_at": "2019-08-24T14:15:22Z", "used_bytes": 0, "used_bytes_at": "2019-08-24T14:15:22Z"}AuthorizationBearer <token>Bearer project API key.
Scope: read:volumes
id*stringThe volume ID or name
id_only?booleanResolve the path value strictly as an ID, without a name fallback.
The volume
application/json- response
A volume available to the project.
created_at*stringWhen the volume was created.
date-timeerror?|The failure detail, or null when the volume has not failed.
id*stringThe volume ID.
last_used_at?|When the volume was last attached, or null when it has not been used.
date-timename*stringThe project-unique volume name.
options?Type-specific options. Disk volumes use an empty object; bucket volumes include their bucket settings and credential secret names.
size_gib?|Scratch capacity in GiB. Disk volumes only — a bucket volume has no
capacity of its own and reports null.
int32status*VolumeStatusThe volume status.
"ready""deleting""deleted""error"type*VolumeTypeThe volume type.
"disk""bucket"updated_at*stringWhen the volume metadata last changed.
date-timeused_bytes?|Logical file usage in bytes, or null before the first usage report.
int64used_bytes_at?|When used_bytes was observed, or null when usage is unknown.
date-timecurl -X GET 'https://example.com/volumes/string'{ "created_at": "2019-08-24T14:15:22Z", "error": "string", "id": "string", "last_used_at": "2019-08-24T14:15:22Z", "name": "string", "options": {}, "size_gib": 0, "status": "ready", "type": "disk", "updated_at": "2019-08-24T14:15:22Z", "used_bytes": 0, "used_bytes_at": "2019-08-24T14:15:22Z"}Deletion is asynchronous. Repeating the request after the deletion completes confirms it without starting another.
AuthorizationBearer <token>Bearer project API key.
Scope: delete:volumes
id*stringThe volume ID or name
id_only?booleanResolve the path value strictly as an ID, without a name fallback.
Accepted: the volume deletion
application/json- response
An accepted asynchronous operation.
id*stringThe ID of the resource the operation acts on.
status*stringThe resource's lifecycle status at acceptance.
curl -X DELETE 'https://example.com/volumes/string'{ "id": "string", "status": "string"}