> ## 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: Enqueue Create Ticket

> Queue the creation of an Intercom ticket for contacts, with attributes and an assignee. Includes inputs, outputs, SDK V2 examples, and Deepline cost.

Queue the creation of an Intercom ticket for contacts, with attributes and an assignee.

> [!NOTE]
>
> Tool ID: `intercom_enqueue_create_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_enqueue_create_ticket',
  {
    "ticket_type_id": "ticket_type_123",
    "contacts": [
      {
        "id": "id_123"
      }
    ]
  },
);

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

### CLI

```bash theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
deepline tools execute intercom_enqueue_create_ticket --input '{
  "ticket_type_id": "ticket_type_123",
  "contacts": [
    {
      "id": "id_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": {
    "id": "id_123"
  }
}
```

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

## Input reference

You can create a Ticket

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `payload.ticket_type_id` | `string` | Yes | — | The ID of the type of ticket you want to create |
| `payload.contacts` | `array` | Yes | — | The list of contacts (users or leads) affected by this ticket. Currently only one is allowed |
| `payload.conversation_to_link_id` | `string` | No | — | The ID of the conversation you want to link to the ticket. Here are the valid ways of linking two tickets: - conversation \| back-office ticket - customer tickets \| non-shared back-office ticket - conversation \| tracker ticket - customer ticket \| tracker ticket |
| `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 |
| `payload.created_at` | `integer` | No | — | The time the ticket was created. If not provided, the current time will be used. |
| `payload.ticket_attributes` | `record` | No | — | The attributes set on the ticket. When setting the default title and description attributes, the attribute keys that should be used are `_default_title_` and `_default_description_`. When setting ticket type attributes of the list attribute type, the key should be the attribute name and the value of the attribute should be the list item id, obtainable by [listing the ticket type](ref:get_ticket-types). For example, if the ticket type has an attribute called `priority` of type `list`, the key See the live schema for the complete constraint. |
| `payload.assignment` | `object` | No | — | — |

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

  ### Input JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "You can create a Ticket",
    "properties": {
      "ticket_type_id": {
        "type": "string",
        "description": "The ID of the type of ticket you want to create"
      },
      "contacts": {
        "type": "array",
        "description": "The list of contacts (users or leads) affected by this ticket. Currently only one is allowed",
        "items": {
          "type": "object",
          "anyOf": [
            {
              "properties": {
                "id": {
                  "type": "string",
                  "description": "The identifier for the contact as given by Intercom."
                }
              },
              "required": [
                "id"
              ],
              "additionalProperties": false
            },
            {
              "properties": {
                "external_id": {
                  "type": "string",
                  "description": "The external_id you have defined for the contact who is being added as a participant."
                }
              },
              "required": [
                "external_id"
              ],
              "additionalProperties": false
            },
            {
              "properties": {
                "email": {
                  "type": "string",
                  "description": "The email you have defined for the contact who is being added as a participant. If a contact with this email does not exist, one will be created."
                }
              },
              "required": [
                "email"
              ],
              "additionalProperties": false
            }
          ]
        }
      },
      "conversation_to_link_id": {
        "type": "string",
        "description": "The ID of the conversation you want to link to the ticket. Here are the valid ways of linking two tickets: - conversation | back-office ticket - customer tickets | non-shared back-office ticket - conversation | tracker ticket - customer ticket | tracker ticket"
      },
      "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"
      },
      "created_at": {
        "type": "integer",
        "description": "The time the ticket was created. If not provided, the current time will be used."
      },
      "ticket_attributes": {
        "type": "object",
        "description": "The attributes set on the ticket. When setting the default title and description attributes, the attribute keys that should be used are `_default_title_` and `_default_description_`. When setting ticket type attributes of the list attribute type, the key should be the attribute name and the value of the attribute should be the list item id, obtainable by [listing the ticket type](ref:get_ticket-types). For example, if the ticket type has an attribute called `priority` of type `list`, the key should be `priority` and the value of the attribute should be the guid of the list item (e.g. `de1825a0-0164-4070-8ca6-13e22462fa7e`).",
        "additionalProperties": {
          "anyOf": [
            {
              "type": [
                "string",
                "null"
              ]
            },
            {
              "type": "number"
            },
            {
              "type": "boolean"
            },
            {
              "type": "array"
            }
          ]
        }
      },
      "assignment": {
        "type": "object",
        "properties": {
          "admin_assignee_id": {
            "type": "string",
            "description": "The ID of the admin to which the ticket is assigned. If not provided, the ticket will be unassigned."
          },
          "team_assignee_id": {
            "type": "string",
            "description": "The ID of the team to which the ticket is assigned. If not provided, the ticket will be unassigned."
          }
        },
        "additionalProperties": false
      }
    },
    "required": [
      "ticket_type_id",
      "contacts"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Output reference

Standard tool result payload.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `result.data` | `object` | Yes | — | Jobs are tasks that are processed asynchronously by the Intercom system after being enqueued via the API. This allows for efficient handling of operations that may take time to complete, such as data imports or exports. You can check the status of your jobs to monitor their progress and ensure they are completed successfully. |
| `result.data.type` | `"job"` | No | — | The type of the object Allowed: `job`. |
| `result.data.id` | `string` | Yes | — | The id of the job that's currently being processed or has completed. |
| `result.data.url` | `string` | No | — | API endpoint URL to check the job status. |
| `result.data.status` | `"pending" \| "success" \| "failed"` | No | — | The status of the job execution. Allowed: `pending`, `success`, `failed`. |
| `result.data.resource_type` | `string` | No | — | The type of resource created during job execution. |
| `result.data.resource_id` | `string \| null` | No | — | The id of the resource created during job execution (e.g. ticket id) |
| `result.data.resource_url` | `string \| null` | No | — | The url of the resource created during job exeuction. Use this url to fetch the resource. |
| `result.meta` | `object` | No | — | Additional response metadata (status, paging). |

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

  ### Output JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Standard tool result payload.",
    "properties": {
      "data": {
        "type": "object",
        "description": "Jobs are tasks that are processed asynchronously by the Intercom system after being enqueued via the API. This allows for efficient handling of operations that may take time to complete, such as data imports or exports. You can check the status of your jobs to monitor their progress and ensure they are completed successfully.",
        "properties": {
          "type": {
            "type": "string",
            "description": "The type of the object",
            "enum": [
              "job"
            ]
          },
          "id": {
            "type": "string",
            "description": "The id of the job that's currently being processed or has completed."
          },
          "url": {
            "type": "string",
            "description": "API endpoint URL to check the job status."
          },
          "status": {
            "type": "string",
            "description": "The status of the job execution.",
            "enum": [
              "pending",
              "success",
              "failed"
            ]
          },
          "resource_type": {
            "type": "string",
            "description": "The type of resource created during job execution."
          },
          "resource_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The id of the resource created during job execution (e.g. ticket id)"
          },
          "resource_url": {
            "type": [
              "string",
              "null"
            ],
            "description": "The url of the resource created during job exeuction. Use this url to fetch the resource."
          }
        },
        "required": [
          "id"
        ],
        "additionalProperties": false
      },
      "meta": {
        "type": "object",
        "description": "Additional response metadata (status, paging).",
        "additionalProperties": true
      }
    },
    "required": [
      "data"
    ],
    "additionalProperties": false
  }
  ```
</details>

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