API Reference

Introduction

Welcome to the ZeroDrive API reference.

API Reference Introduction

Complete reference documentation for the ZeroDrive REST API.

Base URL

All endpoints are relative to this base URL.

API Overview

The ZeroDrive API is organized into the following categories:

Files

EndpointMethodDescription
/filesGETList all files
/files/uploadPOSTUpload files directly
/files/{fileId}GETGet file details
/files/{fileId}PATCHUpdate file (rename, star)
/files/{fileId}DELETEDelete file
/files/{fileId}/downloadGETGet download URL
/files/{fileId}/movePUTMove file to folder
/files/{fileId}/sharePOSTShare file with users
/files/{fileId}/signed-urlGETGenerate signed URL
/files/{fileId}/fetchGETFetch file content

Folders

EndpointMethodDescription
/foldersGETList all folders
/folders/createPOSTCreate folder
/folders/{folderId}GETGet folder details
/folders/{folderId}PATCHUpdate folder
/folders/{folderId}DELETEDelete folder
/folders/{folderId}/movePUTMove folder
/folders/{folderId}/sharePOSTShare folder

Workspaces

EndpointMethodDescription
/workspacesGETList workspaces
/workspacesPOSTCreate workspace
/workspaces/{workspaceId}GETGet workspace
/workspaces/{workspaceId}PATCHUpdate workspace
/workspaces/{workspaceId}DELETEDelete workspace
/workspaces/{workspaceId}/membersGETList members
/workspaces/{workspaceId}/membersPOSTAdd member
/workspaces/{workspaceId}/members/{memberId}DELETERemove member
/workspaces/{workspaceId}/filesGETList workspace files
/workspaces/{workspaceId}/files/uploadPOSTUpload file to workspace
/workspaces/{workspaceId}/foldersGETList workspace folders
/workspaces/{workspaceId}/foldersPOSTCreate folder in workspace
/workspaces/{workspaceId}/folders/{folderId}GETGet workspace folder
/workspaces/{workspaceId}/folders/{folderId}PATCHUpdate workspace folder
/workspaces/{workspaceId}/folders/{folderId}DELETEDelete workspace folder

Trash

EndpointMethodDescription
/trashGETList trashed items
/trash/restorePOSTRestore items
/trash/emptyDELETEEmpty trash

Request Format

Headers

All authenticated requests require:

For JSON body requests:

For file uploads:

Query Parameters

Common query parameters for list endpoints:

ParameterTypeDefaultDescription
limitinteger50Max items per page
offsetinteger0Items to skip
sortBystringupdatedAtSort field
sortOrderstringdescasc or desc

Request Body

JSON request bodies should be properly formatted:

Response Format

Success Response

Error Response

Pagination

List endpoints return paginated results:

HTTP Status Codes

CodeNameDescription
200OKRequest succeeded
201CreatedResource created
204No ContentSuccess with no body
400Bad RequestInvalid request data
401UnauthorizedMissing/invalid auth
403ForbiddenInsufficient permissions
404Not FoundResource doesn't exist
409ConflictResource conflict
413Payload Too LargeFile/storage limit exceeded
429Too Many RequestsRate limit exceeded
500Internal Server ErrorServer error

Error Codes

Common error codes returned in error responses:

CodeDescription
UNAUTHORIZEDAuthentication required
FORBIDDENPermission denied
NOT_FOUNDResource not found
VALIDATION_ERRORInvalid input data
STORAGE_EXCEEDEDStorage quota exceeded
FILE_TOO_LARGEFile size limit exceeded
RATE_LIMITEDToo many requests
DUPLICATEResource already exists
TOKEN_EXPIREDAuth token expired

Rate Limits

OperationLimitWindow
Read (GET)1001 minute
Write (POST/PUT/PATCH/DELETE)301 minute

When rate limited, you'll receive:

Headers included:

CORS

The API supports CORS for browser-based applications. Allowed origins must be configured in your account settings.

Webhooks

Webhooks can be configured to receive real-time notifications for:

  • File uploads
  • File shares
  • Workspace events

Configure webhooks in Settings > Developer > Webhooks.

SDKs & Tools

Official Tools

Community SDKs

Community-maintained SDKs may be available. Check GitHub for options.

Changelog

v1 (Current)

  • Initial API release
  • File and folder management
  • Workspace collaboration
  • Trash management
  • API key authentication

Next: Authentication