GoRunner docs
Search or askSearch⌘K

Intercom

Manage Intercom contacts and companies, reply to, assign and close conversations, handle tickets, and publish help center articles.

51 actions · 1 trigger · Sign in with Intercom

Connect Intercom

  1. In the sidebar, open Connections and press Add connection.
  2. Type intercom and choose Intercom.
  3. Choose Sign in with Intercom.
  4. Press Sign in with Intercom at the bottom of the sheet, then choose your account in Intercom’s window and allow access.

Or choose Paste your access token, paste it, and press Test and save. It stays until someone deletes it.

Sign in with Intercom, or paste the access token of an app in your workspace (Developer Hub › your app › Configure › Authentication). Set the region your workspace’s data is hosted in.

What if it says “Sign-in isn’t set up here yet”?

Signing in with Intercom needs a Intercom app on this installation, and it has none yet. Until it is set up, Paste your access token works without it.

On Cloud: The sheet says “It’s set up once for everyone who uses this service, not by an organization.”

Self-hosted: An admin of the installation sees Set up Intercom sign-in instead, and sets it up once for everyone. Everyone else sees who to ask.

  1. Create an app in Intercom’s developer settings (Intercom’s guide).
  2. In GoRunner, copy the Redirect address to add in Intercom’s developer settings, and add it to the app.
  3. Paste the Client ID and Client secret, then press Save and sign in.

Set up a sign-in app

Can I use my own Intercom app?

Yes. In the sheet, open Use your own Intercom app and paste its Client ID and Client secret. Add the redirect address it shows to your app first. The connection then signs in through your app instead of the installation’s.

Connections says how to sign in again, rename or delete it. In a product that embeds GoRunner, Add connection can be missing: then your provider makes connections for you.

Start a workflow

Add a trigger and choose Intercom. The trigger uses the same connection as the steps.

On Conversation or Contact Created or Updated

Checks Intercom about once a minute and starts a run for each conversation or contact created, or each change to one, since the check before, oldest first. The first check after publishing only takes note of what is there (it starts nothing); changing the trigger starts over the same way. Several changes between two checks start one run, with the record as it is then. At most 100 runs start per check; the rest follow on the next one. (Intercom sends webhooks only to one address per app, set in its Developer Hub, so this trigger checks instead.).

Trigger on · Required

What starts a run.

Options: New conversation, Conversation updated (a reply, note, assignment, state change …), New contact, Contact updated.

Default: New conversation.

Contact Role · Optional

Only users, or only leads. Empty: both.

Options: Users, Leads.

Shows when Trigger on is New contact or Contact updated.

A later step can use its data, such as {{trigger.change_type}}, {{trigger.created_at}}, {{trigger.email}} and 5 more. See Use data from earlier steps.

Do things in Intercom

Add an Intercom step, choose a Resource, then an Operation. Choose a row to see its fields.

Later steps read a step’s output by its name: see Use data from earlier steps.

Limits

  • A reply from Intercom can be up to 16 MB (a file download can have its own limit). A larger one fails the step; it is never cut short.
  • When Intercom says to slow down (429), the step waits as long as it asks, if the step’s time allows. Otherwise it fails and says when to try again.

Not in your list? See When an app isn’t here.

For developers

In the API, which calls apps pieces, Intercom is pieceId: "intercom" with actionId: "intercom", set by resource and an operation_… field, such as operation_admin. Its trigger is intercomtrigger / intercom_poll. Get an app returns every field.

It can change something outside the run (writes_external). See How versions and side effects work.

Intercom › Contact

Create

Role · Optional

A user (signed up) or a lead (not yet). Empty: user on create, unchanged on update (a lead can become a user).

Options: User, Lead.

Email · Optional

Create needs an Email, an External ID, or the Lead role.

External ID · Optional

The person's id in your own system (users only).

Name · Optional
Phone · Optional
Avatar URL · Optional

An image of the person.

Owner · Optional

The admin who owns the contact.

Signed Up At · Optional

ISO 8601 or Unix seconds.

Last Seen At · Optional

ISO 8601 or Unix seconds.

