-
Notifications
You must be signed in to change notification settings - Fork 353
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #7277 from segmentio/prigiattiperrut-patch-6
Update FAQ for Identify Calls Not Updating Intercom Profiles
- Loading branch information
Showing
1 changed file
with
33 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -70,5 +70,36 @@ If you are seeing 404 responses in your browser's network tab, you've likely enc | |
- You set the wrong App ID on the Intercom Actions (Web) destination settings page. | ||
- You set the wrong Regional Data Hosting value on the Intercom Actions (Web) destination settings page. Intercom gates regional endpoints by plan level, so you may not have access to EU data hosting. | ||
|
||
### Intercom does not support rETL event batching | ||
The Intercom (Web) Actions destination does not support the bulk contacts endpoint, and therefore is unable to support batching events in rETL. | ||
### Intercom does not support Reverse ETL event batching | ||
The Intercom (Web) Actions destination does not support the bulk contacts endpoint, and therefore is unable to support batching events in Reverse ETL. | ||
|
||
### Why are my Identify calls not updating or creating Intercom profiles, or not showing users as leads or visitors? | ||
Intercom requires requests to include user data/traits beyond `email` or `user_hash` to update or create profiles and change user status from leads/visitors. Without additional user data/traits, Intercom assumes no changes were made to a user's data and does not send a "ping" request. | ||
|
||
In the following example, which only includes an `email` and `user_hash`, Intercom would not send a "ping" request and update the status of this user: | ||
|
||
``` | ||
analytics.identify("123"); | ||
analytics.identify("123", { email: "[email protected]" }); | ||
analytics.identify("123",{email: "[email protected]"}, { | ||
integrations: { | ||
Intercom: { | ||
user_hash: "81b65b9abea0444437a5d92620f03acc33f04fabbc32da1e047260024f80566a" | ||
} | ||
}}) | ||
``` | ||
|
||
However, in the following example that also contains the `name` trait, Intercom sends a "ping" request and updates the status of this user: | ||
|
||
``` | ||
analytics.identify("123", { | ||
email: "[email protected]", | ||
name: "John Doe" | ||
}, { | ||
integrations: { Intercom: { user_hash: "hash" } } | ||
}); | ||
``` | ||
|
||
When sending calls to Intercom, always include a trait, like`name`. If you don't have a trait to send with Identify calls, map Segment's `timestamp` field to Intercom's `last_request_at` field. |