Authentication

The Buk Finance API authenticates every request with a token issued by our team for your organization. Contact customer support to get one.

Send the token in the Authorization header exactly as delivered, without the Bearer prefix:

curl --request GET https://api.bemmbo.com/v1/invoices/issued \
  --header "Authorization: <your-token>"
❗️

Authorization: Bearer <your-token> is rejected with 403. Send the token alone.

Your token carries many privileges, so be sure to keep it secure. Do not share it in publicly accessible areas such as GitHub, client-side code, and so forth.

All API requests must be made over HTTPS. Calls made over plain HTTP will fail.

Authentication responses

StatusBodyMeaning
401{"message":"Unauthorized"}The Authorization header is missing.
403{"Message":"User is not authorized to access this resource with an explicit deny in an identity-based policy"}The token is invalid, expired, sent with the Bearer prefix, or the organization is deactivated.
403{"message":"Authorization header requires 'Credential' parameter. Authorization header requires 'Signature' parameter. ..."}The URL does not exist. This is not a token problem: check the path (for example /v1/accounts-payable/prepaid-expenses, not /v1/prepaid-expenses).

A valid token authorizes every endpoint of the API for your organization; there are no per-endpoint permissions.