Skip to content

Commit

Permalink
Merge pull request #7277 from segmentio/prigiattiperrut-patch-6
Browse files Browse the repository at this point in the history
Update FAQ for Identify Calls Not Updating Intercom Profiles
  • Loading branch information
forstisabella authored Dec 2, 2024
2 parents ea6a01f + c19ed3e commit 9e6ab9d
Showing 1 changed file with 33 additions and 2 deletions.
35 changes: 33 additions & 2 deletions src/connections/destinations/catalog/actions-intercom-web/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -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.

0 comments on commit 9e6ab9d

Please sign in to comment.