Intercom API (Unstable)

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

AI Content

With the AI Content APIs, you can create and manage External Pages and Content Import Sources for your Fin Content Library.

 

External Pages are pages that you want Fin to be able to answer questions about. The API for External Pages is a great way to ingest into your Fin Content Library pages that are not publicly accessible and hence can't be crawled by Intercom.

 

Content Import Sources are the sources of those pages, and they are used to determine the default audience for the pages (configured via the UI). You should create a Content Import Source for each source of External Pages that you want to ingest into your Fin Content Library.

 

You can then iterate through the content from that source via its API and POST it to the External Pages endpoint. That endpoint has an external_id parameter which allows you to specify the identifier from the source. The endpoint will then either create a new External Page or update an existing one as appropriate.",

Operations

Articles

Everything about your Articles

Operations

Companies

Everything about your Companies

Operations

Contacts

Everything about your contacts

Operations

Conversations

Everything about your Conversations

Operations

Custom Object Instances

Everything about your Custom Object instances.

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

Collection

Collections are top level containers for Articles within the Help Center.

idstring

The unique identifier for the collection which is given by Intercom.

Example: "6871119"
workspace_idstring

The id of the workspace which the collection belongs to.

Example: "hfi1bx4l"
namestring

The name of the collection. For multilingual collections, this will be the name of the default language's content.

Example: "Default language name"
descriptionstring or null

The description of the collection. For multilingual help centers, this will be the description of the collection for the default language.

Example: "Default language description"
created_atinteger(date-time)

The time when the article was created (seconds). For multilingual articles, this will be the timestamp of creation of the default language's content.

Example: 1672928359
updated_atinteger(date-time)

The time when the article was last updated (seconds). For multilingual articles, this will be the timestamp of last update of the default language's content.

Example: 1672928610
urlstring or null

The URL of the collection. For multilingual help centers, this will be the URL of the collection for the default language.

Example: "http://intercom.test/help/collection/name"
iconstring or null

The icon of the collection.

Example: "book-bookmark"
orderinteger

The order of the section in relation to others sections within a collection. Values go from 0 upwards. 0 is the default if there's no order.

Example: "1"
default_localestring

The default locale of the help center. This field is only returned for multilingual help centers.

Example: "en"
translated_contentobject or null(Group Translated Content)

The Translated Content of an Group. The keys are the locale codes and the values are the translated content of the Group.

parent_idstring or null

The id of the parent collection. If null then it is the first level collection.

Example: "6871118"
help_center_idinteger or null

The id of the help center the collection is in.

Example: "123"
{ "id": "6871119", "workspace_id": "hfi1bx4l", "name": "Default language name", "description": "Default language description", "created_at": 1672928359, "updated_at": 1672928610, "url": "http://intercom.test/help/collection/name", "icon": "book-bookmark", "order": "1", "default_locale": "en", "translated_content": { "type": "group_translated_content", "ar": { … }, "bg": { … }, "bs": { … }, "ca": { … }, "cs": { … }, "da": { … }, "de": { … }, "el": { … }, "en": { … }, "es": { … }, "et": { … }, "fi": { … }, "fr": { … }, "he": { … }, "hr": { … }, "hu": { … }, "id": { … }, "it": { … }, "ja": { … }, "ko": { … }, "lt": { … }, "lv": { … }, "mn": { … }, "nb": { … }, "nl": { … }, "pl": { … }, "pt": { … }, "ro": { … }, "ru": { … }, "sl": { … }, "sr": { … }, "sv": { … }, "tr": { … }, "vi": { … }, "pt-BR": { … }, "zh-CN": { … }, "zh-TW": { … } }, "parent_id": "6871118", "help_center_id": "123" }

Help Center

Help Centers contain collections

idstring

The unique identifier for the Help Center which is given by Intercom.

Example: "123"
workspace_idstring

The id of the workspace which the Help Center belongs to.

Example: "hfi1bx4l"
created_atinteger(date-time)

The time when the Help Center was created.

Example: 1672928359
updated_atinteger(date-time)

The time when the Help Center was last updated.

Example: 1672928610
identifierstring

The identifier of the Help Center. This is used in the URL of the Help Center.

Example: "intercom"
website_turned_onboolean

Whether the Help Center is turned on or not. This is controlled in your Help Center settings.

Example: true
display_namestring

The display name of the Help Center only seen by teammates.

