POST/tickets/{ticket_id}/reply

Reply to a ticket

Submits a reply or note on a ticket, either on behalf of an admin or a contact. For an admin reply, set message_type and provide the fields required for that reply type; for a contact reply, identify the contact using one of the supported identifiers. Use the ticket object's internal id, not the ticket number shown in the Inbox.

  • IdempotentThe SDK sends Idempotency-Key, so a retried request is only applied once.

2 parameters · 1 body field
ticket_idstringrequired
The internal identifier of the ticket to reply to; do not use the ticket number displayed in the Inbox.
Intercom-Versionstringoptional
The API version to use. Defaults to 2.17 when omitted.
Allowed:1.01.11.21.31.42.02.12.22.32.42.52.6Default:2.17

Reply payload for an admin or contact, with optional notification settings. Contact replies identify the contact using intercom_user_id, user_id, or email; admin replies require message_type, type, and admin_id.

skip_notificationsbooleanoptional
Option to disable notifications when replying to a Ticket.

4 status codes
200Returns the created ticket part, including its type, body, author, attachments, timestamps, and translation data.
typestringoptional
Always ticket_part
Allowed:ticket_part
idstringoptional
The id representing the part.
part_typestringoptional
Type of the part
Allowed:notecommentquick_reply
bodystringoptional
The message body, which may contain HTML.
created_atintegeroptional
The time the note was created.
updated_atintegeroptional
The last time the note was updated.
authorobjectoptional
The author that wrote or triggered the part. Can be a bot, admin, team or user.
attachmentsarray<PartAttachment>optional
A list of attachments for the part.
redactedbooleanoptional
Whether or not the ticket part has been redacted.
translationsobjectoptional
A map of the reply text keyed by locale code. Backs the `ticket.admin.replied.translated` webhook topic. `original` holds the locale code the reply was written in; every other key holds the reply translated into that locale.
400Returned when the reply payload is invalid, such as when a required field for the selected reply type is missing.

One documented failure

  • parameter_mismatch

    User replies are not allowed on Backoffice tickets

typestringrequired
The type is error.list
request_idstringoptional
errorsarray<object>required
An array of one or more error objects
401Returned when the request is unauthorized.

One documented failure

  • unauthorized

    Access Token Invalid

typestringrequired
The type is error.list
request_idstringoptional
errorsarray<object>required
An array of one or more error objects
404Returned when the ticket is not found.

One documented failure

  • not_found

    Resource Not Found

typestringrequired
The type is error.list
request_idstringoptional
errorsarray<object>required
An array of one or more error objects

Error handling

A 400 is returned when the reply payload is invalid, a 401 when the request is unauthorized, and a 404 when the ticket is not found. The ticket_id path parameter must be the ticket object's internal ID, not its Inbox ticket number. For admin replies, message_type must be comment, note, or quick_reply; comment and note require body, while quick_reply requires reply_options with text and uuid on each option.