Objects
Objects live under a private namespace per key. Paths are yours to choose — use / to
nest folders. Base URL: https://app.cloudbox.biz/api/v1.
Store an object
PUT
/api/v1/objects/{path}Uploads (or overwrites) the object at {path}. Body is the raw bytes.
curl -X PUT https://app.cloudbox.biz/api/v1/objects/reports/q3.pdf \
-H "Authorization: Bearer $CLOUDBOX_SECRET" \
--data-binary @q3.pdf
{ "ok": true, "path": "reports/q3.pdf", "size": 48213, "used_bytes": 48213 }
Fetch an object
GET
/api/v1/objects/{path}curl https://app.cloudbox.biz/api/v1/objects/reports/q3.pdf \
-H "Authorization: Bearer $CLOUDBOX_SECRET" -o q3.pdf
Returns the raw bytes with a Content-Disposition filename, or 404 if not found.
Delete an object
DELETE
/api/v1/objects/{path}curl -X DELETE https://app.cloudbox.biz/api/v1/objects/reports/q3.pdf \
-H "Authorization: Bearer $CLOUDBOX_SECRET"
{ "ok": true, "deleted": "reports/q3.pdf" }
List objects
GET
/api/v1/objects?prefix={prefix}curl "https://app.cloudbox.biz/api/v1/objects?prefix=reports" \
-H "Authorization: Bearer $CLOUDBOX_SECRET"
{ "objects": [ { "name": "q3.pdf", "size": 48213, "modified": "2026-07-19T09:12:00Z" } ] }
Who am I
GET
/api/v1/whoamiReturns the key's label, scope, quota and usage — handy for a health check.
{ "key_id": "cbk_1a2b3c", "label": "prod-backups", "scope": "read write", "quota_bytes": 0, "used_bytes": 48213 }
