Docs Blog Sign in

Messages

Messages represent individual replies, responses, and internal notes within a ticket conversation.

Note: The Messages API uses session-based (JWT) authentication rather than API key authentication. These endpoints are available at /helpdesk/api/messages and require a valid session token.

The message object

AttributeTypeDescription
idstringUnique identifier
ticketIdstringID of the parent ticket
typestringrequest, response, or note
contentstringHTML content of the message
textContentstringPlain-text content (optional)
authorIdstringID of the user who created the message
attachmentsarrayFile attachments (optional)
ccsarrayCC recipients (optional)
createdAttimestampCreation time (UTC)
updatedAttimestampLast update time (UTC)

Message types

TypeDescription
requestInbound message from the customer
responseOutbound reply from an agent (sends email by default)
noteInternal note visible only to agents

List messages

GET /helpdesk/api/messages?ticket_id=tkt_abc123

Returns a paginated list of messages for a given ticket. Requires the viewer role or higher.

Query parameters

ParameterTypeRequiredDescription
ticket_idstringyesThe ticket to list messages for
pageintegernoPage number (default: 1)
limitintegernoResults per page, 1-100 (default: 50)
sort_orderstringnoasc or desc (default: asc)

Retrieve a message

GET /helpdesk/api/messages/:messageId

Requires the viewer role or higher.

Create a message

POST /helpdesk/api/messages

Creates a reply, response, or internal note on a ticket. Requires the agent role or higher.

Request body

FieldTypeRequiredDescription
ticket_idstringyesID of the parent ticket
typestringyesrequest, response, or note
contentstringyesHTML content
text_contentstringnoPlain-text fallback
recipientsarraynoOverride recipients for forwards
ccsarraynoCC recipients ({ email, name })
attachmentsarraynoAttachment references ({ token, name, size })
send_emailbooleannoSend email for response type (default: true)
is_forwardbooleannoTreat as a forward
ticket_updateobjectnoAtomically update ticket fields with the message

ticket_update fields

FieldTypeDescription
statusstringNew ticket status
prioritystringlow, normal, high, urgent
typestringquestion, incident, problem, task

Error codes

CodeStatusDescription
TICKET_CLOSED403Cannot add messages to closed tickets
CLOSED_STATUS_SYSTEM_ONLY403Closed status can only be set by system automations