Skip to main content
An account is the entity the authenticated user is operating as. Every buyer request runs in the context of one account, identified by a numeric id and carrying a role (MEMBER, ADMIN, or SUPER_ADMIN) that gates what the caller can do. A user can belong to several accounts; the account API lets you read the current context, list the accounts you can access, and switch your integration between them. Accounts can form an organization/account hierarchy. An ADMIN can spin up accounts under an organization (creating the organization on the fly if the account was standalone), set each account’s registered customerDomain, and configure membership. A verified primary-domain request to a top-level organization auto-joins as ordinary member access by default; admins can opt out. Child accounts remain opt-in, so organization membership never grants access to every account beneath it. Separately, each user manages their own notification preferences — the set of event types and channels (email, in_app) they opt into.

Key concepts

Task reference

Get current account

GET /accounts/current — your current context

List accounts

GET /accounts — accounts you can access

Create account

POST /accounts/create-child — add an account under your organization

Update account domain

PATCH /accounts/:customerId/domain — set the registered domain

Delete account

DELETE /accounts/:customerId — remove an account from your organization

Get membership

GET /accounts/:customerId/membership — read access settings

Update membership

PATCH /accounts/:customerId/membership — toggle domain auto-join

Get notification preferences

GET /notification-preferences — your opt-ins

Update notification preferences

PUT /notification-preferences — replace your opt-ins