Unsubscribed from Emails · Optional

Options: Unsubscribed, Subscribed.

Custom Attributes · Optional

Values of your contact data attributes by name: {"plan": "pro"}. Data Attribute › Get Many lists them.

Get and Delete

Contact ID · Required

The contact's Intercom id, or their link in Intercom.

Get Many

Return All · Optional

Read every contact, page by page (at most 2000; past that the step fails rather than stop early).

Off by default.

Limit · Optional

How many contacts to return (1–2000).

Default: 50.

Shows when Return All is off.

Search

Email · Optional

Find contacts with this email (instead of a Filter).

Filter · Optional

Or a full Intercom query, such as {"field": "role", "operator": "=", "value": "lead"}. one condition {"field": "email", "operator": "=", "value": "sam@example.com"} or a group {"operator": "AND", "value": [ … ]}. Operators: = != in NIN > < ~ !~ ^ $. Times are Unix seconds.

Sort By · Optional

A field to sort by, such as updated_at or created_at.

Sort Order · Optional

Options: Ascending, Descending.

Return All · Optional

Read every contact, page by page (at most 2000; past that the step fails rather than stop early).

Off by default.

Limit · Optional

How many contacts to return (1–2000).

Default: 50.

Shows when Return All is off.

Update

Contact ID · Required

The contact's Intercom id, or their link in Intercom.

Role · Optional

A user (signed up) or a lead (not yet). Empty: user on create, unchanged on update (a lead can become a user).

Options: User, Lead.

Email · Optional

Create needs an Email, an External ID, or the Lead role.

External ID · Optional

The person's id in your own system (users only).

Name · Optional
Phone · Optional
Avatar URL · Optional

An image of the person.

Owner · Optional

The admin who owns the contact.

Signed Up At · Optional

ISO 8601 or Unix seconds.

Last Seen At · Optional

ISO 8601 or Unix seconds.

Unsubscribed from Emails · Optional

Options: Unsubscribed, Subscribed.

Custom Attributes · Optional

Values of your contact data attributes by name: {"plan": "pro"}. Data Attribute › Get Many lists them.

Add Tag and Remove Tag

Contact ID · Required

The contact's Intercom id, or their link in Intercom.

Tag · Required

The tag.

Attach to Company

Contact ID · Required

The contact's Intercom id, or their link in Intercom.

Company ID · Required

The company's Intercom id (not your company_id).

Add Note

Contact ID · Required

The contact's Intercom id, or their link in Intercom.

Note · Required

The note's text (HTML allowed).

Admin · Optional

Who writes the note. Empty: the admin the connection acts as.

Merge Lead into User

Lead ID · Required

The lead to merge (it is removed).

User ID · Required

The user it is merged into.

Intercom › Company

Create or Update

Company ID · Optional

The company's id in your own system. Create or Update finds the company by it, and adds it when there is none.

Name · Optional
Plan · Optional
Size · Optional

Number of employees.

Website · Optional
Industry · Optional
Monthly Spend · Optional

How much the company pays you a month (a whole number).

Created At (yours) · Optional

When the company was created in your system: ISO 8601 or Unix seconds.

Custom Attributes · Optional

Values of your company data attributes by name: {"tier": "gold"}.

Get

Find By · Optional

Options: Intercom ID, Company ID (yours), Name.

Value · Required

The id or name to find the company by.

Get Many

Return All · Optional

Read every item, page by page (at most 2000; past that the step fails rather than stop early).

Off by default.

Limit · Optional

How many items to return (1–2000).

Default: 50.

Shows when Return All is off.

Update

Company ID · Required

The company's Intercom id, or its link in Intercom.

Name · Optional
Plan · Optional
Size · Optional

Number of employees.

Website · Optional
Industry · Optional
Monthly Spend · Optional

How much the company pays you a month (a whole number).

Created At (yours) · Optional

When the company was created in your system: ISO 8601 or Unix seconds.

Custom Attributes · Optional

Values of your company data attributes by name: {"tier": "gold"}.

Delete

Company ID · Required

The company's Intercom id, or its link in Intercom.

