- Home
- Resources
- Integrations
- Intercom
Intercom n8n integrationAutomate Intercom with n8n.
Support opens a conversation, and the contact record behind it is already three weeks old. The Intercom n8n integration closes that gap from a workflow: 15 operations spread over 3 objects, companies, leads and users, kept in sync without anyone retyping a field.
Verified Trustpilot reviews · AI, automation & growth agency
What does the Intercom n8n integration actually do?
The Intercom node lets an n8n workflow read and write the contact data behind your Intercom inbox. It handles 3 objects, companies, leads and users, with 15 operations in total: create, read one, read many, update, plus delete on leads and users and a list of the users attached to a company.
Everything runs on one credential, so the same connection serves every workflow you build afterwards.
Take a trial signup. Your product database fires a workflow, user.create writes the person into Intercom with the identifier you already use, and company.create attaches the account they belong to. Support opens the conversation two days later and the plan, the size and the industry are already on the record.
Second pattern, the periodic export. A Schedule Trigger runs user.getAll with Return All switched on and a Segment ID filter, then drops the result into Google Sheets for the weekly review. The same list can be counted and posted into Slack so the team sees the number before the meeting.
Third pattern, inbound. A form submission creates a lead with lead.create, carrying the campaign it came from in the UTM Campaign and UTM Medium fields, and a follow up goes out through Gmail. When the person signs up, lead.update corrects the record instead of creating a duplicate.
Anything outside these 15 catalogue operations goes through the HTTP Request node, which calls any endpoint of the Intercom API while reusing the very same credential through predefined authentication. You keep one connection, you just point it somewhere else.
One habit to build early: on the list operations, Return All is what makes n8n walk through the API pages until everything is back. Leave it off and Limit caps how many items come out, which is fine for a test and misleading for an export. If you are still deciding whether the platform fits, the n8n review goes through the trade offs, and the n8n training covers expressions and credentials in practice.
How do you connect Intercom to n8n?
- 01
Create an app in your Intercom developer hub
Start on the Intercom side, not in n8n. You need an Intercom developer account, then an app created in your developer hub, because that app is what the node's authentication depends on afterwards. Create both before you touch n8n: nothing in the workflow connects until the app exists and its token is ready to copy.
- 02
Copy the Access Token Intercom generated
Intercom automatically generates an Access Token when you create the app. Copy it from the app page in the developer hub. This token is the only secret you need for the node, and Intercom's own documentation on how to get your Access Token walks through where it sits if you cannot find it.
- 03
Save the credential once in n8n
In n8n, open the Credentials menu and create an Intercom credential. Paste the Access Token into the API Key field, save, and pick that credential from the dropdown in the node. A credential is created once and reused across every workflow, so you do this on the first build and never again.
What can the Intercom node do?
The Intercom node exposes 15 operations across 3 resources. For each one: the node as you configure it in n8n, the required fields, and our field notes.
| Resource | Create | Get | Get Many | Update | Delete | Users |
|---|---|---|---|---|---|---|
| Company | ✓ | ✓ | ✓ | ✓ | ✓ | |
| Lead | ✓ | ✓ | ✓ | ✓ | ✓ | |
| User | ✓ | ✓ | ✓ | ✓ | ✓ |
Operations index
Company
5 operationsCreate a company
company.createWhat you see in n8n
Notes & use cases
Writes a new company record into Intercom and returns the created object to the next node.
Key parameters
- Company ID: the company ID you have defined for the company on your side, which is what you will query on later.
- Industry, Size, Plan: Additional Fields describing the industry the company operates in, the number of employees in it, and the name of the plan you have associated with the company.
- Website: the URL for this company's website. The value is not validated and any string is accepted, so clean it before sending.
Get a company
company.getWhat you see in n8n
Notes & use cases
Pulls one company back and hands the record to the rest of the workflow.
Key parameters
- Select By: what property to use to query the company, either
companyId,idorname. Pick the one you actually store elsewhere. - Value: required, the value to look up, and it has to match whatever Select By expects. Coming from an earlier node it is an expression such as
{{ $json.field }}.
Get many companies
company.getAllWhat you see in n8n
Notes & use cases
Returns companies as a list, one n8n item per company.
Key parameters
- Return All: on, n8n chains the API pages until every company has come back. Off, it stops at Limit, the maximum number of results returned.
- Segment ID and Tag ID: the two Filters, to keep only the companies in one segment or carrying one tag.
Update a company
company.updateWhat you see in n8n
Notes & use cases
Changes an existing company record rather than adding a second one.
Key parameters
- Company ID: the company ID you have defined for the company, used to find the record to edit.
- Custom Attributes: a hash of key and value pairs for custom data you want to attribute, built one entry at a time with Add Attribute.
- Plan and Size: Additional Fields for the plan name associated with the company and its employee count.
List users of a company
company.usersWhat you see in n8n
Notes & use cases
Lists the users attached to one company, which is the only operation that crosses two objects.
Key parameters
- List By:
idfor the Intercom defined ID representing the company, orcompanyIdfor the one you gave it. - Value: required, the identifier matching your List By choice.
- Return All: on for every user on the account, off to stop at Limit.
Lead
5 operationsCreate a lead
lead.createWhat you see in n8n
Notes & use cases
Adds a lead, the record Intercom keeps for someone who has not become a user yet.
Key parameters
- Email: required, the email of the user, in the
name@email.comform. - Name and Phone: Additional Fields for the name and the phone number of the user.
- UTM Campaign, UTM Medium, UTM Term: the campaign that brought them in, the type of link used, and the search terms.
Delete a lead
lead.deleteWhat you see in n8n
Notes & use cases
Removes a lead record from Intercom. There is no undo step in the workflow, so branch carefully before it.
Key parameters
- Delete By:
idfor the Intercom defined ID representing the lead, oruserIdfor the automatically generated identifier. - Value: required, the identifier to delete by, matching the property you chose above.
Get a lead
lead.getWhat you see in n8n
Notes & use cases
Reads a single lead so the workflow can decide what to do with the person.
Key parameters
- Select By: the property to select the lead by, among
email,id,userIdandphone. Four ways in, which matters when your other tools store different keys. - Value: required, the lookup value for the property you picked.
Get many leads
lead.getAllWhat you see in n8n
Notes & use cases
Brings back a list of leads, one item each.
Key parameters
- Return All: on to page through the whole set, off to cap it with Limit.
- Email and Phone: the two Filters, the email address of the lead and the phone number of the lead, to narrow the pull instead of sorting afterwards.
Update a lead
lead.updateWhat you see in n8n
Notes & use cases
Edits a lead already in Intercom, which is what keeps a record clean instead of doubled.
Key parameters
- Update By: the property to query the lead by,
userIdorid. - Value: required, the value of that property for the lead to update.
- Unsubscribed From Emails and Company Names or IDs: Additional Fields for the email opt out state and the companies this user belongs to.
User
5 operationsCreate a user
user.createWhat you see in n8n
Notes & use cases
Creates the record Intercom keeps for an identified customer.
Key parameters
- Identifier Type:
userId, a unique string identifier required on creation if an email is not supplied, oremail, required on creation if a user_id is not supplied. - Value: required, the unique string identifier value itself.
- Name, Phone, Session Count, Company Names or IDs: part of the 14 Additional Fields, including how many sessions the user has recorded.
Delete a user
user.deleteWhat you see in n8n
Notes & use cases
Deletes a user record. It is the shortest operation in the node and the one to wire last.
Key parameters
- ID: required, the Intercom defined ID representing the record. It is the only field, so the workflow has to have that identifier in hand, typically read by an earlier lookup and passed as
{{ $json.field }}.
Get a user
user.getWhat you see in n8n
Notes & use cases
Fetches one user and makes the record available to every node downstream.
Key parameters
- Select By: the property to select the user by,
idfor the Intercom defined ID oruserIdfor the automatically generated identifier. - Value: required, the value to view by. Note that it expects an identifier, not a name.
Get many users
user.getAllWhat you see in n8n
Notes & use cases
Returns users as a list, and it carries the widest set of filters in the node.
Key parameters
- Return All: on to chain the pages, off to stop at Limit.
- Company ID, Email, Segment ID, Tag ID: the 4 Filters, respectively the company representing the user, the email address, the segment and the tag.
Update a user
user.updateWhat you see in n8n
Notes & use cases
Rewrites fields on an existing user, the operation most workflows end on.
Key parameters
- Update By: the property to query the user by,
id,emailoruserId. - Value: required, the value of that property for the user to update.
- Update Last Request At: whether to instruct Intercom to update the user's last_request_at value to the current API service time in UTC.
Need help automating Intercom with n8n?
A person reads every message.

