Skip to content

Intercom API (2.10)

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

SchemasOperations

Articles

Everything about your Articles

SchemasOperations

Companies

Everything about your Companies

SchemasOperations

Contacts

Everything about your contacts

SchemasOperations

Conversations

Everything about your Conversations

SchemasOperations

Add tag to a conversation

Request

You can tag a specific conversation. This will return a tag object for the tag that was added to the conversation.

Security
bearerAuth
Path
conversation_idstringrequired

conversation_id

Example: 64619700005694
Headers
Intercom-Versionstring(intercom_version)

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

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

The unique identifier for the tag which is given by Intercom

Example: "7522907"
admin_idstringrequired

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

Example: "780"
curl -i -X POST \
  https://api.intercom.io/conversations/64619700005694/tags \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'Intercom-Version: 2.10' \
  -d '{
    "id": 130,
    "admin_id": 991267921
  }'

Responses

successful

Bodyapplication/json
typestring

value is "tag"

Example: "tag"
idstring

The id of the tag

Example: "123456"
namestring

The name of the tag

Example: "Test tag"
applied_atinteger or null(date-time)

The time when the tag was applied to the object

Example: 1663597223
applied_byobject or null(Reference)
Response
application/json
{ "type": "tag", "id": "130", "name": "Manual tag", "applied_at": 1663597223, "applied_by": { "type": "admin", "id": "456" } }

Remove tag from a conversation

Request

You can remove tag from a specific conversation. This will return a tag object for the tag that was removed from the conversation.

Security
bearerAuth
Path
conversation_idstringrequired

conversation_id

Example: 64619700005694
idstringrequired

id

Example: 7522907
Headers
Intercom-Versionstring(intercom_version)

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

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

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

Example: "123"
curl -i -X DELETE \
  https://api.intercom.io/conversations/64619700005694/tags/7522907 \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'Intercom-Version: 2.10' \
  -d '{
    "admin_id": 991267925
  }'

Responses

successful

Bodyapplication/json
typestring

value is "tag"

Example: "tag"
idstring

The id of the tag

Example: "123456"
namestring

The name of the tag

Example: "Test tag"
applied_atinteger or null(date-time)

The time when the tag was applied to the object

Example: 1663597223
applied_byobject or null(Reference)
Response
application/json
{ "type": "tag", "id": "133", "name": "Manual tag", "applied_at": 1663597223, "applied_by": { "type": "admin", "id": "456" } }

List all conversations

Request

You can fetch a list of all conversations.

You can optionally request the result page size and the cursor to start after to fetch the result.

Pagination

You can use pagination to limit the number of results returned. The default is 20 results per page. See the pagination section for more details on how to use the starting_after param.

Security
bearerAuth
Query
per_pageinteger<= 150

How many results per page

Default 20
starting_afterstring

String used to get the next page of conversations.

Headers
Intercom-Versionstring(intercom_version)

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

Default 2.10
Enum"1.0""1.1""1.2""1.3""1.4""2.0""2.1""2.2""2.3""2.4"
Example: 2.10
curl -i -X GET \
  'https://api.intercom.io/conversations?per_page=20&starting_after=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Intercom-Version: 2.10'

Responses

successful

Bodyapplication/json
typestring

Always conversation.list

Value"conversation.list"
Example: "conversation.list"
conversationsArray of objects(Conversation List Item)

The list of conversation objects

total_countinteger

A count of the total number of objects.

Example: 12345
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.

Response
application/json
{ "type": "conversation.list", "pages": { "type": "pages", "page": 1, "per_page": 20, "total_pages": 1 }, "total_count": 1, "conversations": [ {} ] }

Data Attributes

Everything about your Data Attributes

SchemasOperations

Data Events

Everything about your Data Events

SchemasOperations

Data Export

Everything about your Data Exports

SchemasOperations

Help Center

Everything about your Help Center

SchemasOperations

Messages

Everything about your messages

SchemasOperations

News

Everything about your News

SchemasOperations

Notes

Everything about your Notes

SchemasOperations

Segments

Everything about your Segments

SchemasOperations

Subscription Types

Everything about subscription types

SchemasOperations

Switch

Everything about Switch

Operations

Tags

Everything about tags

SchemasOperations

Teams

Everything about your Teams

SchemasOperations

Ticket Type Attributes

Everything about your ticket type attributes

Operations

Ticket Types

Everything about your ticket types

Operations

Tickets

Everything about your tickets

SchemasOperations

Visitors

Everything about your Visitors

Operations

Models

Schemas