How to send the key
RecommendedThe API Key belongs to one workspace. You cannot access another workspace with the same key.
Common combinations
Read database only
contacts:read, tags:readSync CRM
contacts:read, contacts:create, contacts:update, tags:read, tags:createTask queue
tasks:read (workspace list) + contacts:update (create/update on contact)Campaigns via API
campaigns:read, campaigns:create, campaigns:run + channel send scopesFull management
All
contacts:*, tags:*, topics:*, segments:*, campaigns:*Contacts (contacts:*)
contacts:read
contacts:read
List and get contact by ID.
contacts:create
contacts:create
Create contact (phone and/or email required).
contacts:update
contacts:update
Edit record, tags, fields, and CRM tasks (
POST/PATCH /v1/contacts/{id}/tasks).contacts:delete
contacts:delete
Delete contact.
Tasks (tasks:read)
CRM tasks appear at two levels: on the contact and workspace view.
tasks:read
tasks:read
GET /v1/tasks — paginated workspace list (status, overdueOnly, assignedUserId). Default: OPEN tasks.Create and update tasks use scope
contacts:update (POST and PATCH on /v1/contacts/{id}/tasks). List tasks on a contact uses contacts:read. There is no DELETE in API v1 — use PATCH with status: CANCELLED to cancel.Tags (tags:*)
Topics (topics:*)
Marketing theme consent. Same as Audience → Topics in the dashboard.
topics:read
topics:read
List and get topic.
topics:create
topics:create
Create topic with stable slug.
topics:update
topics:update
Edit name, description, and default opt-in.
topics:delete
topics:delete
Delete topic.
Segments (segments:*)
Audiences with rules (tags, fields, topics, marketing). Includes preview.
segments:read
segments:read
List, get, and preview (paginated audience sample).
segments:create
segments:create
Create segment with JSON
version: 1, match, rules.segments:update
segments:update
Edit segment rules.
segments:delete
segments:delete
Delete segment.
Campaigns (campaigns:*)
campaigns:read
campaigns:read
List, get, statistics, and recipients per run.
campaigns:create
campaigns:create
Create campaign (optionally with
scheduledFor).campaigns:update
campaigns:update
Edit campaign and cancel (DRAFT/SCHEDULED → CANCELLED).
campaigns:delete
campaigns:delete
Delete campaign.
campaigns:run
campaigns:run
Dispatch now (Run), queues sends on campaign channels.
Common errors
403: missing scope
403: missing scope
Check the operation scope (
Missing scope: contacts:read, etc.).402: workspace blocked
402: workspace blocked
Expired or suspended plan (
WORKSPACE_BLOCKED). Fix in the dashboard.403: CRM limit or plan
403: CRM limit or plan
Topic/segment/campaign limits (
PLAN_LIMIT_CRM, PLAN_LIMIT_TEMPLATES) or trial without top-up. Code 403, not 402.409: duplicate
409: duplicate
Phone or email already registered in the workspace.

