Skip to main content
Intercom is a customer messaging platform that helps businesses communicate with their customers through live chat, email, and in-app messaging. It provides tools for customer support, lead generation, and user engagement, with features like automated messaging, customer data management, and integration with various business tools to enhance customer relationships and drive growth.

Configuring Intercom as a Source

In the Sources tab, click on the “Add source” button located on the top right of your screen. Then, select the Intercom option from the list of connectors. Click Next and you’ll be prompted to add your access.

1. Add account access

You’ll need to authorize Nekt to access your Intercom data. Click on the Intercom Authorization button and log in with your Intercom account. Grant the necessary permissions for the data you want to extract. The following configuration is available:
  • Start Date: The earliest date from which records will be synced (e.g., 2010-01-01). Used for the first full sync and when no previous state exists.
Once you’re done, click Next.

2. Select streams

Choose which data streams you want to sync - you can select all streams or pick specific ones that matter most to you. The available streams include companies, contacts, tickets, ticket types, conversations, and conversation parts.
Tip: The stream can be found more easily by typing its name.
Select the streams and click Next.

3. Configure data streams

Customize how you want your data to appear in your catalog. Select a name for each table (which will contain the fetched data) and the type of sync.
  • Table name: we suggest a name, but feel free to customize it. You have the option to add a prefix and make this process faster!
  • Sync Type: you can choose between INCREMENTAL and FULL_TABLE.
    • Incremental: every time the extraction happens, we’ll get only the new data - which is good if, for example, you want to keep every record ever fetched.
    • Full table: every time the extraction happens, we’ll get the current state of the data - which is good if, for example, you don’t want to have deleted data in your catalog.
Once you are done configuring, click Next.

4. Configure data source

Describe your data source for easy identification within your organization, not exceeding 140 characters. To define your Trigger, consider how often you want data to be extracted from this source. This decision usually depends on how frequently you need the new table data updated (every day, once a week, or only at specific times). Optionally, you can determine when to execute a full sync. This will complement the incremental data extractions, ensuring that your data is completely synchronized with your source every once in a while. Once you are ready, click Next to finalize the setup.

5. Check your new source

You can view your new source on the Sources page. If needed, manually trigger the source extraction by clicking on the arrow button. Once executed, your data will appear in your Catalog.
For you to be able to see it on your Catalog, you need at least one successful source run.

Streams and Fields

