Intercom integration summary

Stitch’s Intercom integration replicates data using the Intercom REST API (V1.0). Refer to the Schema section for a list of objects available for replication.

Intercom feature snapshot

A high-level look at Stitch's Intercom (v02-02-2016) integration, including release status, useful links, and the features supported in Stitch.

STITCH
Release status

Sunset on January 31, 2021

Supported by

Stitch

Stitch plan

Standard

API availability

Not available

Singer GitHub repository

Not applicable

REPLICATION SETTINGS
Anchor Scheduling

Supported

Advanced Scheduling

Unsupported

Table-level reset

Unsupported

Configurable Replication Methods

Unsupported

DATA SELECTION
Table selection

Unsupported

Column selection

Unsupported

Select all

Unsupported

TRANSPARENCY
Extraction Logs

Unsupported

Loading Reports

Supported

Intercom replication

Intercom Replication and Attribution Windows

Every time Stitch runs a replication job for Intercom, the last 30 days’ worth of data will be replicated for these tables:

  • companies

  • company_segments

  • users

Stitch replicates data in this way to account for updates made to existing records within the default attribution window of 30 days, thus ensuring you won’t make decisions based on stale (or false) data. As a result, you may see a higher number of replicated rows than what’s being generated in Intercom.

Setting the Replication Frequency to a higher frequency - like 30 minutes - can result in re-replicating recent data and contribute to greater row usage. Selecting a lower frequency can help keep your row count low.


Intercom table reference

admins

Replication Method :

Full Table

Primary Key :

id

API endpoint :

listAdmins

The admins table contains info about the admins and teams in your Intercom account.

id
STRING

The admin or team ID.

Reference:

type
STRING

The admin type. This value will be either admin or team.

name
STRING

The name of the admin or team.

email
STRING

The email address of the admin. This will be NULL for teams.

away_mode_enabled
BOOLEAN

Indicates if the admin is currently set in away mode.

away_mode_reassign
BOOLEAN

Indicates if the admin is set to automatically reassign new conversations to the app’s default inbox.

team_ids
ARRAY

A list of the IDs of the teams the admin is a part of.

value
INTEGER

The ID of the team the admin is a part of.

admins (table), team_ids (attribute)

companies

Replication Method :

Key-based Incremental

Replication Key :

updated_at

Primary Key :

id

API endpoint :

scrollOverAllCompanies

The companies table contains info about the companies (or commercial organizations) that use your Intercom product.

Custom Attributes

If applicable, Stitch will replicate custom fields related to companies in Intercom.

id
STRING

The Intercom-defined company ID.

Reference:

updated_at
DATE-TIME

The time the company was last updated.

company_id
STRING

The ID that you assigned to the company.

created_at
DATE-TIME

The time the company was added to Intercom.

remote_created_at
DATE-TIME

The time the company was created by you.

name
STRING

The name of the company.

custom_attributes
OBJECT

If applicable, the custom attributes you’ve applied to the company.

session_count
INTEGER

The number of recorded sessions for the company.

monthly_spend
NUMBER

The amount of revenue the company generates for your business.

user_count
NUMBER

The number of users in the company.

plan
STRING

The name of the plan associated with the company.

type
STRING

The value of this field will be company.

segments
ARRAY

A list of the IDs of the segments associated with the company.

segments
ARRAY

A list of the IDs of the segments associated with the company.

id
STRING

The segment ID.

Reference:

type
STRING

The value of this field will be segment.

companies (table), segments (attribute)
companies (table), segments (attribute)

tags
ARRAY

A list of the IDs of the tags associated with the company.

tags
ARRAY

A list of the IDs of the tags associated with the company.

id
STRING

The tag ID.

Reference:

type
STRING

The value of this field will be tag.

companies (table), tags (attribute)
companies (table), tags (attribute)

company_segments

Replication Method :

Full Table

Primary Key :

id

API endpoint :

listSegments

The company_segments table contains info about company segments. A segment is a group of users that are defined by a set of rules.

id
STRING

The segment ID.

Reference:

updated_at
DATE-TIME

The time the segment was last updated.

created_at
DATE-TIME

The time the segment was created.

name
STRING

The name of the segment.

person_type
STRING

The type of record. This will either be user or lead.

type
STRING

The value of this field will be segment.


contacts

Replication Method :

Key-based Incremental

