The API the console runs on
One registry of operations produces the REST route, the MCP tool and the OpenAPI document, so what your code can do and what an assistant can do are the same list, except the operations that are REST only (11 of the 333) and those that take scopes an API key can hold and an assistant cannot, such as recording or refunding a payment. An assistant is offered 323 tools: the operations its scopes allow, plus search and fetch. Writes make drafts. Sending is a request for both: an API key’s waits for a signed-in person, and an assistant’s follows its connection’s mode. In Ask, the default, each request waits for a signed-in person to approve it; Plan is a dry run that saves, sends and charges nothing; in Auto, which only the workspace owner can switch on for a connection (signing in again with a second factor, on a plan with auto-approve rules), the owner’s capped rule approves the requests it covers, and for a connected assistant refunds, voids, card or bank entry and the other never-auto requests still wait for a person.
curl -X POST "https://api.billingmart.com/v1/invoices" \
-H "Authorization: Bearer $BILLINGMART_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"businessId": "<businessId>",
"clientId": "<clientId>",
"lineItems": [{
"description": "Panel upgrade, 200 A",
"quantityMilli": 1000,
"rateBasis": "fixed",
"unitPrice": { "minorUnits": 185000, "currency": "USD" }
}]
}'
# 201 → { "data": { "id": "…", "status": "draft", "totals": { … } },
# "meta": { "requestId": "…" } }- operations
- 333
- reference sections
- 14
- MCP tools, every scope granted
- 323
- scopes that routes name
- 41
Guides
Read these before you write code
Seven short guides. Each one is the rules a part of the platform follows, and why.
REST API
One base URL, one envelope, integer money, idempotent writes, and limits that answer with a number instead of a timeout.
Authentication
An API key is for a server you run. An OAuth grant is for an app a person connects, and it can never hold more than that person may do.
MCP server
Every tool is a REST v1 call under the connecting person’s grant. Anything that sends or moves money becomes a request, and the connection’s mode — Ask, Plan or Auto — decides who approves it.
Connect an assistant
Claude and Claude Code, ChatGPT with a custom connector, Gemini Enterprise, Gemini Business and the Gemini CLI. Each page says which steps we have run against the platform and which we have not.
Webhooks
BillingMart signs every delivery with a secret that is shown to you once and kept sealed on our servers, retries with backoff, and keeps a log of every attempt.
Tax categories
Read the categories, ask for a suggestion, and read each record’s category. A suggestion is a draft: a person confirms it, in the console or the app.
Work records
Read the record type first, send each answer in the form its question takes, check before you move a record, and upload a document in three calls. Activating, issuing and delivering stay with a person.
API reference
333 operations, 14 sections
Parameters, request bodies, what each route returns and the scope it needs, generated from the document the server publishes.
Workspace and access
31 routesClients
7 routesInvoices
53 routesEstimates
6 routesPayments
18 routesRecurring and automation
7 routesTime, expenses, mileage and documents
25 routesBills and vendors
19 routesReports and exports
20 routesTemplates and pay themes
11 routesMessages and activity
8 routesActions and approvals
109 routesWebhooks
9 routesWork setup and job types
10 routes
Four ways in
Every surface uses the same rules
The console, the Agent, your code and your assistant all reach the same server, which decides every total and every permission.
The console
Invoices, payments, approvals and settings in the browser at app.billingmart.com.
BillingMart Agent
A chat inside the console that works through the same tools, with approvals built in.
REST API
Every operation over HTTPS with an API key, described by an OpenAPI 3.1 document.
Your own assistant
Claude, ChatGPT and Gemini clients connect over MCP at https://api.billingmart.com/mcp. The connect guide marks which client steps we have run.
Start in the sandbox
Create a bmk_test_ key in the console. It only reaches your sandbox workspace, so nothing you try reaches a customer.