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

Output Example Payload

{
"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

Output Example Payload

{
"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

Output Example Payload

{
"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

Output Example Payload

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

Create Ticket

Create a new Ticket | key: createTicket

Output Example Payload

{
"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

Output Example Payload

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

Delete Contact

Delete an existing Contact | key: deleteContact

Output Example Payload

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

Delete Tag

Delete an existing Tag | key: deleteTag

Output Example Payload

{
"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

Output Example Payload

{
"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

Output Example Payload

{
"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

Output Example Payload

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

List Ticket Types

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

Output Example Payload

{
"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

Output Example Payload

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

Update Company

Update an existing Company | key: updateCompany

Output Example Payload

{
"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

Output Example Payload

{
"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

Output Example Payload

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