Replication Key :

updated_at

Primary Key :

id

API endpoint :

listLeads

The contacts table contains info about the logged-out users, or leads, of your Intercom app.

Note: contacts is equivalent to the leads object in Intercom’s API. See Intercom’s documentation for more info.

Custom Attributes

If applicable, Stitch will replicate custom fields related to contacts (leads) in Intercom.

id
STRING

The lead’s Intercom-defined ID.

Reference:

updated_at
DATE-TIME

The time the lead was last updated.

created_at
DATE-TIME

The time the lead was added to Intercom.

user_id
STRING

An Intercom-generated ID for the lead.

email
STRING

The email associated with the lead.

phone
STRING

The phone number associated with the lead.

name
STRING

The name of the lead.

last_request_at
DATE-TIME

The time the lead last made a request.

avatar
OBJECT

Details about the avatar associated with the lead.

image_url
STRING

The URL of the avatar image associated with the lead.

type
STRING

The value of this field will be avatar.

contacts (table), avatar (attribute)

unsubscribed_from_emails
BOOLEAN

Indicates if the lead is unsubscribed from emails.

location_data
OBJECT

Details about the lead’s location.

city_name
STRING

The name of the city associated with the lead’s location.

continent_code
STRING

The continent code associated with the lead’s location.

country_code
STRING

The country code associated with the lead’s location.

country_name
STRING

The name of the country associated with the lead’s location.

latitude
INTEGER

The latitude associated with the lead’s location.

longitude
INTEGER

The longitude associated with the lead’s location.

postal_code
STRING

The postal code associated with the lead’s location.

region_name
STRING

The name of the region associated with the lead’s location.

timezone
STRING

The ISO 8601 timezone associated with the lead’s location.

type
STRING

The value of this field will be location_data.

contacts (table), location_data (attribute)

user_agent_data
STRING

Data about the last user agent the lead was seen using.

last_seen_ip
STRING

The IP address the lead last visited your application from.

companies
ARRAY

Details about the companies the lead is associated with.

companies
ARRAY

Details about the companies the lead is associated with.

id
STRING

The Intercom-defined company ID.

Reference:

company_id
STRING

The ID that you assigned to the company.

name
STRING

The name of the company.

type
STRING

The value of this field will be company.

contacts (table), companies (attribute)
contacts (table), companies (attribute)

social_profiles
ARRAY

Details about the social profiles the lead is associated with.

social_profiles
ARRAY

Details about the social profiles the lead is associated with.

id
STRING

The lead’s user ID on the social platform.

name
STRING

The name of the social service. Ex: facebook

url
STRING

The lead’s user homepage on the social platform.

username
STRING

The lead’s username on the social platform.

type
STRING

The value of this field will be social_profile.

contacts (table), social_profiles (attribute)
contacts (table), social_profiles (attribute)

segments
ARRAY

Details about the segments the lead is associated with.

segments
ARRAY

Details about the segments the lead is associated with.

id
STRING

The segment ID.

Reference:

type
STRING

The value of this field will be segment.

contacts (table), segments (attribute)
contacts (table), segments (attribute)

tags
ARRAY

Details about the tags the lead is associated with.

tags
ARRAY

Details about the tags the lead is associated with.

id
STRING

The tag ID.

Reference:

name
STRING

The name of the tag.

type
STRING

The value of this field will be tag.

contacts (table), tags (attribute)
contacts (table), tags (attribute)

conversations

Replication Method :

Key-based Incremental

Replication Key :

updated_at

Primary Key :

id

API endpoint :

listConversations

The conversations table contains info about user conversations, or conversations initiated by your end-users.

Conversation Parts

To reconstruct an entire conversation, use the conversation_parts associated with the conversation. These are the individual elements - actions, messages, and so on - that make up a conversation.

If your destination doesn’t natively support nested data structures, a subtable named conversations__conversation_parts will be created. More info on this table can be found below.

id
STRING

The conversation ID.

updated_at
DATE-TIME

The time the conversation was last updated.

created_at
DATE-TIME

The time the conversation was created.

waiting_since
DATE-TIME

An epoch timestamp that indicates the last time a customer responded to an admin, or the time a customer started waiting for a response.

Note: According to Intercom’s documentation, this field may sometimes contain a value that is 2000 years in the future. This can occur when the last person to respond was an admin or when the conversation was closed aver a customer response.

