Every non-public operation takes a Bearer token and declares the permission scope it needs. This page documents auth exactly as it works today, with no aspiration mixed in.
Send the token in the Authorization header on every request. Tokens never go in the URL. All traffic is HTTPS.
curl -G "https://www.membber.com/api/v1/customers" \
-H "Authorization: Bearer $MEMBBER_TOKEN" \
--data-urlencode "store_id=<store-id>"A missing or invalid token returns 401 UNAUTHENTICATED. A valid token without the operation's scope returns 403 FORBIDDEN. Both use the standard error envelope.
The API's production consumers are Membber's own apps, plus merchant-issued agent keys. There are three credentials:
customer:* scopes for that member.merchant:* scopes, and front-desk actions additionally check that person's staff:* permissions. Every merchant call is scoped to a single store.There is no self-serve API key or partner OAuth flow yet. If you want to build against the platform today, talk to us and we will set you up with the right credential for your use case.
Agent keys let a merchant hand a tightly-scoped credential to an AI agent or automation without sharing their login. They are issued in the Membber Place app, and they are deliberately conservative:
mbr_live_... or mbr_test_.... The full key is shown once at creation and can never be retrieved again; only a salted hash is stored.merchant:read, staff:approve and staff:redeem.# Agent keys look like this (issued once, never retrievable again):
# mbr_live_9f2c41d8a06b73e5_...64 hex characters...
curl -G "https://www.membber.com/api/v1/loyalty/state" \
-H "Authorization: Bearer $MEMBBER_AGENT_KEY" \
--data-urlencode "customer_id=<customer-id>"Scopes follow an audience:action shape. Each operation in the reference shows its scope next to the method and path.
| Scope | Held by |
|---|---|
customer:read | Customer sessions in the Membber app and App Clip |
customer:write | Customer sessions in the Membber app and App Clip |
internal-admin | Customer sessions in the Membber app and App Clip |
merchant:read | Business sessions; agent keys where allowlisted |
merchant:write | Business sessions; agent keys where allowlisted |
staff:approve | Staff sessions with the matching front-desk permission; some agent keys |
staff:checkin | Staff sessions with the matching front-desk permission; some agent keys |
staff:enrol | Staff sessions with the matching front-desk permission; some agent keys |
staff:redeem | Staff sessions with the matching front-desk permission; some agent keys |