Intercom API (2.11)

The intercom API reference.

Download OpenAPI description
Languages
Servers
The production API server

https://api.intercom.io/

The european API server

https://api.eu.intercom.io/

The australian API server

https://api.au.intercom.io/

Admins

Everything about your Admins

Operations

Articles

Everything about your Articles

Operations

Companies

Everything about your Companies

Operations

Contacts

Everything about your contacts

Operations

List attached companies for contact

Request

You can fetch a list of companies that are associated to a contact.

Security
bearerAuth
Path
contact_idstringrequired

The unique identifier for the contact which is given by Intercom

Example: 63a07ddf05a32042dffac965
Query
pageinteger

The page of results to fetch. Defaults to first page

Example: page=1
per_pageinteger

How many results to display per page. Defaults to 15

Example: per_page=15
Headers
Intercom-Versionstring(intercom_version)

Intercom API version.
By default, it's equal to the version set in the app package.

Default 2.11
Enum"1.0""1.1""1.2""1.3""1.4""2.0""2.1""2.2""2.3""2.4"
Example: 2.11
curl -i -X GET \
  'https://api.intercom.io/contacts/63a07ddf05a32042dffac965/companies?page=1&per_page=15' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Intercom-Version: 2.11'

Responses

successful

Bodyapplication/json
typestringrequired

The type of object

Value"list"
Example: "list"
companiesArray of objects(Company)required

An array containing Company Objects

companies[].​typestring

Value is company

Value"company"
Example: "company"
companies[].​idstringrequired

The Intercom defined id representing the company.

Example: "531ee472cce572a6ec000006"
companies[].​namestringrequired

The name of the company.

Example: "Blue Sun"
companies[].​app_idstringrequired

The Intercom defined code of the workspace the company is associated to.

Example: "ecahpwf5"
companies[].​planobject
companies[].​company_idstringrequired

The company id you have defined for the company.

Example: "6"
companies[].​remote_created_atintegerrequired

The time the company was created by you.

Example: 1663597223
companies[].​created_atintegerrequired

The time the company was added in Intercom.

Example: 1663597223
companies[].​updated_atintegerrequired

The last time the company was updated.

Example: 1663597223
companies[].​last_request_atintegerrequired

The time the company last recorded making a request.

Example: 1663597223
companies[].​sizeintegerrequired

The number of employees in the company.

Example: 100
companies[].​websitestringrequired

The URL for the company website.

Example: "https://www.intercom.com"
companies[].​industrystringrequired

The industry that the company operates in.

Example: "Software"
companies[].​monthly_spendintegerrequired

How much revenue the company generates for your business.

Example: 100
companies[].​session_countintegerrequired

How many sessions the company has recorded.

Example: 100
companies[].​user_countintegerrequired

The number of users in the company.

Example: 100
companies[].​custom_attributesobject

The custom attributes you have set on the company.

Example: {"paid_subscriber":true,"monthly_spend":155.5,"team_mates":9}
companies[].​tagsobject

The list of tags associated with the company

companies[].​segmentsobject

The list of segments associated with the company

total_countintegerrequired

The total number of companies associated to this contact

Example: 100
pagesobject(Pagination Object)

The majority of list resources in the API are paginated to allow clients to traverse data over multiple requests.

Their responses are likely to contain a pages object that hosts pagination links which a client can use to paginate through the data without having to construct a query. The link relations for the pages field are as follows.

Response
application/json
{ "type": "list", "data": [ {} ], "pages": { "type": "pages", "next": null, "page": 1, "per_page": 50, "total_pages": 1 }, "total_count": 1 }

Detach a contact from a company

Request

You can detach a company from a single contact.

Security
bearerAuth
Path
contact_idstringrequired

The unique identifier for the contact which is given by Intercom

Example: 58a430d35458202d41b1e65b
company_idstringrequired

The unique identifier for the company which is given by Intercom

Example: 58a430d35458202d41b1e65b
Headers
Intercom-Versionstring(intercom_version)

Intercom API version.
By default, it's equal to the version set in the app package.

Default 2.11
Enum"1.0""1.1""1.2""1.3""1.4""2.0""2.1""2.2""2.3""2.4"
Example: 2.11
curl -i -X DELETE \
  https://api.intercom.io/contacts/58a430d35458202d41b1e65b/companies/58a430d35458202d41b1e65b \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Intercom-Version: 2.11'

Responses

Successful

Bodyapplication/json
typestring

Value is company

Value"company"
Example: "company"
idstringrequired

The Intercom defined id representing the company.

Example: "531ee472cce572a6ec000006"
namestringrequired

The name of the company.

Example: "Blue Sun"
app_idstringrequired

The Intercom defined code of the workspace the company is associated to.

Example: "ecahpwf5"
planobject
company_idstringrequired

The company id you have defined for the company.

Example: "6"
remote_created_atintegerrequired

The time the company was created by you.

Example: 1663597223
created_atintegerrequired

The time the company was added in Intercom.

Example: 1663597223
updated_atintegerrequired

The last time the company was updated.

Example: 1663597223
last_request_atintegerrequired

The time the company last recorded making a request.

Example: 1663597223
sizeintegerrequired

The number of employees in the company.

Example: 100
websitestringrequired