snoozed_until
DATE-TIME

If set, this is the time in the future that the conversation will be marked as open.

state
STRING

The current state of the conversation. Possible values are:

  • open
  • closed
  • snoozed

conversation_message
OBJECT

Details about the message that started the conversation.

subject
STRING

The conversation message subject, or the subject of the message that started the conversation.

body
STRING

The conversation message body, which may contain HTML. This is the body of the message that started the conversation.

author
OBJECT

Details about the user that created the conversation message.

id
STRING

The ID of the user who created the conversation message.

Depending on the user’s type, this will be a foreign key to the users or admins table.

Reference:

type
STRING

The type of user that created the conversation message. Possible values are:

  • user
  • lead
  • admin
conversations (table), author (attribute)

attachments
ARRAY

Details about the attachments, if any, that are a part of the conversation message.

url
STRING

The attachment URL.

name
STRING

The name of the attachment. Ex: image001.png, presentation.pdf

content_type
STRING

The content type of the attachment. Ex: image/png, application/pdf

height
INTEGER

For image attachments, the height of the image.

width
INTEGER

For image attachments, the width of the image.

filesize
INTEGER

The file size of the attachment.

type
STRING

The value of this field will be upload.

conversations (table), attachments (attribute)

type
STRING

The value of this field will be conversation_message.

conversations (table), conversation_message (attribute)

conversation_parts
ARRAY

Details about the individual elements that make up the conversation.

id
STRING

The conversation part ID.

part_type
STRING

The type of conversation part. Possible values are:

  • comment - A standard reply from a user or admin.
  • note - Created by and only viewable to an admin.
  • assignment - Assignment of the conversation to an admin or nobody. Viewable only to an admin.
  • open - Opens the conversation. Viewable only to an admin.
  • close - Closes the conversation. Viewable only to an admin.

body
STRING

The HTML-encoded body of the conversation part.

created_at
DATE-TIME

The time the conversation part was created.

updated_at
DATE-TIME

The time the conversation part was last updated.

assigned_to
STRING

For assignment types only: the ID of the admin that the conversation is assigned to.

Reference:

author
OBJECT

Details about the admin or user that created the conversation part.

id
STRING

The ID of the admin or user that created the conversation part.

Reference:

type
STRING

The type of user that created the conversation part.

conversations (table), author (attribute)

attachments
ARRAY

Details about the attachments, if any, that are a part of the conversation part.

url
STRING

The attachment URL.

name
STRING

The name of the attachment. Ex: image001.png, presentation.pdf

content_type
STRING

The content type of the attachment. Ex: image/png, application/pdf

height
INTEGER

For image attachments, the height of the image.

width
INTEGER

For image attachments, the width of the image.

filesize
INTEGER

The file size of the attachment.

type
STRING

The value of this field will be upload.

conversations (table), attachments (attribute)
conversations (table), conversation_parts (attribute)

total_count
INTEGER

The total number of conversation parts in the conversation.

user
OBJECT

Details about the user or lead involved in the conversation.

id
STRING

The ID of the user or lead involved in the conversation.

Reference:

type
STRING

The type of user involved in the conversation. Possible values include:

  • lead
  • user
conversations (table), user (attribute)

assignee
OBJECT

Details about the admin assigned to the conversation.

id
STRING

The ID of the admin that the conversation is assigned to.

Reference:

type
STRING

The type of admin the conversation is assigned to. Possible values are:

  • nobody_admin - Indicates the conversation is assigned to Nobody.
  • admin - Indicates the conversation is assigned to an admin.
conversations (table), assignee (attribute)

customers
ARRAY

Details about the customers (users or leads) involved in the conversation.

id
STRING

The user’s ID.

Reference:

type
STRING

The value of this field will be user.

conversations (table), customers (attribute)

open
BOOLEAN

Indicates whether a conversation is open (true) or closed (false).

read
BOOLEAN

Indicates whether a conversation has been read.

tags
ARRAY

The tags associated with the conversation.

tags
ARRAY

The tags associated with the conversation.

id
STRING

The tag ID.

Reference:

name
STRING

The name of the tag.

type
STRING

The value of this field will be tag.

conversations (table), tags (attribute)
conversations (table), tags (attribute)

type
STRING

The value of this field will be conversation.


segments

Replication Method :

