The intercom API reference.
https://api.intercom.io/
https://api.eu.intercom.io/
https://api.au.intercom.io/
You can fetch a list of all contacts (ie. users or leads) in your workspace.
You can use pagination to limit the number of results returned. The default is 50
results per page. See the pagination section for more details on how to use the starting_after
param.
https://api.intercom.io/contacts
https://api.eu.intercom.io/contacts
https://api.au.intercom.io/contacts
curl -i -X GET \
'https://api.intercom.io/contacts?page=1&per_page=15&starting_after=string' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Intercom-Version: 2.11'
successful
The list of contact objects
The unique identifier for the contact which is given by Intercom.
The unique identifier for the contact which is provided by the Client.
The id of the workspace which the contact belongs to.
The contacts phone number normalized to the E164 format
The id of an admin that has been assigned account ownership of the contact.
Whether the contact has had an email sent to them hard bounce.
Whether the contact has marked an email sent to them as spam.
Whether the contact is unsubscribed from emails.
(UNIX timestamp) The time when the contact was created.
(UNIX timestamp) The time when the contact was last updated.
(UNIX timestamp) The time specified for when a contact signed up.
(UNIX timestamp) The time when the contact was last seen (either where the Intercom Messenger was installed or when specified manually).
(UNIX timestamp) The time when the contact last messaged in.
(UNIX timestamp) The time when the contact was last messaged.
(UNIX timestamp) The time when the contact last opened an email.
(UNIX timestamp) The time when the contact last clicked a link in an email.
A preferred language setting for the contact, used by the Intercom Messenger even if their browser settings change.
The name of the browser which the contact is using.
The version of the browser which the contact is using.
The language set by the browser which the contact is using.
The operating system which the contact is using.
The name of the Android app which the contact is using.
The version of the Android app which the contact is using.
The Android device which the contact is using.
The version of the Android OS which the contact is using.
The version of the Android SDK which the contact is using.
(UNIX timestamp) The time when the contact was last seen on an Android device.
The name of the iOS app which the contact is using.
The version of the iOS app which the contact is using.
The version of iOS which the contact is using.
The version of the iOS SDK which the contact is using.
(UNIX timestamp) The last time the contact used the iOS app.
An object containing tags meta data about the tags that a contact has. Up to 10 will be displayed here. Use the url to get more.
An object containing notes meta data about the notes that a contact has. Up to 10 will be displayed here. Use the url to get more.
An object containing companies meta data about the companies that a contact has. Up to 10 will be displayed here. Use the url to get more.
An object containing location metadata about a Intercom contact.
The country that the contact is located in
The overal region that the contact is located in
An object containing social profiles that a contact has.
A list of social profiles objects associated with the contact.
value is "social_profile"
The name of the Social media profile
{ "type": "list", "data": [], "total_count": 0, "pages": { "type": "pages", "page": 1, "per_page": 10, "total_pages": 0 } }
Payload to create a contact
An image URL containing the avatar of a contact
The time specified for when a contact signed up
The time when the contact was last seen (either where the Intercom Messenger was installed or when specified manually)
The id of an admin that has been assigned account ownership of the contact
Whether the contact is unsubscribed from emails
https://api.intercom.io/contacts
https://api.eu.intercom.io/contacts
https://api.au.intercom.io/contacts
curl -i -X POST \
https://api.intercom.io/contacts \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-H 'Intercom-Version: 2.11' \
-d '{
"email": "joebloggs@intercom.io"
}'
successful
The unique identifier for the contact which is given by Intercom.
The unique identifier for the contact which is provided by the Client.
The contacts phone number normalized to the E164 format
The id of an admin that has been assigned account ownership of the contact.
Whether the contact has had an email sent to them hard bounce.
Whether the contact has marked an email sent to them as spam.
Whether the contact is unsubscribed from emails.
(UNIX timestamp) The time when the contact was created.
(UNIX timestamp) The time when the contact was last updated.
(UNIX timestamp) The time specified for when a contact signed up.
(UNIX timestamp) The time when the contact was last seen (either where the Intercom Messenger was installed or when specified manually).
(UNIX timestamp) The time when the contact last messaged in.
(UNIX timestamp) The time when the contact was last messaged.
(UNIX timestamp) The time when the contact last opened an email.
(UNIX timestamp) The time when the contact last clicked a link in an email.
A preferred language setting for the contact, used by the Intercom Messenger even if their browser settings change.
The version of the browser which the contact is using.
The language set by the browser which the contact is using.
The name of the Android app which the contact is using.
The version of the Android app which the contact is using.
The version of the Android OS which the contact is using.
The version of the Android SDK which the contact is using.
(UNIX timestamp) The time when the contact was last seen on an Android device.
The version of the iOS app which the contact is using.
The version of the iOS SDK which the contact is using.
(UNIX timestamp) The last time the contact used the iOS app.
An object containing tags meta data about the tags that a contact has. Up to 10 will be displayed here. Use the url to get more.
An object containing notes meta data about the notes that a contact has. Up to 10 will be displayed here. Use the url to get more.
An object containing companies meta data about the companies that a contact has. Up to 10 will be displayed here. Use the url to get more.
An object containing location metadata about a Intercom contact.
An object containing social profiles that a contact has.
A list of social profiles objects associated with the contact.
{ "type": "contact", "id": "667d60b08a68186f43bafdbf", "workspace_id": "this_is_an_id272_that_should_be_at_least_", "external_id": null, "role": "user", "email": "joebloggs@intercom.io", "phone": null, "name": null, "avatar": null, "owner_id": null, "social_profiles": { "type": "list", "data": [] }, "has_hard_bounced": false, "marked_email_as_spam": false, "unsubscribed_from_emails": false, "created_at": 1719492784, "updated_at": 1719492784, "signed_up_at": null, "last_seen_at": null, "last_replied_at": null, "last_contacted_at": null, "last_email_opened_at": null, "last_email_clicked_at": null, "language_override": null, "browser": null, "browser_version": null, "browser_language": null, "os": null, "location": { "type": "location", "country": null, "region": null, "city": null, "country_code": null, "continent_code": null }, "android_app_name": null, "android_app_version": null, "android_device": null, "android_os_version": null, "android_sdk_version": null, "android_last_seen_at": null, "ios_app_name": null, "ios_app_version": null, "ios_device": null, "ios_os_version": null, "ios_sdk_version": null, "ios_last_seen_at": null, "custom_attributes": {}, "tags": { "type": "list", "data": [], "url": "/contacts/667d60b08a68186f43bafdbf/tags", "total_count": 0, "has_more": false }, "notes": { "type": "list", "data": [], "url": "/contacts/667d60b08a68186f43bafdbf/notes", "total_count": 0, "has_more": false }, "companies": { "type": "list", "data": [], "url": "/contacts/667d60b08a68186f43bafdbf/companies", "total_count": 0, "has_more": false }, "opted_out_subscription_types": { "type": "list", "data": [], "url": "/contacts/667d60b08a68186f43bafdbf/subscriptions", "total_count": 0, "has_more": false }, "opted_in_subscription_types": { "type": "list", "data": [], "url": "/contacts/667d60b08a68186f43bafdbf/subscriptions", "total_count": 0, "has_more": false }, "utm_campaign": null, "utm_content": null, "utm_medium": null, "utm_source": null, "utm_term": null, "referrer": null }
https://api.intercom.io/contacts/{contact_id}/archive
https://api.eu.intercom.io/contacts/{contact_id}/archive
https://api.au.intercom.io/contacts/{contact_id}/archive
curl -i -X POST \
https://api.intercom.io/contacts/63a07ddf05a32042dffac965/archive \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Intercom-Version: 2.11'
{ "id": "667d60b18a68186f43bafdc0", "external_id": "70", "type": "contact", "archived": true }