Users#

Manage user profiles and per-user settings.

Authentication required

All endpoints require a Bearer token in the Authorization header. See the Authentication guide for setup instructions.

GET /v1/users#

List users in an organization with pagination and name search.

bash
GET /v1/users?page_index=0&page_size=25&organization_id=1c7743a8-6410-4a9e-9f3b-2c1d5e8a4b01
Authorization: Bearer {token}

Parameters#

NameTypeRequiredDescription
pageIndexintegerRequiredZero-based page index for pagination.
pageSizeintegerRequiredNumber of items per page (1-100).
organizationIdstring (UUID)RequiredOrganization identifier.
searchTermstringFree-text search term to filter results (max 200 characters).
sortBystringColumn name to sort by.
sortDirection'asc' | 'desc'Sort direction: ascending or descending.

Response#

Returns { items, totalCount, facets } with paginated results.

Underlying SDK method: bw.users.list(params)

GET /v1/users/:id#

Retrieve a single user by ID.

bash
GET /v1/users/:id
Authorization: Bearer {token}

Parameters#

NameTypeRequiredDescription
idstring (UUID)RequiredUser identifier.

Response#

Returns { data } with the result.

Underlying SDK method: bw.users({ id })

PATCH /v1/users/:id#

Update a user's profile information. Updatable fields: name (display name), email, jobRole (e.g. 'Head of Marketing'), avatarKey (storage key, null to remove). Only include the fields you want to change.

bash
PATCH /v1/users/:id
Authorization: Bearer {token}
Content-Type: application/json

{
  "user_id": "6c9e4b21-8d05-4f7a-b3c2-1e5a9d8f4b07"
}

Parameters#

NameTypeRequiredDescription
userIdstring (UUID)RequiredUser identifier to update.
namestringUpdated display name (1-255 characters).
emailstringUpdated email address.
jobRolestring | nullUpdated job role (max 100 characters).
avatarKeystring | nullStorage key for the user avatar image. Set to null to remove.

Response#

Returns { data } with the result.

Underlying SDK method: bw.users.update(params)

GET /v1/users/:id/settings#

Retrieve a user's personal settings.

bash
GET /v1/users/:id/settings?user_id=6c9e4b21-8d05-4f7a-b3c2-1e5a9d8f4b07
Authorization: Bearer {token}

Parameters#

NameTypeRequiredDescription
userIdstring (UUID)RequiredUser identifier to fetch settings for.

Response#

Returns { data } with the result.

Underlying SDK method: bw.users.settings(params)

PATCH /v1/users/:id/settings#

Create or update a user's settings, including switching the active organization and managing UI preferences.

bash
PATCH /v1/users/:id/settings
Authorization: Bearer {token}
Content-Type: application/json

{
  "user_id": "6c9e4b21-8d05-4f7a-b3c2-1e5a9d8f4b07"
}

Parameters#

NameTypeRequiredDescription
userIdstring (UUID)RequiredUser identifier to update settings for.
activeOrganizationIdstring (UUID)Organization to set as the active workspace.
preferencesobjectUser UI preferences (shallow-merged into existing).

Response#

Returns { data } with the result.

Underlying SDK method: bw.users.settings.update(params)