Full Table

Primary Key :

id

API endpoint :

listSegments

The segments table contains info about the segments - or groups of users defined by a set of rules - in your Intercom account.

id
STRING

The segment ID.

Reference:

updated_at
DATE-TIME

The time the segment was last updated.

created_at
DATE-TIME

The time the segment was created.

name
STRING

The name of the segment.

person_type
STRING

The type of record. This will either be user or lead.

type
STRING

The value of this field will be segment.


tags

Replication Method :

Full Table

Primary Key :

id

API endpoint :

listTags

The tags table contains info about the tags in your Intercom account.

id
STRING

The tag ID.

Reference:

name
STRING

The name of the tag.

type
STRING

The value of this field will be tag.


users

Replication Method :

Key-based Incremental

Replication Key :

updated_at

Primary Key :

id

API endpoint :

List Users

The users table contains info about the users in your Intercom account.

Custom Attributes

If applicable, Stitch will replicate custom fields related to users in Intercom.

id
STRING

The user ID.

Reference:

updated_at
DATE-TIME

The time the user was last updated.

created_at
DATE-TIME

The time the user was added to Intercom.

signed_up_at
DATE-TIME

The time the user signed up.

email
STRING

The email address associated with the user.

name
STRING

The full name of the user.

phone
STRING

The phone number associated with the user.

last_request_at
DATE-TIME

The time the user last made a request.

session_count
INTEGER

The number of sessions recorded for the user.

avatar
OBJECT

Details about the avatar associated with the user.

image_url
STRING

The URL of the avatar image associated with the user.

type
STRING

The value of this field will be avatar.

users (table), avatar (attribute)

unsubscribed_from_emails
BOOLEAN

Indicates if the user is unsubscribed from emails.

location_data
OBJECT

Details about the user’s location.

city_name
STRING

The name of the city associated with the user’s location.

continent_code
STRING

The continent code associated with the user’s location.

country_code
STRING

The country code associated with the user’s location.

country_name
STRING

The name of the country associated with the user’s location.

latitude
INTEGER

The latitude associated with the user’s location.

longitude
INTEGER

The longitude associated with the user’s location.

postal_code
STRING

The postal code associated with the user’s location.

region_name
STRING

The name of the region associated with the user’s location.

timezone
STRING

The ISO 8601 timezone associated with the user’s location.

type
STRING

The value of this field will be location_data.

users (table), location_data (attribute)

user_agent_data
STRING

Data about the last user agent the user was seen using.

last_seen_ip
STRING

The IP address the user last visited your application from.

pseudonym
STRING

If the user was previously a lead, this field will contain the pseudonym used. Ex: Pink Giraffe

anonymous
BOOLEAN

Indicates if the user is a lead. This will always be false.

companies
ARRAY

Details about the companies the user is associated with.

companies
ARRAY

Details about the company the user is associated with.

id
STRING

The Intercom-defined company ID.

Reference:

company_id
STRING

The ID that you assigned to the company.

name
STRING

The name of the company.

type
STRING

The value of this field will be company.

users (table), companies (attribute)
users (table), companies (attribute)

social_profiles
ARRAY

Details about the social profiles the user is associated with.

social_profiles
ARRAY

Details about the social profiles the user is associated with.

id
STRING

The user’s user ID on the social platform.

name
STRING

The name of the social service. Ex: facebook

url
STRING

The user’s user homepage on the social platform.

username
STRING

The user’s username on the social platform.

type
STRING

The value of this field will be social_profile.

users (table), social_profiles (attribute)
users (table), social_profiles (attribute)

segments
ARRAY

Details about the segments the user is associated with.

segments
ARRAY

Details about the segments the user is associated with.

id
STRING

The segment ID.

Reference:

type
STRING

The value of this field will be segment.

users (table), segments (attribute)
users (table), segments (attribute)

tags
ARRAY

Details about the tags the user is associated with.

tags
ARRAY

Details about the tags the user is associated with.

id
STRING

The tag ID.

Reference:

name
STRING

The name of the tag.

type
STRING

The value of this field will be tag.

users (table), tags (attribute)
users (table), tags (attribute)

type
STRING

The value of this field will be user.



Questions? Feedback?

Did this article help? If you have questions or feedback, feel free to submit a pull request with your suggestions, open an issue on GitHub, or reach out to us.