Overview
The Intercom API offers a framework for developers to extend and integrate Intercom's suite of customer engagement tools with existing applications and workflows. Intercom, founded in 2011, provides a platform designed to manage the customer lifecycle through messaging, support, and marketing automation Intercom homepage. The API enables developers to programmatically interact with core Intercom features, including user management, conversation handling, custom data synchronization, and event tracking.
Developers can use the Intercom API to automate customer support processes, such as creating support tickets, retrieving conversation history, and sending automated responses. For product onboarding, the API facilitates the delivery of targeted in-app messages and product tours based on user behavior data. Marketing teams can leverage the API to segment customers and trigger personalized marketing campaigns within the application or via email. The platform's capabilities are divided into several core products, including the Intercom Messenger for direct communication, Inbox for agent management, and tools for proactive support and marketing campaigns.
The API is well-documented, providing clear examples and offering SDKs for various programming languages and platforms, including JavaScript, Python, Ruby, and mobile environments like iOS and Android Intercom developer documentation. This range of SDKs aims to streamline development work for common integration patterns. Additionally, Intercom supports webhooks, allowing for real-time notifications of events such as new messages or user updates, which can be crucial for building responsive and integrated customer experience systems. The API's design supports a range of use cases from syncing external customer data into Intercom to triggering complex multi-channel communication workflows.
Intercom's focus on customer engagement differentiates it from traditional CRM systems by emphasizing direct, contextual communication. For example, while a system like Zendesk might focus heavily on ticket management and structured support flows, Intercom often prioritizes conversational interfaces and proactive outreach. This positions the Intercom API as a tool for businesses looking to embed real-time communication and personalized engagement directly into their product experience, rather than solely relying on separate support channels. The API's ability to manage customer data, track events, and automate interactions makes it suitable for companies aiming to enhance product adoption, reduce churn, and improve overall customer satisfaction through integrated communication strategies.
Key features
- User and Lead Management: Create, update, and retrieve user and lead profiles, including custom attributes, to enrich customer data within Intercom.
- Conversation Handling: Programmatically send and receive messages, manage conversation states, and assign conversations to teams or individual agents.
- Event Tracking: Record customer actions and behaviors within your application as events, enabling targeted messaging and automation based on user activity.
- Custom Data Synchronization: Sync custom attributes and events from external systems to personalize messages and segment audiences.
- Webhooks: Subscribe to real-time notifications for events such as new messages, user updates, or conversation closures, allowing for immediate programmatic responses.
- Messenger Customization: Configure and embed the Intercom Messenger in web and mobile applications, including custom launchers and app integrations.
- Product Tours: Automate and personalize user onboarding and feature adoption with customizable product tours triggered by API calls.
- Marketing Campaigns: Manage and trigger targeted email or in-app marketing campaigns based on customer segments and API-driven events.
- Help Center (Articles): Programmatically manage help center content, enabling dynamic article updates and integration with existing knowledge bases.
Pricing
Intercom's pricing structure is tiered, primarily based on the number of active users or leads and the desired feature set. The company does not offer a free tier. Custom pricing is available for larger organizations with specific requirements.
| Plan Name | Key Features | Starting Price (Billed Annually) |
|---|---|---|
| Starter | Basic chat, email, and help center support for small teams. | $74/month |
| Pro | Advanced automation, more users/seats, custom bots, product tours. | Custom pricing |
| Premium | Enterprise-grade features, dedicated support, advanced security, unlimited teams. | Custom pricing |
For detailed and up-to-date pricing information, including specific feature breakdowns for each plan, refer to the Intercom pricing page.
Common integrations
- CRM Systems: Sync customer data with Salesforce or HubSpot to consolidate customer information and provide a unified view across sales and support teams Intercom API Integrations overview.
- Data Warehouses: Export conversation data and user attributes to data warehouses like Snowflake or Redshift for advanced analytics and business intelligence.
- Marketing Automation Platforms: Connect with platforms like Marketo or Mailchimp to align customer communication strategies across channels.
- Analytics Tools: Integrate with Google Analytics or Mixpanel to correlate in-app behavior with Intercom interactions and measure campaign effectiveness.
- E-commerce Platforms: Sync customer purchase history and order details from Shopify or WooCommerce to personalize support and marketing messages Shopify Customer Account API.
- Support Ticketing Systems: Create or update tickets in systems like Jira or Zendesk based on Intercom conversations to manage complex support workflows.
- Internal Communication Tools: Route Intercom conversations or notifications to Slack or Microsoft Teams for real-time team collaboration.
Alternatives
- Zendesk: A comprehensive customer service and support platform known for its ticketing system, help desk, and omnichannel support capabilities.
- Freshdesk: Offers a suite of customer support tools, including ticketing, live chat, and self-service options, often positioned as a more affordable alternative.
- Drift: Specializes in conversational marketing and sales, using AI-powered chatbots to qualify leads and engage website visitors in real time.
Getting started
To begin using the Intercom API, you typically need to obtain an access token from your Intercom workspace. The following Python example demonstrates how to retrieve a list of your workspace's administrators using the requests library.
import requests
import os
# Replace with your actual access token or set as an environment variable
# It's recommended to use environment variables for sensitive information
ACCESS_TOKEN = os.getenv('INTERCOM_ACCESS_TOKEN', 'YOUR_INTERCOM_ACCESS_TOKEN_HERE')
# Define the API endpoint for administrators
API_URL = "https://api.intercom.io/admins"
# Set up headers with the Authorization token and content type
headers = {
"Authorization": f"Bearer {ACCESS_TOKEN}",
"Accept": "application/json",
"Content-Type": "application/json"
}
try:
# Make the GET request to the Intercom API
response = requests.get(API_URL, headers=headers)
# Raise an exception for HTTP errors (4xx or 5xx)
response.raise_for_status()
# Parse the JSON response
admins_data = response.json()
print("Successfully retrieved Intercom Administrators:")
for admin in admins_data.get('data', []):
print(f" ID: {admin.get('id')}, Name: {admin.get('name')}, Email: {admin.get('email')}")
except requests.exceptions.HTTPError as http_err:
print(f"HTTP error occurred: {http_err} - {response.text}")
except requests.exceptions.ConnectionError as conn_err:
print(f"Connection error occurred: {conn_err}")
except requests.exceptions.Timeout as timeout_err:
print(f"Timeout error occurred: {timeout_err}")
except requests.exceptions.RequestException as req_err:
print(f"An unexpected error occurred: {req_err}")
except ValueError as json_err:
print(f"Error decoding JSON response: {json_err} - Response text: {response.text}")
Before running this code, ensure you have the requests library installed (pip install requests). Obtain your Intercom access token from your developer workspace settings Intercom API authorization guide and either replace YOUR_INTERCOM_ACCESS_TOKEN_HERE directly (for testing) or, preferably, set it as an environment variable named INTERCOM_ACCESS_TOKEN for production use.