Vaze
API Reference

Overview

Authentication, conventions, and the response envelope

Vaze exposes a REST API under /api on your instance. Anything you can do in the dashboard, you can do over HTTP from any language.

https://<your-vaze-instance>/api

Authentication

Create an API key from the API Keys page in the dashboard, then send it in the API-Key header on every request:

curl https://files.example.com/api/files \
  -H "API-Key: your-api-key"

Requests without a valid key receive a 401 response:

{ "data": null, "error": { "message": "Unauthorized" } }

The only endpoints that skip authentication are the health check and the public file hosting endpoint.

Response envelope

Every JSON endpoint responds with the same envelope:

// success
{ "data": { ... }, "error": null }

// failure
{ "data": null, "error": { "message": "File not found" } }

Errors also carry a meaningful HTTP status code:

StatusMeaning
400Invalid input (missing fields, invalid names)
401Missing or invalid API key
404File or folder not found
409Name conflict (rename to an existing name)
500Unexpected server error

List query parameters

Endpoints that return lists of files accept these query parameters:

ParameterDefaultDescription
limitunlimitedMaximum number of files to return
offset0Number of files to skip (for pagination)
orderBycreatedAtOne of createdAt, updatedAt, name, size
orderDirectionDESCASC or DESC

Health check

GET /api/health — no authentication required. Useful for uptime monitoring and container health checks:

{ "data": { "message": "Vaze is running!" }, "error": null }

Endpoints

On this page