Skip to main content

Integration Settings

Connect Intercom to your CRM, third-party tools, and custom systems using native integrations, webhooks, and API keys.

Christopher Boerger avatar
Written by Christopher Boerger
Updated over a week ago

Overview

Integrations let you:

  • Sync customer data between Intercom and your CRM

  • Trigger actions in other tools when events happen in Intercom

  • Build custom workflows with webhooks and APIs

  • Centralize your support stack


Native Integrations

Intercom offers pre-built integrations with popular tools. No code required.

Finding Integrations

  1. Go to Settings → Integrations → App Store

  2. Browse categories or search for a specific tool

  3. Click Install and follow the setup wizard

Popular Integrations

Category

Tools

CRM

Salesforce, HubSpot, Pipedrive

Communication

Slack, Microsoft Teams, Zoom

Analytics

Google Analytics, Mixpanel, Amplitude

Support

Jira, Linear, GitHub

Productivity

Notion, Google Drive, Dropbox

Automation

Zapier, Make (Integromat), n8n

Managing Installed Integrations

View and configure your integrations in Settings → Integrations → Installed apps:

  • Connected — Integration active and syncing

  • Disconnected — Needs re-authentication

  • Paused — Temporarily disabled


CRM Connections

Sync customer data bidirectionally between Intercom and your CRM.

Salesforce Integration

What syncs:

Intercom → Salesforce

Salesforce → Intercom

New conversations

Contact/Lead details

Conversation transcripts

Account information

Custom attributes

Custom fields

Tags

Ownership data

Setup:

  1. Go to Settings → Integrations → Salesforce

  2. Click Connect to Salesforce

  3. Authenticate with your Salesforce admin account

  4. Configure field mappings

  5. Set sync direction and frequency

Tip: Map Intercom "company" to Salesforce "Account" and Intercom "user" to Salesforce "Contact" for clean data alignment.

HubSpot Integration

What syncs:

Intercom → HubSpot

HubSpot → Intercom

Conversations as timeline events

Contact properties

User attributes

Company properties

Lead qualification data

Deal information

Chat transcripts

Lifecycle stage

Setup:

  1. Go to Settings → Integrations → HubSpot

  2. Click Connect to HubSpot

  3. Authenticate with your HubSpot account

  4. Select which properties to sync

  5. Enable timeline sync for conversations

Field Mapping

Match Intercom attributes to CRM fields:

Intercom Attribute

CRM Field Example

email

Email

name

Full Name

company.name

Account Name / Company

custom.plan_type

Subscription Tier

custom.mrr

Monthly Revenue

Configure mappings in each integration's settings under Field Mapping.


Webhooks

Webhooks push real-time data to your systems when events occur in Intercom.

What Are Webhooks?

When something happens (e.g., new conversation), Intercom sends an HTTP POST request to your specified URL with event details.

Setting Up Webhooks

  1. Go to Settings → Integrations → Webhooks

  2. Click Create webhook

  3. Enter your endpoint URL

  4. Select events to subscribe to

  5. Save and test

Available Webhook Events

Category

Events

Conversations

conversation.created, conversation.closed, conversation.assigned

Messages

conversation.user.replied, conversation.admin.replied

Users

user.created, user.updated, user.deleted

Companies

company.created, company.updated

Tags

user.tag.created, user.tag.deleted

Tickets

ticket.created, ticket.updated, ticket.closed

Webhook Payload Example

{   "type": "notification_event",   "topic": "conversation.user.replied",   "data": {     "item": {       "type": "conversation",       "id": "12345",       "user": {         "type": "user",         "id": "67890",         "email": "[email protected]"       },       "conversation_message": {         "body": "Hi, I need help with my account"       }     }   } }

Webhook Security

Verify webhooks are from Intercom:

  1. Go to Webhooks → Settings

  2. Copy your Webhook Secret

  3. Validate the X-Hub-Signature header in your code

