This version of Intercom reached end of life on January 31, 2021 and is no longer functioning.
Upgrade to the latest version (v2) to continue replicating data.
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 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.
This is applicable to all tables in the integration.
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
Schemas and versioning
Schemas and naming conventions can change from version to version, so we recommend verifying your integration’s version before continuing.
The schema and info displayed below is for version 02-02-2016 of this integration.
Table and column names in your destination
Depending on your destination, table and column names may not appear as they are outlined below.
For example: Object names are lowercased in Redshift (CusTomERs
> customers
), while case is maintained in PostgreSQL destinations (CusTomERs
> CusTomERs
). Refer to the Loading Guide for your destination for more info.
admins
The admins
table contains info about the admins and teams in your Intercom account.
Full Table |
|
Primary Key |
id |
Useful links |
Join admins with | on |
---|---|
conversations |
admins.id = conversations.conversation_parts.assigned_to admins.id = conversations.assignee.id admins.id = conversations.conversation_parts.author.id |
contacts |
admins.id = contacts.id |
users |
admins.id = users.id |
away_mode_enabled BOOLEAN |
|
away_mode_reassign BOOLEAN |
|
STRING |
|
id STRING |
|
name STRING |
|
team_ids ARRAY
|
|
type STRING |
companies
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.
Key-based Incremental |
|
Primary Key |
id |
Replication Key |
updated_at |
Useful links |
Join companies with | on |
---|---|
contacts |
companies.id = contacts.companies.id companies.segments.segments.id = contacts.segments.segments.id companies.tags.tags.id = contacts.tags.tags.id |
users |
companies.id = users.companies.id companies.segments.segments.id = users.segments.segments.id companies.tags.tags.id = users.tags.tags.id |
segments |
companies.segments.segments.id = segments.id |
conversations |
companies.tags.tags.id = conversations.tags.tags.id |
tags |
companies.tags.tags.id = tags.id |
company_id STRING |
|||
created_at DATE-TIME |
|||
custom_attributes OBJECT |
|||
id STRING |
|||
monthly_spend NUMBER |
|||
name STRING |
|||
plan STRING |
|||
remote_created_at DATE-TIME |
|||
segments ARRAY
|
|||
session_count INTEGER |
|||
tags ARRAY |
|||
type STRING |
|||
updated_at DATE-TIME |
|||
user_count NUMBER |
company_segments
The company_segments
table contains info about company segments. A segment is a group of users that are defined by a set of rules.
Full Table |
|
Primary Key |
id |
Useful links |
Join company_segments with | on |
---|---|
contacts |
company_segments.id = contacts.segments.id |
created_at DATE-TIME |
id STRING |
name STRING |
person_type STRING |
type STRING |
updated_at DATE-TIME |
contacts
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.
Key-based Incremental |
|
Primary Key |
id |
Replication Key |
updated_at |
Useful links |
Join contacts with | on |
---|---|
admins |
contacts.id = admins.id |
users |
contacts.id = users.id contacts.companies.id = users.companies.id contacts.segments.segments.id = users.segments.segments.id contacts.tags.tags.id = users.tags.tags.id |
conversations |
contacts.id = conversations.conversation_parts.author.id contacts.id = conversations.user.id contacts.tags.tags.id = conversations.tags.tags.id contacts.id = conversations.customers.id |
companies |
contacts.companies.id = companies.id contacts.segments.segments.id = companies.segments.segments.id contacts.tags.tags.id = companies.tags.tags.id |
company_segments |
contacts.segments.id = company_segments.id |
segments |
contacts.segments.segments.id = segments.id |
tags |
contacts.tags.tags.id = tags.id |
avatar OBJECT
|
||||||||||
companies ARRAY
|
||||||||||
created_at DATE-TIME |
||||||||||
STRING |
||||||||||
id STRING |
||||||||||
last_request_at DATE-TIME |
||||||||||
last_seen_ip STRING |
||||||||||
location_data OBJECT
|
||||||||||
name STRING |
||||||||||
phone STRING |
||||||||||
segments ARRAY
|
||||||||||
social_profiles ARRAY |
||||||||||
tags ARRAY |
||||||||||
unsubscribed_from_emails BOOLEAN |
||||||||||
updated_at DATE-TIME |
||||||||||
user_agent_data STRING |
||||||||||
user_id STRING |
conversations
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.
Key-based Incremental |
|
Primary Key |
id |
Replication Key |
updated_at |
Useful links |
Join conversations with | on |
---|---|
admins |
conversations.conversation_parts.assigned_to = admins.id conversations.assignee.id = admins.id conversations.conversation_parts.author.id = admins.id |
contacts |
conversations.conversation_parts.author.id = contacts.id conversations.user.id = contacts.id conversations.tags.tags.id = contacts.tags.tags.id conversations.customers.id = contacts.id |
users |
conversations.conversation_parts.author.id = users.id conversations.tags.tags.id = users.tags.tags.id conversations.user.id = users.id conversations.customers.id = users.id |
companies |
conversations.tags.tags.id = companies.tags.tags.id |
tags |
conversations.tags.tags.id = tags.id |
assignee OBJECT
|
|||||||||||||||
conversation_message OBJECT
|
|||||||||||||||
conversation_parts ARRAY
|
|||||||||||||||
created_at DATE-TIME |
|||||||||||||||
customers ARRAY
|
|||||||||||||||
id STRING |
|||||||||||||||
open BOOLEAN |
|||||||||||||||
read BOOLEAN |
|||||||||||||||
snoozed_until DATE-TIME |
|||||||||||||||
state STRING |
|||||||||||||||
tags ARRAY |
|||||||||||||||
total_count INTEGER |
|||||||||||||||
type STRING |
|||||||||||||||
updated_at DATE-TIME |
|||||||||||||||
user OBJECT
|
|||||||||||||||
waiting_since DATE-TIME |
segments
The segments
table contains info about the segments - or groups of users defined by a set of rules - in your Intercom account.
Full Table |
|
Primary Key |
id |
Useful links |
created_at DATE-TIME |
id STRING |
name STRING |
person_type STRING |
type STRING |
updated_at DATE-TIME |
tags
The tags
table contains info about the tags in your Intercom account.
Full Table |
|
Primary Key |
id |
Useful links |
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.
Key-based Incremental |
|
Primary Key |
id |
Replication Key |
updated_at |
Useful links |
Join users with | on |
---|---|
admins |
users.id = admins.id |
contacts |
users.id = contacts.id users.companies.id = contacts.companies.id users.segments.segments.id = contacts.segments.segments.id users.tags.tags.id = contacts.tags.tags.id |
conversations |
users.id = conversations.conversation_parts.author.id users.tags.tags.id = conversations.tags.tags.id users.id = conversations.user.id users.id = conversations.customers.id |
companies |
users.companies.id = companies.id users.segments.segments.id = companies.segments.segments.id users.tags.tags.id = companies.tags.tags.id |
segments |
users.segments.segments.id = segments.id |
tags |
users.tags.tags.id = tags.id |
anonymous BOOLEAN |
||||||||||
avatar OBJECT
|
||||||||||
companies ARRAY
|
||||||||||
created_at DATE-TIME |
||||||||||
STRING |
||||||||||
id STRING |
||||||||||
last_request_at DATE-TIME |
||||||||||
last_seen_ip STRING |
||||||||||
location_data OBJECT
|
||||||||||
name STRING |
||||||||||
phone STRING |
||||||||||
pseudonym STRING |
||||||||||
segments ARRAY
|
||||||||||
session_count INTEGER |
||||||||||
signed_up_at DATE-TIME |
||||||||||
social_profiles ARRAY |
||||||||||
tags ARRAY |
||||||||||
type STRING |
||||||||||
unsubscribed_from_emails BOOLEAN |
||||||||||
updated_at DATE-TIME |
||||||||||
user_agent_data STRING |
Related | Troubleshooting |
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.
social_profiles
ARRAY
id
STRING
name
STRING
type
STRING
url
STRING
username
STRING