Get Contacts

Company ID · Required

The company's Intercom id, or its link in Intercom.

Return All · Optional

Read every item, page by page (at most 2000; past that the step fails rather than stop early).

Off by default.

Limit · Optional

How many items to return (1–2000).

Default: 50.

Shows when Return All is off.

Add Tag and Remove Tag

Company ID · Required

The company's Intercom id, or its link in Intercom.

Tag · Required

The tag's name (adding a name that does not exist yet makes the tag).

Intercom › Conversation

Create

Contact ID · Required

The user or lead the conversation is from.

Message · Required

The text (HTML allowed in replies and notes).

Get

Conversation ID · Required

The conversation's id, or its link in the Intercom inbox.

Plain Text · Optional

Return the messages as plain text instead of HTML.

Off by default.

Get Many

Return All · Optional

Read every conversation, page by page (at most 2000; past that the step fails rather than stop early).

Off by default.

Limit · Optional

How many conversations to return (1–2000).

Default: 50.

Shows when Return All is off.

Search

Filter · Required

Intercom's search query: one condition {"field": "email", "operator": "=", "value": "sam@example.com"} or a group {"operator": "AND", "value": [ … ]}. Operators: = != in NIN > < ~ !~ ^ $. Times are Unix seconds.

Sort By · Optional

A field to sort by, such as updated_at or created_at.

Sort Order · Optional

Options: Ascending, Descending.

Return All · Optional

Read every conversation, page by page (at most 2000; past that the step fails rather than stop early).

Off by default.

Limit · Optional

How many conversations to return (1–2000).

Default: 50.

Shows when Return All is off.

Reply

Conversation ID · Required

The conversation's id, or its link in the Intercom inbox.

Message · Required

The text (HTML allowed in replies and notes).

Reply As · Optional

An admin's reply in the inbox, or a message from the contact.

Options: Admin, The contact.

Contact ID · Optional

The contact who writes (Reply As The contact).

Shows when Reply As is The contact.

Attachment URLs · Optional

Links to files to attach (up to 10), separated by commas.

Admin · Optional

Who acts. Empty: the admin the connection acts as.

Add Note

Conversation ID · Required

The conversation's id, or its link in the Intercom inbox.

Message · Required

The text (HTML allowed in replies and notes).

Attachment URLs · Optional

Links to files to attach (up to 10), separated by commas.

Admin · Optional

Who acts. Empty: the admin the connection acts as.

Assign

Conversation ID · Required

The conversation's id, or its link in the Intercom inbox.

Assign To · Required

The admin or team (0: unassigned).

Message · Optional

An optional note with the change.

Admin · Optional

Who acts. Empty: the admin the connection acts as.

Close

Conversation ID · Required

The conversation's id, or its link in the Intercom inbox.

Message · Optional

An optional note with the change.

Admin · Optional

Who acts. Empty: the admin the connection acts as.

Reopen

Conversation ID · Required

The conversation's id, or its link in the Intercom inbox.

Admin · Optional

Who acts. Empty: the admin the connection acts as.

Snooze

Conversation ID · Required

The conversation's id, or its link in the Intercom inbox.

Snooze Until · Required

When it reopens: ISO 8601 or Unix seconds.

Admin · Optional

Who acts. Empty: the admin the connection acts as.

Add Tag and Remove Tag

Conversation ID · Required

The conversation's id, or its link in the Intercom inbox.

Tag · Required

The tag.

Admin · Optional

Who acts. Empty: the admin the connection acts as.

Intercom › Ticket

Create

Ticket Type · Required

The kind of ticket (Settings › Tickets).

Contact ID · Optional

Who the ticket is for. Create needs this or a Contact Email.

Contact Email · Optional

Or the contact's email (Intercom adds a lead when it is new).

Title · Optional

The ticket's title.

Description · Optional

The ticket's description.

Ticket Attributes · Optional

More of the ticket type's attributes by name: {"Priority": "High"}.

Company ID · Optional

The company the ticket belongs to (its Intercom id).

Get and Delete

Ticket ID · Required

The ticket's id (from the API or the trigger: not the #number the inbox shows).

