API reference
This reference is rendered from packages/shared/contracts/openapi.v1.yaml.
Operation contract
Every operation documents:
- Method and route.
- Operation ID.
- Required scopes.
- Resource group.
- Whether a JSON request body is required.
- Whether
idempotency_keyis supported in the JSON body for safe retries.
The OpenAPI file is the shared REST contract. Backend checks validate implemented routes against this contract as the API evolves.
OpenAPI operations
/workspaceGet workspace summary
getWorkspace
- Required scopes
- crm:readsupport:readtasks:readactivity:readcms:readassets:readintegrations:readanalytics:readbi:read
- Resource group
- Workspace
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
This operation has no path, query, or custom header parameters.
Request body example
Response example
{
"data": {
"id": "wrk_123",
"name": "Sandbox Workspace",
"enabled_modules": [
"activity_log",
"tasks",
"crm",
"support",
"cms",
"assets",
"integrations",
"analytics_governance"
]
},
"request_id": "req_134"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The workspace could not be found for this token.
/contactsSearch contacts
listContacts
- Required scopes
- crm:read
- Resource group
- Contacts
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| query | query | string | No | Free-text search across contact name, email, company, and notes. |
| company_id | query | string | No | Restrict results to contacts linked to this company. |
| limit | query | integer · min 1 · max 100 | No | Maximum number of contacts to return. |
| cursor | query | string | No | Opaque cursor from a previous response's next_cursor. |
Request body example
Response example
{
"data": [
{
"id": "con_123",
"name": "Jane Doe",
"email": "jane@acme.com"
}
],
"request_id": "req_124",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/contactsCreate contact
createContact
- Required scopes
- crm:write
- Resource group
- Contacts
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"name": "Jane Doe",
"email": "jane@acme.com",
"company_name": "Acme Corp"
}Response example
{
"data": {
"id": "con_123",
"name": "Jane Doe",
"email": "jane@acme.com",
"company_name": "Acme Corp"
},
"request_id": "req_123"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The idempotency key was reused with a different request body.
/companiesSearch companies
listCompanies
- Required scopes
- crm:read
- Resource group
- Companies
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| query | query | string | No | Free-text search across company name, domain, website, and notes. |
| limit | query | integer · min 1 · max 100 | No | Maximum number of companies to return. |
| cursor | query | string | No | Opaque cursor from a previous response's next_cursor. |
Request body example
Response example
{
"data": [
{
"id": "com_123",
"name": "Acme Corp",
"domain": "acme.com"
}
],
"request_id": "req_126",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/companiesCreate company
createCompany
- Required scopes
- crm:write
- Resource group
- Companies
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"name": "Acme Corp",
"domain": "acme.com"
}Response example
{
"data": {
"id": "com_123",
"name": "Acme Corp",
"domain": "acme.com"
},
"request_id": "req_125"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The idempotency key was reused with a different request body.
/leadsList leads
listLeads
- Required scopes
- crm:read
- Resource group
- Deals
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| query | query | string | No | No description yet. |
| status | query | string · new | working | qualified | disqualified | converted | No | No description yet. |
| source | query | string · manual | website | referral | campaign | import | api | mcp | other | No | No description yet. |
| custom_field_key | query | string | No | No description yet. |
| custom_field_value | query | string | No | No description yet. |
| limit | query | integer · min 1 · max 100 | No | No description yet. |
| cursor | query | string | No | No description yet. |
Request body example
Response example
{
"data": [
{
"id": "lead_123",
"name": "Priya Shah"
}
],
"request_id": "req_201",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/leadsCreate lead
createLead
- Required scopes
- crm:write
- Resource group
- Deals
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"name": "Priya Shah",
"company_name": "Northstar Studio",
"source": "website"
}Response example
{
"data": {
"id": "lead_123",
"name": "Priya Shah",
"status": "new"
},
"request_id": "req_200"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The idempotency key was reused with a different request body.
/leads/{lead_id}/convertConvert lead
convertLead
- Required scopes
- crm:write
- Resource group
- Deals
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| lead_id | path | string | Yes | Resource identifier from /leads/{lead_id}/convert. |
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"create_deal": true,
"deal_name": "Website redesign"
}Response example
{
"data": {
"id": "lead_123",
"status": "converted"
},
"request_id": "req_202"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/deal-stagesList deal stages
listDealStages
- Required scopes
- crm:read
- Resource group
- Deals
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| query | query | string | No | No description yet. |
| limit | query | integer · min 1 · max 100 | No | No description yet. |
| cursor | query | string | No | No description yet. |
Request body example
Response example
{
"data": [
{
"id": "stage_123",
"key": "discovery"
}
],
"request_id": "req_204",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/deal-stagesCreate deal stage
createDealStage
- Required scopes
- crm:write
- Resource group
- Deals
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"key": "discovery",
"name": "Discovery",
"position": 10
}Response example
{
"data": {
"id": "stage_123",
"key": "discovery"
},
"request_id": "req_203"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The idempotency key was reused with a different request body.
/dealsCreate deal
createDeal
- Required scopes
- crm:write
- Resource group
- Deals
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"name": "Pilot subscription",
"company_id": "com_123",
"stage": "qualified",
"amount_cents": 500000,
"currency": "USD"
}Response example
{
"data": {
"id": "deal_123",
"name": "Pilot subscription",
"stage": "qualified"
},
"request_id": "req_127"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/deals/{deal_id}Update deal
updateDeal
- Required scopes
- crm:write
- Resource group
- Deals
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| deal_id | path | string | Yes | Deal ID to update. |
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"stage": "proposal",
"amount_cents": 750000,
"currency": "USD"
}Response example
{
"data": {
"id": "deal_123",
"stage": "proposal",
"amount_cents": 750000,
"currency": "USD"
},
"request_id": "req_128"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/invoicesList invoices
listInvoices
- Required scopes
- crm:read
- Resource group
- Deals
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| status | query | string | No | No description yet. |
| company_id | query | string | No | No description yet. |
| contact_id | query | string | No | No description yet. |
| deal_id | query | string | No | No description yet. |
| limit | query | integer · min 1 · max 100 | No | No description yet. |
| cursor | query | string | No | No description yet. |
Request body example
Response example
{
"data": [
{
"id": "inv_123",
"status": "sent"
}
],
"request_id": "req_206",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/invoicesCreate invoice
createInvoice
- Required scopes
- crm:write
- Resource group
- Deals
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"invoice_number": "INV-1001",
"line_items": [
{
"kind": "service",
"name": "Website redesign",
"unit_amount_cents": 500000
}
]
}Response example
{
"data": {
"id": "inv_123",
"invoice_number": "INV-1001"
},
"request_id": "req_205"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/paymentsRecord payment
recordPayment
- Required scopes
- crm:write
- Resource group
- Deals
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"invoice_id": "inv_123",
"amount_cents": 250000
}Response example
{
"data": {
"id": "pay_123",
"amount_cents": 250000
},
"request_id": "req_207"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/accounting/accountsList accounting accounts
listAccountingAccounts
- Required scopes
- crm:read
- Resource group
- Deals
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| type | query | string | No | No description yet. |
| query | query | string | No | No description yet. |
| limit | query | integer · min 1 · max 100 | No | No description yet. |
| cursor | query | string | No | No description yet. |
Request body example
Response example
{
"data": [
{
"id": "acct_123",
"name": "Services revenue"
}
],
"request_id": "req_209",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/accounting/accountsCreate accounting account
createAccountingAccount
- Required scopes
- crm:write
- Resource group
- Deals
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"code": "4000",
"name": "Services revenue",
"type": "revenue"
}Response example
{
"data": {
"id": "acct_123",
"code": "4000"
},
"request_id": "req_208"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The idempotency key was reused with a different request body.
/accounting/journal-entriesList journal entries
listJournalEntries
- Required scopes
- crm:read
- Resource group
- Deals
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| status | query | string | No | No description yet. |
| query | query | string | No | No description yet. |
| limit | query | integer · min 1 · max 100 | No | No description yet. |
| cursor | query | string | No | No description yet. |
Request body example
Response example
{
"data": [
{
"id": "je_123",
"status": "posted"
}
],
"request_id": "req_211",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/accounting/journal-entriesCreate journal entry
createJournalEntry
- Required scopes
- crm:write
- Resource group
- Deals
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"status": "posted",
"lines": [
{
"account_id": "acct_cash",
"debit_cents": 10000
},
{
"account_id": "acct_ar",
"credit_cents": 10000
}
]
}Response example
{
"data": {
"id": "je_123",
"status": "posted"
},
"request_id": "req_210"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/support/queuesList support queues
listSupportQueues
- Required scopes
- support:read
- Resource group
- Support
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| query | query | string | No | No description yet. |
| status | query | string · active | paused | archived | No | No description yet. |
| custom_field_key | query | string | No | No description yet. |
| custom_field_value | query | string | No | No description yet. |
| limit | query | integer · min 1 · max 100 | No | No description yet. |
| cursor | query | string | No | No description yet. |
Request body example
Response example
{
"data": [
{
"id": "queue_123",
"name": "Priority Support"
}
],
"request_id": "req_301",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/support/queuesCreate support queue
createSupportQueue
- Required scopes
- support:write
- Resource group
- Support
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"key": "priority",
"name": "Priority Support",
"first_response_target_minutes": 120
}Response example
{
"data": {
"id": "queue_123",
"key": "priority"
},
"request_id": "req_300"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The idempotency key was reused with a different request body.
/support/ticketsList support tickets
listSupportTickets
- Required scopes
- support:read
- Resource group
- Support
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| query | query | string | No | No description yet. |
| status | query | string · new | open | pending | waiting_on_customer | resolved | closed | No | No description yet. |
| priority | query | string · low | normal | high | urgent | No | No description yet. |
| source | query | string · manual | email | chat | phone | web | api | mcp | slack | other | No | No description yet. |
| category | query | string | No | No description yet. |
| queue_id | query | string | No | No description yet. |
| assignee_id | query | string | No | No description yet. |
| contact_id | query | string | No | No description yet. |
| company_id | query | string | No | No description yet. |
| deal_id | query | string | No | No description yet. |
| lead_id | query | string | No | No description yet. |
| invoice_id | query | string | No | No description yet. |
| custom_field_key | query | string | No | No description yet. |
| custom_field_value | query | string | No | No description yet. |
| limit | query | integer · min 1 · max 100 | No | No description yet. |
| cursor | query | string | No | No description yet. |
Request body example
Response example
{
"data": [
{
"id": "ticket_123",
"priority": "urgent"
}
],
"request_id": "req_303",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/support/ticketsCreate support ticket
createSupportTicket
- Required scopes
- support:write
- Resource group
- Support
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"subject": "Customer cannot download invoice",
"priority": "urgent",
"category": "billing"
}Response example
{
"data": {
"id": "ticket_123",
"subject": "Customer cannot download invoice",
"status": "new"
},
"request_id": "req_302"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
The idempotency key was reused with a different request body.
/support/tickets/{ticket_id}Update support ticket
updateSupportTicket
- Required scopes
- support:write
- Resource group
- Support
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| ticket_id | path | string | Yes | Resource identifier from /support/tickets/{ticket_id}. |
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"status": "open",
"queue_id": "queue_123"
}Response example
{
"data": {
"id": "ticket_123",
"status": "open"
},
"request_id": "req_304"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/support/tickets/{ticket_id}/messagesList support ticket messages
listSupportTicketMessages
- Required scopes
- support:read
- Resource group
- Support
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| ticket_id | path | string | Yes | Resource identifier from /support/tickets/{ticket_id}/messages. |
| ticket_id | query | string | Yes | No description yet. |
| query | query | string | No | No description yet. |
| custom_field_key | query | string | No | No description yet. |
| custom_field_value | query | string | No | No description yet. |
| limit | query | integer · min 1 · max 100 | No | No description yet. |
| cursor | query | string | No | No description yet. |
Request body example
Response example
{
"data": [
{
"id": "msg_123",
"body": "I still cannot access the invoice."
}
],
"request_id": "req_306",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/support/tickets/{ticket_id}/messagesAdd support ticket message
addSupportTicketMessage
- Required scopes
- support:write
- Resource group
- Support
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| ticket_id | path | string | Yes | Resource identifier from /support/tickets/{ticket_id}/messages. |
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"direction": "inbound",
"channel": "email",
"body": "I still cannot access the invoice."
}Response example
{
"data": {
"id": "msg_123",
"ticket_id": "ticket_123"
},
"request_id": "req_305"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
The idempotency key was reused with a different request body.
/support/tickets/{ticket_id}/commentsList support ticket comments
listSupportTicketComments
- Required scopes
- support:read
- Resource group
- Support
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| ticket_id | path | string | Yes | Resource identifier from /support/tickets/{ticket_id}/comments. |
| ticket_id | query | string | Yes | No description yet. |
| query | query | string | No | No description yet. |
| custom_field_key | query | string | No | No description yet. |
| custom_field_value | query | string | No | No description yet. |
| limit | query | integer · min 1 · max 100 | No | No description yet. |
| cursor | query | string | No | No description yet. |
Request body example
Response example
{
"data": [
{
"id": "comment_123",
"body": "Finance is checking the invoice export."
}
],
"request_id": "req_308",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/support/tickets/{ticket_id}/commentsAdd support ticket comment
addSupportTicketComment
- Required scopes
- support:write
- Resource group
- Support
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| ticket_id | path | string | Yes | Resource identifier from /support/tickets/{ticket_id}/comments. |
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"body": "Finance is checking the invoice export.",
"pinned": true
}Response example
{
"data": {
"id": "comment_123",
"pinned": true
},
"request_id": "req_307"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
The idempotency key was reused with a different request body.
/tasksList tasks
listTasks
- Required scopes
- tasks:read
- Resource group
- Tasks
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| status | query | string · open | completed | canceled | No | Filter tasks by lifecycle status. |
| assignee_id | query | string | No | Restrict results to tasks assigned to this user or agent. |
| limit | query | integer · min 1 · max 100 | No | Maximum number of tasks to return. |
| cursor | query | string | No | Opaque cursor from a previous response's next_cursor. |
Request body example
Response example
{
"data": [
{
"id": "task_123",
"title": "Follow up with Jane Doe",
"status": "open"
}
],
"request_id": "req_130",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/tasksCreate task
createTask
- Required scopes
- tasks:write
- Resource group
- Tasks
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"title": "Follow up with Jane Doe",
"related_resource_type": "contact",
"related_resource_id": "con_123"
}Response example
{
"data": {
"id": "task_123",
"title": "Follow up with Jane Doe",
"status": "open"
},
"request_id": "req_129"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/tasks/{task_id}Update task
updateTask
- Required scopes
- tasks:write
- Resource group
- Tasks
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| task_id | path | string | Yes | Task ID to update. |
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"status": "completed",
"completed_note": "Jane confirmed the next call."
}Response example
{
"data": {
"id": "task_123",
"status": "completed",
"completed_note": "Jane confirmed the next call."
},
"request_id": "req_131"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/activitiesSearch activities
listActivities
- Required scopes
- activity:read
- Resource group
- Activities
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| query | query | string | No | Free-text search across activity summary and body. |
| type | query | string · note | call | email | meeting | agent_action | No | Restrict results to one activity category. |
| limit | query | integer · min 1 · max 100 | No | Maximum number of activities to return. |
| cursor | query | string | No | Opaque cursor from a previous response's next_cursor. |
Request body example
Response example
{
"data": [
{
"id": "act_123",
"summary": "Jane asked for pricing details"
}
],
"request_id": "req_133",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/activitiesLog activity
createActivity
- Required scopes
- activity:write
- Resource group
- Activities
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"type": "email",
"summary": "Jane asked for pricing details",
"related_resource_type": "contact",
"related_resource_id": "con_123"
}Response example
{
"data": {
"id": "act_123",
"type": "email",
"summary": "Jane asked for pricing details"
},
"request_id": "req_132"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/cms/collectionsCreate CMS collection
createCmsCollection
- Required scopes
- cms:write
- Resource group
- CMS
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"name": "Blog Posts",
"key": "blog_posts",
"schema": {
"fields": [
{
"key": "title",
"type": "string",
"required": true
},
{
"key": "slug",
"type": "string",
"required": true
},
{
"key": "body",
"type": "markdown",
"required": true
}
]
}
}Response example
{
"data": {
"id": "col_123",
"key": "blog_posts",
"name": "Blog Posts"
},
"request_id": "req_135"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The idempotency key was reused with a different request body.
/cms/sitesList CMS sites
listCmsSites
- Required scopes
- cms:read
- Resource group
- CMS
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| query | query | string | No | No description yet. |
| limit | query | integer · min 1 · max 100 | No | No description yet. |
| cursor | query | string | No | No description yet. |
Request body example
Response example
{
"data": [
{
"id": "site_123",
"name": "slab5.com"
}
],
"request_id": "req_213",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/cms/sitesCreate CMS site
createCmsSite
- Required scopes
- cms:write
- Resource group
- CMS
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"key": "slab5_com",
"name": "slab5.com",
"primary_domain": "slab5.com"
}Response example
{
"data": {
"id": "site_123",
"key": "slab5_com"
},
"request_id": "req_212"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The idempotency key was reused with a different request body.
/cms/entriesSearch CMS entries
listCmsEntries
- Required scopes
- cms:read
- Resource group
- CMS
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| collection_id | query | string | No | Restrict results to one collection. |
| site_id | query | string | No | No description yet. |
| campaign_id | query | string | No | No description yet. |
| content_type | query | string · website_page | landing_page | blog_post | article | social_post | email | case_study | asset_brief | other | No | No description yet. |
| status | query | string · draft | review | published | archived | No | Restrict results by publishing status. |
| query | query | string | No | Free-text search across title and fields. |
| custom_field_key | query | string | No | No description yet. |
| custom_field_value | query | string | No | No description yet. |
| limit | query | integer · min 1 · max 100 | No | Maximum number of entries to return. |
| cursor | query | string | No | Opaque cursor from a previous response's next_cursor. |
Request body example
Response example
{
"data": [
{
"id": "ent_123",
"title": "AI follow-up workflows",
"status": "draft"
}
],
"request_id": "req_137",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/cms/entriesCreate CMS entry
createCmsEntry
- Required scopes
- cms:write
- Resource group
- CMS
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"collection_id": "col_123",
"title": "AI follow-up workflows",
"status": "draft",
"fields": {
"slug": "ai-follow-up-workflows",
"body": "Draft content..."
}
}Response example
{
"data": {
"id": "ent_123",
"collection_id": "col_123",
"status": "draft"
},
"request_id": "req_136"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/cms/entries/searchFull-text search CMS entries
searchCmsEntries
- Required scopes
- cms:read
- Resource group
- CMS
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
This operation has no path, query, or custom header parameters.
Request body example
Response example
{
"data": {},
"request_id": "req_123"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
/cms/entries/{entry_id}Update CMS entry
updateCmsEntry
- Required scopes
- cms:write
- Resource group
- CMS
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| entry_id | path | string | Yes | Entry ID to update. |
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"title": "AI follow-up workflows",
"fields": {
"slug": "ai-follow-up-workflows",
"body": "Updated draft content..."
},
"status": "review"
}Response example
{
"data": {
"id": "ent_123",
"title": "AI follow-up workflows",
"status": "review"
},
"request_id": "req_138"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/marketing/campaignsList marketing campaigns
listMarketingCampaigns
- Required scopes
- cms:read
- Resource group
- CMS
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| status | query | string | No | No description yet. |
| channel | query | string | No | No description yet. |
| query | query | string | No | No description yet. |
| limit | query | integer · min 1 · max 100 | No | No description yet. |
| cursor | query | string | No | No description yet. |
Request body example
Response example
{
"data": [
{
"id": "camp_123",
"name": "Slab5 beta launch"
}
],
"request_id": "req_215",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/marketing/campaignsCreate marketing campaign
createMarketingCampaign
- Required scopes
- cms:write
- Resource group
- CMS
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"key": "slab5_beta_launch",
"name": "Slab5 beta launch",
"channel": "website"
}Response example
{
"data": {
"id": "camp_123",
"key": "slab5_beta_launch"
},
"request_id": "req_214"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The idempotency key was reused with a different request body.
/marketing/postsList marketing posts
listMarketingPosts
- Required scopes
- cms:read
- Resource group
- CMS
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| campaign_id | query | string | No | No description yet. |
| channel | query | string | No | No description yet. |
| status | query | string | No | No description yet. |
| query | query | string | No | No description yet. |
| limit | query | integer · min 1 · max 100 | No | No description yet. |
| cursor | query | string | No | No description yet. |
Request body example
Response example
{
"data": [
{
"id": "post_123",
"channel": "linkedin"
}
],
"request_id": "req_217",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/marketing/postsCreate marketing post
createMarketingPost
- Required scopes
- cms:write
- Resource group
- CMS
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"channel": "linkedin",
"title": "Beta launch",
"body": "We are opening Slab5 private beta."
}Response example
{
"data": {
"id": "post_123",
"channel": "linkedin"
},
"request_id": "req_216"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/assetsSearch assets
listAssets
- Required scopes
- assets:read
- Resource group
- Assets
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| query | query | string | No | Free-text search across asset name, file name, description, and MIME type. |
| asset_type | query | string · document | image | video | attachment | No | Restrict results to one asset category. |
| status | query | string · upload_pending | available | archived | No | Restrict results by asset lifecycle status. |
| related_resource_type | query | string · lead | contact | company | deal | task | cms_entry | invoice | marketing_campaign | marketing_post | No | Restrict results to assets linked to this resource type. |
| related_resource_id | query | string | No | Restrict results to assets linked to this resource ID. |
| custom_field_key | query | string | No | No description yet. |
| custom_field_value | query | string | No | No description yet. |
| limit | query | integer · min 1 · max 100 | No | Maximum number of assets to return. |
| cursor | query | string | No | Opaque cursor from a previous response's next_cursor. |
Request body example
Response example
{
"data": [
{
"id": "asset_123",
"name": "acme-hero.png",
"asset_type": "image"
}
],
"request_id": "req_141",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/assetsCreate asset upload intent
createAssetUploadIntent
- Required scopes
- assets:write
- Resource group
- Assets
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"asset_type": "image",
"file_name": "acme-hero.png",
"mime_type": "image/png",
"related_resource_type": "cms_entry",
"related_resource_id": "ent_123"
}Response example
{
"data": {
"id": "asset_123",
"asset_type": "image",
"upload_url": "https://storage.local.slab5.test/upload/..."
},
"request_id": "req_140"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
The idempotency key was reused with a different request body.
/assets/{asset_id}Get asset download URL
getAsset
- Required scopes
- assets:read
- Resource group
- Assets
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| asset_id | path | string | Yes | Asset ID to retrieve. |
| asset_id | query | string | Yes | Asset ID to retrieve. |
| cursor | query | string | No | Pagination cursor returned by the previous page. |
Request body example
Response example
{
"data": {
"id": "asset_123",
"download_url": "https://storage.local.slab5.test/download/..."
},
"request_id": "req_142"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/assets/{asset_id}Archive asset
archiveAsset
- Required scopes
- assets:write
- Resource group
- Assets
- Request body
- No request body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| asset_id | path | string | Yes | Asset ID to archive. |
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
Response example
{
"data": {
"id": "asset_123",
"status": "archived"
},
"request_id": "req_143"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/assets/{asset_id}/completeComplete asset upload
completeAssetUpload
- Required scopes
- assets:write
- Resource group
- Assets
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| asset_id | path | string | Yes | Asset ID returned by create_asset_upload_intent. |
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"byte_size": 2048,
"checksum_sha256": "..."
}Response example
{
"data": {
"id": "asset_123",
"asset_type": "image",
"status": "available"
},
"request_id": "req_140b"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/integrations/eventsList integration event types
listIntegrationEventTypes
- Required scopes
- integrations:read
- Resource group
- Integrations
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| query | query | string | No | Free-text search across event keys and descriptions. |
| category | query | string | No | Restrict results to a category such as crm, cms, assets, or usage. |
| cursor | query | string | No | Pagination cursor returned by the previous page. |
Request body example
Response example
{
"data": [
{
"key": "contact.created",
"category": "crm"
}
],
"request_id": "req_143",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/integrations/eventsRegister integration event type
registerIntegrationEventType
- Required scopes
- integrations:write
- Resource group
- Integrations
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"key": "external.publish.completed",
"category": "publishing",
"description": "External publishing workflow completed."
}Response example
{
"data": {
"id": "iet_123",
"key": "external.publish.completed"
},
"request_id": "req_144"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The idempotency key was reused with a different request body.
/webhooksList webhook endpoints
listWebhookEndpoints
- Required scopes
- integrations:read
- Resource group
- Integrations
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| query | query | string | No | Free-text search across names and URLs. |
| status | query | string · active | paused | disabled | No | Endpoint status filter. |
| event_type | query | string | No | Only endpoints subscribed to this event type. |
| limit | query | integer · min 1 · max 100 | No | Maximum number of endpoints to return. |
| cursor | query | string | No | Opaque cursor from a previous response's next_cursor. |
Request body example
Response example
{
"data": [
{
"id": "wh_123",
"name": "CRM Ops Webhook"
}
],
"request_id": "req_146",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/webhooksCreate webhook endpoint
createWebhookEndpoint
- Required scopes
- integrations:write
- Resource group
- Integrations
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"name": "CRM Ops Webhook",
"url": "https://example.com/slab5/webhooks",
"event_types": [
"contact.created"
]
}Response example
{
"data": {
"id": "wh_123",
"status": "active",
"signing_secret_preview": "whsec_abcd...wxyz"
},
"request_id": "req_145"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The idempotency key was reused with a different request body.
/webhooks/{webhook_id}Update webhook endpoint
updateWebhookEndpoint
- Required scopes
- integrations:write
- Resource group
- Integrations
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| webhook_id | path | string | Yes | Webhook endpoint identifier. |
Request body example
{
"status": "paused"
}Response example
{
"data": {
"id": "wh_123",
"status": "paused"
},
"request_id": "req_147"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/webhooks/{webhook_id}/testQueue test webhook event
sendTestWebhookEvent
- Required scopes
- integrations:write
- Resource group
- Integrations
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| webhook_id | path | string | Yes | Webhook endpoint identifier. |
Request body example
Response example
{
"data": {
"id": "whd_123",
"event_type": "webhook.test",
"status": "pending"
},
"request_id": "req_148"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/webhooks/{webhook_id}/deliveriesList webhook deliveries
listWebhookDeliveries
- Required scopes
- integrations:read
- Resource group
- Integrations
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| webhook_id | path | string | Yes | Webhook endpoint identifier. |
| webhook_id | query | string | No | Webhook endpoint identifier. |
| event_type | query | string | No | Delivery event type filter. |
| status | query | string · pending | retrying | succeeded | failed | No | No description yet. |
| limit | query | integer · min 1 · max 100 | No | No description yet. |
| cursor | query | string | No | No description yet. |
Request body example
Response example
{
"data": [
{
"id": "whd_123",
"status": "failed",
"attempt_count": 3
}
],
"request_id": "req_149",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/analytics/eventsList analytics event definitions
listAnalyticsEvents
- Required scopes
- analytics:read
- Resource group
- Analytics Governance
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| query | query | string | No | Free-text search across event names and descriptions. |
| owner | query | string | No | Restrict results to one owner. |
| limit | query | integer · min 1 · max 100 | No | Maximum number of events to return. |
| cursor | query | string | No | Opaque cursor from a previous response's next_cursor. |
Request body example
Response example
{
"data": [
{
"id": "evt_123",
"name": "first_contact_created",
"owner": "growth"
}
],
"request_id": "req_140",
"next_cursor": null
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/analytics/eventsDefine analytics event
defineAnalyticsEvent
- Required scopes
- analytics:write
- Resource group
- Analytics Governance
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"name": "first_contact_created",
"description": "A workspace created its first CRM contact.",
"owner": "growth",
"properties": [
"tenant_id",
"workspace_id",
"source"
]
}Response example
{
"data": {
"id": "evt_123",
"name": "first_contact_created"
},
"request_id": "req_139"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The idempotency key was reused with a different request body.
/analytics/propertiesDefine analytics property
defineAnalyticsProperty
- Required scopes
- analytics:write
- Resource group
- Analytics Governance
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
{
"key": "workspace_id",
"type": "string",
"description": "Workspace identifier associated with the event.",
"required": true
}Response example
{
"data": {
"id": "prop_123",
"key": "workspace_id",
"type": "string"
},
"request_id": "req_141"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The idempotency key was reused with a different request body.
/analytics/events/validateValidate analytics event payload
validateAnalyticsEvent
- Required scopes
- analytics:read
- Resource group
- Analytics Governance
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Not required for this read operation.
Parameters
This operation has no path, query, or custom header parameters.
Request body example
{
"name": "first_contact_created",
"properties": {
"tenant_id": "ten_123",
"workspace_id": "wrk_123",
"source": "mcp"
}
}Response example
{
"data": {
"valid": true,
"errors": [],
"request_id": "req_142"
},
"request_id": "req_142"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/bi/dashboardsList BI dashboards
listBiDashboards
- Required scopes
- bi:read
- Resource group
- Product Analytics and BI
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| query | query | string | No | No description yet. |
| status | query | string · draft | active | archived | No | No description yet. |
| limit | query | integer · min 1 · max 100 | No | No description yet. |
| cursor | query | string | No | No description yet. |
Request body example
Response example
{
"data": {},
"request_id": "req_123"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/bi/dashboardsCreate BI dashboard
createBiDashboard
- Required scopes
- bi:write
- Resource group
- Product Analytics and BI
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
Response example
{
"data": {},
"request_id": "req_123"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The idempotency key was reused with a different request body.
/bi/datasetsList BI datasets
listBiDatasets
- Required scopes
- bi:read
- Resource group
- Product Analytics and BI
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| query | query | string | No | No description yet. |
| kind | query | string · mock | table | view | semantic | No | No description yet. |
| status | query | string · draft | active | archived | No | No description yet. |
| limit | query | integer · min 1 · max 100 | No | No description yet. |
| cursor | query | string | No | No description yet. |
Request body example
Response example
{
"data": {},
"request_id": "req_123"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/bi/datasetsCreate BI dataset
createBiDataset
- Required scopes
- bi:write
- Resource group
- Product Analytics and BI
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Supports Idempotency-Key for safe retries.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| Idempotency-Key | header | string | No | Stable key for safe retries of the same logical write. |
Request body example
Response example
{
"data": {},
"request_id": "req_123"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The idempotency key was reused with a different request body.
/bi/reportsList BI reports
listBiReports
- Required scopes
- bi:read
- Resource group
- Product Analytics and BI
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| query | query | string | No | No description yet. |
| dashboard_id | query | string | No | No description yet. |
| dataset_id | query | string | No | No description yet. |
| status | query | string · draft | active | archived | No | No description yet. |
| limit | query | integer · min 1 · max 100 | No | No description yet. |
| cursor | query | string | No | No description yet. |
Request body example
Response example
{
"data": {},
"request_id": "req_123"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/bi/reportsCreate BI report
createBiReport
- Required scopes
- bi:write
- Resource group
- Product Analytics and BI
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Not required for this read operation.
Parameters
This operation has no path, query, or custom header parameters.
Request body example
Response example
{
"data": {},
"request_id": "req_123"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
The idempotency key was reused with a different request body.
/bi/metricsList BI metrics
listBiMetrics
- Required scopes
- bi:read
- Resource group
- Product Analytics and BI
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| query | query | string | No | No description yet. |
| dataset_id | query | string | No | No description yet. |
| status | query | string · draft | active | archived | No | No description yet. |
| limit | query | integer · min 1 · max 100 | No | No description yet. |
| cursor | query | string | No | No description yet. |
Request body example
Response example
{
"data": {},
"request_id": "req_123"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
/bi/metricsCreate BI metric
createBiMetric
- Required scopes
- bi:write
- Resource group
- Product Analytics and BI
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Not required for this read operation.
Parameters
This operation has no path, query, or custom header parameters.
Request body example
Response example
{
"data": {},
"request_id": "req_123"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
The idempotency key was reused with a different request body.
/bi/queries/runRun BI query or dataset
runBiQuery
- Required scopes
- bi:write
- Resource group
- Product Analytics and BI
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Not required for this read operation.
Parameters
This operation has no path, query, or custom header parameters.
Request body example
Response example
{
"data": {},
"request_id": "req_123"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
The idempotency key was reused with a different request body.
/bi/exportsList BI exports
listBiExports
- Required scopes
- bi:read
- Resource group
- Product Analytics and BI
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
This operation has no path, query, or custom header parameters.
Request body example
Response example
{
"data": {},
"request_id": "req_123"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
/bi/exportsCreate BI export
createBiExport
- Required scopes
- bi:write
- Resource group
- Product Analytics and BI
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Not required for this read operation.
Parameters
This operation has no path, query, or custom header parameters.
Request body example
Response example
{
"data": {},
"request_id": "req_123"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
The idempotency key was reused with a different request body.
/bi/scheduled-artifactsList scheduled BI artifacts
listBiScheduledArtifacts
- Required scopes
- bi:read
- Resource group
- Product Analytics and BI
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
This operation has no path, query, or custom header parameters.
Request body example
Response example
{
"data": {},
"request_id": "req_123"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
/bi/scheduled-artifactsCreate scheduled BI artifact
createBiScheduledArtifact
- Required scopes
- bi:write
- Resource group
- Product Analytics and BI
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Not required for this read operation.
Parameters
This operation has no path, query, or custom header parameters.
Request body example
Response example
{
"data": {},
"request_id": "req_123"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
/bi/{collection}/{id}Update BI object metadata
updateBiObject
- Required scopes
- bi:write
- Resource group
- Product Analytics and BI
- Request body
- JSON body accepted. Path parameters and Idempotency-Key stay outside the body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| collection | path | string | Yes | Resource identifier from /bi/{collection}/{id}. |
| id | path | string | Yes | Resource identifier from /bi/{collection}/{id}. |
Request body example
Response example
{
"data": {},
"request_id": "req_123"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
/bi/{collection}/{id}Archive a BI object
archiveBiObject
- Required scopes
- bi:write
- Resource group
- Product Analytics and BI
- Request body
- No request body.
- Idempotency
- Not required for this read operation.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| collection | path | string | Yes | Resource identifier from /bi/{collection}/{id}. |
| id | path | string | Yes | Resource identifier from /bi/{collection}/{id}. |
Request body example
Response example
{
"data": {},
"request_id": "req_123"
}Common errors
A valid bearer token is required.
The workspace exceeded the current rate limit.
The token does not include the scope required for this operation.
The request payload failed schema validation.
The requested resource does not exist in this workspace.
