Skip to main content

Intercom Component

Manage companies, contacts and tags on the Intercom platform

Component key: intercom

Description

Intercom is a tool purpose-built for sales, marketing, and support to use together.

Connections

Intercom

To connect to Intercom you will need to create a new app in their Developer Hub.

Click "New App" and select "Public app" (you can use "Internal integration" if you do not need to connect to customer Intercom workspaces).

To enable OAuth you need to navigate to "Authentication", click the "Edit" button, and check "Use OAuth". Click "Add redirect URL" and enter Prismatic's callback URL: https://oauth2.prismatic.io/callback

You can also use this opportunity to reduce the selected Permissions (scopes) if desired. Once complete, click "Save".

Next, collect the Client ID and Client secret from the "Basic information" page.

You are now ready to create the OAuth 2.0 connection to Intercom within Prismatic:

  • Enter the Client ID and Client secret values into the same named fields.

Save your integration and you should now be able to authenticate to Intercom.

Note that you will need to submit your Intercom app for review when it is ready for production.

Intercom Access Token

You should use the given access Access Token if:

  • You want to use the API to interact with your own Intercom app
  • You have scripts to push or extract data from your Intercom app
  • You want to use the API to programmatically automate certain actions in your own Intercom app
  • The data you interact with programmatically is your own customer data

How to get your Access Token

Intercom provide you with an Access Token as soon as you create an app on your workspace. You can find your Access Token in the Configure > Authentication section in your app within the Developer Hub.

You will also see it in your Test & Publish > Your Workspaces page of your app in the Developer Hub. This lists out all of your workspaces that have the app installed. More about how this works can be found in their Installing & Uninstalling Apps guide.

Never give your Access Token to a third party

Your Access Token can give access to your private Intercom data and should be treated like a password. If an app provider asks you for your Access Token, please do not provide it. Instead, let us know - apps are required to use OAuth rather than asking users for Access Tokens.

Actions

Archive Contact

Archive an existing Contact | key: archiveContact

{
"data": {
"id": "5ba682d23d7cf92bef87bfd4",
"object": "contact",
"archived": true
}
}

Attach Company to Contact

Attach Company to Contact | key: attachCompany


Attach Tag to Contact

Attach a Tag to a Contact | key: attachTag


Create Company

Create a new Company | key: createCompany

{
"data": {
"type": "company",
"id": "531ee472cce572a6ec000006",
"name": "Blue Sun",
"plan": "plan1",
"company_id": "6",
"remote_created_at": 1394531169,
"created_at": 1394533506,
"updated_at": 1396874658,
"size": 85,
"website": "http://www.example.com",
"industry": "Manufacturing",
"monthly_spend": 49,
"session_count": 26,
"user_count": 10,
"custom_attributes": {
"paid_subscriber": true,
"team_mates": 0
}
}
}

Create Contact

Create a new Contact | key: createContact

{
"data": {
"type": "contact",
"id": "5ba682d23d7cf92bef87bfd4",
"workspace_id": "ecahpwf5",
"external_id": "25",
"role": "user",
"email": "wash@serenity.io",
"phone": "+1123456789",
"name": "Hoban Washburn",
"avatar": "https://example.org/128Wash.jpg",
"owner_id": 127,
"social_profiles": {
"type": "list",
"data": [
{
"type": "social_profile",
"name": "Twitter",
"url": "http://twitter.com/th1sland"
}
]
},
"unsubscribed_from_emails": false,
"created_at": 1571672154,
"updated_at": 1571672158,
"signed_up_at": 1571069751,
"last_seen_at": 1571069751,
"last_replied_at": 1571672158,
"last_contacted_at": 1571672158,
"last_email_opened_at": 1571673478,
"last_email_clicked_at": 1571676789,
"language_override": null,
"browser": "chrome",
"browser_version": "77.0.3865.90",
"browser_language": "en",
"os": "OS X 10.14.6",
"location": {
"type": "location",
"country": "Ireland",
"region": "Dublin",
"city": "Dublin"
},
"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": {
"paid_subscriber": true,
"monthly_spend": 155.5,
"team_mates": 1
},
"tags": {
"type": "list",
"data": [
{
"type": "tag",
"id": "2",
"url": "/tags/2"
},
{
"type": "tag",
"id": "4",
"url": "/tags/4"
},
{
"type": "tag",
"id": "5",
"url": "/tags/5"
}
],
"url": "/contacts/5ba682d23d7cf92bef87bfd4/tags"
},
"notes": {
"type": "list",
"data": [
{
"type": "note",
"id": "20114858",
"url": "/notes/20114858"
}
],
"url": "/contacts/5ba682d23d7cf92bef87bfd4/notes"
},
"companies": {
"type": "list",
"data": [
{
"type": "company",
"id": "5ba686093d7cf93552a3dc99",
"url": "/companies/5ba686093d7cf93552a3dc99"
},
{
"type": "company",
"id": "5cee64a03d7cf90c51b36f19",
"url": "/companies/5cee64a03d7cf90c51b36f19"
},
{
"type": "company",
"id": "5d7668883d7cf944dbc5c791",
"url": "/companies/5d7668883d7cf944dbc5c791"
}
],
"url": "/contacts/5ba682d23d7cf92bef87bfd4/companies"
}
}
}

