Intercom
Manage contacts, companies, conversations, tickets, and messages in Intercom
Intercom is a leading customer communications platform that enables you to manage and automate your interactions with contacts, companies, conversations, tickets, and messages—all in one place. The Intercom integration in Sim lets your agents programmatically manage customer relationships, support requests, and conversations directly from your automated workflows.
With the Intercom tools, you can:
- Contacts Management: Create, get, update, list, search, and delete contacts—automate your CRM processes and keep your customer records up-to-date.
- Company Management: Create new companies, retrieve company details, and list all companies related to your users or business clients.
- Conversation Handling: Get, list, reply to, and search through conversations—allowing agents to track ongoing support threads, provide answers, and automate follow-up actions.
- Ticket Management: Create and retrieve tickets programmatically, helping you automate customer service, support issue tracking, and workflow escalations.
- Send Messages: Trigger messages to users or leads for onboarding, support, or marketing, all from within your workflow automation.
By integrating Intercom tools into Sim, you empower your workflows to communicate directly with your users, automate customer support processes, manage leads, and streamline communications at scale. Whether you need to create new contacts, keep customer data synchronized, manage support tickets, or send personalized engagement messages, the Intercom tools provide a comprehensive way to manage customer interactions as part of your intelligent automations.
Integrate Intercom into the workflow. Can create, get, update, list, search, and delete contacts; create, get, and list companies; get, list, reply, and search conversations; create and get tickets; and create messages.
Create a new contact in Intercom with email, external_id, or role
| Parameter | Type | Required | Description |
|---|
role | string | No | The role of the contact. Accepts 'user' or 'lead'. Defaults to 'lead' if not specified. |
email | string | No | The contact's email address |
external_id | string | No | A unique identifier for the contact provided by the client |
phone | string | No | The contact's phone number |
name | string | No | The contact's name |
avatar | string | No | An avatar image URL for the contact |
signed_up_at | number | No | The time the user signed up as a Unix timestamp |
last_seen_at | number | No | The time the user was last seen as a Unix timestamp |
owner_id | string | No | The id of an admin that has been assigned account ownership of the contact |
unsubscribed_from_emails | boolean | No | Whether the contact is unsubscribed from emails |
custom_attributes | string | No | Custom attributes as JSON object (e.g., {"attribute_name": "value"}) |
company_id | string | No | Company ID to associate the contact with during creation |
| Parameter | Type | Description |
|---|
contact | object | Created contact object |
Get a single contact by ID from Intercom
| Parameter | Type | Required | Description |
|---|
contactId | string | Yes | Contact ID to retrieve |
| Parameter | Type | Description |
|---|
contact | object | Contact object |
Update an existing contact in Intercom
| Parameter | Type | Required | Description |
|---|
contactId | string | Yes | Contact ID to update |
role | string | No | The role of the contact. Accepts 'user' or 'lead'. |
external_id | string | No | A unique identifier for the contact provided by the client |
email | string | No | The contact's email address |
phone | string | No | The contact's phone number |
name | string | No | The contact's name |
avatar | string | No | An avatar image URL for the contact |
signed_up_at | number | No | The time the user signed up as a Unix timestamp |
last_seen_at | number | No | The time the user was last seen as a Unix timestamp |
owner_id | string | No | The id of an admin that has been assigned account ownership of the contact |
unsubscribed_from_emails | boolean | No | Whether the contact is unsubscribed from emails |
custom_attributes | string | No | Custom attributes as JSON object (e.g., {"attribute_name": "value"}) |
company_id | string | No | Company ID to associate the contact with |
| Parameter | Type | Description |
|---|
contact | object | Updated contact object |
List all contacts from Intercom with pagination support
| Parameter | Type | Required | Description |
|---|
per_page | number | No | Number of results per page (max: 150) |
starting_after | string | No | Cursor for pagination - ID to start after |
| Parameter | Type | Description |
|---|
contacts | array | Array of contact objects |
Search for contacts in Intercom using a query
| Parameter | Type | Required | Description |
|---|
query | string | Yes | Search query (e.g., {"field":"email","operator":"=","value":"[email protected]"}) |
per_page | number | No | Number of results per page (max: 150) |
starting_after | string | No | Cursor for pagination |
sort_field | string | No | Field to sort by (e.g., "name", "created_at", "last_seen_at") |
sort_order | string | No | Sort order: "ascending" or "descending" |
| Parameter | Type | Description |
|---|
contacts | array | Array of matching contact objects |
Delete a contact from Intercom by ID
| Parameter | Type | Required | Description |
|---|
contactId | string | Yes | Contact ID to delete |
| Parameter | Type | Description |
|---|
id | string | ID of deleted contact |
deleted | boolean | Whether the contact was deleted |
metadata | object | Operation metadata |
Create or update a company in Intercom
| Parameter | Type | Required | Description |
|---|
company_id | string | Yes | Your unique identifier for the company |
name | string | No | The name of the company |
website | string | No | The company website |
plan | string | No | The company plan name |
size | number | No | The number of employees in the company |
industry | string | No | The industry the company operates in |
monthly_spend | number | No | How much revenue the company generates for your business. Note: This field truncates floats to whole integers (e.g., 155.98 becomes 155) |
custom_attributes | string | No | Custom attributes as JSON object |
remote_created_at | number | No | The time the company was created by you as a Unix timestamp |
| Parameter | Type | Description |
|---|
company | object | Created or updated company object |
Retrieve a single company by ID from Intercom
| Parameter | Type | Required | Description |
|---|
companyId | string | Yes | Company ID to retrieve |
| Parameter | Type | Description |
|---|
company | object | Company object |
List all companies from Intercom with pagination support. Note: This endpoint has a limit of 10,000 companies that can be returned using pagination. For datasets larger than 10,000 companies, use the Scroll API instead.
| Parameter | Type | Required | Description |
|---|
per_page | number | No | Number of results per page |
page | number | No | Page number |
starting_after | string | No | Cursor for pagination (preferred over page-based pagination) |
| Parameter | Type | Description |
|---|
companies | array | Array of company objects |
Retrieve a single conversation by ID from Intercom
| Parameter | Type | Required | Description |
|---|
conversationId | string | Yes | Conversation ID to retrieve |
display_as | string | No | Set to "plaintext" to retrieve messages in plain text |
include_translations | boolean | No | When true, conversation parts will be translated to the detected language of the conversation |
| Parameter | Type | Description |
|---|
conversation | object | Conversation object |
List all conversations from Intercom with pagination support
| Parameter | Type | Required | Description |
|---|
per_page | number | No | Number of results per page (max: 150) |
starting_after | string | No | Cursor for pagination |
sort | string | No | Field to sort by (e.g., "waiting_since", "updated_at", "created_at") |
order | string | No | Sort order: "asc" (ascending) or "desc" (descending) |
| Parameter | Type | Description |
|---|
conversations | array | Array of conversation objects |
Reply to a conversation as an admin in Intercom
| Parameter | Type | Required | Description |
|---|
conversationId | string | Yes | Conversation ID to reply to |
message_type | string | Yes | Message type: "comment" or "note" |
body | string | Yes | The text body of the reply |
admin_id | string | No | The ID of the admin authoring the reply. If not provided, a default admin (Operator/Fin) will be used. |
attachment_urls | string | No | Comma-separated list of image URLs (max 10) |
created_at | number | No | Unix timestamp for when the reply was created. If not provided, current time is used. |
| Parameter | Type | Description |
|---|
conversation | object | Updated conversation object |
Search for conversations in Intercom using a query
| Parameter | Type | Required | Description |
|---|
query | string | Yes | Search query as JSON object |
per_page | number | No | Number of results per page (max: 150) |
starting_after | string | No | Cursor for pagination |
sort_field | string | No | Field to sort by (e.g., "created_at", "updated_at") |
sort_order | string | No | Sort order: "ascending" or "descending" |
| Parameter | Type | Description |
|---|
conversations | array | Array of matching conversation objects |
Create a new ticket in Intercom
| Parameter | Type | Required | Description |
|---|
ticket_type_id | string | Yes | The ID of the ticket type |
contacts | string | Yes | JSON array of contact identifiers (e.g., [{"id": "contact_id"}]) |
ticket_attributes | string | Yes | JSON object with ticket attributes including default_title and default_description |
company_id | string | No | Company ID to associate the ticket with |
created_at | number | No | Unix timestamp for when the ticket was created. If not provided, current time is used. |
conversation_to_link_id | string | No | ID of an existing conversation to link to this ticket |
disable_notifications | boolean | No | When true, suppresses notifications when the ticket is created |
| Parameter | Type | Description |
|---|
ticket | object | Created ticket object |
Retrieve a single ticket by ID from Intercom
| Parameter | Type | Required | Description |
|---|
ticketId | string | Yes | Ticket ID to retrieve |
| Parameter | Type | Description |
|---|
ticket | object | Ticket object |
Create and send a new admin-initiated message in Intercom
| Parameter | Type | Required | Description |
|---|
message_type | string | Yes | Message type: "inapp" for in-app messages or "email" for email messages |
template | string | Yes | Message template style: "plain" for plain text or "personal" for personalized style |
subject | string | No | The subject of the message (for email type) |
body | string | Yes | The body of the message |
from_type | string | Yes | Sender type: "admin" |
from_id | string | Yes | The ID of the admin sending the message |
to_type | string | Yes | Recipient type: "contact" |
to_id | string | Yes | The ID of the contact receiving the message |
created_at | number | No | Unix timestamp for when the message was created. If not provided, current time is used. |
| Parameter | Type | Description |
|---|
message | object | Created message object |
- Category:
tools
- Type:
intercom