For the complete documentation index, see llms.txt. This page is also available as Markdown.

Update Ticket

Updates a ticket's status, priority, assignment and category.

Endpoint

PUT /api/ticket

Authentication

  • Requires API token authentication

  • Subject to rate limiting

Request Body

Field
Type
Required
Description

ticketId

string

Yes

The unique identifier of the ticket

status

string

No

New ticket status

priority

number

No

New priority level

categoryId

string

No

ID of the category to assign

assignedTo

string

No

ID of the agent to assign

Valid Values

  • status: "Open", "Resolved", "Pending", "Waiting"

  • priority: 1, 2, 3

  • categoryId: Must be a valid category ID from GET /categories

  • assignedTo: The id of an agent from GET /agents. Omit to leave assignment unchanged, or null to make the ticket unassigned

Note: assignedTo takes an agent ID (obtained from GET /agents), not an email address. This allows agents who signed up with a wallet β€” and therefore have no email β€” to be assigned tickets. Passing an email (or any value that is not a valid agent ID) returns a validation error.

Response

Success (200 OK)

Error Responses

Ticket not found (400)

Invalid category (400)

Invalid status/priority (400)

Assignee not found (400)

Server error (500)

Behavior

  • Each change (status, priority, category, assignment) creates an audit log message

  • Changes only apply when new values differ from existing values

  • Categories must be active and associated with the client

  • assignedTo is resolved to an agent in your organization. An ID that does not belong to your organization is rejected with Assignee not found

  • Assigning a ticket that the AI is actively handling ends AI handling (the ticket is handed off to the agent)

Example (cURL)

Last updated