Create Tag

Create a new Tag | key: createTag

{
"data": {
"id": "17513",
"name": "independent",
"type": "tag"
}
}

Create Ticket

Create a new Ticket | key: createTicket

{
"data": {
"type": "ticket",
"id": "773",
"ticket_id": "35",
"ticket_attributes": {
"_default_title_": "example",
"_default_description_": "there is a problem"
},
"ticket_state": "submitted",
"ticket_state_internal_label": "Submitted",
"ticket_state_external_label": "Submitted",
"ticket_type": {
"type": "ticket_type",
"id": "147",
"name": "my-ticket-type-15",
"description": "my ticket type description is awesome.",
"icon": "🦁",
"workspace_id": "this_is_an_id648_that_should_be_at_least_",
"archived": false,
"created_at": 1717022465,
"updated_at": 1717022465,
"is_internal": false,
"ticket_type_attributes": {
"type": "list",
"data": [
{
"type": "ticket_type_attribute",
"id": "388",
"workspace_id": "this_is_an_id648_that_should_be_at_least_",
"name": "_default_title_",
"description": "ola",
"data_type": "string",
"input_options": null,
"order": 0,
"required_to_create": true,
"required_to_create_for_contacts": false,
"visible_on_create": true,
"visible_to_contacts": false,
"default": false,
"ticket_type_id": 147,
"archived": false,
"created_at": 1717022465,
"updated_at": 1717022465
},
{
"type": "ticket_type_attribute",
"id": "389",
"workspace_id": "this_is_an_id648_that_should_be_at_least_",
"name": "_default_description_",
"description": "ola",
"data_type": "string",
"input_options": null,
"order": 0,
"required_to_create": true,
"required_to_create_for_contacts": false,
"visible_on_create": true,
"visible_to_contacts": false,
"default": false,
"ticket_type_id": 147,
"archived": false,
"created_at": 1717022465,
"updated_at": 1717022465
}
]
},
"category": "Back-office"
},
"contacts": {
"type": "contact.list",
"contacts": [
{
"type": "contact",
"id": "6657af026abd0167d9419def",
"external_id": "70"
}
]
},
"admin_assignee_id": "0",
"team_assignee_id": "0",
"created_at": 1717022466,
"updated_at": 1717022466,
"ticket_parts": {
"type": "ticket_part.list",
"ticket_parts": [
{
"type": "ticket_part",
"id": "199",
"part_type": "ticket_state_updated_by_admin",
"ticket_state": "submitted",
"previous_ticket_state": "submitted",
"created_at": 1717022466,
"updated_at": 1717022466,
"author": {
"id": "991268827",
"type": "bot",
"name": "Operator",
"email": "operator+this_is_an_id648_that_should_be_at_least_@intercom.io"
},
"attachments": [],
"redacted": false
}
],
"total_count": 1
},
"open": true,
"linked_objects": {
"type": "list",
"data": [],
"total_count": 0,
"has_more": false
},
"category": "Back-office",
"is_shared": false
}
}

Delete Company

Delete an existing Company | key: deleteCompany

{
"data": {
"id": "5ba682d23d7cf92bef87bfd4",
"object": "company",
"deleted": "true"
}
}

Delete Contact

Delete an existing Contact | key: deleteContact

{
"data": {
"id": "5ba682d23d7cf92bef87bfd4",
"object": "contact",
"deleted": true
}
}

Delete Tag

Delete an existing Tag | key: deleteTag

{
"data": {
"id": "17513",
"name": "independent",
"type": "tag"
}
}

Detach Company from Contact

Detach Company from Contact | key: detachCompany


Detach Tag from Contact

Detach a Tag from a Contact | key: detachTag


List Companies

Page through all Companies | key: listCompanies