Below you’ll find all available data streams from Intercom and their corresponding fields:
Stream for managing company information within your Intercom workspace.
FieldTypeDescription
idStringUnique identifier for the company
company_idStringCompany ID from your system
nameStringName of the company
created_atIntegerWhen the company was created (Unix timestamp)
updated_atIntegerWhen the company was last updated (Unix timestamp)
monthly_spendNumberMonthly spend amount
session_countIntegerNumber of sessions
user_countIntegerNumber of users in the company
typeStringObject type identifier
app_idStringID of the application
tagsObjectTags associated with the company
segmentsObjectSegments the company belongs to
planObjectPlan information
custom_attributesArrayArray of custom attributes
Stream for managing contact information and their interactions with your business.
FieldTypeDescription
idStringUnique identifier for the contact
typeStringObject type identifier
workspace_idStringID of the workspace
external_idStringExternal identifier from your system
roleStringRole of the contact (user, lead, visitor)
emailStringEmail address
phoneStringPhone number
nameStringFull name of the contact
avatarStringAvatar URL
owner_idStringID of the admin who owns this contact
created_atIntegerWhen the contact was created (Unix timestamp)
updated_atIntegerWhen the contact was last updated (Unix timestamp)
signed_up_atIntegerWhen the contact signed up (Unix timestamp)
last_seen_atIntegerLast time the contact was seen (Unix timestamp)
last_replied_atIntegerLast time the contact replied (Unix timestamp)
last_contacted_atIntegerLast time the contact was contacted (Unix timestamp)
last_email_opened_atIntegerLast time the contact opened an email (Unix timestamp)
last_email_clicked_atIntegerLast time the contact clicked an email link (Unix timestamp)
has_hard_bouncedBooleanWhether emails have hard bounced
marked_email_as_spamBooleanWhether contact marked emails as spam
unsubscribed_from_emailsBooleanWhether contact unsubscribed from emails
locationObjectGeographic location information
browserStringBrowser name
browser_versionStringBrowser version
browser_languageStringBrowser language
osStringOperating system
language_overrideStringLanguage override setting
android_app_nameStringAndroid app name
android_app_versionStringAndroid app version
android_deviceStringAndroid device model
android_os_versionStringAndroid OS version
android_sdk_versionStringAndroid SDK version
android_last_seen_atIntegerLast seen on Android (Unix timestamp)
ios_app_nameStringiOS app name
ios_app_versionStringiOS app version
ios_deviceStringiOS device model
ios_os_versionStringiOS OS version
ios_sdk_versionStringiOS SDK version
ios_last_seen_atIntegerLast seen on iOS (Unix timestamp)
social_profilesObjectSocial media profiles
utm_campaignStringUTM campaign parameter
utm_contentStringUTM content parameter
utm_mediumStringUTM medium parameter
utm_sourceStringUTM source parameter
utm_termStringUTM term parameter
referrerStringReferrer URL
sms_consentBooleanWhether contact consented to SMS
unsubscribed_from_smsBooleanWhether contact unsubscribed from SMS
enabled_push_messagingBooleanPush messaging enablement status
tagsObjectTags associated with the contact
notesObjectNotes about the contact
companiesObjectCompanies the contact belongs to
custom_attributesArrayArray of custom attributes
Stream for managing the different types of tickets configured in your Intercom workspace.
FieldTypeDescription
idStringUnique identifier for the ticket type
typeStringObject type identifier
nameStringName of the ticket type
descriptionStringDescription of the ticket type
iconStringIcon for the ticket type
workspace_idStringID of the workspace
categoryStringCategory of the ticket type
archivedBooleanWhether the ticket type is archived
is_internalBooleanWhether the ticket type is internal only
created_atIntegerWhen the ticket type was created (Unix timestamp)
updated_atIntegerWhen the ticket type was last updated (Unix timestamp)
ticket_type_attributesObjectAttributes defined for this ticket type
ticket_statesObjectStates available for this ticket type
Stream for managing support tickets and their details.
FieldTypeDescription
idStringUnique identifier for the ticket
typeStringObject type identifier
ticket_idStringHuman-readable ticket ID
company_idStringID of the associated company
created_atIntegerWhen the ticket was created (Unix timestamp)
updated_atIntegerWhen the ticket was last updated (Unix timestamp)
openBooleanWhether the ticket is open
categoryStringCategory of the ticket
is_sharedBooleanWhether the ticket is shared
admin_assignee_idStringID of the admin assigned to the ticket
team_assignee_idStringID of the team assigned to the ticket
ticket_typeObjectType of the ticket
ticket_stateObjectCurrent state of the ticket
ticket_attributesObjectAttributes and custom fields of the ticket
contactsObjectContacts associated with the ticket
ticket_partsObjectParts (messages, notes, state changes) of the ticket
linked_objectsObjectObjects linked to this ticket
Stream for managing conversations between your team and customers.
FieldTypeDescription
idStringUnique identifier for the conversation
typeStringObject type identifier
titleStringTitle of the conversation
created_atIntegerWhen the conversation was created (Unix timestamp)
updated_atIntegerWhen the conversation was last updated (Unix timestamp)
openBooleanWhether the conversation is open
stateStringCurrent state of the conversation
readBooleanWhether the conversation has been read
priorityStringPriority of the conversation
waiting_sinceIntegerTimestamp when the conversation started waiting (Unix timestamp)
snoozed_untilIntegerWhen the conversation is snoozed until (Unix timestamp)
admin_assignee_idStringID of the admin assigned
team_assignee_idStringID of the team assigned
company_idStringID of the associated company
tagsObjectTags associated with the conversation
conversation_ratingObjectRating given for this conversation
sourceObjectSource of the conversation (email, chat, etc.)
contactsObjectContacts involved in the conversation
teammatesObjectTeammates involved in the conversation
custom_attributesArrayArray of custom attributes
first_contact_replyObjectFirst reply from the contact
sla_appliedObjectSLA information if applicable
statisticsObjectDetailed conversation statistics
linked_objectsObjectObjects linked to this conversation
ai_agent_participatedBooleanWhether an AI agent participated
ai_agentObjectAI agent details if applicable
Stream for parts that make up a conversation, including individual messages, notes, and events.
FieldTypeDescription
typeStringType classification of the record
idStringUnique identifier of the record
conversation_idStringIdentifier of the parent conversation
part_typeStringType of the conversation part
bodyStringBody content of the conversation part
created_atIntegerTimestamp when the record was created
updated_atIntegerTimestamp when the record was last updated
notified_atIntegerTimestamp when the part was notified
assigned_toObjectEntity assigned to the conversation part
authorObjectAuthor of the conversation part
attachmentsArrayAttachments included in the conversation part
external_idStringExternal identifier for the conversation part
redactedBooleanWhether the conversation part content is redacted
email_message_metadataObjectEmail metadata associated with the conversation part
metadataObjectQuick reply metadata for the conversation part
stateStringCurrent state of the conversation part
tagsArrayTags associated with the conversation part
event_detailsObjectEvent details associated with the conversation part
app_package_codeStringApplication package code for the conversation part

Data Model

The following diagram illustrates the relationships between the core data streams in Intercom. The arrows indicate the join keys that link the different entities.

Skills for agents

Download Intercom skills file

Intercom connector documentation as plain markdown, for use in AI agent contexts.