Example: "Intercom Help Center"
{ "id": "123", "workspace_id": "hfi1bx4l", "created_at": 1672928359, "updated_at": 1672928610, "identifier": "intercom", "website_turned_on": true, "display_name": "Intercom Help Center" }

Help Centers

A list of Help Centers belonging to the App

typestring

The type of the object - list.

Value"list"
Example: "list"
dataArray of objects(Help Center)

An array of Help Center objects

{ "type": "list", "data": [ { … } ] }

List all collections

Request

You can fetch a list of all collections by making a GET request to https://api.intercom.io/help_center/collections.

Collections will be returned in descending order on the updated_at attribute. This means if you need to iterate through results then we'll show the most recently updated collections first.

Headers
Intercom-Versionstring(intercom_version)

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

Default Unstable
Enum"1.0""1.1""1.2""1.3""1.4""2.0""2.1""2.2""2.3""2.4"
Example: Unstable
curl -i -X GET \
  https://api.intercom.io/help_center/collections \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Intercom-Version: Unstable'

Responses

Successful

Bodyapplication/json
typestring

The type of the object - list.

Value"list"
Example: "list"
pagesobject or null(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.

total_countinteger

A count of the total number of collections.

Example: 1
dataArray of objects(Collection)

An array of collection objects

Response
application/json
{ "type": "list", "data": [ { … }, { … } ], "total_count": 2, "pages": { "type": "pages", "page": 1, "per_page": 20, "total_pages": 1 } }

Create a collection

Request

You can create a new collection by making a POST request to https://api.intercom.io/help_center/collections.

Headers
Intercom-Versionstring(intercom_version)

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

Default Unstable
Enum"1.0""1.1""1.2""1.3""1.4""2.0""2.1""2.2""2.3""2.4"
Example: Unstable
Bodyapplication/json
namestringrequired

The name of the collection. For multilingual collections, this will be the name of the default language's content.

Example: "collection 51"
descriptionstring

The description of the collection. For multilingual collections, this will be the description of the default language's content.

Example: "English description"
translated_contentobject or null(Group Translated Content)

The Translated Content of an Group. The keys are the locale codes and the values are the translated content of the Group.

parent_idstring or null

The id of the parent collection. If null then it will be created as the first level collection.

Example: "6871118"
help_center_idinteger or null

The id of the help center where the collection will be created. If null then it will be created in the default help center.

Example: "123"
curl -i -X POST \
  https://api.intercom.io/help_center/collections \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'Intercom-Version: Unstable' \
  -d '{
    "name": "Thanks for everything"
  }'

Responses

collection created

Bodyapplication/json
idstring

The unique identifier for the collection which is given by Intercom.

Example: "6871119"
workspace_idstring

The id of the workspace which the collection belongs to.

Example: "hfi1bx4l"
namestring

The name of the collection. For multilingual collections, this will be the name of the default language's content.

Example: "Default language name"
descriptionstring or null

The description of the collection. For multilingual help centers, this will be the description of the collection for the default language.

Example: "Default language description"
created_atinteger(date-time)

The time when the article was created (seconds). For multilingual articles, this will be the timestamp of creation of the default language's content.

Example: 1672928359
updated_atinteger(date-time)

The time when the article was last updated (seconds). For multilingual articles, this will be the timestamp of last update of the default language's content.

Example: 1672928610
urlstring or null

The URL of the collection. For multilingual help centers, this will be the URL of the collection for the default language.

Example: "http://intercom.test/help/collection/name"
iconstring or null

The icon of the collection.

Example: "book-bookmark"
orderinteger

The order of the section in relation to others sections within a collection. Values go from 0 upwards. 0 is the default if there's no order.

Example: "1"
default_localestring

The default locale of the help center. This field is only returned for multilingual help centers.

Example: "en"
translated_contentobject or null(Group Translated Content)

The Translated Content of an Group. The keys are the locale codes and the values are the translated content of the Group.

parent_idstring or null

The id of the parent collection. If null then it is the first level collection.

Example: "6871118"
help_center_idinteger or null

The id of the help center the collection is in.

Example: "123"
Response
application/json
{ "id": "94", "workspace_id": "this_is_an_id100_that_should_be_at_least_", "name": "Thanks for everything", "url": "http://help-center.test/myapp-100/", "order": 1, "created_at": 1727856841, "updated_at": 1727856841, "description": "", "icon": "book-bookmark", "parent_id": null, "help_center_id": 50 }

