Skip to content

Rate a conversation

Request

Record a contact's CSAT rating, and an optional remark, on the latest rating request Intercom sent for a conversation. The rating counts in your CSAT reports for the teammate, Fin or workflow that was rated.

Only the contact the request was sent to can answer. Pass their Intercom ID as intercom_user_id.

Sending the same rating and remark again returns the current rating without changing it, so it is safe to retry. A different rating replaces the earlier one while the rating request still accepts answers. A remark can be added to a rating that has none. Once a remark is set, the rating and the remark can no longer be changed.

Requires the write_conversations permission.

Security
bearerAuth
Path
conversation_idstringrequired

The unique identifier for the conversation.

Example:215471234567890
Headers
Intercom-Versionstring(intercom_version)

Intercom API version.
If you omit the header, the API uses the version set in your app package, and 1.0 if none is set.

Enum:"1.0""1.1""1.2""1.3""1.4""2.0""2.1""2.2""2.3""2.4"
Example:Preview
Bodyapplication/json
intercom_user_idstringrequired

The unique identifier for the contact the rating request was sent to.

Example:"6541f0a2c3d4e5f607182930"
ratinginteger, [ 1 .. 5 ]required

The rating, from 1 to 5.

Example:4
remarkstring

Free text from the contact to go with the rating.

Example:"Fast and friendly"
curl -i -X POST \
  https://api.intercom.io/conversations/215471234567890/rating \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'Intercom-Version: Preview' \
  -d '{
    "intercom_user_id": "6541f0a2c3d4e5f607182930",
    "rating": 4,
    "remark": "Fast and friendly"
  }'

Responses

Rating recorded

Bodyapplication/json
typestring

String representing the object's type. Always has the value conversation_rating.

Value:"conversation_rating"
Example:"conversation_rating"
conversation_idstring

The unique identifier for the conversation.

Example:"215471234567890"
ratinginteger

The rating, from 1 to 5.

Example:4
remarkstring or null

The free text left with the rating.

Example:"Fast and friendly"
created_atinteger, (date-time)

The time the rating request was created, as a UNIX timestamp.

Example:1793664000
updated_atinteger, (date-time)

The time the rating or remark last changed, as a UNIX timestamp.

Example:1793664120
customerobject

The contact who answered.

teammateobject

Who was rated.

Response
{ "type": "conversation_rating", "conversation_id": "215471234567890", "rating": 4, "remark": "Fast and friendly", "created_at": 1793664000, "updated_at": 1793664120, "customer": { "type": "user", "id": "6541f0a2c3d4e5f607182930" }, "teammate": { "type": "admin", "id": "12345" } }