> ## Documentation Index
> Fetch the complete documentation index at: https://deepline.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Intercom: Update Ticket

> Update an Intercom ticket's attributes, state, company, assignee or snooze time. Includes inputs, outputs, SDK V2 examples, and Deepline cost.

Update an Intercom ticket's attributes, state, company, assignee or snooze time.

> [!NOTE]
>
> Tool ID: `intercom_update_ticket`

## Run this action

Use the TypeScript SDK for one call. Use `ctx.tools.execute(...)` inside a Play for durable calls, scheduled calls, or CSV processing.

```ts theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
import { Deepline } from 'deepline';

const deepline = await Deepline.connect();
const result = await deepline.tools.execute(
  'intercom_update_ticket',
  {
    "ticket_id": "ticket_123"
  },
);

console.log(result.toolResponse.raw);
```

### CLI

```bash theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
deepline tools execute intercom_update_ticket --input '{
  "ticket_id": "ticket_123"
}' --json
```

## Example response

The SDK returns this shape at `result.toolResponse.raw`. The example values illustrate the response.

```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
{
  "data": {
    "type": "ticket",
    "id": "id_123",
    "ticket_id": "ticket_123"
  }
}
```

Use `deepline describe intercom_update_ticket --json` for the latest machine-readable contract.

## Input reference