The URL for the company website.

Example: "https://www.intercom.com"
industrystringrequired

The industry that the company operates in.

Example: "Software"
monthly_spendintegerrequired

How much revenue the company generates for your business.

Example: 100
session_countintegerrequired

How many sessions the company has recorded.

Example: 100
user_countintegerrequired

The number of users in the company.

Example: 100
custom_attributesobject

The custom attributes you have set on the company.

Example: {"paid_subscriber":true,"monthly_spend":155.5,"team_mates":9}
tagsobject

The list of tags associated with the company

segmentsobject

The list of segments associated with the company

Response
application/json
{ "type": "company", "company_id": "1", "id": "667d60918a68186f43bafd80", "app_id": "this_is_an_id174_that_should_be_at_least_", "name": "company8", "remote_created_at": 1719492753, "created_at": 1719492753, "updated_at": 1719492753, "monthly_spend": 0, "session_count": 0, "user_count": 0, "tags": { "type": "tag.list", "tags": [] }, "segments": { "type": "segment.list", "segments": [] }, "plan": {}, "custom_attributes": {} }

List all notes

Request

You can fetch a list of notes that are associated to a contact.

Security
bearerAuth
Path
contact_idstringrequired

The unique identifier of a contact.

Query
pageinteger

The page of results to fetch. Defaults to first page

Example: page=1
per_pageinteger

How many results to display per page. Defaults to 15

Example: per_page=15
Headers
Intercom-Versionstring(intercom_version)

Intercom API version.
By default, it's equal to the version set in the app package.

Default 2.11
Enum"1.0""1.1""1.2""1.3""1.4""2.0""2.1""2.2""2.3""2.4"
Example: 2.11
curl -i -X GET \
  'https://api.intercom.io/contacts/{contact_id}/notes?page=1&per_page=15' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Intercom-Version: 2.11'

Responses

Successful response

Bodyapplication/json
typestringrequired

String representing the object's type. Always has the value list.

Value"list"
Example: "list"
dataArray of objects(Note)required

An array of notes.

data[].​typestringrequired

String representing the object's type. Always has the value note.

Value"note"
Example: "note"
data[].​idstringrequired

The id of the note.

Example: "17495962"
data[].​created_atinteger(timestamp)required

The time the note was created.

Example: 1674589321
data[].​contactobject or nullrequired

Represents the contact that the note was created about.

data[].​contact.​typestring

String representing the object's type. Always has the value contact.

Value"contact"
data[].​contact.​idstring

The id of the contact.

Example: "214656d0c743eafcfde7f248"
data[].​authorobject(Admin)required

Admins are teammate accounts that have access to a workspace.

data[].​author.​typestring

String representing the object's type. Always has the value admin.

Value"admin"
Example: "admin"
data[].​author.​idstringrequired

The id representing the admin.

Example: "1295"
data[].​author.​namestringrequired

The name of the admin.

Example: "Hoban Washburne"
data[].​author.​emailstringrequired

The email of the admin.

Example: "wash@serenity.io"
data[].​author.​job_titlestringrequired

The job title of the admin.

Example: "Philosopher"
data[].​author.​away_mode_enabledbooleanrequired

Identifies if this admin is currently set in away mode.

Example: false
data[].​author.​away_mode_reassignbooleanrequired

Identifies if this admin is set to automatically reassign new conversations to the apps default inbox.

Example: false
data[].​author.​has_inbox_seatbooleanrequired

Identifies if this admin has a paid inbox seat to restrict/allow features that require them.

Example: true
data[].​author.​team_idsArray of integersrequired

This object represents the avatar associated with the admin.

Example: [814865]
data[].​author.​avatarstring or null(uri)

Image for the associated team or teammate

Example: "https://picsum.photos/200/300"
data[].​author.​team_priority_levelobject(Team Priority Level)

Admin priority levels for teams

data[].​bodystringrequired

The body text of the note.

Example: "<p>Text for the note.</p>"
total_countintegerrequired

A count of the total number of notes.

Example: 1
pagesobject(Cursor based pages)

Cursor-based pagination is a technique used in the Intercom API to navigate through large amounts of data. A "cursor" or pointer is used to keep track of the current position in the result set, allowing the API to return the data in small chunks or "pages" as needed.

Response
application/json
{ "type": "list", "data": [ {}, {}, {} ], "total_count": 3, "pages": { "type": "pages", "next": null, "page": 1, "per_page": 50, "total_pages": 1 } }

Conversations

Everything about your Conversations

Operations

Data Attributes

Everything about your Data Attributes

Operations

Data Events

Everything about your Data Events

Operations

Data Export

Everything about your Data Exports

Operations

Help Center

Everything about your Help Center

Operations

Messages

Everything about your messages

Operations

News

Everything about your News

Operations

Notes

Everything about your Notes

Operations

Segments

Everything about your Segments

Operations

Subscription Types

Everything about subscription types

Operations

Switch

Everything about Switch

Operations

Tags

Everything about tags

Operations

Teams

Everything about your Teams

Operations

Ticket Type Attributes

Everything about your ticket type attributes

Operations

Ticket Types

Everything about your ticket types

Operations

Tickets

Everything about your tickets

Operations

Visitors

Everything about your Visitors

Operations

Models