Retrieve a collection

Request

You can fetch the details of a single collection by making a GET request to https://api.intercom.io/help_center/collections/<id>.

Path
idintegerrequired

The unique identifier for the collection which is given by Intercom.

Example: 123
Headers
Intercom-Versionstring(intercom_version)

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

Default Unstable
Enum"1.0""1.1""1.2""1.3""1.4""2.0""2.1""2.2""2.3""2.4"
Example: Unstable
curl -i -X GET \
  'https://api.intercom.io/help_center/collections/{id}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Intercom-Version: Unstable'

Responses

Collection found

Bodyapplication/json
idstring

The unique identifier for the collection which is given by Intercom.

Example: "6871119"
workspace_idstring

The id of the workspace which the collection belongs to.

Example: "hfi1bx4l"
namestring

The name of the collection. For multilingual collections, this will be the name of the default language's content.

Example: "Default language name"
descriptionstring or null

The description of the collection. For multilingual help centers, this will be the description of the collection for the default language.

Example: "Default language description"
created_atinteger(date-time)

The time when the article was created (seconds). For multilingual articles, this will be the timestamp of creation of the default language's content.

Example: 1672928359
updated_atinteger(date-time)

The time when the article was last updated (seconds). For multilingual articles, this will be the timestamp of last update of the default language's content.

Example: 1672928610
urlstring or null

The URL of the collection. For multilingual help centers, this will be the URL of the collection for the default language.

Example: "http://intercom.test/help/collection/name"
iconstring or null

The icon of the collection.

Example: "book-bookmark"
orderinteger

The order of the section in relation to others sections within a collection. Values go from 0 upwards. 0 is the default if there's no order.

Example: "1"
default_localestring

The default locale of the help center. This field is only returned for multilingual help centers.

Example: "en"
translated_contentobject or null(Group Translated Content)

The Translated Content of an Group. The keys are the locale codes and the values are the translated content of the Group.

parent_idstring or null

The id of the parent collection. If null then it is the first level collection.

Example: "6871118"
help_center_idinteger or null

The id of the help center the collection is in.

Example: "123"
Response
application/json
{ "id": "99", "workspace_id": "this_is_an_id106_that_should_be_at_least_", "name": "English collection title", "url": "http://help-center.test/myapp-106/collection-22", "order": 22, "created_at": 1727856842, "updated_at": 1727856842, "description": "english collection description", "icon": "bookmark", "parent_id": null, "help_center_id": 53 }

Update a collection

Request

You can update the details of a single collection by making a PUT request to https://api.intercom.io/collections/<id>.

Path
idintegerrequired

The unique identifier for the collection which is given by Intercom.

Example: 123
Headers
Intercom-Versionstring(intercom_version)

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

Default Unstable
Enum"1.0""1.1""1.2""1.3""1.4""2.0""2.1""2.2""2.3""2.4"
Example: Unstable
Bodyapplication/json
namestring

The name of the collection. For multilingual collections, this will be the name of the default language's content.

Example: "collection 51"
descriptionstring

The description of the collection. For multilingual collections, this will be the description of the default language's content.

Example: "English description"
translated_contentobject or null(Group Translated Content)

The Translated Content of an Group. The keys are the locale codes and the values are the translated content of the Group.

parent_idstring or null

The id of the parent collection. If null then it will be updated as the first level collection.

Example: "6871118"
curl -i -X PUT \
  'https://api.intercom.io/help_center/collections/{id}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'Intercom-Version: Unstable' \
  -d '{
    "name": "Update collection name"
  }'

Responses

successful

Bodyapplication/json
idstring

The unique identifier for the collection which is given by Intercom.

Example: "6871119"
workspace_idstring

The id of the workspace which the collection belongs to.

Example: "hfi1bx4l"
namestring

The name of the collection. For multilingual collections, this will be the name of the default language's content.

Example: "Default language name"
descriptionstring or null

The description of the collection. For multilingual help centers, this will be the description of the collection for the default language.

Example: "Default language description"
created_atinteger(date-time)

The time when the article was created (seconds). For multilingual articles, this will be the timestamp of creation of the default language's content.

Example: 1672928359
updated_atinteger(date-time)

The time when the article was last updated (seconds). For multilingual articles, this will be the timestamp of last update of the default language's content.