Search

Filter · Required

Intercom's search query: one condition {"field": "email", "operator": "=", "value": "sam@example.com"} or a group {"operator": "AND", "value": [ … ]}. Operators: = != in NIN > < ~ !~ ^ $. Times are Unix seconds.

Sort By · Optional

A field to sort by, such as updated_at or created_at.

Sort Order · Optional

Options: Ascending, Descending.

Return All · Optional

Read every ticket, page by page (at most 2000; past that the step fails rather than stop early).

Off by default.

Limit · Optional

How many tickets to return (1–2000).

Default: 50.

Shows when Return All is off.

Update

Ticket ID · Required

The ticket's id (from the API or the trigger: not the #number the inbox shows).

Title · Optional

The ticket's title.

Description · Optional

The ticket's description.

Ticket Attributes · Optional

More of the ticket type's attributes by name: {"Priority": "High"}.

Company ID · Optional

The company the ticket belongs to (its Intercom id).

State · Optional

The ticket's state.

Open · Optional

Closed: closes (and unsnoozes) the ticket.

Options: Open, Closed.

Assign To · Optional

The admin or team (0: unassigned).

Snooze Until · Optional

ISO 8601 or Unix seconds.

Admin · Optional

Who acts. Empty: the admin the connection acts as.

Reply

Ticket ID · Required

The ticket's id (from the API or the trigger: not the #number the inbox shows).

Message · Required

The reply or note (HTML allowed).

Kind · Optional

A reply the customer sees, or an internal note.

Options: Reply, Note.

Admin · Optional

Who acts. Empty: the admin the connection acts as.

Intercom › Article

Create

Title · Optional

Required to create an article.

Body · Optional

The article (HTML).

Description · Optional

A short summary shown under the title.

Author · Optional

The admin who wrote it. Empty on create: the admin the connection acts as.

State · Optional

Empty: draft on create, unchanged on update.

Options: Draft, Published.

Collection ID · Optional

The help center collection it sits in.

Get and Delete

Article ID · Required

The article's id.

Get Many

Return All · Optional

Read every article, page by page (at most 2000; past that the step fails rather than stop early).

Off by default.

Limit · Optional

How many articles to return (1–2000).

Default: 50.

Shows when Return All is off.

Search

Search Text · Required

Words in the articles.

State · Optional

Options: Draft, Published.

Return All · Optional

Read every article, page by page (at most 2000; past that the step fails rather than stop early).

Off by default.

Limit · Optional

How many articles to return (1–2000).

Default: 50.

Shows when Return All is off.

Update

Article ID · Required

The article's id.

Title · Optional

Required to create an article.

Body · Optional

The article (HTML).

Description · Optional

A short summary shown under the title.

Author · Optional

The admin who wrote it. Empty on create: the admin the connection acts as.

State · Optional

Empty: draft on create, unchanged on update.

Options: Draft, Published.

Collection ID · Optional

The help center collection it sits in.

Intercom › Data Attribute

Get Many

Of · Optional

Whose attributes.

Options: Contacts, Companies.

Include Archived · Optional

Off by default.

Create

Of · Optional

Whose attributes.

Options: Contacts, Companies.

Name · Required

The attribute's name.

Type · Required

Options: Text, Whole number, Decimal number, True or false, Date and time, Date.

Default: Text.

Description · Optional
Options · Optional

For a text attribute picked from a list: the values, separated by commas.

Writable by the Messenger · Optional

Whether the Messenger may set it.

Options: Yes, No.

Update

Data Attribute ID · Required

The attribute's id (Get Many lists it).

Description · Optional
Options · Optional

For a text attribute picked from a list: the values, separated by commas.

Writable by the Messenger · Optional

Whether the Messenger may set it.

Options: Yes, No.

Archived · Optional

Options: Archived, Active.

Intercom › Tag

Get Many

Nothing to fill in.

Create

Name · Required

The tag's name.

Delete

Tag ID · Required

The tag's id.

Intercom › Admin

Get Many

Nothing to fill in.

Get

Admin ID · Required

The admin's id.