Axiomatic
CRM & Sales

CRM

CRM HTTP API — read:crm / write:crm scopes. Send Authorization: Bearer ak_... and entityId (query or JSON body). Browser sessions may use x-entity-id instead of Bearer.

POST
/api/crm/prospecting/add-to-marketing-list

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

curl -X POST "https://example.com/api/crm/prospecting/add-to-marketing-list?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{    "listId": "9fc6ad7d-902a-4834-b161-a4911b883d44"  }'
Empty
{
  "error": "string"
}
{
  "error": "string"
}
Empty
Empty
GET
/api/crm/dashboard

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Response Body

application/json

application/json

curl -X GET "https://example.com/api/crm/dashboard?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08"
{}
{
  "error": "string"
}
GET
/api/crm/companies

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid
role?string

Commercial relationship type

Value in"prospect" | "customer" | "vendor" | "both"
status?string

Lifecycle: active or archived

Value in"active" | "inactive"
ownerUserId?string

UUID, me, or unassigned

q?string

Search name (ilike)

page?integer
Range1 <= value
pageSize?integer
limit?integer

Legacy: caps page size when page omitted

Response Body

application/json

application/json

curl -X GET "https://example.com/api/crm/companies?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08"
{}
{
  "error": "string"
}
POST
/api/crm/companies

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X POST "https://example.com/api/crm/companies?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{    "name": "string"  }'
{}
{
  "error": "string"
}
{
  "error": "string"
}
GET
/api/crm/companies/{companyId}

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Path Parameters

companyId*string
Formatuuid

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/api/crm/companies/497f6eca-6276-4993-bfeb-53cbbbba6f08?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08"
{}
{
  "error": "string"
}
{
  "error": "string"
}
PATCH
/api/crm/companies/{companyId}

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Path Parameters

companyId*string
Formatuuid

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

curl -X PATCH "https://example.com/api/crm/companies/497f6eca-6276-4993-bfeb-53cbbbba6f08?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{}'
Empty
{
  "error": "string"
}
{
  "error": "string"
}
GET
/api/crm/companies/{companyId}/contacts

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Path Parameters

companyId*string
Formatuuid

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Response Body

application/json

application/json

curl -X GET "https://example.com/api/crm/companies/497f6eca-6276-4993-bfeb-53cbbbba6f08/contacts?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08"
Empty
{
  "error": "string"
}
{
  "error": "string"
}
GET
/api/crm/contacts

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid
companyId?string
Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/crm/contacts?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08"
Empty
{
  "error": "string"
}
POST
/api/crm/contacts

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/crm/contacts?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{}'
Empty
{
  "error": "string"
}
Empty
GET
/api/crm/contacts/{contactId}

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Path Parameters

contactId*string
Formatuuid

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Response Body

application/json

application/json

curl -X GET "https://example.com/api/crm/contacts/497f6eca-6276-4993-bfeb-53cbbbba6f08?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08"
Empty
{
  "error": "string"
}
{
  "error": "string"
}
PATCH
/api/crm/contacts/{contactId}

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Path Parameters

contactId*string
Formatuuid

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X PATCH "https://example.com/api/crm/contacts/497f6eca-6276-4993-bfeb-53cbbbba6f08?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{}'
Empty
{
  "error": "string"
}
DELETE
/api/crm/contacts/{contactId}

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Path Parameters

contactId*string
Formatuuid

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Response Body

curl -X DELETE "https://example.com/api/crm/contacts/497f6eca-6276-4993-bfeb-53cbbbba6f08?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08"
Empty
GET
/api/crm/contacts/{contactId}/company-memberships

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Path Parameters

contactId*string
Formatuuid

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/crm/contacts/497f6eca-6276-4993-bfeb-53cbbbba6f08/company-memberships?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08"
Empty
{
  "error": "string"
}
POST
/api/crm/contacts/{contactId}/company-memberships

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Path Parameters

contactId*string
Formatuuid

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

curl -X POST "https://example.com/api/crm/contacts/497f6eca-6276-4993-bfeb-53cbbbba6f08/company-memberships?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{    "companyId": "8bb73d03-06b4-47c7-80c7-59301f770eda"  }'
Empty
Empty
PATCH
/api/crm/contacts/{contactId}/company-memberships/{membershipId}

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Path Parameters

contactId*string
Formatuuid
membershipId*string
Formatuuid

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X PATCH "https://example.com/api/crm/contacts/497f6eca-6276-4993-bfeb-53cbbbba6f08/company-memberships/497f6eca-6276-4993-bfeb-53cbbbba6f08?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{}'
Empty
{
  "error": "string"
}
DELETE
/api/crm/contacts/{contactId}/company-memberships/{membershipId}

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Path Parameters

contactId*string
Formatuuid
membershipId*string
Formatuuid

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Response Body

application/json

curl -X DELETE "https://example.com/api/crm/contacts/497f6eca-6276-4993-bfeb-53cbbbba6f08/company-memberships/497f6eca-6276-4993-bfeb-53cbbbba6f08?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08"
Empty
{
  "error": "string"
}
GET
/api/crm/pipeline-stages

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Response Body