{
"data": {
"data": [
{
"type": "company",
"company_id": "remote_companies_scroll_2",
"id": "6657add06abd0167d9419cc3",
"app_id": "this_is_an_id158_that_should_be_at_least_",
"name": "IntercomQATest1",
"remote_created_at": 1717022160,
"created_at": 1717022160,
"updated_at": 1717022160,
"monthly_spend": 0,
"session_count": 0,
"user_count": 4,
"tags": {
"type": "tag.list",
"tags": []
},
"segments": {
"type": "segment.list",
"segments": []
},
"plan": {},
"custom_attributes": {}
}
],
"pages": {
"type": "companies",
"next": null,
"page": 1,
"per_page": 15,
"total_pages": 1
}
}
}

List Contacts

Page through all Contacts | key: listContacts

{
"data": {
"data": [
{
"type": "contact",
"id": "5ba682d23d7cf92bef87bfd4",
"external_id": "f3b87a2e09d514c6c2e79b9a",
"workspace_id": "ecahpwf5",
"role": "user",
"email": "joe@example.com",
"email_domain": "example.com",
"phone": "+1123456789",
"formatted_phone": "+1123456789",
"name": "John Doe",
"owner_id": 123,
"has_hard_bounced": true,
"marked_email_as_spam": true,
"unsubscribed_from_emails": true,
"created_at": 1571672154,
"updated_at": 1571672154,
"signed_up_at": 1571672154,
"last_seen_at": 1571672154,
"last_replied_at": 1571672154,
"last_contacted_at": 1571672154,
"last_email_opened_at": 1571672154,
"last_email_clicked_at": 1571672154,
"language_override": "en",
"browser": "Chrome",
"browser_version": "80.0.3987.132",
"browser_language": "en-US",
"os": "Mac OS X",
"android_app_name": "Intercom",
"android_app_version": "5.0.0",
"android_device": "Pixel 3",
"android_os_version": "10",
"android_sdk_version": "28",
"android_last_seen_at": 1571672154,
"ios_app_name": "Intercom",
"ios_app_version": "5.0.0",
"ios_device": "iPhone 11",
"ios_os_version": "13.3.1",
"ios_sdk_version": "13.3.1",
"ios_last_seen_at": 1571672154,
"custom_attributes": {},
"avatar": {
"type": "avatar",
"image_url": "https://example.org/128Wash.jpg"
},
"tags": {
"data": [
{
"type": "note",
"id": "123",
"url": "/contacts/5ba682d23d7cf92bef87bfd4/notes"
}
],
"url": "/contacts/5ba682d23d7cf92bef87bfd4/tags",
"total_count": 100,
"has_more": true
},
"notes": {
"data": [
{
"type": "note",
"id": "123",
"url": "/contacts/5ba682d23d7cf92bef87bfd4/notes"
}
],
"url": "/contacts/5ba682d23d7cf92bef87bfd4/notes",
"total_count": 100,
"has_more": true
},
"companies": {
"url": "/contacts/5ba682d23d7cf92bef87bfd4/companies",
"total_count": 100,
"has_more": true
},
"location": {
"type": "location",
"country": "Ireland",
"region": "Dublin",
"city": "Dublin"
},
"social_profiles": {
"data": [
{
"type": "social_profile",
"name": "Facebook",
"url": "http://twitter.com/th1sland"
}
]
}
}
],
"total_count": 100,
"pages": {
"type": "pages",
"page": 1,
"next": {
"per_page": 2,
"starting_after": "your-cursor-from-response"
},
"per_page": 2,
"total_pages": 13
}
}
}

List Tags

List all Tags | key: listTags

{
"data": [
{
"id": "17513",
"name": "independent",
"type": "tag"
}
]
}

List Ticket Types

Get a list of all ticket types for a workspace. | key: listTicketTypes

