Skip to main content
PATCH
Update a ticket

Authorizations

Authorization
string
header
required

API key from your account settings

Path Parameters

agentId
string
required

The agent ID

Minimum string length: 1
Example:

"5QHA6VB-DIAbBhxwqxfdi"

ticketNumber
integer
required

The ticket number

Required range: x <= 2147483647
Example:

123

Body

application/json
statusId
string<uuid>

ID of an existing status for this agent. Provide at most one of statusId / statusCategory. Omit to leave the status unchanged.

statusCategory
enum<string>

Status category; resolves to that category's default status. Provide at most one of statusId / statusCategory. Omit to leave the status unchanged.

Available options:
new,
on_you,
on_customer,
on_hold,
closed,
cancelled
Example:

"on_customer"

assigneeId
string<uuid> | null

Platform user id of the agent to assign. Provide at most one of assigneeId / assigneeEmail. Pass null to unassign the ticket. Omit to leave the assignee unchanged.

assigneeEmail
string<email>

Email of the agent to assign (case-insensitive). Provide at most one of assigneeId / assigneeEmail. Does not accept null; unassign via assigneeId: null. Omit to leave the assignee unchanged.

Example:

"sam@example.com"

teamId
string<uuid> | null

ID of an existing team for this agent. Pass null to clear the team. Omit to leave the team unchanged.

Response

The updated ticket

ticketNumber
integer
required

The ticket number

Example:

123

subject
string | null
required

Ticket subject

description
string | null
required

Ticket description

statusCategory
enum<string>
required

Status category driving color/ordering semantics

Available options:
new,
on_you,
on_customer,
on_hold,
closed,
cancelled
Example:

"on_customer"

statusId
string
required

ID of the ticket status. Resolve label/color via /ticket-statuses.

assigneeId
string | null
required

ID of the assigned agent user, or null when unassigned

customer
object
required
metadata
object
required

Arbitrary extra fields captured on the ticket

Example:
channel
enum<string>
required

Channel the ticket originated from

Available options:
helpdesk,
iframe,
email,
whatsapp,
api,
messenger,
instagram,
center_stage,
phone
Example:

"email"

conversationId
string | null
required

ID of the linked conversation, if any

teamId
string | null
required

ID of the assigned team, or null. Resolve via /teams.

createdAt
string
required

ISO 8601 creation timestamp

Example:

"2026-07-20T12:34:56.000Z"

updatedAt
string
required

ISO 8601 timestamp of the last update

Example:

"2026-07-21T09:00:00.000Z"

lastMessageAt
string | null
required

ISO 8601 timestamp of the most recent message, or null if the ticket has no messages

Example:

"2026-07-21T08:55:00.000Z"