application/json

application/json

curl -X GET "https://example.com/api/crm/pipeline-stages?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08"
{
  "stages": [
    {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "name": "string",
      "kind": "open",
      "sortOrder": 0,
      "defaultProbabilityPct": 0,
      "colorKey": "string",
      "systemKey": "string",
      "leadCount": 0
    }
  ]
}
{
  "error": "string"
}
POST
/api/crm/pipeline-stages

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

curl -X POST "https://example.com/api/crm/pipeline-stages?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{    "name": "string"  }'
Empty
{
  "error": "string"
}
{
  "error": "string"
}
POST
/api/crm/pipeline-stages/reorder

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

curl -X POST "https://example.com/api/crm/pipeline-stages/reorder?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{    "stageIds": [      "ef8acdf2-9c60-4264-8296-0d97712d5691"    ]  }'
Empty
{
  "error": "string"
}
{
  "error": "string"
}
PATCH
/api/crm/pipeline-stages/{stageId}

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Path Parameters

stageId*string
Formatuuid

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X PATCH "https://example.com/api/crm/pipeline-stages/497f6eca-6276-4993-bfeb-53cbbbba6f08?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{}'
Empty
{
  "error": "string"
}
{
  "error": "string"
}
{
  "error": "string"
}
DELETE
/api/crm/pipeline-stages/{stageId}

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Path Parameters

stageId*string
Formatuuid

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

curl -X DELETE "https://example.com/api/crm/pipeline-stages/497f6eca-6276-4993-bfeb-53cbbbba6f08?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{}'
Empty
{
  "error": "string"
}
{
  "error": "string"
}
{
  "error": "string"
}
{
  "error": "string"
}
GET
/api/crm/leads

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid
companyId?string
Formatuuid
contactId?string
Formatuuid
stageId?string
Formatuuid
stage?string

Filter by stage name or legacy system key

Response Body

curl -X GET "https://example.com/api/crm/leads?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08"
Empty
POST
/api/crm/leads

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

curl -X POST "https://example.com/api/crm/leads?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{    "title": "string"  }'
Empty
Empty
GET
/api/crm/leads/{leadId}

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Path Parameters

leadId*string
Formatuuid

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/crm/leads/497f6eca-6276-4993-bfeb-53cbbbba6f08?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08"
Empty
{
  "error": "string"
}
PATCH
/api/crm/leads/{leadId}

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Path Parameters

leadId*string
Formatuuid

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X PATCH "https://example.com/api/crm/leads/497f6eca-6276-4993-bfeb-53cbbbba6f08?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{}'
Empty
{
  "error": "string"
}
DELETE
/api/crm/leads/{leadId}

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Path Parameters

leadId*string
Formatuuid

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Response Body

application/json

curl -X DELETE "https://example.com/api/crm/leads/497f6eca-6276-4993-bfeb-53cbbbba6f08?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08"
Empty
{
  "error": "string"
}
GET
/api/crm/leads/{leadId}/timeline

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Path Parameters

leadId*string
Formatuuid

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/crm/leads/497f6eca-6276-4993-bfeb-53cbbbba6f08/timeline?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08"
Empty
{
  "error": "string"
}
PATCH
/api/crm/leads/{leadId}/stage

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Path Parameters

leadId*string
Formatuuid

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X PATCH "https://example.com/api/crm/leads/497f6eca-6276-4993-bfeb-53cbbbba6f08/stage?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{}'
Empty
{
  "error": "string"
}
POST
/api/crm/leads/{leadId}/activities

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Path Parameters

leadId*string
Formatuuid

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/crm/leads/497f6eca-6276-4993-bfeb-53cbbbba6f08/activities?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{    "type": "call",    "subject": "string"  }'
Empty
{
  "error": "string"
}
GET
/api/crm/activities

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid
companyId?string
Formatuuid
contactId?string
Formatuuid

Response Body

curl -X GET "https://example.com/api/crm/activities?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08"
Empty
POST
/api/crm/activities

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

curl -X POST "https://example.com/api/crm/activities?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{    "type": "call",    "subject": "string"  }'
Empty
GET
/api/crm/tasks

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid
projectId?string
Formatuuid
status?string

Response Body

curl -X GET "https://example.com/api/crm/tasks?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08"
Empty
POST
/api/crm/outbound-email

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/crm/outbound-email?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{    "leadId": "3c6e2b8e-0e8f-48db-8791-27271df10113",    "connectionId": "84b500d7-71c8-4b1f-adf4-f1eb0000973d",    "channel": "gmail",    "subject": "string",    "htmlBody": "string"  }'
Empty
{
  "error": "string"
}
GET
/api/crm/outbound-email-connections

Authorization

bearerAuth
AuthorizationBearer <token>

Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....

In: header

Query Parameters

entityId*string

Entity UUID; must match the API key’s entity when using Bearer auth.

Formatuuid

Response Body

curl -X GET "https://example.com/api/crm/outbound-email-connections?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08"
Empty