Example: 1672928610
urlstring or null

The URL of the collection. For multilingual help centers, this will be the URL of the collection for the default language.

Example: "http://intercom.test/help/collection/name"
iconstring or null

The icon of the collection.

Example: "book-bookmark"
orderinteger

The order of the section in relation to others sections within a collection. Values go from 0 upwards. 0 is the default if there's no order.

Example: "1"
default_localestring

The default locale of the help center. This field is only returned for multilingual help centers.

Example: "en"
translated_contentobject or null(Group Translated Content)

The Translated Content of an Group. The keys are the locale codes and the values are the translated content of the Group.

parent_idstring or null

The id of the parent collection. If null then it is the first level collection.

Example: "6871118"
help_center_idinteger or null

The id of the help center the collection is in.

Example: "123"
Response
application/json
{ "id": "105", "workspace_id": "this_is_an_id112_that_should_be_at_least_", "name": "Update collection name", "url": "http://help-center.test/myapp-112/collection-25", "order": 25, "created_at": 1727856845, "updated_at": 1727856845, "description": "english collection description", "icon": "folder", "parent_id": null, "help_center_id": 56 }

Delete a collection

Request

You can delete a single collection by making a DELETE request to https://api.intercom.io/collections/<id>.

Path
idintegerrequired

The unique identifier for the collection which is given by Intercom.

Example: 123
Headers
Intercom-Versionstring(intercom_version)

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

Default Unstable
Enum"1.0""1.1""1.2""1.3""1.4""2.0""2.1""2.2""2.3""2.4"
Example: Unstable
curl -i -X DELETE \
  'https://api.intercom.io/help_center/collections/{id}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Intercom-Version: Unstable'

Responses

successful

Bodyapplication/json
idstring

The unique identifier for the collection which you provided in the URL.

Example: "6890762"
objectstring

The type of object which was deleted. - collection

Value"collection"
Example: "collection"
deletedboolean

Whether the collection was deleted successfully or not.

Example: true
Response
application/json
{ "id": "111", "object": "collection", "deleted": true }

Retrieve a Help Center

Request

You can fetch the details of a single Help Center by making a GET request to https://api.intercom.io/help_center/help_center/<id>.

Path
idintegerrequired

The unique identifier for the collection which is given by Intercom.

Example: 123
Headers
Intercom-Versionstring(intercom_version)

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

Default Unstable
Enum"1.0""1.1""1.2""1.3""1.4""2.0""2.1""2.2""2.3""2.4"
Example: Unstable
curl -i -X GET \
  'https://api.intercom.io/help_center/help_centers/{id}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Intercom-Version: Unstable'

Responses

Collection found

Bodyapplication/json
idstring

The unique identifier for the Help Center which is given by Intercom.

Example: "123"
workspace_idstring

The id of the workspace which the Help Center belongs to.

Example: "hfi1bx4l"
created_atinteger(date-time)

The time when the Help Center was created.

Example: 1672928359
updated_atinteger(date-time)

The time when the Help Center was last updated.

Example: 1672928610
identifierstring

The identifier of the Help Center. This is used in the URL of the Help Center.

Example: "intercom"
website_turned_onboolean

Whether the Help Center is turned on or not. This is controlled in your Help Center settings.

Example: true
display_namestring

The display name of the Help Center only seen by teammates.

Example: "Intercom Help Center"
Response
application/json
{ "id": "62", "workspace_id": "this_is_an_id124_that_should_be_at_least_", "created_at": 1727856849, "updated_at": 1727856849, "identifier": "help-center-1", "website_turned_on": false, "display_name": "Intercom Help Center" }

List all Help Centers

Request

You can list all Help Centers by making a GET request to https://api.intercom.io/help_center/help_centers.

Headers
Intercom-Versionstring(intercom_version)

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

Default Unstable
Enum"1.0""1.1""1.2""1.3""1.4""2.0""2.1""2.2""2.3""2.4"
Example: Unstable
curl -i -X GET \
  https://api.intercom.io/help_center/help_centers \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Intercom-Version: Unstable'

Responses

Help Centers found

Bodyapplication/json
typestring

The type of the object - list.

Value"list"
Example: "list"
dataArray of objects(Help Center)

An array of Help Center objects

Response
application/json
{ "type": "list", "data": [] }

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 States

Everything about your ticket states

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