docubend
Documentation

Usage

What is left, of today's calls and of the account's storage.

Worth a route of its own because every one of these numbers is a thing a caller can be refused for, and finding out what your allowance is by hitting it is a poor way to run a nightly job.

It is also the only way from outside to see that a credential is being answered with its own account's limits rather than a stranger's.

What is left#

GET /api/v1/usage documents:read

Calls made today and storage used, against what each is capped at — so a nightly job can find out before it hits a limit rather than by hitting one. null means no limit.

The allowance is counted per account, not per credential, and resets at midnight UTC.

curl
curl -s https://docubend.com/api/v1/usage \
  -H "Authorization: Bearer $TOKEN"
JavaScript
const r = await fetch(`${BASE}/api/v1/usage`,
  { headers: { Authorization: `Bearer ${TOKEN}` } });
const usage = await r.json();
Python
u = requests.get(f"{BASE}/api/v1/usage",
    headers={"Authorization": f"Bearer {TOKEN}"}, timeout=30).json()

if u["calls"]["left"] is not None and u["calls"]["left"] < 50:
    print("nearly out of calls for today")

Response

200
{
  "ok": true,
  "day": "2026-08-14",
  "calls": {
    "today": 2,
    "allowed": 2000,
    "left": 1998
  },
  "storage": {
    "used": 0,
    "quota": 5368709120,
    "left": 5368709120,
    "largest_file": 536870912
  }
}

What is here#

GET /api/v1 documents:read

This page, as JSON: every route, the scopes, and where the token endpoint is. Useful for poking at the API with curl, and for a client that would rather read the surface than have it hard-coded.

curl
curl -s https://docubend.com/api/v1 -H "Authorization: Bearer $TOKEN"
JavaScript
const r = await fetch(`${BASE}/api/v1`,
  { headers: { Authorization: `Bearer ${TOKEN}` } });
const surface = await r.json();
Python
requests.get(f"{BASE}/api/v1",
    headers={"Authorization": f"Bearer {TOKEN}"}, timeout=30).json()

Response

200
{
  "ok": true,
  "version": 1,
  "docs": "https://docubend.com/api",
  "authentication": {
    "grant": "client_credentials",
    "token_endpoint": "https://docubend.com/auth/oauth/token",
    "use": "Authorization: Bearer <token>",
    "scopes": {
      "…": "as above"
    }
  },
  "read": {
    "…": "every GET route"
  },
  "write": {
    "…": "every POST, PUT and DELETE route"
  }
}