You can update a Ticket

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `payload.ticket_id` | `string` | Yes | — | The unique identifier for the ticket which is given by Intercom. \{% admonition type="info" name="Not the Inbox ticket ID" %} This is the internal `id` field from the API response, not the `ticket_id` displayed in the Intercom Inbox (e.g., #12345). Use the `id` value from the ticket object returned by the API. \{% /admonition %} |
| `payload.ticket_attributes` | `object` | No | — | The attributes set on the ticket. |
| `payload.ticket_state_id` | `string` | No | — | The ID of the ticket state associated with the ticket type. |
| `payload.company_id` | `string` | No | — | The ID of the company that the ticket is associated with. The unique identifier for the company which is given by Intercom. Set to nil to remove company. |
| `payload.open` | `boolean` | No | — | Specify if a ticket is open. Set to false to close a ticket. Closing a ticket will also unsnooze it. |
| `payload.is_shared` | `boolean` | No | — | Specify whether the ticket is visible to users. |
| `payload.snoozed_until` | `integer` | No | — | The time you want the ticket to reopen. Format: `timestamp`. |
| `payload.admin_id` | `integer` | No | — | The ID of the admin performing ticket update. Needed for workflows execution and attributing actions to specific admins. |
| `payload.assignee_id` | `string` | No | — | The ID of the admin or team to which the ticket is assigned. Set this 0 to unassign it. |

<details>
  <summary>Show raw input schema</summary>

  ### Input JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "You can update a Ticket",
    "properties": {
      "ticket_id": {
        "type": "string",
        "description": "The unique identifier for the ticket which is given by Intercom. {% admonition type=\"info\" name=\"Not the Inbox ticket ID\" %} This is the internal `id` field from the API response, not the `ticket_id` displayed in the Intercom Inbox (e.g., #12345). Use the `id` value from the ticket object returned by the API. {% /admonition %}"
      },
      "ticket_attributes": {
        "type": "object",
        "description": "The attributes set on the ticket."
      },
      "ticket_state_id": {
        "type": "string",
        "description": "The ID of the ticket state associated with the ticket type."
      },
      "company_id": {
        "type": "string",
        "description": "The ID of the company that the ticket is associated with. The unique identifier for the company which is given by Intercom. Set to nil to remove company."
      },
      "open": {
        "type": "boolean",
        "description": "Specify if a ticket is open. Set to false to close a ticket. Closing a ticket will also unsnooze it."
      },
      "is_shared": {
        "type": "boolean",
        "description": "Specify whether the ticket is visible to users."
      },
      "snoozed_until": {
        "type": "integer",
        "description": "The time you want the ticket to reopen.",
        "format": "timestamp"
      },
      "admin_id": {
        "type": "integer",
        "description": "The ID of the admin performing ticket update. Needed for workflows execution and attributing actions to specific admins."
      },
      "assignee_id": {
        "type": "string",
        "description": "The ID of the admin or team to which the ticket is assigned. Set this 0 to unassign it."
      }
    },
    "required": [
      "ticket_id"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Output reference

Standard tool result payload.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `result.data` | `object` | Yes | — | Tickets are how you track requests from your users. |
| `result.data.type` | `"ticket"` | No | `"ticket"` | Always ticket Allowed: `ticket`. |
| `result.data.id` | `string` | No | — | The unique identifier for the ticket which is given by Intercom. |
| `result.data.ticket_id` | `string` | No | — | The ID of the Ticket used in the Intercom Inbox and Messenger. Do not use ticket\_id for API queries. |
| `result.data.category` | `"Customer" \| "Back-office" \| "Tracker"` | No | — | Category of the Ticket. Allowed: `Customer`, `Back-office`, `Tracker`. |
| `result.data.ticket_attributes` | `record` | No | — | An object containing the different attributes associated to the ticket as key-value pairs. For the default title and description attributes, the keys are `_default_title_` and `_default_description_`. |
| `result.data.ticket_state` | `object \| null` | No | — | A ticket state, used to define the state of a ticket. |
| `result.data.ticket_state.type` | `string` | No | — | String representing the object's type. Always has the value `ticket_state`. |
| `result.data.ticket_state.id` | `string` | No | — | The id of the ticket state |
| `result.data.ticket_state.category` | `"submitted" \| "in_progress" \| "waiting_on_customer" \| "resolved"` | No | — | The category of the ticket state Allowed: `submitted`, `in_progress`, `waiting_on_customer`, `resolved`. |
| `result.data.ticket_state.internal_label` | `string` | No | — | The state the ticket is currently in, in a human readable form - visible in Intercom |
| `result.data.ticket_state.external_label` | `string` | No | — | The state the ticket is currently in, in a human readable form - visible to customers, in the messenger, email and tickets portal. |
| `result.data.ticket_type` | `object \| null` | No | — | A ticket type, used to define the data fields to be captured in a ticket. |
| `result.data.ticket_type.type` | `string` | No | — | String representing the object's type. Always has the value `ticket_type`. |
| `result.data.ticket_type.id` | `string` | No | — | The id representing the ticket type. |
| `result.data.ticket_type.category` | `"Customer" \| "Back-office" \| "Tracker"` | No | — | Category of the Ticket Type. Allowed: `Customer`, `Back-office`, `Tracker`. |
| `result.data.ticket_type.name` | `string` | No | — | The name of the ticket type |
| `result.data.ticket_type.description` | `string` | No | — | The description of the ticket type |
| `result.data.ticket_type.icon` | `string` | No | — | The icon of the ticket type |
| `result.data.ticket_type.workspace_id` | `string` | No | — | The id of the workspace that the ticket type belongs to. |
| `result.data.ticket_type.ticket_type_attributes` | `object` | No | — | A list of attributes associated with a given ticket type. |
| `result.data.ticket_type.ticket_type_attributes.type` | `string` | No | — | String representing the object's type. Always has the value `ticket_type_attributes.list`. |
| `result.data.ticket_type.ticket_type_attributes.ticket_type_attributes` | `array` | No | — | A list of ticket type attributes associated with a given ticket type. |
| `result.data.ticket_type.ticket_type_attributes.ticket_type_attributes[].type` | `string` | No | — | String representing the object's type. Always has the value `ticket_type_attribute`. |
| `result.data.ticket_type.ticket_type_attributes.ticket_type_attributes[].id` | `string` | No | — | The id representing the ticket type attribute. |
| `result.data.ticket_type.ticket_type_attributes.ticket_type_attributes[].workspace_id` | `string` | No | — | The id of the workspace that the ticket type attribute belongs to. |
| `result.data.ticket_type.ticket_type_attributes.ticket_type_attributes[].name` | `string` | No | — | The name of the ticket type attribute |
| `result.data.ticket_type.ticket_type_attributes.ticket_type_attributes[].description` | `string` | No | — | The description of the ticket type attribute |
| `result.data.ticket_type.ticket_type_attributes.ticket_type_attributes[].data_type` | `string` | No | — | The type of the data attribute (allowed values: "string list integer decimal boolean datetime files") |
| `result.data.ticket_type.ticket_type_attributes.ticket_type_attributes[].input_options` | `record` | No | — | Input options for the attribute |
| `result.data.ticket_type.ticket_type_attributes.ticket_type_attributes[].order` | `integer` | No | — | The order of the attribute against other attributes |
| `result.data.ticket_type.ticket_type_attributes.ticket_type_attributes[].required_to_create` | `boolean` | No | `false` | Whether the attribute is required or not for teammates. |
| `result.data.ticket_type.ticket_type_attributes.ticket_type_attributes[].required_to_create_for_contacts` | `boolean` | No | `false` | Whether the attribute is required or not for contacts. |
| `result.data.ticket_type.ticket_type_attributes.ticket_type_attributes[].visible_on_create` | `boolean` | No | `true` | Whether the attribute is visible or not to teammates. |
| `result.data.ticket_type.ticket_type_attributes.ticket_type_attributes[].visible_to_contacts` | `boolean` | No | `true` | Whether the attribute is visible or not to contacts. |
| `result.data.ticket_type.ticket_type_attributes.ticket_type_attributes[].default` | `boolean` | No | — | Whether the attribute is built in or not. |
| `result.data.ticket_type.ticket_type_attributes.ticket_type_attributes[].ticket_type_id` | `integer` | No | — | The id of the ticket type that the attribute belongs to. |
| `result.data.ticket_type.ticket_type_attributes.ticket_type_attributes[].archived` | `boolean` | No | — | Whether the ticket type attribute is archived or not. |
| `result.data.ticket_type.ticket_type_attributes.ticket_type_attributes[].created_at` | `integer` | No | — | The date and time the ticket type attribute was created. Format: `timestamp`. |
| `result.data.ticket_type.ticket_type_attributes.ticket_type_attributes[].updated_at` | `integer` | No | — | The date and time the ticket type attribute was last updated. Format: `timestamp`. |
| `result.data.ticket_type.ticket_states` | `object` | No | — | A list of ticket states associated with a given ticket type. |
| `result.data.ticket_type.ticket_states.type` | `string` | No | — | String representing the object's type. Always has the value `list`. |
| `result.data.ticket_type.ticket_states.data` | `array` | No | — | A list of ticket states associated with a given ticket type. |
| `result.data.ticket_type.ticket_states.data[].type` | `string` | No | — | String representing the object's type. Always has the value `ticket_state`. |
| `result.data.ticket_type.ticket_states.data[].id` | `string` | No | — | The id of the ticket state |
| `result.data.ticket_type.ticket_states.data[].category` | `"submitted" \| "in_progress" \| "waiting_on_customer" \| "resolved"` | No | — | The category of the ticket state Allowed: `submitted`, `in_progress`, `waiting_on_customer`, `resolved`. |
| `result.data.ticket_type.ticket_states.data[].internal_label` | `string` | No | — | The state the ticket is currently in, in a human readable form - visible in Intercom |
| `result.data.ticket_type.ticket_states.data[].external_label` | `string` | No | — | The state the ticket is currently in, in a human readable form - visible to customers, in the messenger, email and tickets portal. |
| `result.data.ticket_type.archived` | `boolean` | No | — | Whether the ticket type is archived or not. |
| `result.data.ticket_type.created_at` | `integer` | No | — | The date and time the ticket type was created. Format: `timestamp`. |

The table shows the first 50 fields. Use the live contract below for every field.

> [!NOTE]
>
> This output schema is too large for an inline display. Read the complete live contract with `deepline describe intercom_update_ticket --json`.

## Deepline cost

* Pricing model: `fixed` (per call).
* Estimated Deepline credits: `0` per pricing unit.
* Provider-native pricing may still exist outside Deepline credit billing.

## Related documentation

* [Intercom provider guide](https://deepline.com/docs/providers/intercom/guide.md)
* [SDK V2 quickstart](https://deepline.com/docs/sdk-v2/quickstart.md)
* [SDK reference](https://deepline.com/docs/sdk-v2/sdk-reference.md)
* [Run tools across a CSV](https://deepline.com/docs/sdk-v2/batch-csv.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.