{
"data": {
"type": "list",
"data": [
{
"type": "ticket_type",
"id": "126",
"name": "Bug Report",
"description": "Bug Report Template",
"icon": "🎟️",
"workspace_id": "this_is_an_id608_that_should_be_at_least_",
"archived": false,
"created_at": 1717022435,
"updated_at": 1717022435,
"is_internal": false,
"ticket_type_attributes": {
"type": "list",
"data": [
{
"type": "ticket_type_attribute",
"id": "354",
"workspace_id": "this_is_an_id608_that_should_be_at_least_",
"name": "_default_title_",
"description": "",
"data_type": "string",
"input_options": {
"multiline": false
},
"order": 0,
"required_to_create": false,
"required_to_create_for_contacts": false,
"visible_on_create": true,
"visible_to_contacts": true,
"default": true,
"ticket_type_id": 126,
"archived": false,
"created_at": 1717022435,
"updated_at": 1717022435
},
{
"type": "ticket_type_attribute",
"id": "356",
"workspace_id": "this_is_an_id608_that_should_be_at_least_",
"name": "name",
"description": "description",
"data_type": "string",
"input_options": null,
"order": 0,
"required_to_create": false,
"required_to_create_for_contacts": false,
"visible_on_create": false,
"visible_to_contacts": false,
"default": false,
"ticket_type_id": 126,
"archived": false,
"created_at": 1717022435,
"updated_at": 1717022435
},
{
"type": "ticket_type_attribute",
"id": "355",
"workspace_id": "this_is_an_id608_that_should_be_at_least_",
"name": "_default_description_",
"description": "",
"data_type": "string",
"input_options": {
"multiline": true
},
"order": 1,
"required_to_create": false,
"required_to_create_for_contacts": false,
"visible_on_create": true,
"visible_to_contacts": true,
"default": true,
"ticket_type_id": 126,
"archived": false,
"created_at": 1717022435,
"updated_at": 1717022435
}
]
},
"category": "Customer"
}
]
}
}

Raw Request

Send raw HTTP request to Intercom | key: rawRequest


Search Contacts

Search through all Contacts | key: searchContacts


Unarchive Contact

Unarchive an archived Contact | key: unarchiveContact

{
"data": {
"id": "5ba682d23d7cf92bef87bfd4",
"object": "contact",
"archived": false
}
}

Update Company

Update an existing Company | key: updateCompany

{
"data": {
"type": "company",
"id": "531ee472cce572a6ec000006",
"name": "Blue Sun",
"plan": "plan1",
"company_id": "6",
"remote_created_at": 1394531169,
"created_at": 1394533506,
"updated_at": 1396874658,
"size": 85,
"website": "http://www.example.com",
"industry": "Manufacturing",
"monthly_spend": 49,
"session_count": 26,
"user_count": 10,
"custom_attributes": {
"paid_subscriber": true,
"team_mates": 0
}
}
}

Update Contact

Update an existing Contact | key: updateContact

{
"data": {
"type": "contact",
"id": "5ba682d23d7cf92bef87bfd4",
"workspace_id": "ecahpwf5",
"external_id": "25",
"role": "user",
"email": "wash@serenity.io",
"phone": "+1123456789",
"name": "Hoban Washburn",
"avatar": "https://example.org/128Wash.jpg",
"owner_id": 127,
"social_profiles": {
"type": "list",
"data": [
{
"type": "social_profile",
"name": "Twitter",
"url": "http://twitter.com/th1sland"
}
]
},
"unsubscribed_from_emails": false,
"created_at": 1571672154,
"updated_at": 1571672158,
"signed_up_at": 1571069751,
"last_seen_at": 1571069751,
"last_replied_at": 1571672158,
"last_contacted_at": 1571672158,
"last_email_opened_at": 1571673478,
"last_email_clicked_at": 1571676789,
"language_override": null,
"browser": "chrome",
"browser_version": "77.0.3865.90",
"browser_language": "en",
"os": "OS X 10.14.6",
"location": {
"type": "location",
"country": "Ireland",
"region": "Dublin",
"city": "Dublin"
},
"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": {
"paid_subscriber": true,
"monthly_spend": 155.5,
"team_mates": 1
},
"tags": {
"type": "list",
"data": [
{
"type": "tag",
"id": "2",
"url": "/tags/2"
},
{
"type": "tag",
"id": "4",
"url": "/tags/4"
},
{
"type": "tag",
"id": "5",
"url": "/tags/5"
}
],
"url": "/contacts/5ba682d23d7cf92bef87bfd4/tags"
},
"notes": {
"type": "list",
"data": [
{
"type": "note",
"id": "20114858",
"url": "/notes/20114858"
}
],
"url": "/contacts/5ba682d23d7cf92bef87bfd4/notes"
},
"companies": {
"type": "list",
"data": [
{
"type": "company",
"id": "5ba686093d7cf93552a3dc99",
"url": "/companies/5ba686093d7cf93552a3dc99"
},
{
"type": "company",
"id": "5cee64a03d7cf90c51b36f19",
"url": "/companies/5cee64a03d7cf90c51b36f19"
},
{
"type": "company",
"id": "5d7668883d7cf944dbc5c791",
"url": "/companies/5d7668883d7cf944dbc5c791"
}
],
"url": "/contacts/5ba682d23d7cf92bef87bfd4/companies"
}
}
}

Update Tag

Update an existing Tag | key: updateTag

{
"data": {
"id": "17513",
"name": "independent",
"type": "tag"
}
}