Axiomatic
Operations

Helpdesk

Tickets and messages — read:helpdesk / write:helpdesk scopes. Send Authorization: Bearer ak_... and entityId (query, JSON body, or x-entity-id header). Browser sessions use withTenant the same way as CRM/Sales.

List tickets

GET
/api/helpdesk/tickets

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
status?string

Filter by ticket status

priority?string
Value in"low" | "normal" | "high" | "urgent"
search?string

Search subject (ilike)

Response Body

application/json

application/json

application/json

curl -X GET "https://app.axiomatic.software/api/helpdesk/tickets?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08"
[
  {
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "entityId": "156e622c-6cdf-4c27-9bc9-2f2db69919f5",
    "ticketNumber": "string",
    "subject": "string",
    "description": "string",
    "status": "new",
    "priority": "low",
    "channel": "email",
    "contactEmail": "string",
    "contactName": "string",
    "categoryId": "337f5e5d-288b-40d5-be14-901cc3acacc0",
    "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",
    "assignedTo": "7869c1a9-a680-4086-b6f5-9e78a651f6f2",
    "createdAt": "2019-08-24T14:15:22Z",
    "updatedAt": "2019-08-24T14:15:22Z",
    "firstResponseAt": "2019-08-24T14:15:22Z",
    "resolvedAt": "2019-08-24T14:15:22Z",
    "closedAt": "2019-08-24T14:15:22Z"
  }
]
{
  "error": "string"
}
{
  "error": "string"
}

Create ticket

POST
/api/helpdesk/tickets

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

application/json

curl -X POST "https://app.axiomatic.software/api/helpdesk/tickets?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{    "subject": "string"  }'
{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "entityId": "156e622c-6cdf-4c27-9bc9-2f2db69919f5",
  "ticketNumber": "string",
  "subject": "string",
  "description": "string",
  "status": "new",
  "priority": "low",
  "channel": "email",
  "contactEmail": "string",
  "contactName": "string",
  "categoryId": "337f5e5d-288b-40d5-be14-901cc3acacc0",
  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",
  "assignedTo": "7869c1a9-a680-4086-b6f5-9e78a651f6f2",
  "createdAt": "2019-08-24T14:15:22Z",
  "updatedAt": "2019-08-24T14:15:22Z",
  "firstResponseAt": "2019-08-24T14:15:22Z",
  "resolvedAt": "2019-08-24T14:15:22Z",
  "closedAt": "2019-08-24T14:15:22Z"
}
{
  "error": "string"
}
{
  "error": "string"
}
{
  "error": "string"
}

Get ticket with messages

GET
/api/helpdesk/tickets/{ticketId}

Authorization

bearerAuth
AuthorizationBearer <token>

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

In: header

Path Parameters

ticketId*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

application/json

curl -X GET "https://app.axiomatic.software/api/helpdesk/tickets/497f6eca-6276-4993-bfeb-53cbbbba6f08?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08"
{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "entityId": "156e622c-6cdf-4c27-9bc9-2f2db69919f5",
  "ticketNumber": "string",
  "subject": "string",
  "description": "string",
  "status": "new",
  "priority": "low",
  "channel": "email",
  "contactEmail": "string",
  "contactName": "string",
  "categoryId": "337f5e5d-288b-40d5-be14-901cc3acacc0",
  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",
  "assignedTo": "7869c1a9-a680-4086-b6f5-9e78a651f6f2",
  "createdAt": "2019-08-24T14:15:22Z",
  "updatedAt": "2019-08-24T14:15:22Z",
  "firstResponseAt": "2019-08-24T14:15:22Z",
  "resolvedAt": "2019-08-24T14:15:22Z",
  "closedAt": "2019-08-24T14:15:22Z",
  "messages": [
    {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "ticketId": "e3e3e8ea-b02a-4536-85a2-a9c90f4ee74f",
      "authorType": "system",
      "authorId": "ee6f7132-bd0a-4fcd-83b3-a8022377067b",
      "authorName": "string",
      "body": "string",
      "isInternal": true,
      "createdAt": "2019-08-24T14:15:22Z"
    }
  ]
}
{
  "error": "string"
}
{
  "error": "string"
}
{
  "error": "string"
}

Update ticket (agents)

PATCH
/api/helpdesk/tickets/{ticketId}

Authorization

bearerAuth
AuthorizationBearer <token>

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

In: header

Path Parameters

ticketId*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

application/json

curl -X PATCH "https://app.axiomatic.software/api/helpdesk/tickets/497f6eca-6276-4993-bfeb-53cbbbba6f08?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{}'
{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "entityId": "156e622c-6cdf-4c27-9bc9-2f2db69919f5",
  "ticketNumber": "string",
  "subject": "string",
  "description": "string",
  "status": "new",
  "priority": "low",
  "channel": "email",
  "contactEmail": "string",
  "contactName": "string",
  "categoryId": "337f5e5d-288b-40d5-be14-901cc3acacc0",
  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",
  "assignedTo": "7869c1a9-a680-4086-b6f5-9e78a651f6f2",
  "createdAt": "2019-08-24T14:15:22Z",
  "updatedAt": "2019-08-24T14:15:22Z",
  "firstResponseAt": "2019-08-24T14:15:22Z",
  "resolvedAt": "2019-08-24T14:15:22Z",
  "closedAt": "2019-08-24T14:15:22Z"
}
{
  "error": "string"
}
{
  "error": "string"
}
{
  "error": "string"
}
{
  "error": "string"
}

Add message to ticket

POST
/api/helpdesk/tickets/{ticketId}/messages

Authorization

bearerAuth
AuthorizationBearer <token>

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

In: header

Path Parameters

ticketId*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

application/json

curl -X POST "https://app.axiomatic.software/api/helpdesk/tickets/497f6eca-6276-4993-bfeb-53cbbbba6f08/messages?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{    "body": "string"  }'
{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "ticketId": "e3e3e8ea-b02a-4536-85a2-a9c90f4ee74f",
  "authorType": "system",
  "authorId": "ee6f7132-bd0a-4fcd-83b3-a8022377067b",
  "authorName": "string",
  "body": "string",
  "isInternal": true,
  "createdAt": "2019-08-24T14:15:22Z"
}
{
  "error": "string"
}
{
  "error": "string"
}
{
  "error": "string"
}
{
  "error": "string"
}