Fin Agent

Submit a CSAT rating

Changed on

Record a customer's satisfaction rating for a conversation, with an optional free-text remark.

Fin decides when to ask for a rating — this reuses the CSAT settings on your Fin workflow, not this API. When Fin asks, it fires a csat_requested event over webhooks carrying the rating options to show the user. Present those options, then submit the user's choice here.

Submitting the same rating again, with no new remark, is a no-op and stays successful, so an at-least-once client can safely retry. Submitting a different rating updates the stored rating while the update window is still open, and a first remark can be added to an already-rated survey. Once a remark has been recorded the rating is locked and can no longer be changed.

{% admonition type="warning" %} To request access to the Fin Agent API, go to Settings > Integrations > Fin Agent API in your workspace and tell us about your use case. Once access is granted, Fin Agent API appears under Fin AI Agent > Deploy. {% /admonition %}

post/fin/csat

Request

  • Base URL
    https://api.intercom.io
  • Auth
    HTTP bearer

Headers

Intercom-Version'1.0' | '1.1' | '1.2' | '1.3' | '1.4' | '2.0' | '2.1' | '2.2' | '2.3' | '2.4' | '2.5' | '2.6' | '2.7' | '2.8' | '2.9' | '2.10' | '2.11' | '2.12' | '2.13' | '2.14'

Intercom API version.</br>By default, it's equal to the version set in the app package.

Example:2.14

Request body

conversation_idstring required

Your external conversation ID — the same ID you started the conversation with, and the one echoed on the csat_requested event.

rating'terrible' | 'bad' | 'ok' | 'good' | 'amazing' required

The rating the user selected — one of the key values from the csat_requested event's options.

remarkstring

Optional free-text comment the user left alongside the rating. Can be added to an already-rated survey, but only once — the rating locks after a remark is recorded.

Example request

{
  "conversation_id": "ext-123",
  "rating": "amazing",
  "remark": "Fin solved my problem in seconds."
}

Response

Rating recorded successfully

conversation_idstring

The external ID of the rated conversation.

rating'terrible' | 'bad' | 'ok' | 'good' | 'amazing'

The rating now recorded on the conversation.

status'rated'

The result of the submission.

Example response

{
  "conversation_id": "ext-123",
  "rating": "amazing",
  "status": "rated"
}

Changes