all112 API
Your ledger is yours. The all112 API covers everything the app can do: timers, entries, categories, budgets, the Hour Audit, and weekly reports — plus signed webhooks and an MCP server for AI tools. An active all112 plan (trial included) is required.
Authentication
Create a personal access token in the app under Settings → API tokens. Tokens start with a112_, carry read or read/write scope, and are shown exactly once. Send them as a bearer:
curl https://all112.bravely.dev/api/v1/status \
-H "Authorization: Bearer a112_..."Base URL, errors, limits
- Base URL:
https://all112.bravely.dev/api/v1 - Errors are
{ "error": "code" }with a meaningful HTTP status. 402 means the plan lapsed; 503 means the entitlement source is briefly unavailable — retry, it never means unentitled. - Rate limits are generous by design: bursts to 120 requests/minute, roughly 600 an hour sustained. 429 responses carry
Retry-After. - Timestamps are ISO-8601 UTC. Budgets are integer half-hours; weeks are ISO weeks in your account timezone.
Timers
null.Entries
Categories, audit, reports
Webhooks
Manage under Settings → Webhooks (or /webhooks endpoints). Events: timer.started, timer.stopped, entry.created, entry.updated, entry.deleted, category.*, week.closed — or * for everything. Deliveries retry on a 1m/10m/30m/72h ladder and pause after repeated failures. Every delivery is signed:
X-All112-Signature-256: sha256=<hex HMAC-SHA256 of the raw body, keyed by your webhook secret>
// verify (node)
const expected = "sha256=" + crypto.createHmac("sha256", secret).update(rawBody).digest("hex");
const ok = crypto.timingSafeEqual(Buffer.from(header), Buffer.from(expected));MCP server
Point any MCP-capable AI tool at https://all112.bravely.dev/api/mcp with your token as a bearer. Tools: current_timer, start_timer, stop_timer, list_categories, log_entry, week_report, status. For Claude Code:
claude mcp add all112 https://all112.bravely.dev/api/mcp \
--transport http \
--header "Authorization: Bearer a112_..."Questions or a use case the API does not cover yet? Email support@bravely.dev.