Base URL
Authentication
Most endpoints require a Bearer token:POST /v0/drives/provision) does not require authentication.
Response format
All responses follow this structure:Standard headers
Every response includes:| Header | Description |
|---|---|
X-Request-Id | Unique request identifier |
X-RateLimit-Limit | Max requests per minute |
X-RateLimit-Remaining | Remaining requests |
X-RateLimit-Reset | Seconds until limit resets |
Endpoints
Drives
POST /v0/drives/provision— Provision a drive (no auth required)POST /v0/drives/claim— Claim an unclaimed drivePOST /v0/drives— Create a drive (dashboard users)GET /v0/drives— List drives (supports?slug=query)GET /v0/drives/:id— Get a driveDELETE /v0/drives/:id— Delete a drive
Files
POST /v0/files— Upload a fileGET /v0/files— List filesGET /v0/files/:id— Get file infoGET /v0/files/:id/download— Download a filePATCH /v0/files/:id— Update a fileDELETE /v0/files/:id— Delete a filePOST /v0/files/:id/copy— Copy a filePOST /v0/files/:id/move— Move a filePOST /v0/files/bulk-delete— Bulk delete filesPOST /v0/files/:id/extract— Extract file contentPOST /v0/files/:id/presigned-url— Generate presigned URLGET /v0/search— Search files
Folders
POST /v0/folders— Create a folderDELETE /v0/folders— Delete a folder
API Keys
POST /v0/keys— Create a keyGET /v0/keys— List keysDELETE /v0/keys/:id— Revoke a key
Account
GET /v0/account— Account infoGET /v0/account/usage— Usage stats
Slug support
Anywhere adrive_id parameter is accepted (query params, request body), you can pass a drive slug instead of a UUID:
