API reference and webhooks
Contacts, work items, time entries, invoices, users and webhook subscriptions.
API documentation on the API Applications page lists every endpoint, what it does and the scope it needs. Download the OpenAPI document gives the same in a machine-readable file.

Requests
Section titled “Requests”- Send both credentials with every request:
Authorization: Bearer {authorization token}andAccessKey: {access key}. JSON bodies useapplication/json. - The base URL is your BMS address. The documentation page shows the address of the server you are on.
- Lists return
@odata.countandvalue, plus@odata.nextLinkwhen there is more. They accept$filter,$orderby,$top(at most 100) and$skip. - Each application may make 120 requests a minute; beyond that the answer is 429 with Retry-After.
Webhooks
Section titled “Webhooks”Subscribe with POST /v3/WebhookSubscriptions, or from the application’s Manage page.
- Changes are sent after a 60-second window, as a POST of
{ResourcePermaKey, ResourceType, ActionType, TimeStamp}. - If the subscription has a signing key, a Signature header carries a hex HMAC-SHA256 of the body.
- A failed delivery is retried with growing waits. Ten failures in a row cancel the subscription.