Brivio API reference
Exports

Start a csv/xlsx export. Runs in the background; poll GET /exports/{id} or subscribe to export.completed. Needs the exported entity read scope as well (403 SCOPE_REQUIRED names it). Requires Idempotency-Key. (scope: exports:write)

POST
/exports

Authorization

bearerAuth
headerAuthorizationBearer <token>

API key as Bearer token

Header Parameters

Idempotency-Key*string

Required. Retries with the same key replay the first response instead of starting a second job (24 h).

Lengthlength <= 200

Request Body

application/json
  1. body
entity*string

Also requires the entity read scope: invoices_* → invoices:read, contacts → contacts:read, articles → articles:read, stock → inventory:read, trial_balance → accounting:read, expenses → expenses:read.

Value in"invoices_issued""invoices_received""contacts""articles""stock""trial_balance""expenses"
format*string
Value in"csv""xlsx"
scope?

Response Body

OK

application/json
  1. response
data*

An export job. The file itself is never part of this object; fetch it through GET /exports/{id}/download while expires_at is in the future.

error*null
curl -X POST "https://example.com/exports" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "entity": "invoices_issued",    "format": "csv"  }'
{  "data": {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "entity": "invoices_issued",    "format": "string",    "status": "running",    "row_count": 0,    "filename": "string",    "content_type": "string",    "byte_size": 0,    "sha256": "string",    "expires_at": "2019-08-24T14:15:22Z",    "error": "string",    "created_at": "2019-08-24T14:15:22Z",    "finished_at": "2019-08-24T14:15:22Z"  },  "error": null}