---
title: "Escalate to a human"
method: POST
path: "/fin/escalate"
tags: ["Fin Agent"]
---

# Escalate to a human

`POST /fin/escalate`

## Request

- Base URL: `https://api.intercom.io`
- URL: `https://api.intercom.io/fin/escalate`
- Auth: HTTP bearer

Hand a conversation off to a human teammate. If you use the Intercom Helpdesk, the
handoff lands in your team inbox.

Provide either `conversation_id` or `user`:

- `conversation_id` — escalate an existing agent conversation, including one started
  with `/fin/ask`. On the Intercom Helpdesk, Fin by default summarises the conversation
  and opens a new Helpdesk conversation that carries the summary as an internal note.
  Escalation does not change the original agent conversation's assignment or open/closed
  state. Configure an escalation Operator Workflow to change this default.
- `user` — escalate on behalf of a user with no prior agent conversation. On the Intercom
  Helpdesk, a new Helpdesk conversation is created for the teammate. Not supported on Fin
  for Platforms — see below.

In both cases, pass the optional `context` to give the receiving teammate background your
orchestrating agent has and Fin does not. On the Intercom Helpdesk, it appears above the
summary in the internal note of the new conversation the teammate picks up. It is never
shown to the end user.

Escalating an existing conversation also sets its AI Agent resolution state to
`escalated`, readable as `ai_agent.resolution_state` on the Conversations API. This is a
resolution state, not a billable resolution.

On Fin for Platforms, `conversation_id` is required — `user` is not supported and is
rejected, because there is no Intercom Helpdesk in which to create a conversation. There
is no Intercom inbox either, so an escalation that no workflow handles does not open a
Helpdesk conversation for a teammate. `context` is not surfaced, and the conversation is
left open for your platform to hand off and continue driving.

You are notified via webhooks with an `escalated` status
followed by `complete`. The `complete` status signals that Fin is done; it does not close
the conversation. On the Intercom Helpdesk, the new human conversation remains open; on
Fin for Platforms, the conversation remains open for whoever handles it on your platform.

{% 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 %}

## 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.

## Request body

- union
  - object
    - `conversation_id` string, required: The external ID of the conversation to escalate. Provide this or `user`. Required on Fin for Platforms, where `user` is not supported.
    - `user` object: The user to escalate on behalf of, creating a new conversation. Provide this or `conversation_id`. Not supported on Fin for Platforms.
      - `id` string, required: The ID of the user. This value will be used to uniquely identify the user during a conversation with Fin. Maps to the user_id field on the Intercom User object.
      - `name` string: The name of the user.
      - `email` string, email: The email of the user.
      - `attributes` object: A hash of attributes associated with the user. Attributes can be used by Fin to target content and responses. Limit to 10 attributes.
    - `context` string: Optional background for the receiving teammate, valid with either `conversation_id` or `user`. On the Intercom Helpdesk, it appears above the summary in the internal note of the new conversation the teammate picks up, and is never shown to the end user. Not surfaced on Fin for Platforms. Avoid including credentials or unnecessary personal data — it is visible to any teammate with access to the conversation.
  - object
    - `conversation_id` string: The external ID of the conversation to escalate. Provide this or `user`. Required on Fin for Platforms, where `user` is not supported.
    - `user` object, required: The user to escalate on behalf of, creating a new conversation. Provide this or `conversation_id`. Not supported on Fin for Platforms.
      - `id` string, required: The ID of the user. This value will be used to uniquely identify the user during a conversation with Fin. Maps to the user_id field on the Intercom User object.
      - `name` string: The name of the user.
      - `email` string, email: The email of the user.
      - `attributes` object: A hash of attributes associated with the user. Attributes can be used by Fin to target content and responses. Limit to 10 attributes.
    - `context` string: Optional background for the receiving teammate, valid with either `conversation_id` or `user`. On the Intercom Helpdesk, it appears above the summary in the internal note of the new conversation the teammate picks up, and is never shown to the end user. Not surfaced on Fin for Platforms. Avoid including credentials or unnecessary personal data — it is visible to any teammate with access to the conversation.

## Response `200`

Conversation escalated successfully

- object
  - `conversation_id` string: The external ID of the conversation. Returned when you escalate an existing conversation by `conversation_id` (echoed back). When you escalate a `user`, a new conversation is created and only `intercom_conversation_id` is returned.
  - `intercom_conversation_id` string: The internal Intercom conversation ID. Returned when a new conversation was created for the escalation.
  - `status` 'escalated': The resulting status of the conversation.

## Other responses

- `400`: Bad Request
- `401`: Unauthorized

## Changes

- **2026-10-22** (2.14) `617975a11355`: 1 warning
  - removed the optional property `sse_subscription_url` from the response with the `200` status
- **2026-09-28** (2.14) `0a3fd70024a8`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/intercom/apis/intercom-api/changes/fin/escalate/post.md)

---

[API](https://skmtc.dev/intercom/apis/intercom-api.md) - [All operations](https://skmtc.dev/intercom/apis/intercom-api/llms.txt) - [OpenAPI document](https://skmtc.dev/intercom/apis/intercom-api/revisions/15220f68d145?raw)
