Skip to content

Returns the ticket's conversation — yours and ours — merged across its parent chain.

GET
/v1/integration/tickets/{id}/messages
curl --request GET \
--url https://api.example.com/v1/integration/tickets/1/messages

Oldest first. Pass afterId with the highest id you have already stored to poll incrementally. A ticket that continued in a child returns the whole chain, each entry tagged with the ticketId and trackingKey it belongs to. Every ticket in that chain is checked against your token’s pool scope, not just the one you addressed: an ancestor that has since been moved to a pool your token cannot see is left out entirely.

id
required
integer format: int64
/^-?(?:0|[1-9]\d*)$/
afterId
integer format: int64
/^-?(?:0|[1-9]\d*)$/

OK

object
data
Array<object>
nullable
object
id
required
/^-?(?:0|[1-9]\d*)$/
ticketId
required
/^-?(?:0|[1-9]\d*)$/
trackingKey
required
string
direction
required
string
channel
required
string
subject
required
string
content
required
string
contentHtml
string
nullable
isContentTruncated
required
boolean
occurredAt
required
string format: date-time
attachments
required
Array<object>
object
id
required
/^-?(?:0|[1-9]\d*)$/
fileName
required
string
contentType
required
string
sizeBytes
required
/^-?(?:0|[1-9]\d*)$/
downloadUrl
required
string
success
boolean
error
One of:
object
status
/^-?(?:0|[1-9]\d*)$/
code
string
nullable
details
message
string

Not Found

object
type
string
nullable
title
string
nullable
status
nullable /^-?(?:0|[1-9]\d*)$/
detail
string
nullable
instance
string
nullable