Skip to main content

Authentication

Admin

The Developer API uses API keys for authentication. Each key is scoped to a single store and has granular permissions that control which endpoints it can access.


Creating an API Key

  1. Log in to the Admin Panel.
  2. Click Developer API in the navigation menu.
  3. Click Create API Key.
  4. Fill in the form:
FieldDescription
NameA descriptive label (e.g., "Website Sync", "BI Dashboard")
ScopesSelect which permissions the key should have (see below)
Rate LimitRequests per minute (default: 60, max: 1,000)
Expires AtOptional expiration date
Test ModeIf enabled, the key can only read data — all write operations are blocked
  1. Click Create API Key.
  2. Copy the key immediately. It is displayed only once and cannot be retrieved later.
Save your key

The full API key is shown only once when you create it. If you lose it, you must revoke the key and create a new one. Store it securely — treat it like a password.


Using Your API Key

Include the key in the X-API-Key header on every request:

curl -H "X-API-Key: bpos_abc123..." \
https://yourstore.brotherpos.ca/api/v1/products
Do not put keys in URLs

Never pass your API key as a query parameter. Always use the X-API-Key header to prevent the key from being logged in server access logs or browser history.


Scopes

Scopes control what your API key can access. Select only the scopes you need — this follows the principle of least privilege.

Read Scopes

ScopeGrants Access To
products:readProducts, categories, brands, store settings
customers:readCustomer profiles, loyalty info
sales:readSales history, receipts, line items
inventory:readStock levels, inventory adjustments
loyalty:readLoyalty tiers, rewards, transactions
gift_cards:readGift card balances
store_credits:readStore credit balances

Write Scopes

ScopeGrants Access To
products:writeBulk-update product prices and stock
customers:writeCreate and update customer records
inventory:writeCreate stock adjustments
webhooks:manageCreate, update, and delete webhook subscriptions
Write scopes include read

A key with customers:write can also read customers. You don't need to add both scopes.


Revoking a Key

If a key is compromised or no longer needed:

  1. Go to Developer API > API Keys.
  2. Click on the key name.
  3. Click Revoke Key.

Revocation is immediate. All requests using that key will receive a 401 Unauthorized response.


Error Responses

StatusMeaning
401 UnauthorizedMissing, invalid, or revoked API key
403 ForbiddenValid key but insufficient scope for this endpoint
429 Too Many RequestsRate limit exceeded — check Retry-After header

What's Next?