Intercom data ingestion
Intercom holds the conversations your customers start when something is wrong. Sending those events to Coralogix lets you correlate what customers reported against what your systems were doing at the time.
Unlike the other Contextual Data integrations, Intercom supplies the credential: you create an app in Intercom, take its client secret into Coralogix, and take the generated URL back into Intercom.
What you need
- An Intercom account with access to the Developer Hub.
- An application and subsystem name to file the events under.
Create the Intercom app
Sign in to Intercom, open the Developer Hub, and select New app. Complete the form and create it.
Select Basic information in the left-hand menu and copy the Client secret. Coralogix uses it as the API key for this integration.
Shows where the app's credentials live, alongside its client ID and API version.
Generate the URL in Coralogix
In Coralogix, select Data Flow, then Contextual Data, then Intercom, then Add, then Add new.
Enter an Integration Name, paste the Intercom Client secret into Your API Key, and enter an App Name and Subsystem Name.
Select Generate URL and copy the result.
Shows the form that produces the endpoint Intercom posts to.
Subscribe the webhook in Intercom
Back in the Intercom Developer Hub, select Webhooks in the left-hand menu.
Paste the generated URL into Your request endpoint URL, select the Webhook topics you want (conversation.user.created, for example) then select Save.
Shows the endpoint and the topic subscriptions that decide which events are sent.
Example log
{
"source_system" : "intercom" ,
"intercom" : {
"type" : "notification_event" ,
"app_id" : "pc1eeznt" ,
"data" : {
"type" : "notification_event_data" ,
"item" : {
"type" : "conversation" ,
"id" : "4" ,
"created_at" : 1619423555 ,
"updated_at" : 1619424688 ,
"user" : {
"type" : "lead" ,
"id" : "60787e73099bb148057c1111" ,
"user_id" : "12345678-0000-aaaa-1111-abcdefg12345" ,
"name" : "Indigo Umbrella from Munich" ,
"email" : "" ,
"do_not_track" : null
},
"assignee" : {
"type" : "nobody_admin" ,
"id" : null
},
"admin_assignee_id" : null ,
"team_assignee_id" : null ,
"conversation_message" : {
"type" : "conversation_message" ,
"id" : "822898059" ,
"url" : "http://localhost:63342/aux-data-ingress/intercom-demo.html?_ijt=615bri6jf9tqgpevlc7cc102sj" ,
"subject" : "" ,
"body" : "<p>test</p>" ,
"author" : {
"type" : "user" ,
"id" : "60787e73099bb148057c1111"
},
"attachments" : []
},
"conversation_parts" : {
"type" : "conversation_part.list" ,
"conversation_parts" : [
{
"type" : "conversation_part" ,
"id" : "8863805399" ,
"part_type" : "comment" ,
"body" : "<p>Hi, can you explain how this works?</p>" ,
"created_at" : 1619424687 ,
"updated_at" : 1619424687 ,
"notified_at" : 1619424687 ,
"assigned_to" : null ,
"author" : {
"type" : "user" ,
"id" : "60787e73099bb148057c1111" ,
"name" : null ,
"email" : ""
},
"attachments" : [],
"external_id" : null
}
],
"total_count" : 1
},
"conversation_rating" : {},
"open" : true ,
"state" : "open" ,
"snoozed_until" : null ,
"read" : true ,
"metadata" : {},
"tags" : {
"type" : "tag.list" ,
"tags" : []
},
"tags_added" : {
"type" : "tag.list" ,
"tags" : []
},
"custom_attributes" : {},
"links" : {
"conversation_web" : "https://app.intercom.com/a/apps/pc1eeznt/conversations/4"
}
}
},
"links" : {},
"id" : "notif_4ef0ca4e-0974-4aef-94e8-5f60c39eb5f8" ,
"topic" : "conversation.user.replied" ,
"delivery_status" : "pending" ,
"delivery_attempts" : 1 ,
"delivered_at" : 0 ,
"first_sent_at" : 1619424689 ,
"created_at" : 1619424689 ,
"self" : null
}
}

