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

# Intercom

> This page outlines how to use the Intercom integration to manage customer support contacts in Cargo.

Intercom is a leading customer communication platform that helps businesses build stronger relationships through messaging, live chat, and customer support. Cargo's native integration with Intercom allows you to create, update, and manage contacts directly from your workflows.

## How to set up Intercom

To connect Intercom, you'll need an access token from your Intercom account.

### Connection details

| Field            | Description                            |
| ---------------- | -------------------------------------- |
| **Access token** | Your Intercom Private App access token |

<Tip>
  You can generate an access token by creating a Private App in your Intercom
  Developer Hub. Make sure to grant the necessary permissions for contacts.
</Tip>

Once the connector is created, you can:

* **Use Intercom in workflows** — Choose **Intercom** from the node catalog within a **Play**, **Tool**, or **Agent**.

***

## Intercom actions

### Create Contact

Create a new contact in Intercom.

**Use cases**

* **Lead capture** – Create contacts from inbound leads, form submissions, or enrichment workflows
* **Customer onboarding** – Add new customers to Intercom for proactive support
* **Data sync** – Keep Intercom contacts in sync with other systems

**Configuration**

| Field               | Description                           |
| ------------------- | ------------------------------------- |
| **Mappings**        | Map standard contact fields to values |
| **Custom Mappings** | Map custom attributes to values       |

### Upsert Contact

Create a new contact or update an existing one based on a matching field.

**Use cases**

* **Avoid duplicates** – Ensure contacts aren't duplicated when syncing data
* **Data enrichment** – Update existing contacts with new information
* **Idempotent operations** – Safely retry operations without creating duplicates

**Configuration**

| Field                            | Description                                           |
| -------------------------------- | ----------------------------------------------------- |
| **Intercom Matching Field Name** | Field to match on: Email, External ID, or Intercom ID |
| **Matching Value**               | The value to match against                            |
| **Mappings**                     | Map standard contact fields to values                 |
| **Custom Mappings**              | Map custom attributes to values                       |

<Info>
  When upserting, Intercom will first search for an existing contact matching
  your criteria. If found, it updates the contact; otherwise, it creates a new
  one.
</Info>

### Update Contact

Update an existing contact in Intercom.

**Use cases**

* **Data enrichment** – Update contact information with enriched data
* **Lifecycle updates** – Update contact attributes based on user actions
* **Sync changes** – Push updates from your CRM or other systems to Intercom

**Configuration**

| Field                            | Description                                           |
| -------------------------------- | ----------------------------------------------------- |
| **Intercom Matching Field Name** | Field to match on: Email, External ID, or Intercom ID |
| **Matching Value**               | The value to match against                            |
| **Mappings**                     | Map standard contact fields to values                 |
| **Custom Mappings**              | Map custom attributes to values                       |

### Delete Contact

Delete a contact from Intercom.

**Use cases**

* **GDPR compliance** – Remove contacts upon data deletion requests
* **Data cleanup** – Remove invalid or outdated contacts
* **Lifecycle management** – Remove contacts that no longer meet criteria

**Configuration**

| Field                            | Description                                           |
| -------------------------------- | ----------------------------------------------------- |
| **Intercom Matching Field Name** | Field to match on: Email, External ID, or Intercom ID |
| **Matching Value**               | The value to match against                            |

<Warning>
  Deleting a contact is permanent and cannot be undone. Make sure you have the
  correct matching criteria before executing this action.
</Warning>

***

## Best practices

### Contact matching

When updating or deleting contacts, choose your matching field carefully:

* **Email** – Best for most use cases; matches contacts by email address
* **External ID** – Use when you have a consistent external identifier from your systems
* **Intercom ID** – Use when you've previously retrieved the contact and stored its Intercom ID

### Custom attributes

Intercom supports custom attributes on contacts. Use the **Custom Mappings** field to set values for any custom attributes you've defined in your Intercom workspace.

<Tip>
  Define your custom attributes in Intercom first, then use the autocomplete in
  Cargo to select them when configuring your mappings.
</Tip>
