Skip to main content

Documentation Index

Fetch the complete documentation index at: https://learn.breezing.io/llms.txt

Use this file to discover all available pages before exploring further.

The Breezing Public API gives you programmatic access to your crypto accounting data. Use it to build custom integrations, automate workflows, or connect AI agents to your Breezing workspace.

Authentication

All API requests require a Bearer token in the Authorization header. API keys use the brz_ prefix.
curl -H "Authorization: Bearer brz_your_api_key" \
  https://api.breezing.io/v1/companies
Each API key carries a per-company access level: read (GET only) or write (GET, POST, PATCH, DELETE). Calls to write endpoints with a read-only key return 403 FORBIDDEN.

Creating an API Key

API keys are managed at the user level. A single key can span multiple companies with specific read or write access per company. To create one, open the profile menu in the top-right corner and select Account Settings: Open the profile menu in the top-right corner of Breezing and select Account Settings Then open the API Keys tab and click Create API Key: Account Settings > API Keys tab in Breezing where you create and manage API keys Copy your API key immediately after creation. It won’t be shown again. Use the brz_ prefixed key as a Bearer token in all API requests.

Base URL

All endpoints are served from:
https://api.breezing.io/v1

Finding org_id and company_id

Every endpoint except GET /companies requires org_id and company_id as query parameters. Start by calling GET /companies to list every company your API key can access. Each entry returns its id, orgId, and accessLevel.
curl -H "Authorization: Bearer brz_your_api_key" \
  https://api.breezing.io/v1/companies
Then pass those IDs on every other call:
curl -H "Authorization: Bearer brz_your_api_key" \
  "https://api.breezing.io/v1/company?org_id=1&company_id=1"
Calls missing org_id or company_id, or using IDs your API key isn’t assigned to, return 400 BAD_REQUEST or 403 FORBIDDEN.

Rate Limits

The Breezing API currently allows up to 600 requests per minute. If you hit the limit, back off briefly and retry your request.

Pagination

GET /transactions, GET /assets, GET /contacts, GET /reports, and GET /rules use cursor-based pagination:
  • cursor: the ID of the last item from the previous page (omit for the first page)
  • limit: number of items to return per page (1 to 100)
The response includes a pagination object:
  • pagination.limit: number of records requested
  • pagination.cursor: the cursor value for the current page, or null
  • pagination.has_more: whether another page of results is available

Error Responses

Errors return success: false and an error object with code and message:
{
  "success": false,
  "error": {
    "code": "unauthorized",
    "message": "Invalid or missing API key"
  }
}
Status CodeMeaning
400Bad request: invalid parameters or request body
401Unauthorized: invalid or missing API key
403Forbidden: insufficient access level or no access to company
404Not found: resource does not exist
409Conflict: resource is locked or already exists
429Too Many Requests: rate limit exceeded
500Internal server error

Resources

Companies

List the companies your API key can access. Start here to find org and company IDs.

Company

Retrieve a company’s accounting configuration, chart of accounts, and integration status.

Transactions

List, filter, and update crypto transactions with full accounting details.

Wallets

View, create, and sync connected wallets, exchange accounts, and blockchain addresses.

Assets

Browse token assets and manage their GL account mappings.

Balances

Get aggregated token balances across wallets with fiat valuations.

Contacts

Label counterparty addresses with names to clarify transaction parties.

Active Issues

Surface uncategorized transactions, missing prices, and broken syncs blocking the close.

Reports

Run and inspect Breezing reports for token, account, and explorer balance reconciliation.

Rules

Manage automation rules that auto-categorize transactions based on conditions.

Tasks

Track active background tasks like wallet syncs, report generation, and rule application.

Gain/Loss

Recompute realized and unrealized net gain or loss across crypto transactions.

Xero

Refresh Xero accounts and tracking categories, then sync crypto transactions as journal entries.

QuickBooks

Refresh QuickBooks accounts, classes, and entities, then sync crypto transactions as journal entries.

Bexio

Refresh Bexio accounts and sync crypto transactions as journal entries.
Last modified on May 3, 2026