api.whitelabel.dev

The Whitelabel API

REST endpoints for everything in the whitelabel.dev ecosystem — workspaces, conversations, integrations, billing. Versioned, paginated, same auth as the dashboard.

Quickstart

You'll need:

  1. An account at app.whitelabel.dev
  2. An API key — generate at /account/api-keys. Keys start with whlk_ and are workspace-scoped.

Your first request

curl https://app.whitelabel.dev/api/v1/workspaces \
  -H "Authorization: Bearer whlk_yourkey..."

Successful response:

{
  "data": [
    {
      "id": "ws_abc123",
      "name": "Acme",
      "color": "#0a0a0a",
      "role": "owner",
      "created_at": "2026-04-12T15:30:00Z"
    }
  ],
  "meta": {
    "next_cursor": null,
    "limit": 50
  }
}

What's available today

Workspaces

List the workspaces you're a member of. Get details for one. Create new ones.

GET /api/v1/workspaces GET /api/v1/workspaces/{id}

Conversations

Chat threads inside a workspace. List, fetch, post messages.

GET /api/v1/conversations GET /api/v1/conversations/{id}/messages

Me

The authenticated user's profile, workspace memberships, roles.

GET /api/v1/me

See the full reference →

Conventions

Auth

Bearer tokens in the Authorization header. Keys start with whlk_. Scope is the workspace the key was created under. See authentication.

Pagination

Cursor-based via ?cursor= and ?limit= (max 200, default 50). Cursors are opaque — pass back the meta.next_cursor from the last response.

Versioning

Path-versioned at /api/v1/. Breaking changes get a new version; additive changes don't.

Errors

JSON shape: { "error": { "code": "...", "message": "..." } }. HTTP status reflects category (4xx client, 5xx server). Rate limits return 429.

Where to go next