> ## 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: Create Custom Object Instances

> Create or update an Intercom custom object record by its external ID. Includes SDK V2 guidance, input constraints, response fields, and Deepline credit cost.

Create or update an Intercom custom object record by its external ID.

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

## 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_create_custom_object_instances',
  {
    "custom_object_type_identifier": "example_123"
  },
);

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

### CLI

```bash theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
deepline tools execute intercom_create_custom_object_instances --input '{
  "custom_object_type_identifier": "example_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",
    "external_id": "external_123",
    "external_created_at": 1
  }
}
```

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

## Input reference

Payload to create or update a Custom Object instance

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `payload.custom_object_type_identifier` | `string` | Yes | — | The unique identifier of the custom object type that defines the structure of the custom object instance. |
| `payload.external_id` | `string` | No | — | A unique identifier for the Custom Object instance in the external system it originated from. |
| `payload.external_created_at` | `integer` | No | — | The time when the Custom Object instance was created in the external system it originated from. Format: `date-time`. |
| `payload.external_updated_at` | `integer` | No | — | The time when the Custom Object instance was last updated in the external system it originated from. Format: `date-time`. |
| `payload.custom_attributes` | `record` | No | — | The custom attributes which are set for the Custom Object instance. |

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

  ### Input JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Payload to create or update a Custom Object instance",
    "properties": {
      "custom_object_type_identifier": {
        "type": "string",
        "description": "The unique identifier of the custom object type that defines the structure of the custom object instance."
      },
      "external_id": {
        "type": "string",
        "description": "A unique identifier for the Custom Object instance in the external system it originated from."
      },
      "external_created_at": {
        "type": [
          "integer",
          "null"
        ],
        "description": "The time when the Custom Object instance was created in the external system it originated from.",
        "format": "date-time"
      },
      "external_updated_at": {
        "type": [
          "integer",
          "null"
        ],
        "description": "The time when the Custom Object instance was last updated in the external system it originated from.",
        "format": "date-time"
      },
      "custom_attributes": {
        "type": [
          "object",
          "null"
        ],
        "description": "The custom attributes which are set for the Custom Object instance.",
        "additionalProperties": {
          "type": "string"
        }
      }
    },
    "required": [
      "custom_object_type_identifier"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Output reference

Standard tool result payload.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `result.data` | `object` | Yes | — | A Custom Object Instance represents an instance of a custom object type. This allows you to create and set custom attributes to store data about your customers that is not already captured by Intercom. The parent object includes recommended default attributes and you can add your own custom attributes. |
| `result.data.id` | `string` | No | — | The Intercom defined id representing the custom object instance. |
| `result.data.external_id` | `string` | No | — | The id you have defined for the custom object instance. |
| `result.data.external_created_at` | `integer \| null` | No | — | The time when the Custom Object instance was created in the external system it originated from. Format: `date-time`. |
| `result.data.external_updated_at` | `integer \| null` | No | — | The time when the Custom Object instance was last updated in the external system it originated from. Format: `date-time`. |
| `result.data.created_at` | `integer` | No | — | The time the attribute was created as a UTC Unix timestamp Format: `date-time`. |
| `result.data.updated_at` | `integer` | No | — | The time the attribute was last updated as a UTC Unix timestamp Format: `date-time`. |
| `result.data.type` | `string` | No | — | The identifier of the custom object type that defines the structure of the custom object instance. |
| `result.data.custom_attributes` | `record` | No | — | The custom attributes you have set on the custom object instance. |
| `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",
          "null"
        ],
        "description": "A Custom Object Instance represents an instance of a custom object type. This allows you to create and set custom attributes to store data about your customers that is not already captured by Intercom. The parent object includes recommended default attributes and you can add your own custom attributes.",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Intercom defined id representing the custom object instance."
          },
          "external_id": {
            "type": "string",
            "description": "The id you have defined for the custom object instance."
          },
          "external_created_at": {
            "type": [
              "integer",
              "null"
            ],
            "description": "The time when the Custom Object instance was created in the external system it originated from.",
            "format": "date-time"
          },
          "external_updated_at": {
            "type": [
              "integer",
              "null"
            ],
            "description": "The time when the Custom Object instance was last updated in the external system it originated from.",
            "format": "date-time"
          },
          "created_at": {
            "type": "integer",
            "description": "The time the attribute was created as a UTC Unix timestamp",
            "format": "date-time"
          },
          "updated_at": {
            "type": "integer",
            "description": "The time the attribute was last updated as a UTC Unix timestamp",
            "format": "date-time"
          },
          "type": {
            "type": "string",
            "description": "The identifier of the custom object type that defines the structure of the custom object instance."
          },
          "custom_attributes": {
            "type": "object",
            "description": "The custom attributes you have set on the custom object instance.",
            "additionalProperties": {
              "type": "string"
            }
          }
        },
        "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.