// Example signature verification const crypto = require('crypto');  function verifyWebhook(payload, signature, secret) {   const hash = crypto     .createHmac('sha1', secret)     .update(payload)     .digest('hex');   return signature === `sha1=${hash}`; }

Webhook Best Practices

  • Respond quickly — Return 200 OK within 5 seconds

  • Process async — Queue the payload, process later

  • Handle retries — Intercom retries failed deliveries

  • Monitor failures — Check webhook logs regularly


API Keys

Use API keys for custom integrations and scripts.

Types of API Keys

Type

Use Case

Permissions

Access Token

Server-side API calls

Full API access

Identity Verification Secret

Secure user identification

User verification only

App ID

Client-side identification

Read-only, public

Creating an Access Token

  1. Go to Settings → Integrations → Developer Hub

  2. Click New app (or select existing)

  3. Navigate to Authentication

  4. Generate an Access Token

  5. Copy and store securely

⚠️ Security: Never expose access tokens in client-side code or public repositories.

API Authentication

Include your token in API requests:

curl https://api.intercom.io/contacts \   -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \   -H "Accept: application/json"

Common API Use Cases

Use Case

Endpoint

Create/update users

POST /contacts

Send messages

POST /messages

Search conversations

POST /conversations/search

Add tags

POST /tags

Export data

POST /export/content/data

Identity Verification

Prevent impersonation by verifying user identity:

  1. Go to Settings → Security → Identity verification

  2. Enable for web/mobile

  3. Copy your Identity Verification Secret

  4. Generate user hash server-side:

const crypto = require('crypto');  function generateUserHash(userId, secret) {   return crypto     .createHmac('sha256', secret)     .update(userId)     .digest('hex'); }
  1. Pass hash to Intercom:

Intercom('boot', {   app_id: 'YOUR_APP_ID',   user_id: '12345',   user_hash: 'generated_hash_here' });

Zapier & Make (No-Code Automation)

Connect Intercom to 5,000+ apps without code.

Zapier Setup

  1. Create a Zapier account

  2. Search for Intercom

  3. Authenticate your Intercom workspace

  4. Build Zaps with triggers and actions

Popular Zaps:

Trigger

Action

New conversation

Create Slack message

Conversation tagged "urgent"

Create Jira ticket

New user

Add to Mailchimp list

Conversation closed

Log to Google Sheets

Make (Integromat) Setup

  1. Create a Make account

  2. Add Intercom module to your scenario

  3. Authenticate and configure triggers

  4. Build multi-step workflows

Tip: Use Make for complex workflows with multiple conditions. Use Zapier for quick, simple automations.


Troubleshooting Integrations

Common Issues

Problem

Solution

Integration disconnected

Re-authenticate with fresh credentials

Data not syncing

Check field mappings and sync direction

Webhook failures

Verify endpoint URL and check logs

API rate limited

Implement backoff and reduce request frequency

Duplicate records

Review matching rules and deduplication settings

Checking Integration Logs

  1. Go to Settings → Integrations → [Your Integration]

  2. Click Activity or Logs

  3. Review recent events and errors

  4. Export logs for debugging if needed

API Rate Limits

Intercom enforces rate limits:

Plan

Limit

Standard

1,000 requests/minute

Pro/Premium

Higher limits (varies)

Handle rate limits gracefully:

// Check for 429 status and retry after delay if (response.status === 429) {   const retryAfter = response.headers['retry-after'];   await sleep(retryAfter * 1000);   // Retry request }

Security Best Practices

  • Rotate API keys periodically (every 90 days recommended)

  • Use least privilege — only grant permissions needed

  • Enable identity verification for user-facing implementations

  • Monitor API usage for unusual patterns

  • Secure webhooks with signature verification

  • Never commit secrets to version control


Need Help?

Need custom integrations built? Ask about our Custom Implementation services for complex CRM syncs, webhook workflows, and API development.

Did this answer your question?