Query structured spec data via REST or MCP. Get exactly what your agent needs.
https://api.intercom.io
https://api.eu.intercom.io
https://api.au.intercom.io
/admins
You can fetch a list of admins for a given workspace.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional |
GET /admins
/admins/activity_logs
You can get a log of activities by all admins in an app.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| created_at_after | query | required | string | The start date that you request data for. It must be formatted as a UNIX timestamp. |
| created_at_before | query | optional | string | The end date that you request data for. It must be formatted as a UNIX timestamp. |
GET /admins/activity_logs
/admins/{id}
You can retrieve the details of a single admin.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| id | path | required | integer | The unique identifier of a given admin |
GET /admins/{id}
/me
You can view the currently authorised admin along with the embedded app object (a "workspace" in legacy terminology). > 🚧 Single Sign On > > If you are building a custom "Log in with Intercom" flow for your site, and you call the `/me` endpoint to identify the logged-in user, you should not accept any sign-ins from users with unverified email addresses as it poses a potential impersonation security risk.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional |
GET /me
/articles
You can fetch a list of all articles by making a GET request to `https://api.intercom.io/articles`. > 📘 How are the articles sorted and ordered? > > Articles 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 articles first.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional |
GET /articles
/articles/{id}
You can fetch the details of a single article by making a GET request to `https://api.intercom.io/articles/<id>`.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| id | path | required | integer | The unique identifier for the article which is given by Intercom. |
GET /articles/{id}
/companies
You can fetch a single company by passing in `company_id` or `name`. `https://api.intercom.io/companies?name={name}` `https://api.intercom.io/companies?company_id={company_id}` You can fetch all companies and filter by `segment_id` or `tag_id` as a query parameter. `https://api.intercom.io/companies?tag_id={tag_id}` `https://api.intercom.io/companies?segment_id={segment_id}`
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| name | query | optional | string | The `name` of the company to filter by. |
| company_id | query | optional | string | The `company_id` of the company to filter by. |
| tag_id | query | optional | string | The `tag_id` of the company to filter by. |
| segment_id | query | optional | string | The `segment_id` of the company to filter by. |
| page | query | optional | integer | The page of results to fetch. Defaults to first page |
| per_page | query | optional | integer | How many results to display per page. Defaults to 15 |
GET /companies
/companies/scroll
The `list all companies` functionality does not work well for huge datasets, and can result in errors and performance problems when paging deeply. The Scroll API provides an efficient mechanism for iterating over all companies in a dataset. - Each app can only have 1 scroll open at a time. You'll get an error message if you try to have more than one open per app. - If the scroll isn't used for 1 minute, it expires and calls with that scroll param will fail - If the end of the scroll is reached, "companies" will be empty and the scroll parameter will expire > 📘 Scroll Parameter > > You can get the first page of companies by simply sending a GET request to the scroll endpoint. For subsequent requests you will need to use the scroll parameter from the response. > ❗️ Scroll network timeouts > > Since scroll is often used on large datasets network errors such as timeouts can be encountered. When this occurs you will need to restart your scroll query as it is not possible to continue from a specific point when using scroll. > > When this occurs you will see a HTTP 500 error with the following message: > "Request failed due to an internal network error. Please restart the scroll operation."
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| scroll_param | query | optional | string |
GET /companies/scroll
/companies/{id}
You can fetch a single company.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| id | path | required | string | The unique identifier for the company which is given by Intercom |
GET /companies/{id}
/companies/{id}/segments
You can fetch a list of all segments that belong to a company.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| id | path | required | string | The unique identifier for the company which is given by Intercom |
GET /companies/{id}/segments
/companies/{id}/contacts
You can fetch a list of all contacts that belong to a company.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| id | path | required | string | The unique identifier for the company which is given by Intercom |
GET /companies/{id}/contacts
/contacts
You can fetch a list of all contacts.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional |
GET /contacts
/contacts/{id}
You can fetch the details of a single contact.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| id | path | required | string | id |
GET /contacts/{id}
/contacts/{id}/companies
You can fetch a list of companies that are associated to a contact.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The unique identifier for the contact which is given by Intercom |
| Intercom-Version | header | optional |
GET /contacts/{id}/companies
/contacts/{contact_id}/segments
You can fetch a list of segments that are associated to a contact.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| contact_id | path | required | string | The unique identifier for the contact which is given by Intercom |
| Intercom-Version | header | optional |
GET /contacts/{contact_id}/segments
/contacts/{contact_id}/subscriptions
You can fetch a list of subscription types that are attached to a contact. These can be subscriptions that a user has 'opted-in' to or has 'opted-out' from, depending on the subscription type. This will return a list of Subscription Type objects that the contact is associated with. The data property will show a combined list of: 1.Opt-out subscription types that the user has opted-out from. 2.Opt-in subscription types that the user has opted-in to receiving.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| contact_id | path | required | string | The unique identifier for the contact which is given by Intercom |
| Intercom-Version | header | optional |
GET /contacts/{contact_id}/subscriptions
/contacts/{contact_id}/tags
You can fetch a list of all tags that are attached to a specific contact.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| contact_id | path | required | string | The unique identifier for the contact which is given by Intercom |
GET /contacts/{contact_id}/tags
/conversations
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
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| per_page | query | optional | integer | How many results per page |
| starting_after | query | optional | string | String used to get the next page of conversations. |
GET /conversations
/conversations/{id}
You can fetch the details of a single conversation. This will return a single Conversation model with all its conversation parts. {% admonition type="warning" name="Hard limit of 500 parts" %} The maximum number of conversation parts that can be returned via the API is 500. If you have more than that we will return the 500 most recent conversation parts. {% /admonition %} ### Bot Name in Conversation Parts For conversation parts generated by a bot, bot name will depend on the following: - Customers that never turned on AI answers will have `operator` as the bot name - Customers that have turned on AI answers at some point will have `fin` as the bot name
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| id | path | required | integer | The id of the conversation to target |
| display_as | query | optional | string | Set to plaintext to retrieve conversation messages in plain text. |
GET /conversations/{id}
/data_attributes
You can fetch a list of all data attributes belonging to a workspace for contacts, companies or conversations.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| model | query | optional | string | Specify the data attribute model to return. |
| include_archived | query | optional | boolean | Include archived attributes in the list. By default we return only non archived data attributes. |
GET /data_attributes
/events
> 🚧 > > Please note that you can only 'list' events that are less than 90 days old. Event counts and summaries will still include your events older than 90 days but you cannot 'list' these events individually if they are older than 90 days The events belonging to a customer can be listed by sending a GET request to `https://api.intercom.io/events` with a user or lead identifier along with a `type` parameter. The identifier parameter can be one of `user_id`, `email` or `intercom_user_id`. The `type` parameter value must be `user`. - `https://api.intercom.io/events?type=user&user_id={user_id}` - `https://api.intercom.io/events?type=user&email={email}` - `https://api.intercom.io/events?type=user&intercom_user_id={id}` (this call can be used to list leads) The `email` parameter value should be [url encoded](http://en.wikipedia.org/wiki/Percent-encoding) when sending. You can optionally define the result page size as well with the `per_page` parameter.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| filter | query | required | object | |
| type | query | required | string | The value must be user |
| summary | query | optional | boolean | summary flag |
GET /events
/download/content/data/{job_identifier}
When a job has a status of complete, and thus a filled download_url, you can download your data by hitting that provided URL, formatted like so: https://api.intercom.io/download/content/data/xyz1234. Your exported message data will be streamed continuously back down to you in a gzipped CSV format. > 📘 Octet header required > > You will have to specify the header Accept: `application/octet-stream` when hitting this endpoint.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| job_identifier | path | required | string | job_identifier |
GET /download/content/data/{job_identifier}
/export/content/data/{job_identifier}
You can view the status of your job by sending a `GET` request to the URL `https://api.intercom.io/export/content/data/{job_identifier}` - the `{job_identifier}` is the value returned in the response when you first created the export job. More on it can be seen in the Export Job Model. > 🚧 Jobs expire after two days > All jobs that have completed processing (and are thus available to download from the provided URL) will have an expiry limit of two days from when the export ob completed. After this, the data will no longer be available.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| job_identifier | path | required | string | job_identifier |
GET /export/content/data/{job_identifier}
/help_center/collections
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.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional |
GET /help_center/collections
/help_center/collections/{id}
You can fetch the details of a single collection by making a GET request to `https://api.intercom.io/help_center/collections/<id>`.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| id | path | required | integer | The unique identifier for the collection which is given by Intercom. |
GET /help_center/collections/{id}
/help_center/help_centers
You can list all Help Centers by making a GET request to `https://api.intercom.io/help_center/help_centers`.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional |
GET /help_center/help_centers
/help_center/help_centers/{id}
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>`.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| id | path | required | integer | The unique identifier for the collection which is given by Intercom. |
GET /help_center/help_centers/{id}
/help_center/sections
You can fetch a list of all sections by making a GET request to `https://api.intercom.io/help_center/sections`. > 📘 How are the sections sorted and ordered? > > Sections 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 sections first.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional |
GET /help_center/sections
/help_center/sections/{id}
You can fetch the details of a single section by making a GET request to `https://api.intercom.io/help_center/sections/<id>`.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| id | path | required | integer | The unique identifier for the section which is given by Intercom. |
GET /help_center/sections/{id}
/news/news_items
You can fetch a list of all news items
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional |
GET /news/news_items
/news/news_items/{id}
You can fetch the details of a single news item.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| id | path | required | integer | The unique identifier for the news item which is given by Intercom. |
GET /news/news_items/{id}
/news/newsfeeds
You can fetch a list of all newsfeeds
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional |
GET /news/newsfeeds
/news/newsfeeds/{id}
You can fetch the details of a single newsfeed
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| id | path | required | string | The unique identifier for the news feed item which is given by Intercom. |
GET /news/newsfeeds/{id}
/news/newsfeeds/{id}/items
You can fetch a list of all news items that are live on a given newsfeed
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| id | path | required | string | The unique identifier for the news feed item which is given by Intercom. |
GET /news/newsfeeds/{id}/items
/notes/{id}
You can fetch the details of a single note.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| id | path | required | integer | The unique identifier of a given note |
GET /notes/{id}
/contacts/{id}/notes
You can fetch a list of notes that are associated to a contact.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The unique identifier of a contact. |
| Intercom-Version | header | optional |
GET /contacts/{id}/notes
/segments
You can fetch a list of all segments.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| include_count | query | optional | boolean | It includes the count of contacts that belong to each segment. |
GET /segments
/segments/{id}
You can fetch the details of a single segment.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| id | path | required | string | The unique identified of a given segment. |
GET /segments/{id}
/subscription_types
You can list all subscription types. A list of subscription type objects will be returned.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional |
GET /subscription_types
/tags
You can fetch a list of all tags for a given workspace.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional |
GET /tags
/tags/{id}
You can fetch the details of tags that are on the workspace by their id. This will return a tag object.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| id | path | required | string | The unique identifier of a given tag |
GET /tags/{id}
/teams
This will return a list of team objects for the App.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional |
GET /teams
/teams/{id}
You can fetch the details of a single team, containing an array of admins that belong to this team.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| id | path | required | string | The unique identifier of a given team. |
GET /teams/{id}
/ticket_types
You can get a list of all ticket types for a workspace.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional |
GET /ticket_types
/ticket_types/{id}
You can fetch the details of a single ticket type.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| id | path | required | string | The unique identifier for the ticket type which is given by Intercom. |
GET /ticket_types/{id}
/tickets/{id}
You can fetch the details of a single ticket.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| id | path | required | string | The unique identifier for the ticket which is given by Intercom. |
GET /tickets/{id}
/visitors
You can fetch the details of a single visitor.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| user_id | query | required | string | The user_id of the Visitor you want to retrieve. |
GET /visitors
/visitors/{id}
You can fetch the details of a single visitor.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| Intercom-Version | header | optional | ||
| id | path | required | string | Id provided by Intercom. |
GET /visitors/{id}
AdminsSetAdminAwayRequest
{
"type": "object",
"required": [
"away_mode_enabled",
"away_mode_reassign"
],
"properties": {
"away_mode_enabled": {
"type": "boolean",
"default": true,
"example": true,
"description": "Set to \"true\" to change the status of the admin to away."
},
"away_mode_reassign": {
"type": "boolean",
"default": false,
"example": false,
"description": "Set to \"true\" to assign any new conversation replies to your default inbox."
}
}
}
CompaniesAttachContactToRequest
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "58a430d35458202d41b1e65b",
"description": "The unique identifier for the company which is given by Intercom"
}
}
}
ContactsCreateNewContactRequest
{
"oneOf": [
{
"$ref": "#/components/schemas/create_contact_request"
}
]
}
ContactsUpdateContactRequest
{
"oneOf": [
{
"$ref": "#/components/schemas/update_contact_request"
}
]
}
ConversationsManageConversationRequest
{
"oneOf": [
{
"$ref": "#/components/schemas/close_conversation_request"
},
{
"$ref": "#/components/schemas/snooze_conversation_request"
},
{
"$ref": "#/components/schemas/open_conversation_request"
},
{
"$ref": "#/components/schemas/assign_conversation_request"
}
]
}
NotesAddNoteToContactRequest
{
"type": "object",
"required": [
"body"
],
"properties": {
"body": {
"type": "string",
"example": "New note",
"description": "The text of the note."
},
"admin_id": {
"type": "string",
"example": "123",
"description": "The unique identifier of a given admin."
},
"contact_id": {
"type": "string",
"example": "123",
"description": "The unique identifier of a given contact."
}
}
}
SubscriptionTypesAddSubscriptionToContactRequest
{
"type": "object",
"required": [
"id",
"consent_type"
],
"properties": {
"id": {
"type": "string",
"example": "37846",
"description": "The unique identifier for the subscription which is given by Intercom"
},
"consent_type": {
"type": "string",
"example": "opt_in",
"description": "The consent_type of a subscription, opt_out or opt_in."
}
}
}
SwitchDeflectPhoneCalls422Response
{
"type": "object",
"example": {
"error_key": "some_error"
},
"properties": {
"error_key": {
"type": "string",
"example": "some_error"
}
}
}
SwitchDeflectPhoneCallsResponse
{
"type": "object",
"example": {
"message": "SMS was not sent due to an unknown error",
"error_key": "sms_failed"
},
"properties": {
"message": {
"type": "string",
"example": "SMS was not sent due to an unknown error"
},
"error_key": {
"type": "string",
"example": "sms_failed"
}
}
}
TagsAddTagToContactRequest
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "7522907",
"description": "The unique identifier for the tag which is given by Intercom"
}
}
}
TagsAddTagToConversationRequest
{
"type": "object",
"required": [
"id",
"admin_id"
],
"properties": {
"id": {
"type": "string",
"example": "7522907",
"description": "The unique identifier for the tag which is given by Intercom"
},
"admin_id": {
"type": "string",
"example": "780",
"description": "The unique identifier for the admin which is given by Intercom."
}
}
}
TagsCreateOrUpdateTagRequest
{
"oneOf": [
{
"$ref": "#/components/schemas/create_or_update_tag_request"
},
{
"$ref": "#/components/schemas/tag_company_request"
},
{
"$ref": "#/components/schemas/untag_company_request"
},
{
"$ref": "#/components/schemas/tag_multiple_users_request"
}
]
}
TagsRemoveFromConversationRequest
{
"type": "object",
"required": [
"admin_id"
],
"properties": {
"admin_id": {
"type": "string",
"example": "123",
"description": "The unique identifier for the admin which is given by Intercom."
}
}
}
TicketsUpdateTicketByIdResponse
{
"type": "object",
"example": {
"type": "error.list",
"errors": [
{
"code": "assignee_not_found",
"message": "Assignee not found"
}
],
"request_id": "752fe552-f009-4e9e-b08a-0cbf6ff78c9b"
},
"properties": {
"type": {
"type": "string",
"example": "error.list"
},
"errors": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string",
"example": "assignee_not_found"
},
"message": {
"type": "string",
"example": "Assignee not found"
}
}
}
},
"request_id": {
"type": "string",
"example": "752fe552-f009-4e9e-b08a-0cbf6ff78c9b"
}
}
}
activity_log
{
"type": "object",
"title": "Activity Log",
"nullable": true,
"properties": {
"id": {
"type": "string",
"example": "6",
"description": "The id representing the activity."
},
"metadata": {
"type": "object"
},
"created_at": {
"type": "integer",
"format": "date-time",
"example": 1671028894,
"description": "The time the activity was created."
},
"performed_by": {
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "1295",
"description": "The id representing the admin."
},
"ip": {
"type": "string",
"example": "198.51.100.255",
"description": "The IP address of the admin."
},
"type": {
"type": "string",
"example": "admin",
"description": "String representing the object's type. Always has the value `admin`."
},
"email": {
"type": "string",
"example": "john@example.com",
"description": "The email of the admin."
}
},
"description": "An object representing the admin who performed the activity."
},
"activity_type": {
"enum": [
"admin_assignment_limit_change",
"admin_away_mode_change",
"admin_deletion",
"admin_deprovisioned",
"admin_impersonation_end",
"admin_impersonation_start",
"admin_invite_change",
"admin_invite_creation",
"admin_invite_deletion",
"admin_login_failure",
"admin_login_success",
"admin_logout",
"admin_password_reset_request",
"admin_password_reset_success",
"admin_permission_change",
"admin_provisioned",
"admin_two_factor_auth_change",
"admin_unauthorized_sign_in_method",
"app_admin_join",
"app_authentication_method_change",
"app_data_deletion",
"app_data_export",
"app_google_sso_domain_change",
"app_identity_verification_change",
"app_name_change",
"app_outbound_address_change",
"app_package_installation",
"app_package_token_regeneration",
"app_package_uninstallation",
"app_team_creation",
"app_team_deletion",
"app_team_membership_modification",
"app_timezone_change",
"app_webhook_creation",
"app_webhook_deletion",
"articles_in_messenger_enabled_change",
"bulk_delete",
"bulk_export",
"campaign_deletion",
"campaign_state_change",
"conversation_part_deletion",
"conversation_topic_change",
"conversation_topic_creation",
"conversation_topic_deletion",
"help_center_settings_change",
"inbound_conversations_change",
"inbox_access_change",
"message_deletion",
"message_state_change",
"messenger_look_and_feel_change",
"messenger_search_required_change",
"messenger_spaces_change",
"office_hours_change",
"role_change",
"role_creation",
"role_deletion",
"ruleset_activation_title_preview",
"ruleset_creation",
"ruleset_deletion",
"search_browse_enabled_change",
"search_browse_required_change",
"seat_change",
"seat_revoke",
"security_settings_change",
"temporary_expectation_change",
"upfront_email_collection_change",
"welcome_message_change"
],
"type": "string",
"example": "app_name_change"
},
"activity_description": {
"type": "string",
"example": "Admin updated the app's name to \"My App\".",
"description": "A sentence or two describing the activity."
}
},
"description": "Activities performed by admins."
}
activity_log_list
{
"type": "object",
"title": "Paginated Response",
"properties": {
"type": {
"type": "string",
"example": "activity_log.list",
"description": "String representing the object's type. Always has the value `activity_log.list`."
},
"pages": {
"$ref": "#/components/schemas/cursor_pages"
},
"activity_logs": {
"type": "array",
"items": {
"$ref": "#/components/schemas/activity_log"
},
"description": "An array of activity logs"
}
},
"description": "A paginated list of activity logs."
}
addressable_list
{
"type": "object",
"title": "Addressable List",
"nullable": false,
"properties": {
"id": {
"type": "string",
"example": "123",
"description": "The id of the addressable object"
},
"url": {
"type": "string",
"format": "uri",
"example": "/contacts/5ba682d23d7cf92bef87bfd4/notes",
"description": "Url to get more company resources for this contact"
},
"type": {
"type": "string",
"format": "uri",
"example": "note",
"description": "The addressable object type"
}
},
"description": "A list used to access other resources from a parent model."
}
admin
{
"type": "object",
"title": "Admin",
"x-tags": [
"Admins"
],
"nullable": true,
"properties": {
"id": {
"type": "string",
"example": "1295",
"description": "The id representing the admin."
},
"name": {
"type": "string",
"example": "Hoban Washburne",
"description": "The name of the admin."
},
"type": {
"type": "string",
"example": "admin",
"description": "String representing the object's type. Always has the value `admin`."
},
"email": {
"type": "string",
"example": "wash@serenity.io",
"description": "The email of the admin."
},
"avatar": {
"type": "string",
"format": "uri",
"example": "https://picsum.photos/200/300",
"nullable": true,
"description": "Image for the associated team or teammate"
},
"team_ids": {
"type": "array",
"items": {
"type": "integer"
},
"example": [
814865
],
"description": "This object represents the avatar associated with the admin."
},
"job_title": {
"type": "string",
"example": "Philosopher",
"description": "The job title of the admin."
},
"has_inbox_seat": {
"type": "boolean",
"example": true,
"description": "Identifies if this admin has a paid inbox seat to restrict/allow features that require them."
},
"away_mode_enabled": {
"type": "boolean",
"example": false,
"description": "Identifies if this admin is currently set in away mode."
},
"away_mode_reassign": {
"type": "boolean",
"example": false,
"description": "Identifies if this admin is set to automatically reassign new conversations to the apps default inbox."
},
"team_priority_level": {
"$ref": "#/components/schemas/team_priority_level"
}
},
"description": "Admins are teammate accounts that have access to a workspace."
}
admin_list
{
"type": "object",
"title": "Admins",
"properties": {
"type": {
"type": "string",
"example": "admin.list",
"description": "String representing the object's type. Always has the value `admin.list`."
},
"admins": {
"type": "array",
"items": {
"$ref": "#/components/schemas/admin"
},
"description": "A list of admins associated with a given workspace."
}
},
"description": "A list of admins associated with a given workspace."
}
admin_priority_level
{
"type": "object",
"title": "Admin Priority Level",
"nullable": true,
"properties": {
"primary_admin_ids": {
"type": "array",
"items": {
"type": "integer"
},
"example": [
493881
],
"nullable": true,
"description": "The primary admin ids for the team"
},
"secondary_admin_ids": {
"type": "array",
"items": {
"type": "integer"
},
"example": [
814865
],
"nullable": true,
"description": "The secondary admin ids for the team"
}
},
"description": "Admin priority levels for the team"
}
admin_reply_conversation_request
{
"type": "object",
"title": "Admin Reply",
"required": [
"message_type",
"type",
"admin_id"
],
"properties": {
"body": {
"type": "string",
"example": "Hello there!",
"description": "The text body of the reply. Notes accept some HTML formatting. Must be present for comment and note message types."
},
"type": {
"enum": [
"admin"
],
"type": "string",
"example": "admin"
},
"admin_id": {
"type": "string",
"example": "3156780",
"description": "The id of the admin who is authoring the comment."
},
"created_at": {
"type": "integer",
"example": 1590000000,
"description": "The time the reply was created. If not provided, the current time will be used."
},
"message_type": {
"enum": [
"comment",
"note"
],
"type": "string"
},
"attachment_urls": {
"type": "array",
"items": {
"type": "string",
"format": "uri"
},
"maxItems": 10,
"description": "A list of image URLs that will be added as attachments. You can include up to 10 URLs."
},
"attachment_files": {
"type": "array",
"items": {
"$ref": "#/components/schemas/conversation_attachment_files"
},
"maxItems": 10,
"description": "A list of files that will be added as attachments. You can include up to 10 files"
}
},
"description": "Payload of the request to reply on behalf of an admin"
}
admin_with_app
{
"type": "object",
"title": "Admin",
"nullable": true,
"properties": {
"id": {
"type": "string",
"example": "1295",
"description": "The id representing the admin."
},
"app": {
"$ref": "#/components/schemas/app",
"nullable": true,
"description": "App that the admin belongs to."
},
"name": {
"type": "string",
"example": "Hoban Washburne",
"description": "The name of the admin."
},
"type": {
"type": "string",
"example": "admin",
"description": "String representing the object's type. Always has the value `admin`."
},
"email": {
"type": "string",
"example": "wash@serenity.io",
"description": "The email of the admin."
},
"avatar": {
"type": "object",
"properties": {
"type": {
"type": "string",
"default": "avatar",
"example": "avatar",
"description": "This is a string that identifies the type of the object. It will always have the value `avatar`."
},
"image_url": {
"type": "string",
"format": "uri",
"example": "https://example.com/avatar.png",
"nullable": true,
"description": "This object represents the avatar associated with the admin."
}
},
"description": "This object represents the avatar associated with the admin."
},
"team_ids": {
"type": "array",
"items": {
"type": "integer"
},
"example": [
814865
],
"description": "This is a list of ids of the teams that this admin is part of."
},
"job_title": {
"type": "string",
"example": "Philosopher",
"description": "The job title of the admin."
},
"email_verified": {
"type": "boolean",
"example": true,
"nullable": true,
"description": "Identifies if this admin's email is verified."
},
"has_inbox_seat": {
"type": "boolean",
"example": true,
"description": "Identifies if this admin has a paid inbox seat to restrict/allow features that require them."
},
"away_mode_enabled": {
"type": "boolean",
"example": false,
"description": "Identifies if this admin is currently set in away mode."
},
"away_mode_reassign": {
"type": "boolean",
"example": false,
"description": "Identifies if this admin is set to automatically reassign new conversations to the apps default inbox."
}
},
"description": "Admins are the teammate accounts that have access to a workspace"
}
app
{
"type": "object",
"title": "App",
"nullable": true,
"properties": {
"name": {
"type": "string",
"example": "ACME",
"description": "The name of the app."
},
"type": {
"type": "string",
"default": "app",
"example": "app",
"description": ""
},
"region": {
"type": "string",
"example": "US",
"description": "The Intercom region the app is located in."
},
"id_code": {
"type": "string",
"example": "xyz789",
"description": "The id of the app."
},
"timezone": {
"type": "string",
"example": "America/Los_Angeles",
"description": "The timezone of the region where the app is located."
},
"created_at": {
"type": "integer",
"example": 1671465577,
"description": "When the app was created."
},
"identity_verification": {
"type": "boolean",
"example": false,
"description": "Whether or not the app uses identity verification."
}
},
"description": "App is a workspace on Intercom"
}
article_content
{
"type": "object",
"title": "Article Content",
"nullable": true,
"properties": {
"url": {
"type": "string",
"example": "http://intercom.test/help/en/articles/3-default-language",
"description": "The URL of the article."
},
"body": {
"type": "string",
"example": "This is the body of the article.",
"description": "The body of the article."
},
"type": {
"enum": [
null,
"article_content"
],
"type": "string",
"example": "article_content",
"nullable": true,
"description": "The type of object - `article_content` ."
},
"state": {
"enum": [
"published",
"draft"
],
"type": "string",
"example": "draft",
"description": "Whether the article is `published` or is a `draft` ."
},
"title": {
"type": "string",
"example": "How to create a new article",
"description": "The title of the article."
},
"author_id": {
"type": "integer",
"example": 5017691,
"description": "The ID of the author of the article."
},
"created_at": {
"type": "integer",
"format": "date-time",
"example": 1663597223,
"description": "The time when the article was created (seconds)."
},
"updated_at": {
"type": "integer",
"format": "date-time",
"example": 1663597260,
"description": "The time when the article was last updated (seconds)."
},
"description": {
"type": "string",
"example": "This article will show you how to create a new article.",
"description": "The description of the article."
}
},
"description": "The Content of an Article."
}
article_list
{
"type": "object",
"title": "Articles",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/article_list_item"
},
"description": "An array of Article objects"
},
"type": {
"enum": [
"list"
],
"type": "string",
"example": "list",
"description": "The type of the object - `list`."
},
"pages": {
"$ref": "#/components/schemas/cursor_pages"
},
"total_count": {
"type": "integer",
"example": 1,
"description": "A count of the total number of articles."
}
},
"description": "This will return a list of articles for the App."
}
article_list_item
{
"type": "object",
"title": "Articles",
"x-tags": [
"Articles"
],
"properties": {
"id": {
"type": "string",
"example": "6871119",
"description": "The unique identifier for the article which is given by Intercom."
},
"url": {
"type": "string",
"example": "http://intercom.test/help/en/articles/3-default-language",
"nullable": true,
"description": "The URL of the article. For multilingual articles, this will be the URL of the default language's content."
},
"body": {
"type": "string",
"example": "Default language body in html",
"nullable": true,
"description": "The body of the article in HTML. For multilingual articles, this will be the body of the default language's content."
},
"type": {
"enum": [
"article"
],
"type": "string",
"default": "article",
"example": "article",
"description": "The type of object - `article`."
},
"state": {
"enum": [
"published",
"draft"
],
"type": "string",
"default": "draft",
"example": "published",
"description": "Whether the article is `published` or is a `draft`. For multilingual articles, this will be the state of the default language's content."
},
"title": {
"type": "string",
"example": "Default language title",
"description": "The title of the article. For multilingual articles, this will be the title of the default language's content."
},
"author_id": {
"type": "integer",
"example": 5017691,
"description": "The id of the author of the article. For multilingual articles, this will be the id of the author of the default language's content. Must be a teammate on the help center's workspace."
},
"parent_id": {
"type": "integer",
"example": 125685,
"nullable": true,
"description": "The id of the article's parent collection or section. An article without this field stands alone."
},
"created_at": {
"type": "integer",
"format": "date-time",
"example": 1672928359,
"description": "The time when the article was created. For multilingual articles, this will be the timestamp of creation of the default language's content in seconds."
},
"parent_ids": {
"type": "array",
"items": {
"type": "integer"
},
"example": [
18,
19
],
"description": "The ids of the article's parent collections or sections. An article without this field stands alone."
},
"updated_at": {
"type": "integer",
"format": "date-time",
"example": 1672928610,
"description": "The time when the article was last updated. For multilingual articles, this will be the timestamp of last update of the default language's content in seconds."
},
"description": {
"type": "string",
"example": "Default language description",
"nullable": true,
"description": "The description of the article. For multilingual articles, this will be the description of the default language's content."
},
"parent_type": {
"type": "string",
"example": "collection",
"nullable": true,
"description": "The type of parent, which can either be a `collection` or `section`."
},
"workspace_id": {
"type": "string",
"example": "hfi1bx4l",
"description": "The id of the workspace which the article belongs to."
},
"default_locale": {
"type": "string",
"example": "en",
"description": "The default locale of the help center. This field is only returned for multilingual help centers."
},
"translated_content": {
"$ref": "#/components/schemas/article_translated_content",
"nullable": true
}
},
"description": "The data returned about your articles when you list them."
}
article_statistics
{
"type": "object",
"title": "Article Statistics",
"nullable": true,
"properties": {
"type": {
"enum": [
"article_statistics"
],
"type": "string",
"default": "article_statistics",
"example": "article_statistics",
"description": "The type of object - `article_statistics`."
},
"views": {
"type": "integer",
"example": 10,
"description": "The number of total views the article has received."
},
"reactions": {
"type": "integer",
"example": 10,
"description": "The number of total reactions the article has received."
},
"conversions": {
"type": "integer",
"example": 0,
"description": "The number of conversations started from the article."
},
"sad_reaction_percentage": {
"type": "number",
"format": "float",
"example": 20,
"description": "The percentage of sad reactions the article has received against other types of reaction."
},
"happy_reaction_percentage": {
"type": "number",
"format": "float",
"example": 40,
"description": "The percentage of happy reactions the article has received against other types of reaction."
},
"neutral_reaction_percentage": {
"type": "number",
"format": "float",
"example": 40,
"description": "The percentage of neutral reactions the article has received against other types of reaction."
}
},
"description": "The statistics of an article."
}
article_translated_content
{
"type": "object",
"title": "Article Translated Content",
"nullable": true,
"properties": {
"ar": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Arabic"
},
"bg": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Bulgarian"
},
"bs": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Bosnian"
},
"ca": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Catalan"
},
"cs": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Czech"
},
"da": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Danish"
},
"de": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in German"
},
"el": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Greek"
},
"en": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in English"
},
"es": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Spanish"
},
"et": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Estonian"
},
"fi": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Finnish"
},
"fr": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in French"
},
"he": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Hebrew"
},
"hr": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Croatian"
},
"hu": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Hungarian"
},
"id": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Indonesian"
},
"it": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Italian"
},
"ja": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Japanese"
},
"ko": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Korean"
},
"lt": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Lithuanian"
},
"lv": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Latvian"
},
"mn": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Mongolian"
},
"nb": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Norwegian"
},
"nl": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Dutch"
},
"pl": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Polish"
},
"pt": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Portuguese (Portugal)"
},
"ro": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Romanian"
},
"ru": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Russian"
},
"sl": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Slovenian"
},
"sr": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Serbian"
},
"sv": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Swedish"
},
"tr": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Turkish"
},
"vi": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Vietnamese"
},
"type": {
"enum": [
null,
"article_translated_content"
],
"type": "string",
"example": "article_translated_content",
"nullable": true,
"description": "The type of object - article_translated_content."
},
"pt-BR": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Portuguese (Brazil)"
},
"zh-CN": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Chinese (China)"
},
"zh-TW": {
"$ref": "#/components/schemas/article_content",
"description": "The content of the article in Chinese (Taiwan)"
}
},
"description": "The Translated Content of an Article. The keys are the locale codes and the values are the translated content of the article."
}
assign_conversation_request
{
"type": "object",
"title": "Assign Conversation Request",
"required": [
"message_type",
"type",
"admin_id",
"assignee_id"
],
"properties": {
"body": {
"type": "string",
"example": "Let me pass you over to one of my colleagues.",
"description": "Optionally you can send a response in the conversation when it is assigned."
},
"type": {
"enum": [
"admin",
"team"
],
"type": "string",
"example": "admin"
},
"admin_id": {
"type": "string",
"example": "12345",
"description": "The id of the admin who is performing the action."
},
"assignee_id": {
"type": "string",
"example": "4324241",
"description": "The `id` of the `admin` or `team` which will be assigned the conversation. A conversation can be assigned both an admin and a team.\\nSet `0` if you want this assign to no admin or team (ie. Unassigned)."
},
"message_type": {
"enum": [
"assignment"
],
"type": "string",
"example": "assignment"
}
},
"description": "Payload of the request to assign a conversation"
}
attach_contact_to_conversation_request
{
"type": "object",
"title": "Assign Conversation Request",
"properties": {
"admin_id": {
"type": "string",
"example": "12345",
"description": "The `id` of the admin who is adding the new participant."
},
"customer": {
"type": "object",
"oneOf": [
{
"title": "Intercom User ID",
"required": [
"intercom_user_id"
],
"properties": {
"customer": {
"$ref": "#/components/schemas/customer_request"
},
"intercom_user_id": {
"type": "string",
"example": "6329bd9ffe4e2e91dac76188",
"description": "The identifier for the contact as given by Intercom."
}
}
},
{
"title": "User ID",
"required": [
"user_id"
],
"properties": {
"user_id": {
"type": "string",
"example": "6329bd9ffe4e2e91dac76188",
"description": "The external_id you have defined for the contact who is being added as a participant."
},
"customer": {
"$ref": "#/components/schemas/customer_request"
}
}
},
{
"title": "Email",
"required": [
"email"
],
"properties": {
"email": {
"type": "string",
"example": "winstonsmith@truth.org",
"description": "The email you have defined for the contact who is being added as a participant."
},
"customer": {
"$ref": "#/components/schemas/customer_request"
}
}
}
]
}
},
"description": "Payload of the request to assign a conversation"
}
close_conversation_request
{
"type": "object",
"title": "Close Conversation Request",
"required": [
"message_type",
"type",
"admin_id"
],
"properties": {
"body": {
"type": "string",
"example": " This conversation is now closed!",
"description": "Optionally you can leave a message in the conversation to provide additional context to the user and other teammates."
},
"type": {
"enum": [
"admin"
],
"type": "string",
"example": "admin"
},
"admin_id": {
"type": "string",
"example": "12345",
"description": "The id of the admin who is performing the action."
},
"message_type": {
"enum": [
"close"
],
"type": "string",
"example": "close"
}
},
"description": "Payload of the request to close a conversation"
}
collection
{
"type": "object",
"title": "Collection",
"x-tags": [
"Help Center"
],
"properties": {
"id": {
"type": "string",
"example": "6871119",
"description": "The unique identifier for the collection which is given by Intercom."
},
"url": {
"type": "string",
"example": "http://intercom.test/help/collection/name",
"nullable": true,
"description": "The URL of the collection. For multilingual help centers, this will be the URL of the collection for the default language."
},
"icon": {
"type": "string",
"example": "book-bookmark",
"nullable": true,
"description": "The icon of the collection."
},
"name": {
"type": "string",
"example": "Default language name",
"description": "The name of the collection. For multilingual collections, this will be the name of the default language's content."
},
"type": {
"enum": [
"collection"
],
"type": "string",
"default": "collection",
"example": "collection",
"description": "The type of object - `collection`."
},
"order": {
"type": "integer",
"example": 1,
"description": "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."
},
"created_at": {
"type": "integer",
"format": "date-time",
"example": 1672928359,
"description": "The time when the article was created (seconds). For multilingual articles, this will be the timestamp of creation of the default language's content."
},
"updated_at": {
"type": "integer",
"format": "date-time",
"example": 1672928610,
"description": "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."
},
"description": {
"type": "string",
"example": "Default language description",
"nullable": true,
"description": "The description of the collection. For multilingual help centers, this will be the description of the collection for the default language."
},
"workspace_id": {
"type": "string",
"example": "hfi1bx4l",
"description": "The id of the workspace which the collection belongs to."
},
"default_locale": {
"type": "string",
"example": "en",
"description": "The default locale of the help center. This field is only returned for multilingual help centers."
},
"help_center_id": {
"type": "integer",
"example": 123,
"nullable": true,
"description": "The id of the help center the collection is in."
},
"translated_content": {
"$ref": "#/components/schemas/group_translated_content",
"nullable": true
}
},
"description": "Collections are top level containers for Articles within the Help Center."
}
collection_list
{
"type": "object",
"title": "Collections",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/collection"
},
"description": "An array of collection objects"
},
"type": {
"enum": [
"list"
],
"type": "string",
"example": "list",
"description": "The type of the object - `list`."
},
"pages": {
"$ref": "#/components/schemas/cursor_pages"
},
"total_count": {
"type": "integer",
"example": 1,
"description": "A count of the total number of collections."
}
},
"description": "This will return a list of Collections for the App."
}
company
{
"type": "object",
"title": "Company",
"x-tags": [
"Companies"
],
"properties": {
"id": {
"type": "string",
"example": "531ee472cce572a6ec000006",
"description": "The Intercom defined id representing the company."
},
"name": {
"type": "string",
"example": "Blue Sun",
"description": "The name of the company."
},
"plan": {
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "269315",
"description": "The id of the plan"
},
"name": {
"type": "string",
"example": "Pro",
"description": "The name of the plan"
},
"type": {
"type": "string",
"example": "plan",
"description": "Value is always \"plan\""
}
}
},
"size": {
"type": "integer",
"example": 100,
"description": "The number of employees in the company."
},
"tags": {
"type": "object",
"properties": {
"tags": {
"type": "array",
"items": {
"items": {
"$ref": "#/components/schemas/tag"
}
}
},
"type": {
"enum": [
"tag.list"
],
"type": "string",
"description": "The type of the object"
}
},
"description": "The list of tags associated with the company"
},
"type": {
"enum": [
"company"
],
"type": "string",
"example": "company",
"description": "Value is `company`"
},
"app_id": {
"type": "string",
"example": "ecahpwf5",
"description": "The Intercom defined code of the workspace the company is associated to."
},
"website": {
"type": "string",
"example": "https://www.intercom.com",
"description": "The URL for the company website."
},
"industry": {
"type": "string",
"example": "Software",
"description": "The industry that the company operates in."
},
"segments": {
"type": "object",
"properties": {
"type": {
"enum": [
"segment.list"
],
"type": "string",
"description": "The type of the object"
},
"segments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/segment"
}
}
},
"description": "The list of segments associated with the company"
},
"company_id": {
"type": "string",
"example": "6",
"description": "The company id you have defined for the company."
},
"created_at": {
"type": "integer",
"example": 1663597223,
"description": "The time the company was added in Intercom."
},
"updated_at": {
"type": "integer",
"example": 1663597223,
"description": "The last time the company was updated."
},
"user_count": {
"type": "integer",
"example": 100,
"description": "The number of users in the company."
},
"monthly_spend": {
"type": "integer",
"example": 100,
"description": "How much revenue the company generates for your business."
},
"session_count": {
"type": "integer",
"example": 100,
"description": "How many sessions the company has recorded."
},
"last_request_at": {
"type": "integer",
"example": 1663597223,
"description": "The time the company last recorded making a request."
},
"custom_attributes": {
"type": "object",
"example": {
"team_mates": 9,
"monthly_spend": 155.5,
"paid_subscriber": true
},
"description": "The custom attributes you have set on the company.",
"additionalProperties": {
"type": "string"
}
},
"remote_created_at": {
"type": "integer",
"example": 1663597223,
"description": "The time the company was created by you."
}
},
"description": "Companies allow you to represent organizations using your product. Each company will have its own description and be associated with contacts. You can fetch, create, update and list companies."
}
company_attached_contacts
{
"type": "object",
"title": "Company Attached Contacts",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/contact"
},
"description": "An array containing Contact Objects"
},
"type": {
"enum": [
"list"
],
"type": "string",
"example": "list",
"description": "The type of object - `list`"
},
"pages": {
"$ref": "#/components/schemas/cursor_pages"
},
"total_count": {
"type": "integer",
"example": 100,
"description": "The total number of contacts"
}
},
"description": "A list of Contact Objects"
}
company_attached_segments
{
"type": "object",
"title": "Company Attached Segments",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/segment"
},
"description": "An array containing Segment Objects"
},
"type": {
"enum": [
"list"
],
"type": "string",
"example": "list",
"description": "The type of object - `list`"
}
},
"description": "A list of Segment Objects"
}
company_list
{
"type": "object",
"title": "Companies",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/company"
},
"description": "An array containing Company Objects."
},
"type": {
"enum": [
"list"
],
"type": "string",
"example": "list",
"description": "The type of object - `list`."
},
"pages": {
"$ref": "#/components/schemas/cursor_pages"
},
"total_count": {
"type": "integer",
"example": 100,
"description": "The total number of companies."
}
},
"description": "This will return a list of companies for the App."
}
company_scroll
{
"type": "object",
"title": "Company Scroll",
"nullable": true,
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/company"
}
},
"type": {
"enum": [
"list"
],
"type": "string",
"example": "list",
"description": "The type of object - `list`"
},
"pages": {
"$ref": "#/components/schemas/cursor_pages"
},
"total_count": {
"type": "integer",
"example": 100,
"nullable": true,
"description": "The total number of companies"
},
"scroll_param": {
"type": "string",
"example": "25b649f7-4d33-4ef6-88f5-60e5b8244309",
"description": "The scroll parameter to use in the next request to fetch the next page of results."
}
},
"description": "Companies allow you to represent organizations using your product. Each company will have its own description and be associated with contacts. You can fetch, create, update and list companies."
}
contact
{
"type": "object",
"title": "Contact",
"x-tags": [
"Contacts"
],
"properties": {
"id": {
"type": "string",
"example": "5ba682d23d7cf92bef87bfd4",
"description": "The unique identifier for the contact which is given by Intercom."
},
"os": {
"type": "string",
"example": "Mac OS X",
"nullable": true,
"description": "The operating system which the contact is using."
},
"name": {
"type": "string",
"example": "John Doe",
"nullable": true,
"description": "The contacts name."
},
"role": {
"type": "string",
"example": "user",
"description": "The role of the contact."
},
"tags": {
"$ref": "#/components/schemas/contact_tags"
},
"type": {
"type": "string",
"example": "contact",
"description": "The type of object."
},
"email": {
"type": "string",
"example": "joe@example.com",
"description": "The contact's email."
},
"notes": {
"$ref": "#/components/schemas/contact_notes"
},
"phone": {
"type": "string",
"example": "+1123456789",
"nullable": true,
"description": "The contacts phone."
},
"avatar": {
"type": "object",
"nullable": true,
"properties": {
"type": {
"type": "string",
"example": "avatar",
"description": "The type of object"
},
"image_url": {
"type": "string",
"format": "uri",
"example": "https://example.org/128Wash.jpg",
"nullable": true,
"description": "An image URL containing the avatar of a contact."
}
}
},
"browser": {
"type": "string",
"example": "Chrome",
"nullable": true,
"description": "The name of the browser which the contact is using."
},
"location": {
"$ref": "#/components/schemas/contact_location"
},
"owner_id": {
"type": "integer",
"example": 123,
"nullable": true,
"description": "The id of an admin that has been assigned account ownership of the contact."
},
"companies": {
"$ref": "#/components/schemas/contact_companies"
},
"created_at": {
"type": "integer",
"format": "date-time",
"example": 1571672154,
"description": "(UNIX timestamp) The time when the contact was created."
},
"ios_device": {
"type": "string",
"example": "iPhone 11",
"nullable": true,
"description": "The iOS device which the contact is using."
},
"updated_at": {
"type": "integer",
"format": "date-time",
"example": 1571672154,
"description": "(UNIX timestamp) The time when the contact was last updated."
},
"external_id": {
"type": "string",
"example": "f3b87a2e09d514c6c2e79b9a",
"nullable": true,
"description": "The unique identifier for the contact which is provided by the Client."
},
"email_domain": {
"type": "string",
"example": "example.com",
"description": "The contact's email domain."
},
"ios_app_name": {
"type": "string",
"example": "Intercom",
"nullable": true,
"description": "The name of the iOS app which the contact is using."
},
"last_seen_at": {
"type": "integer",
"format": "date-time",
"example": 1571672154,
"nullable": true,
"description": "(UNIX timestamp) The time when the contact was last seen (either where the Intercom Messenger was installed or when specified manually)."
},
"signed_up_at": {
"type": "integer",
"format": "date-time",
"example": 1571672154,
"nullable": true,
"description": "(UNIX timestamp) The time specified for when a contact signed up."
},
"workspace_id": {
"type": "string",
"example": "ecahpwf5",
"description": "The id of the workspace which the contact belongs to."
},
"android_device": {
"type": "string",
"example": "Pixel 3",
"nullable": true,
"description": "The Android device which the contact is using."
},
"ios_os_version": {
"type": "string",
"example": "13.3.1",
"nullable": true,
"description": "The version of iOS which the contact is using."
},
"browser_version": {
"type": "string",
"example": "80.0.3987.132",
"nullable": true,
"description": "The version of the browser which the contact is using."
},
"formatted_phone": {
"type": "string",
"example": "+1123456789",
"nullable": true,
"description": "The contacts phone number normalized to the E164 format"
},
"ios_app_version": {
"type": "string",
"example": "5.0.0",
"nullable": true,
"description": "The version of the iOS app which the contact is using."
},
"ios_sdk_version": {
"type": "string",
"example": "13.3.1",
"nullable": true,
"description": "The version of the iOS SDK which the contact is using."
},
"last_replied_at": {
"type": "integer",
"format": "date-time",
"example": 1571672154,
"nullable": true,
"description": "(UNIX timestamp) The time when the contact last messaged in."
},
"social_profiles": {
"$ref": "#/components/schemas/contact_social_profiles"
},
"android_app_name": {
"type": "string",
"example": "Intercom",
"nullable": true,
"description": "The name of the Android app which the contact is using."
},
"browser_language": {
"type": "string",
"example": "en-US",
"nullable": true,
"description": "The language set by the browser which the contact is using."
},
"has_hard_bounced": {
"type": "boolean",
"example": true,
"description": "Whether the contact has had an email sent to them hard bounce."
},
"ios_last_seen_at": {
"type": "integer",
"format": "date-time",
"example": 1571672154,
"nullable": true,
"description": "(UNIX timestamp) The last time the contact used the iOS app."
},
"custom_attributes": {
"type": "object",
"description": "The custom attributes which are set for the contact."
},
"language_override": {
"type": "string",
"example": "en",
"nullable": true,
"description": "A preferred language setting for the contact, used by the Intercom Messenger even if their browser settings change."
},
"last_contacted_at": {
"type": "integer",
"format": "date-time",
"example": 1571672154,
"nullable": true,
"description": "(UNIX timestamp) The time when the contact was last messaged."
},
"android_os_version": {
"type": "string",
"example": "10",
"nullable": true,
"description": "The version of the Android OS which the contact is using."
},
"android_app_version": {
"type": "string",
"example": "5.0.0",
"nullable": true,
"description": "The version of the Android app which the contact is using."
},
"android_sdk_version": {
"type": "string",
"example": "28",
"nullable": true,
"description": "The version of the Android SDK which the contact is using."
},
"android_last_seen_at": {
"type": "integer",
"format": "date-time",
"example": 1571672154,
"nullable": true,
"description": "(UNIX timestamp) The time when the contact was last seen on an Android device."
},
"last_email_opened_at": {
"type": "integer",
"format": "date-time",
"example": 1571672154,
"nullable": true,
"description": "(UNIX timestamp) The time when the contact last opened an email."
},
"marked_email_as_spam": {
"type": "boolean",
"example": true,
"description": "Whether the contact has marked an email sent to them as spam."
},
"last_email_clicked_at": {
"type": "integer",
"format": "date-time",
"example": 1571672154,
"nullable": true,
"description": "(UNIX timestamp) The time when the contact last clicked a link in an email."
},
"unsubscribed_from_emails": {
"type": "boolean",
"example": true,
"description": "Whether the contact is unsubscribed from emails."
}
},
"description": "Contact are the objects that represent your leads and users in Intercom."
}
contact_archived
{
"type": "object",
"title": "Contact Archived",
"properties": {
"id": {
"type": "string",
"example": "5ba682d23d7cf92bef87bfd4",
"description": "The unique identifier for the contact which is given by Intercom."
},
"type": {
"enum": [
"contact"
],
"type": "string",
"example": "contact",
"description": "always contact"
},
"archived": {
"type": "boolean",
"example": true,
"description": "Whether the contact is archived or not."
},
"external_id": {
"type": "string",
"example": "f3b87a2e09d514c6c2e79b9a",
"nullable": true,
"description": "The unique identifier for the contact which is provided by the Client."
}
},
"description": "archived contact object"
}
contact_attached_companies
{
"type": "object",
"title": "Contact Attached Companies",
"properties": {
"type": {
"enum": [
"list"
],
"type": "string",
"example": "list",
"description": "The type of object"
},
"pages": {
"$ref": "#/components/schemas/pages_link"
},
"companies": {
"type": "array",
"items": {
"$ref": "#/components/schemas/company"
},
"description": "An array containing Company Objects"
},
"total_count": {
"type": "integer",
"example": 100,
"description": "The total number of companies associated to this contact"
}
},
"description": "A list of Company Objects"
}
contact_companies
{
"type": "object",
"title": "Contact companies",
"nullable": false,
"properties": {
"url": {
"type": "string",
"format": "uri",
"example": "/contacts/5ba682d23d7cf92bef87bfd4/companies",
"description": "Url to get more company resources for this contact"
},
"has_more": {
"type": "boolean",
"example": true,
"description": "Whether there's more Addressable Objects to be viewed. If true, use the url to view all"
},
"total_count": {
"type": "integer",
"example": 100,
"description": "Int representing the total number of companyies attached to this contact"
}
},
"description": "An object containing companies meta data about the companies that a contact has. Up to 10 will be displayed here. Use the url to get more."
}
contact_deleted
{
"type": "object",
"title": "Contact Deleted",
"properties": {
"id": {
"type": "string",
"example": "5ba682d23d7cf92bef87bfd4",
"description": "The unique identifier for the contact which is given by Intercom."
},
"type": {
"enum": [
"contact"
],
"type": "string",
"example": "contact",
"description": "always contact"
},
"deleted": {
"type": "boolean",
"example": true,
"description": "Whether the contact is deleted or not."
},
"external_id": {
"type": "string",
"example": "f3b87a2e09d514c6c2e79b9a",
"nullable": true,
"description": "The unique identifier for the contact which is provided by the Client."
}
},
"description": "deleted contact object"
}
contact_list
{
"type": "object",
"title": "Contact List",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/contact"
},
"description": "The list of contact objects"
},
"type": {
"enum": [
"list"
],
"type": "string",
"example": "list",
"description": "Always list"
},
"pages": {
"$ref": "#/components/schemas/cursor_pages"
},
"total_count": {
"type": "integer",
"example": 100,
"description": "A count of the total number of objects."
}
},
"description": "Contacts are your users in Intercom."
}
contact_location
{
"type": "object",
"title": "Contact Location",
"nullable": false,
"properties": {
"city": {
"type": "string",
"example": "Dublin",
"nullable": true,
"description": "The city that the contact is located in"
},
"type": {
"type": "string",
"example": "location",
"nullable": true,
"description": "Always location"
},
"region": {
"type": "string",
"example": "Dublin",
"nullable": true,
"description": "The overal region that the contact is located in"
},
"country": {
"type": "string",
"example": "Ireland",
"nullable": true,
"description": "The country that the contact is located in"
}
},
"description": "An object containing location meta data about a Intercom contact."
}
contact_notes
{
"type": "object",
"title": "Contact notes",
"nullable": false,
"properties": {
"url": {
"type": "string",
"format": "uri",
"example": "/contacts/5ba682d23d7cf92bef87bfd4/notes",
"description": "Url to get more company resources for this contact"
},
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/addressable_list"
},
"description": "This object represents the notes attached to a contact."
},
"has_more": {
"type": "boolean",
"example": true,
"description": "Whether there's more Addressable Objects to be viewed. If true, use the url to view all"
},
"total_count": {
"type": "integer",
"example": 100,
"description": "Int representing the total number of companyies attached to this contact"
}
},
"description": "An object containing notes meta data about the notes that a contact has. Up to 10 will be displayed here. Use the url to get more."
}
contact_reference
{
"type": "object",
"title": "Contact Reference",
"properties": {
"id": {
"type": "string",
"example": "5ba682d23d7cf92bef87bfd4",
"description": "The unique identifier for the contact which is given by Intercom."
},
"type": {
"enum": [
"contact"
],
"type": "string",
"example": "contact",
"description": "always contact"
},
"external_id": {
"type": "string",
"example": "f3b87a2e09d514c6c2e79b9a",
"nullable": true,
"description": "The unique identifier for the contact which is provided by the Client."
}
},
"description": "reference to contact object"
}
contact_reply_base_request
{
"type": "object",
"title": "Contact Reply Base Object",
"required": [
"message_type",
"type",
"body"
],
"properties": {
"body": {
"type": "string",
"description": "The text body of the comment."
},
"type": {
"enum": [
"user"
],
"type": "string"
},
"message_type": {
"enum": [
"comment"
],
"type": "string"
},
"attachment_urls": {
"type": "array",
"items": {
"type": "string",
"format": "uri"
},
"title": "Attachment URLs",
"maxItems": 10,
"description": "A list of image URLs that will be added as attachments. You can include up to 10 URLs."
}
}
}
contact_reply_conversation_request
{
"oneOf": [
{
"$ref": "#/components/schemas/contact_reply_base_request"
},
{
"$ref": "#/components/schemas/contact_reply_base_request"
},
{
"$ref": "#/components/schemas/contact_reply_base_request"
}
],
"title": "Contact Reply"
}
contact_segments
{
"type": "object",
"title": "Segments",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/segment"
},
"description": "Segment objects associated with the contact."
},
"type": {
"enum": [
"list"
],
"type": "string",
"example": "list",
"description": "The type of the object"
}
},
"description": "A list of segments objects attached to a specific contact."
}
contact_social_profiles
{
"type": "object",
"title": "Social Profile",
"nullable": false,
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/social_profile"
},
"description": "A list of social profiles objects associated with the contact."
}
},
"description": "An object containing social profiles that a contact has."
}
contact_subscription_types
{
"type": "object",
"title": "Contact Subscription Types",
"nullable": false,
"properties": {
"url": {
"type": "string",
"format": "uri",
"example": "/contacts/5ba682d23d7cf92bef87bfd4/subscriptions",
"description": "Url to get more subscription type resources for this contact"
},
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/addressable_list"
},
"description": "This object represents the subscriptions attached to a contact."
},
"has_more": {
"type": "boolean",
"example": true,
"description": "Whether there's more Addressable Objects to be viewed. If true, use the url to view all"
},
"total_count": {
"type": "integer",
"example": 100,
"description": "Int representing the total number of subscription types attached to this contact"
}
},
"description": "An object containing Subscription Types meta data about the SubscriptionTypes that a contact has."
}
contact_tags
{
"type": "object",
"title": "Contact Tags",
"nullable": true,
"properties": {
"url": {
"type": "string",
"format": "uri",
"example": "/contacts/5ba682d23d7cf92bef87bfd4/tags",
"description": "url to get more tag resources for this contact"
},
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/addressable_list"
},
"description": "This object represents the tags attached to a contact."
},
"has_more": {
"type": "boolean",
"example": true,
"description": "Whether there's more Addressable Objects to be viewed. If true, use the url to view all"
},
"total_count": {
"type": "integer",
"example": 100,
"description": "Int representing the total number of tags attached to this contact"
}
},
"description": "An object containing tags meta data about the tags that a contact has. Up to 10 will be displayed here. Use the url to get more."
}
contact_unarchived
{
"type": "object",
"title": "Contact Unarchived",
"properties": {
"id": {
"type": "string",
"example": "5ba682d23d7cf92bef87bfd4",
"description": "The unique identifier for the contact which is given by Intercom."
},
"type": {
"enum": [
"contact"
],
"type": "string",
"example": "contact",
"description": "always contact"
},
"archived": {
"type": "boolean",
"example": false,
"description": "Whether the contact is archived or not."
},
"external_id": {
"type": "string",
"example": "f3b87a2e09d514c6c2e79b9a",
"nullable": true,
"description": "The unique identifier for the contact which is provided by the Client."
}
},
"description": "unarchived contact object"
}
conversation
{
"type": "object",
"title": "Conversation",
"x-tags": [
"Conversations"
],
"properties": {
"id": {
"type": "string",
"example": "1295",
"description": "The id representing the conversation."
},
"open": {
"type": "boolean",
"example": true,
"description": "Indicates whether a conversation is open (true) or closed (false)."
},
"read": {
"type": "boolean",
"example": true,
"description": "Indicates whether a conversation has been read."
},
"tags": {
"$ref": "#/components/schemas/tags"
},
"type": {
"type": "string",
"example": "conversation",
"description": "Always conversation."
},
"state": {
"enum": [
"open",
"closed",
"snoozed"
],
"type": "string",
"example": "open",
"description": "Can be set to \"open\", \"closed\" or \"snoozed\"."
},
"title": {
"type": "string",
"example": "Conversation Title",
"nullable": true,
"description": "The title given to the conversation."
},
"source": {
"$ref": "#/components/schemas/conversation_source"
},
"contacts": {
"$ref": "#/components/schemas/conversation_contacts"
},
"priority": {
"enum": [
"priority",
"not_priority"
],
"type": "string",
"example": "priority",
"description": "If marked as priority, it will return priority or else not_priority."
},
"teammates": {
"$ref": "#/components/schemas/conversation_teammates"
},
"created_at": {
"type": "integer",
"format": "date-time",
"example": 1663597223,
"description": "The time the conversation was created."
},
"statistics": {
"$ref": "#/components/schemas/conversation_statistics"
},
"updated_at": {
"type": "integer",
"format": "date-time",
"example": 1663597260,
"description": "The last time the conversation was updated."
},
"sla_applied": {
"$ref": "#/components/schemas/sla_applied"
},
"snoozed_until": {
"type": "integer",
"format": "date-time",
"example": 1663597260,
"nullable": true,
"description": "If set this is the time in the future when this conversation will be marked as open. i.e. it will be in a snoozed state until this time. i.e. it will be in a snoozed state until this time."
},
"waiting_since": {
"type": "integer",
"format": "date-time",
"example": 1663597260,
"nullable": true,
"description": "The last time a Contact responded to an Admin. In other words, the time a customer started waiting for a response. Set to null if last reply is from an Admin."
},
"team_assignee_id": {
"type": "string",
"example": "5017691",
"nullable": true,
"description": "The id of the team assigned to the conversation. If it's not assigned to a team it will return null."
},
"admin_assignee_id": {
"type": "integer",
"example": 0,
"nullable": true,
"description": "The id of the admin assigned to the conversation. If it's not assigned to an admin it will return null."
},
"custom_attributes": {
"$ref": "#/components/schemas/custom_attributes"
},
"conversation_parts": {
"$ref": "#/components/schemas/conversation_parts"
},
"conversation_rating": {
"$ref": "#/components/schemas/conversation_rating"
},
"first_contact_reply": {
"$ref": "#/components/schemas/conversation_first_contact_reply"
}
},
"description": "Conversations are how you can communicate with users in Intercom. They are created when a contact replies to an outbound message, or when one admin directly sends a message to a single contact."
}
conversation_attachment_files
{
"type": "object",
"title": "Conversation attachment files",
"properties": {
"data": {
"type": "string",
"example": "ewogICJ0ZXN0IjogMQp9",
"description": "The base64 encoded file data."
},
"name": {
"type": "string",
"example": "test.json",
"description": "The name of the file."
},
"content_type": {
"type": "string",
"example": "application/json",
"description": "The content type of the file"
}
},
"description": "Properties of the attachment files in a conversation part"
}
conversation_contacts
{
"type": "object",
"title": "Contacts",
"properties": {
"type": {
"enum": [
"contact.list"
],
"type": "string",
"example": "contact.list",
"description": ""
},
"contacts": {
"type": "array",
"items": {
"$ref": "#/components/schemas/contact_reference"
},
"description": "The list of contacts (users or leads) involved in this conversation. This will only contain one customer unless more were added via the group conversation feature."
}
},
"description": "The list of contacts (users or leads) involved in this conversation. This will only contain one customer unless more were added via the group conversation feature."
}
conversation_first_contact_reply
{
"type": "object",
"title": "First contact reply",
"nullable": true,
"properties": {
"url": {
"type": "string",
"example": "https://developers.intercom.com/",
"nullable": true,
"description": ""
},
"type": {
"type": "string",
"example": "conversation",
"description": ""
},
"created_at": {
"type": "integer",
"format": "date-time",
"example": 1663597223,
"description": ""
}
},
"description": "An object containing information on the first users message. For a contact initiated message this will represent the users original message."
}
conversation_list
{
"type": "object",
"title": "Conversation List",
"properties": {
"type": {
"enum": [
"conversation.list"
],
"type": "string",
"example": "conversation.list",
"description": "Always conversation.list"
},
"pages": {
"$ref": "#/components/schemas/cursor_pages"
},
"total_count": {
"type": "integer",
"example": 12345,
"description": "A count of the total number of objects."
},
"conversations": {
"type": "array",
"items": {
"$ref": "#/components/schemas/conversation"
},
"description": "The list of conversation objects"
}
},
"description": "Conversations are how you can communicate with users in Intercom. They are created when a contact replies to an outbound message, or when one admin directly sends a message to a single contact."
}
conversation_part
{
"type": "object",
"title": "Conversation Part",
"properties": {
"id": {
"type": "string",
"example": "3",
"description": "The id representing the conversation part."
},
"body": {
"type": "string",
"example": "<p>Okay!</p>",
"nullable": true,
"description": "The message body, which may contain HTML. For Twitter, this will show a generic message regarding why the body is obscured."
},
"type": {
"type": "string",
"example": "conversation_part",
"description": "Always conversation_part"
},
"author": {
"$ref": "#/components/schemas/conversation_part_author"
},
"redacted": {
"type": "boolean",
"example": false,
"description": "Whether or not the conversation part has been redacted."
},
"part_type": {
"type": "string",
"example": "comment",
"description": "The type of conversation part."
},
"created_at": {
"type": "integer",
"format": "date-time",
"example": 1663597223,
"description": "The time the conversation part was created."
},
"updated_at": {
"type": "integer",
"format": "date-time",
"example": 1663597260,
"description": "The last time the conversation part was updated."
},
"assigned_to": {
"$ref": "#/components/schemas/reference",
"nullable": true,
"description": "The id of the admin that was assigned the conversation by this conversation_part (null if there has been no change in assignment.)"
},
"attachments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/part_attachment"
},
"title": "Conversation part attachments",
"description": "A list of attachments for the part."
},
"external_id": {
"type": "string",
"example": "abcd1234",
"nullable": true,
"description": "The external id of the conversation part"
},
"notified_at": {
"type": "integer",
"format": "date-time",
"example": 1663597260,
"description": "The time the user was notified with the conversation part."
}
},
"description": "A Conversation Part represents a message in the conversation."
}
conversation_part_author
{
"type": "object",
"title": "Conversation part author",
"properties": {
"id": {
"type": "string",
"example": "274",
"description": "The id of the author"
},
"name": {
"type": "string",
"example": "Operator",
"description": "The name of the author"
},
"type": {
"type": "string",
"example": "admin",
"description": "The type of the author"
},
"email": {
"type": "string",
"format": "email",
"example": "operator+abcd1234@intercom.io",
"description": "The email of the author"
}
},
"description": "The object who initiated the conversation, which can be a Contact, Admin or Team. Bots and campaigns send messages on behalf of Admins or Teams. For Twitter, this will be blank."
}
conversation_parts
{
"type": "object",
"title": "Conversation Parts",
"properties": {
"type": {
"enum": [
"conversation_part.list"
],
"type": "string",
"example": "conversation_part.list",
"description": ""
},
"total_count": {
"type": "integer",
"example": 2,
"description": ""
},
"conversation_parts": {
"type": "array",
"items": {
"$ref": "#/components/schemas/conversation_part"
},
"title": "Conversation Parts",
"description": "A list of Conversation Part objects for each part message in the conversation. This is only returned when Retrieving a Conversation, and ignored when Listing all Conversations. There is a limit of 500 parts."
}
},
"description": "A list of Conversation Part objects for each part message in the conversation. This is only returned when Retrieving a Conversation, and ignored when Listing all Conversations. There is a limit of 500 parts."
}
conversation_rating
{
"type": "object",
"title": "Conversation Rating",
"nullable": true,
"properties": {
"rating": {
"type": "integer",
"example": 5,
"description": "The rating, between 1 and 5, for the conversation."
},
"remark": {
"type": "string",
"example": "",
"description": "An optional field to add a remark to correspond to the number rating"
},
"contact": {
"$ref": "#/components/schemas/contact_reference"
},
"teammate": {
"$ref": "#/components/schemas/reference"
},
"created_at": {
"type": "integer",
"format": "date-time",
"example": 1671028894,
"description": "The time the rating was requested in the conversation being rated."
}
},
"description": "The Conversation Rating object which contains information on the rating and/or remark added by a Contact and the Admin assigned to the conversation."
}
conversation_source
{
"type": "object",
"title": "Conversation source",
"properties": {
"id": {
"type": "string",
"example": "3",
"description": "The id representing the message."
},
"url": {
"type": "string",
"example": null,
"nullable": true,
"description": "The URL where the conversation was started. For Twitter, Email, and Bots, this will be blank."
},
"body": {
"type": "string",
"example": "<p>Hey there!</p>",
"description": "The message body, which may contain HTML. For Twitter, this will show a generic message regarding why the body is obscured."
},
"type": {
"type": "string",
"example": "conversation",
"description": "This includes conversation, email, facebook, instagram, phone_call, phone_switch, push, sms, twitter and whatsapp."
},
"author": {
"$ref": "#/components/schemas/conversation_part_author"
},
"subject": {
"type": "string",
"example": "",
"description": "Optional. The message subject. For Twitter, this will show a generic message regarding why the subject is obscured."
},
"redacted": {
"type": "boolean",
"example": false,
"description": "Whether or not the source message has been redacted. Only applicable for contact initiated messages."
},
"attachments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/part_attachment"
},
"description": "A list of attachments for the part."
},
"delivered_as": {
"type": "string",
"example": "operator_initiated",
"description": "The conversation's initiation type. Possible values are customer_initiated, campaigns_initiated (legacy campaigns), operator_initiated (Custom bot), automated (Series and other outbounds with dynamic audience message) and admin_initiated (fixed audience message, ticket initiated by an admin, group email)."
}
},
"description": "The Conversation Part that originated this conversation, which can be Contact, Admin, Campaign, Automated or Operator initiated."
}
conversation_statistics
{
"type": "object",
"title": "Conversation statistics",
"nullable": true,
"properties": {
"type": {
"type": "string",
"example": "conversation_statistics",
"description": ""
},
"count_reopens": {
"type": "integer",
"example": 1,
"description": "Number of reopens after first_contact_reply_at."
},
"last_close_at": {
"type": "integer",
"format": "date-time",
"example": 1663597233,
"description": "Time of the last conversation close."
},
"first_close_at": {
"type": "integer",
"format": "date-time",
"example": 1663597233,
"description": "Time of first close after first_contact_reply_at."
},
"count_assignments": {
"type": "integer",
"example": 1,
"description": "Number of assignments after first_contact_reply_at."
},
"last_closed_by_id": {
"type": "string",
"example": "c3po",
"description": "The last admin who closed the conversation. Returns a reference to an Admin object."
},
"last_assignment_at": {
"type": "integer",
"format": "date-time",
"example": 1663597233,
"description": "Time of last assignment after first_contact_reply_at."
},
"time_to_assignment": {
"type": "integer",
"example": 2310,
"description": "Duration until last assignment before first admin reply. In seconds."
},
"time_to_last_close": {
"type": "integer",
"example": 2310,
"description": "Duration until conversation was closed last time. Subtracts out of business hours. In seconds."
},
"first_assignment_at": {
"type": "integer",
"format": "date-time",
"example": 1663597233,
"description": "Time of first assignment after first_contact_reply_at."
},
"last_admin_reply_at": {
"type": "integer",
"format": "date-time",
"example": 1663597233,
"description": "Time of the last conversation part from an admin."
},
"time_to_admin_reply": {
"type": "integer",
"example": 2310,
"description": "Duration until first admin reply. Subtracts out of business hours. In seconds."
},
"time_to_first_close": {
"type": "integer",
"example": 2310,
"description": "Duration until conversation was closed first time. Subtracts out of business hours. In seconds."
},
"first_admin_reply_at": {
"type": "integer",
"format": "date-time",
"example": 1663597233,
"description": "Time of first admin reply after first_contact_reply_at."
},
"median_time_to_reply": {
"type": "integer",
"example": 2310,
"description": "Median based on all admin replies after a contact reply. Subtracts out of business hours. In seconds."
},
"last_contact_reply_at": {
"type": "integer",
"format": "date-time",
"example": 1663597233,
"description": "Time of the last conversation part from a contact."
},
"first_contact_reply_at": {
"type": "integer",
"format": "date-time",
"example": 1663597233,
"description": "Time of first text conversation part from a contact."
},
"count_conversation_parts": {
"type": "integer",
"example": 1,
"description": "Total number of conversation parts."
},
"last_assignment_admin_reply_at": {
"type": "integer",
"format": "date-time",
"example": 1663597233,
"description": "Time of first admin reply since most recent assignment."
}
},
"description": "A Statistics object containing all information required for reporting, with timestamps and calculated metrics."
}
conversation_teammates
{
"type": "object",
"title": "Conversation teammates",
"nullable": true,
"properties": {
"type": {
"type": "string",
"example": "admin.list",
"description": "The type of the object - `admin.list`."
},
"teammates": {
"type": "array",
"items": {
"$ref": "#/components/schemas/reference"
},
"description": "The list of teammates who participated in the conversation (wrote at least one conversation part)."
}
},
"description": "The list of teammates who participated in the conversation (wrote at least one conversation part)."
}
convert_visitor_request
{
"type": "object",
"title": "Convert Visitor Request Payload",
"required": [
"type",
"user",
"visitor"
],
"properties": {
"type": {
"type": "string",
"example": "user",
"description": "Represents the role of the Contact model. Accepts `lead` or `user`."
},
"user": {
"type": "object",
"anyOf": [
{
"required": [
"id"
]
},
{
"required": [
"user_id"
]
}
],
"properties": {
"id": {
"type": "string",
"example": "8a88a590-e1c3-41e2-a502-e0649dbf721c",
"description": "The unique identifier for the contact which is given by Intercom."
},
"email": {
"type": "string",
"example": "winstonsmith@truth.org",
"description": "The contact's email, retained by default if one is present."
},
"user_id": {
"type": "string",
"example": "8a88a590-e1c3-41e2-a502-e0649dbf721c",
"description": "A unique identifier for the contact which is given to Intercom, which will be represented as external_id."
}
},
"description": "The unique identifiers retained after converting or merging."
},
"visitor": {
"type": "object",
"anyOf": [
{
"required": [
"id"
]
},
{
"required": [
"user_id"
]
},
{
"required": [
"email"
]
}
],
"properties": {
"id": {
"type": "string",
"example": "8a88a590-e1c3-41e2-a502-e0649dbf721c",
"description": "The unique identifier for the contact which is given by Intercom."
},
"email": {
"type": "string",
"example": "winstonsmith@truth.org",
"description": "The visitor's email."
},
"user_id": {
"type": "string",
"example": "8a88a590-e1c3-41e2-a502-e0649dbf721c",
"description": "A unique identifier for the contact which is given to Intercom."
}
},
"description": "The unique identifiers to convert a single Visitor."
}
},
"description": "You can merge a Visitor to a Contact of role type lead or user."
}
create_article_request
{
"type": "object",
"title": "Create Article Request Payload",
"nullable": true,
"required": [
"title",
"author_id"
],
"properties": {
"body": {
"type": "string",
"example": "<p>This is the body in html</p>",
"description": "The content of the article. For multilingual articles, this will be the body of the default language's content."
},
"state": {
"enum": [
"published",
"draft"
],
"type": "string",
"example": "draft",
"description": "Whether the article will be `published` or will be a `draft`. Defaults to draft. For multilingual articles, this will be the state of the default language's content."
},
"title": {
"type": "string",
"example": "Thanks for everything",
"description": "The title of the article.For multilingual articles, this will be the title of the default language's content."
},
"author_id": {
"type": "integer",
"example": 1295,
"description": "The id of the author of the article. For multilingual articles, this will be the id of the author of the default language's content. Must be a teammate on the help center's workspace."
},
"parent_id": {
"type": "integer",
"example": 18,
"description": "The id of the article's parent collection or section. An article without this field stands alone."
},
"description": {
"type": "string",
"example": "Description of the Article",
"description": "The description of the article. For multilingual articles, this will be the description of the default language's content."
},
"parent_type": {
"type": "string",
"example": "collection",
"description": "The type of parent, which can either be a `collection` or `section`."
},
"translated_content": {
"$ref": "#/components/schemas/article_translated_content"
}
},
"description": "You can create an Article"
}
create_collection_request
{
"type": "object",
"title": "Create Collection Request Payload",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "collection 51",
"description": "The name of the collection. For multilingual collections, this will be the name of the default language's content."
},
"description": {
"type": "string",
"example": "English description",
"description": "The description of the collection. For multilingual collections, this will be the description of the default language's content."
},
"help_center_id": {
"type": "integer",
"example": 123,
"nullable": true,
"description": "The id of the help center where the collection will be created. If `null` then it will be created in the default help center."
},
"translated_content": {
"$ref": "#/components/schemas/group_translated_content",
"nullable": true
}
},
"description": "You can create a collection"
}
create_contact_request
{
"type": "object",
"anyOf": [
{
"title": "Create contact with email",
"required": [
"email"
]
},
{
"title": "Create contact with external_id",
"required": [
"external_id"
]
},
{
"title": "Create contact with role",
"required": [
"role"
]
}
],
"title": "Create Contact Request Payload",
"properties": {
"name": {
"type": "string",
"example": "John Doe",
"nullable": true,
"description": "The contacts name"
},
"role": {
"type": "string",
"description": "The role of the contact."
},
"email": {
"type": "string",
"example": "jdoe@example.com",
"description": "The contacts email"
},
"phone": {
"type": "string",
"example": "+353871234567",
"nullable": true,
"description": "The contacts phone"
},
"avatar": {
"type": "string",
"example": "https://www.example.com/avatar_image.jpg",
"nullable": true,
"description": "An image URL containing the avatar of a contact"
},
"owner_id": {
"type": "integer",
"example": 123,
"nullable": true,
"description": "The id of an admin that has been assigned account ownership of the contact"
},
"external_id": {
"type": "string",
"description": "A unique identifier for the contact which is given to Intercom"
},
"last_seen_at": {
"type": "integer",
"format": "date-time",
"example": 1571672154,
"nullable": true,
"description": "The time when the contact was last seen (either where the Intercom Messenger was installed or when specified manually)"
},
"signed_up_at": {
"type": "integer",
"format": "date-time",
"example": 1571672154,
"nullable": true,
"description": "The time specified for when a contact signed up"
},
"custom_attributes": {
"type": "object",
"nullable": true,
"description": "The custom attributes which are set for the contact"
},
"unsubscribed_from_emails": {
"type": "boolean",
"example": true,
"nullable": true,
"description": "Whether the contact is unsubscribed from emails"
}
},
"description": "Payload to create a contact"
}
create_conversation_request
{
"type": "object",
"title": "Create Conversation Request Payload",
"required": [
"from",
"body"
],
"properties": {
"body": {
"type": "string",
"example": "Hello",
"description": "The content of the message. HTML is not supported."
},
"from": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"example": "536e564f316c83104c000020",
"maxLength": 24,
"minLength": 24,
"description": "The identifier for the contact which is given by Intercom."
},
"type": {
"enum": [
"lead",
"user",
"contact"
],
"type": "string",
"example": "user",
"description": "The role associated to the contact - user or lead."
}
}
}
},
"description": "Conversations are how you can communicate with users in Intercom. They are created when a contact replies to an outbound message, or when one admin directly sends a message to a single contact."
}
create_data_attribute_request
{
"type": "object",
"title": "Create Data Attribute Request",
"required": [
"name",
"model",
"data_type"
],
"properties": {
"name": {
"type": "string",
"example": "My Data Attribute",
"description": "The name of the data attribute."
},
"model": {
"enum": [
"contact",
"company"
],
"type": "string",
"example": "contact",
"description": "The model that the data attribute belongs to."
},
"options": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"option1",
"option2"
],
"description": "To create list attributes. Provide a set of hashes with `value` as the key of the options you want to make. `data_type` must be `string`."
},
"data_type": {
"enum": [
"string",
"integer",
"float",
"boolean",
"datetime",
"date"
],
"type": "string",
"example": "string",
"description": "The type of data stored for this attribute."
},
"description": {
"type": "string",
"example": "My Data Attribute Description",
"description": "The readable description you see in the UI for the attribute."
},
"messenger_writable": {
"type": "boolean",
"example": false,
"description": "Can this attribute be updated by the Messenger"
}
},
"description": ""
}
create_data_event_request
{
"type": "object",
"anyOf": [
{
"title": "id required",
"required": [
"event_name",
"created_at",
"id"
]
},
{
"title": "user_id required",
"required": [
"event_name",
"created_at",
"user_id"
]
},
{
"title": "email required",
"required": [
"event_name",
"created_at",
"email"
]
}
],
"title": "Create Data Event Request",
"properties": {
"id": {
"type": "string",
"example": "8a88a590-e1c3-41e2-a502-e0649dbf721c",
"description": "The unique identifier for the contact (lead or user) which is given by Intercom."
},
"email": {
"type": "string",
"example": "frodo.baggins@example.com",
"description": "An email address for your user. An email should only be used where your application uses email to uniquely identify users."
},
"user_id": {
"type": "string",
"example": "314159",
"description": "Your identifier for the user."
},
"metadata": {
"type": "object",
"example": {
"invite_code": "ADDAFRIEND"
},
"description": "Optional metadata about the event.",
"additionalProperties": {
"type": "string"
}
},
"created_at": {
"type": "integer",
"format": "date-time",
"example": 1671028894,
"description": "The time the event occurred as a UTC Unix timestamp"
},
"event_name": {
"type": "string",
"example": "invited-friend",
"description": "The name of the event that occurred. This is presented to your App's admins when filtering and creating segments - a good event name is typically a past tense 'verb-noun' combination, to improve readability, for example `updated-plan`."
}
},
"description": ""
}
create_data_event_summaries_request
{
"type": "object",
"title": "Create Data Event Summaries Request",
"properties": {
"user_id": {
"type": "string",
"example": "314159",
"description": "Your identifier for the user."
},
"event_summaries": {
"type": "object",
"properties": {
"last": {
"type": "integer",
"format": "date-time",
"example": 1671028894,
"description": "The last time the event was sent"
},
"count": {
"type": "integer",
"example": 1,
"description": "The number of times the event occurred."
},
"first": {
"type": "integer",
"format": "date-time",
"example": 1671028894,
"description": "The first time the event was sent"
},
"event_name": {
"type": "string",
"example": "invited-friend",
"description": "The name of the event that occurred. A good event name is typically a past tense 'verb-noun' combination, to improve readability, for example `updated-plan`."
}
},
"description": "A list of event summaries for the user. Each event summary should contain the event name, the time the event occurred, and the number of times the event occurred. The event name should be a past tense 'verb-noun' combination, to improve readability, for example `updated-plan`."
}
},
"description": "You can send a list of event summaries for a user. Each event summary should contain the event name, the time the event occurred, and the number of times the event occurred. The event name should be a past tense \"verb-noun\" combination, to improve readability, for example `updated-plan`."
}
create_data_exports_request
{
"type": "object",
"title": "Create Data Export Request",
"required": [
"created_at_after",
"created_at_before"
],
"properties": {
"created_at_after": {
"type": "integer",
"example": 1527811200,
"description": "The start date that you request data for. It must be formatted as a unix timestamp."
},
"created_at_before": {
"type": "integer",
"example": 1527811200,
"description": "The end date that you request data for. It must be formatted as a unix timestamp."
}
},
"description": "Request for creating a data export"
}
create_message_request
{
"type": "object",
"anyOf": [
{
"title": "message_type: `email`.",
"required": [
"message_type",
"subject",
"body",
"template",
"from",
"to"
]
},
{
"title": "message_type: `inapp`.",
"required": [
"message_type",
"body",
"from",
"to"
]
}
],
"title": "Create Message Request Payload",
"nullable": true,
"properties": {
"to": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "string",
"example": "536e564f316c83104c000020",
"description": "The identifier for the contact which is given by Intercom."
},
"type": {
"enum": [
"user",
"lead"
],
"type": "string",
"example": "user",
"description": "The role associated to the contact - `user` or `lead`."
}
},
"description": "The sender of the message. If not provided, the default sender will be used."
},
"body": {
"type": "string",
"example": "Hello there",
"description": "The content of the message. HTML and plaintext are supported."
},
"from": {
"type": "object",
"required": [
"type",
"id"
],
"properties": {
"id": {
"type": "integer",
"example": 394051,
"description": "The identifier for the admin which is given by Intercom."
},
"type": {
"enum": [
"admin"
],
"type": "string",
"example": "admin",
"description": "Always `admin`."
}
},
"description": "The sender of the message. If not provided, the default sender will be used."
},
"subject": {
"type": "string",
"example": "Thanks for everything",
"description": "The title of the email."
},
"template": {
"type": "string",
"example": "plain",
"description": "The style of the outgoing message. Possible values `plain` or `personal`."
},
"message_type": {
"enum": [
"in_app",
"email"
],
"type": "string",
"example": "in_app",
"description": "The kind of message being created. Values: `in_app` or `email`."
},
"create_conversation_without_contact_reply": {
"type": "boolean",
"default": false,
"example": true,
"description": "Whether a conversation should be opened in the inbox for the message without the contact replying. Defaults to false if not provided."
}
},
"description": "You can create a message"
}
create_or_update_company_request
{
"type": "object",
"title": "Create Or Update Company Request Payload",
"nullable": true,
"properties": {
"name": {
"type": "string",
"example": "Intercom",
"description": "The name of the Company"
},
"plan": {
"type": "string",
"example": "Enterprise",
"description": "The name of the plan you have associated with the company."
},
"size": {
"type": "integer",
"example": 100,
"description": "The number of employees in this company."
},
"website": {
"type": "string",
"example": "https://www.example.com",
"description": "The URL for this company's website. Please note that the value specified here is not validated. Accepts any string."
},
"industry": {
"type": "string",
"example": "Manufacturing",
"description": "The industry that this company operates in."
},
"company_id": {
"type": "string",
"example": "625e90fc55ab113b6d92175f",
"description": "The company id you have defined for the company. Can't be updated"
},
"monthly_spend": {
"type": "integer",
"example": 1000,
"description": "How much revenue the company generates for your business. Note that this will truncate floats. i.e. it only allow for whole integers, 155.98 will be truncated to 155. Note that this has an upper limit of 2**31-1 or 2147483647.."
},
"custom_attributes": {
"type": "object",
"example": {
"team_mates": 9,
"monthly_spend": 155.5,
"paid_subscriber": true
},
"description": "A hash of key/value pairs containing any other data about the company you want Intercom to store.",
"additionalProperties": {
"type": "string"
}
},
"remote_created_at": {
"type": "integer",
"example": 1394531169,
"description": "The time the company was created by you."
}
},
"description": "You can create or update a Company"
}
create_or_update_tag_request
{
"type": "object",
"title": "Create or Update Tag Request Payload",
"required": [
"name"
],
"properties": {
"id": {
"type": "string",
"example": "656452352",
"description": "The id of tag to updates."
},
"name": {
"type": "string",
"example": "Independent",
"description": "The name of the tag, which will be created if not found, or the new name for the tag if this is an update request. Names are case insensitive."
}
},
"description": "You can create or update an existing tag."
}
create_phone_switch_request
{
"type": "object",
"title": "Create Phone Switch Request Payload",
"nullable": true,
"required": [
"phone"
],
"properties": {
"phone": {
"type": "string",
"example": "+1 1234567890",
"description": "Phone number in E.164 format, that will receive the SMS to continue the conversation in the Messenger."
},
"custom_attributes": {
"$ref": "#/components/schemas/custom_attributes"
}
},
"description": "You can create an phone switch"
}
create_section_request
{
"type": "object",
"title": "Create Section Request Payload",
"required": [
"name",
"parent_id"
],
"properties": {
"name": {
"type": "string",
"example": "Section 51",
"description": "The name of the collection. For multilingual collections, this will be the name of the default language's content."
},
"parent_id": {
"type": "integer",
"example": 18,
"description": "The id for the collection this section will be within."
},
"translated_content": {
"$ref": "#/components/schemas/group_translated_content",
"nullable": true
}
},
"description": "You can create a Section"
}
create_ticket_reply_request
{
"type": "object",
"title": "Create Ticket Reply Request Payload",
"required": [
"body",
"admin_id"
],
"properties": {
"body": {
"type": "string",
"example": "<p>Okay!</p>",
"description": "The message body of the note, which may contain HTML."
},
"admin_id": {
"type": "string",
"example": "1234",
"description": "The id of the admin who is making the note."
},
"message_type": {
"type": "string",
"default": "note",
"example": "note",
"description": "The type of the reply. Only `note` is supported at the moment."
}
}
}
create_ticket_request
{
"type": "object",
"title": "Create Ticket Request Payload",
"required": [
"ticket_type_id",
"contacts"
],
"properties": {
"contacts": {
"type": "array",
"items": {
"type": "object",
"oneOf": [
{
"title": "ID",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "The identifier for the contact as given by Intercom."
}
}
},
{
"title": "External ID",
"required": [
"external_id"
],
"properties": {
"external_id": {
"type": "string",
"description": "The external_id you have defined for the contact who is being added as a participant."
}
}
},
{
"title": "Email",
"required": [
"email"
],
"properties": {
"email": {
"type": "string",
"description": "The email you have defined for the contact who is being added as a participant. If a contact with this email does not exist, one will be created."
}
}
}
]
},
"example": [
{
"id": "1234"
}
],
"description": "The list of contacts (users or leads) affected by this ticket. Currently only one is allowed"
},
"ticket_type_id": {
"type": "string",
"example": "1234",
"description": "The ID of the type of ticket you want to create"
},
"ticket_attributes": {
"$ref": "#/components/schemas/ticket_request_custom_attributes"
}
},
"description": "You can create a Ticket"
}
create_ticket_type_attribute_request
{
"type": "object",
"title": "Create Ticket Type Attribute Request Payload",
"required": [
"name",
"description",
"data_type"
],
"properties": {
"name": {
"type": "string",
"example": "Bug Priority",
"description": "The name of the ticket type attribute"
},
"data_type": {
"enum": [
"string",
"list",
"integer",
"decimal",
"boolean",
"datetime",
"files"
],
"type": "string",
"example": "string",
"description": "The data type of the attribute"
},
"multiline": {
"type": "boolean",
"example": false,
"description": "Whether the attribute allows multiple lines of text (only applicable to string attributes)"
},
"list_items": {
"type": "string",
"example": "Low Priority,Medium Priority,High Priority",
"description": "A comma delimited list of items for the attribute value (only applicable to list attributes)"
},
"description": {
"type": "string",
"example": "Priority level of the bug",
"description": "The description of the attribute presented to the teammate or contact"
},
"visible_on_create": {
"type": "boolean",
"default": true,
"example": true,
"description": "Whether the attribute is visible to teammates when creating a ticket in Inbox."
},
"required_to_create": {
"type": "boolean",
"default": false,
"example": false,
"description": "Whether the attribute is required to be filled in when teammates are creating the ticket in Inbox."
},
"visible_to_contacts": {
"type": "boolean",
"default": true,
"example": true,
"description": "Whether the attribute is visible to contacts when creating a ticket in Messenger."
},
"allow_multiple_values": {
"type": "boolean",
"example": false,
"description": "Whether the attribute allows multiple files to be attached to it (only applicable to file attributes)"
},
"required_to_create_for_contacts": {
"type": "boolean",
"default": false,
"example": false,
"description": "Whether the attribute is required to be filled in when contacts are creating the ticket in Messenger."
}
},
"description": "You can create a Ticket Type Attribute"
}
create_ticket_type_request
{
"type": "object",
"title": "Create Ticket Type Request Payload",
"nullable": true,
"required": [
"name"
],
"properties": {
"icon": {
"type": "string",
"default": "🎟️",
"example": "🐞",
"description": "The icon of the ticket type."
},
"name": {
"type": "string",
"example": "Bug",
"description": "The name of the ticket type."
},
"description": {
"type": "string",
"example": "Used for tracking bugs",
"description": "The description of the ticket type."
},
"is_internal": {
"type": "boolean",
"default": false,
"example": false,
"description": "Whether the tickets associated with this ticket type are intended for internal use only or will be shared with customers. This is currently a limited attribute."
}
},
"description": "The request payload for creating a ticket type.\n You can copy the `icon` property for your ticket type from [Twemoji Cheatsheet](https://twemoji-cheatsheet.vercel.app/)\n"
}
cursor_pages
{
"type": "object",
"title": "Cursor based pages",
"nullable": true,
"properties": {
"next": {
"$ref": "#/components/schemas/starting_after_paging"
},
"page": {
"type": "integer",
"example": 1,
"description": "The current page"
},
"type": {
"enum": [
"pages"
],
"type": "string",
"example": "pages",
"description": "the type of object `pages`."
},
"per_page": {
"type": "integer",
"example": 2,
"description": "Number of results per page"
},
"total_pages": {
"type": "integer",
"example": 13,
"description": "Total number of pages"
}
},
"description": "Cursor-based pagination is a technique used in the Intercom API to navigate through large amounts of data.\nA \"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.\n"
}
custom_attributes
{
"type": "object",
"title": "Custom Attributes",
"description": "An object containing the different custom attributes associated to the conversation as key-value pairs. For relationship attributes the value will be a list of custom object instance models.",
"additionalProperties": {
"anyOf": [
{
"type": "string"
},
{
"$ref": "#/components/schemas/custom_object_instance"
}
]
}
}
custom_object_instance
{
"type": "object",
"title": "Custom Object Instance",
"x-tags": [
"Custom Object Instances"
],
"nullable": true,
"properties": {
"id": {
"type": "string",
"example": "5a7a19e9f59ae20001d1c1e6",
"description": "The Intercom defined id representing the custom object instance."
},
"type": {
"type": "string",
"example": "Order",
"description": "The identifier of the custom object type that defines the structure of the custom object instance."
},
"external_id": {
"type": "string",
"example": "0001d1c1e65a7a19e9f59ae2",
"description": "The id you have defined for the custom object instance."
},
"custom_attributes": {
"type": "object",
"description": "The custom attributes you have set on the custom object instance.",
"additionalProperties": {
"type": "string"
}
}
},
"description": "A Custom Object Instance represents an instance of a custom object type. This allows you to create and set custom attributes to store data about your customers that is not already captured by Intercom. The parent object includes recommended default attributes and you can add your own custom attributes."
}
customer_request
{
"type": "object",
"oneOf": [
{
"title": "Intercom User ID",
"required": [
"intercom_user_id"
],
"properties": {
"intercom_user_id": {
"type": "string",
"example": "6329bd9ffe4e2e91dac76188",
"description": "The identifier for the contact as given by Intercom."
}
}
},
{
"title": "User ID",
"required": [
"user_id"
],
"properties": {
"user_id": {
"type": "string",
"example": "2e91dac761886329bd9ffe4e",
"description": "The external_id you have defined for the contact who is being added as a participant."
}
}
},
{
"title": "Email",
"required": [
"email"
],
"properties": {
"email": {
"type": "string",
"example": "sam.sung@example.com",
"description": "The email you have defined for the contact who is being added as a participant."
}
}
}
],
"nullable": true
}
data_attribute
{
"type": "object",
"title": "Data Attribute",
"x-tags": [
"Data Attributes"
],
"properties": {
"id": {
"type": "integer",
"example": 12878,
"description": "The unique identifier for the data attribute which is given by Intercom. Only available for custom attributes."
},
"name": {
"type": "string",
"example": "paid_subscriber",
"description": "Name of the attribute."
},
"type": {
"enum": [
"data_attribute"
],
"type": "string",
"example": "data_attribute",
"description": "Value is `data_attribute`."
},
"label": {
"type": "string",
"example": "Paid Subscriber",
"description": "Readable name of the attribute (i.e. name you see in the UI)"
},
"model": {
"enum": [
"contact",
"company"
],
"type": "string",
"example": "contact",
"description": "Value is `contact` for user/lead attributes and `company` for company attributes."
},
"custom": {
"type": "boolean",
"example": true,
"description": "Set to true if this is a CDA"
},
"options": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"true",
"false"
],
"description": "List of predefined options for attribute value."
},
"admin_id": {
"type": "string",
"example": "5712945",
"description": "Teammate who created the attribute. Only applicable to CDAs"
},
"archived": {
"type": "boolean",
"example": false,
"description": "Is this attribute archived. (Only applicable to CDAs)"
},
"data_type": {
"enum": [
"string",
"integer",
"float",
"boolean",
"date"
],
"type": "string",
"example": "boolean",
"description": "The data type of the attribute."
},
"full_name": {
"type": "string",
"example": "custom_attributes.paid_subscriber",
"description": "Full name of the attribute. Should match the name unless it's a nested attribute. We can split full_name on `.` to access nested user object values."
},
"created_at": {
"type": "integer",
"format": "date-time",
"example": 1671028894,
"description": "The time the attribute was created as a UTC Unix timestamp"
},
"updated_at": {
"type": "integer",
"format": "date-time",
"example": 1671028894,
"description": "The time the attribute was last updated as a UTC Unix timestamp"
},
"description": {
"type": "string",
"example": "Whether the user is a paid subscriber.",
"description": "Readable description of the attribute."
},
"ui_writable": {
"type": "boolean",
"example": true,
"description": "Can this attribute be updated in the UI"
},
"api_writable": {
"type": "boolean",
"example": true,
"description": "Can this attribute be updated through API"
},
"messenger_writable": {
"type": "boolean",
"example": false,
"description": "Can this attribute be updated by the Messenger"
}
},
"description": "Data Attributes are metadata used to describe your contact, company and conversation models. These include standard and custom attributes. By using the data attributes endpoint, you can get the global list of attributes for your workspace, as well as create and archive custom attributes."
}
data_attribute_list
{
"type": "object",
"title": "Data Attribute List",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/data_attribute"
},
"description": "A list of data attributes"
},
"type": {
"enum": [
"list"
],
"type": "string",
"example": "list",
"description": "The type of the object"
}
},
"description": "A list of all data attributes belonging to a workspace for contacts, companies or conversations."
}
data_event
{
"type": "object",
"title": "Data Event",
"x-tags": [
"Data Events"
],
"required": [
"event_name",
"created_at"
],
"properties": {
"id": {
"type": "string",
"example": "8a88a590-e1c3-41e2-a502-e0649dbf721c",
"description": "Your identifier for a lead or a user."
},
"type": {
"enum": [
"event"
],
"type": "string",
"example": "event",
"description": "The type of the object"
},
"email": {
"type": "string",
"example": "frodo.baggins@example.com",
"description": "An email address for your user. An email should only be used where your application uses email to uniquely identify users."
},
"user_id": {
"type": "string",
"example": "314159",
"description": "Your identifier for the user."
},
"metadata": {
"type": "object",
"example": {
"invite_code": "ADDAFRIEND"
},
"description": "Optional metadata about the event.",
"additionalProperties": {
"type": "string"
}
},
"created_at": {
"type": "integer",
"format": "date-time",
"example": 1671028894,
"description": "The time the event occurred as a UTC Unix timestamp"
},
"event_name": {
"type": "string",
"example": "invited-friend",
"description": "The name of the event that occurred. This is presented to your App's admins when filtering and creating segments - a good event name is typically a past tense 'verb-noun' combination, to improve readability, for example `updated-plan`."
},
"intercom_user_id": {
"type": "string",
"example": "63a0979a5eeebeaf28dd56ba",
"description": "The Intercom identifier for the user."
}
},
"description": "Data events are used to notify Intercom of changes to your data."
}
data_event_list
{
"type": "object",
"title": "Data Event List",
"properties": {
"type": {
"enum": [
"event.list"
],
"type": "string",
"example": "event.list",
"description": "The type of the object"
},
"pages": {
"type": "object",
"properties": {
"next": {
"type": "string",
"example": "https://api.intercom.io/events?per_page=2&before=1389913941064&intercom_user_id=63a0979a5eeebeaf28dd56ba&type=user\""
},
"since": {
"type": "string",
"example": "https://api.intercom.io/events?intercom_user_id=63a0979a5eeebeaf28dd56ba&type=user&since=1389913941065"
}
},
"description": "Pagination"
},
"events": {
"type": "array",
"items": {
"$ref": "#/components/schemas/data_event"
},
"description": "A list of data events"
}
},
"description": "This will return a list of data events for the App."
}
data_event_summary
{
"type": "object",
"title": "Data Event Summary",
"properties": {
"type": {
"enum": [
"event.summary"
],
"type": "string",
"example": "event.summary",
"description": "The type of the object"
},
"email": {
"type": "string",
"example": "Sam.Sung@example.com",
"description": "The email address of the user"
},
"events": {
"type": "array",
"items": {
"$ref": "#/components/schemas/data_event_summary_item"
},
"description": "A summary of data events"
},
"user_id": {
"type": "string",
"example": "62b997f288e14803c5006932",
"description": "The user ID of the user"
},
"intercom_user_id": {
"type": "string",
"example": "63a0979a5eeebeaf28dd56ba",
"description": "The Intercom user ID of the user"
}
},
"description": "This will return a summary of data events for the App."
}
data_event_summary_item
{
"type": "object",
"title": "Data Event Summary Item",
"nullable": true,
"properties": {
"last": {
"type": "string",
"example": "2014-01-16T23:12:21.000+00:00 ",
"description": "The last time the event was sent"
},
"name": {
"type": "string",
"example": "placed-order",
"description": "The name of the event"
},
"count": {
"type": "integer",
"example": 1,
"description": "The number of times the event was sent"
},
"first": {
"type": "string",
"example": "2014-01-16T23:12:21.000+00:00",
"description": "The first time the event was sent"
},
"description": {
"type": "string",
"example": "A user placed an order",
"description": "The description of the event"
}
},
"description": "This will return a summary of a data event for the App."
}
data_export
{
"type": "object",
"title": "Data Export",
"x-tags": [
"Data Export"
],
"properties": {
"status": {
"enum": [
"pending",
"in_progress",
"failed",
"completed",
"no_data",
"canceled"
],
"type": "string",
"example": "pending",
"description": "The current state of your job."
},
"download_url": {
"type": "string",
"example": "https://api.intercom.test/download/messages/data/example",
"description": "The location where you can download your data."
},
"job_identfier": {
"type": "string",
"example": "orzzsbd7hk67xyu",
"description": "The identifier for your job."
},
"download_expires_at": {
"type": "string",
"example": "1674917488",
"description": "The time after which you will not be able to access the data."
}
},
"description": "The data export api is used to view all message sent & viewed in a given timeframe."
}
data_export_csv
{
"type": "object",
"title": "Data Export CSV",
"properties": {
"name": {
"type": "string",
"description": "The full name of the user receiving the message"
},
"email": {
"type": "string",
"description": "The users email who was sent the message."
},
"node_id": {
"type": "string",
"description": "The id of the series node that this ruleset is associated with. Each block in a series has a corresponding node_id."
},
"user_id": {
"type": "string",
"description": "The user_id of the user who was sent the message."
},
"series_id": {
"type": "string",
"description": "The id of the series that this content is part of. Will return -1 if not part of a series."
},
"company_id": {
"type": "string",
"description": "The company ID of the user in relation to the message that was sent. Will return -1 if no company is present."
},
"content_id": {
"type": "string",
"description": "The specific content that was received. In an A/B test each version has its own Content ID."
},
"first_open": {
"type": "integer",
"description": "The first time the user opened this message."
},
"receipt_id": {
"type": "string",
"description": "ID for this receipt. Will be included with any related stats in other files to identify this specific delivery of a message."
},
"ruleset_id": {
"type": "string",
"description": "The id of the message."
},
"first_click": {
"type": "integer",
"description": "The first time the series the user clicked on a link within this message."
},
"first_reply": {
"type": "integer",
"description": "The first time a user replied to this message if the content was able to receive replies."
},
"received_at": {
"type": "integer",
"description": "Timestamp for when the receipt was recorded."
},
"content_type": {
"type": "string",
"description": "Email, Chat, Post etc."
},
"series_title": {
"type": "string",
"description": "The title of the series that this content is part of."
},
"content_title": {
"type": "string",
"description": "The title of the content you see in your Intercom workspace."
},
"first_dismisall": {
"type": "integer",
"description": "The first time the series the user dismissed this message."
},
"first_completion": {
"type": "integer",
"description": "The first time a user completed this message if the content was able to be completed e.g. Tours, Surveys."
},
"user_external_id": {
"type": "string",
"description": "The external_user_id of the user who was sent the message"
},
"first_hard_bounce": {
"type": "integer",
"description": "The first time this message hard bounced for this user"
},
"first_series_exit": {
"type": "integer",
"description": "The first time the series this message was a part of was exited by the user."
},
"first_unsubscribe": {
"type": "integer",
"description": "The first time the user unsubscribed from this message."
},
"first_goal_success": {
"type": "integer",
"description": "The first time the user met this messages associated goal if one exists."
},
"ruleset_version_id": {
"type": "string",
"description": "As you edit content we record new versions. This ID can help you determine which version of a piece of content that was received."
},
"first_series_completion": {
"type": "integer",
"description": "The first time the series this message was a part of was completed by the user."
},
"first_series_disengagement": {
"type": "integer",
"description": "The first time the series this message was a part of was disengaged by the user."
}
},
"description": "A CSV output file"
}
deleted_article_object
{
"type": "object",
"title": "Deleted Article Object",
"properties": {
"id": {
"type": "string",
"example": "6890762",
"description": "The unique identifier for the article which you provided in the URL."
},
"object": {
"enum": [
"article"
],
"type": "string",
"example": "article",
"description": "The type of object which was deleted. - article"
},
"deleted": {
"type": "boolean",
"example": true,
"description": "Whether the article was deleted successfully or not."
}
},
"description": "Response returned when an object is deleted"
}
deleted_collection_object
{
"type": "object",
"title": "Deleted Collection Object",
"properties": {
"id": {
"type": "string",
"example": "6890762",
"description": "The unique identifier for the collection which you provided in the URL."
},
"object": {
"enum": [
"collection"
],
"type": "string",
"example": "collection",
"description": "The type of object which was deleted. - `collection`"
},
"deleted": {
"type": "boolean",
"example": true,
"description": "Whether the collection was deleted successfully or not."
}
},
"description": "Response returned when an object is deleted"
}
deleted_company_object
{
"type": "object",
"title": "Deleted Company Object",
"properties": {
"id": {
"type": "string",
"example": "5b7e8b2f-7a1a-4e6c-8e1b-4f9d4f4c4d4f",
"description": "The unique identifier for the company which is given by Intercom."
},
"object": {
"enum": [
"company"
],
"type": "string",
"example": "company",
"description": "The type of object which was deleted. - `company`"
},
"deleted": {
"type": "boolean",
"example": true,
"description": "Whether the company was deleted successfully or not."
}
},
"description": "Response returned when an object is deleted"
}
deleted_object
{
"type": "object",
"title": "Deleted Object",
"properties": {
"id": {
"type": "string",
"example": "6890762",
"description": "The unique identifier for the news item which you provided in the URL."
},
"object": {
"enum": [
"news-item"
],
"type": "string",
"example": "news-item",
"description": "The type of object which was deleted - news-item."
},
"deleted": {
"type": "boolean",
"example": true,
"description": "Whether the news item was deleted successfully or not."
}
},
"description": "Response returned when an object is deleted"
}
deleted_section_object
{
"type": "object",
"title": "Deleted Section Object",
"properties": {
"id": {
"type": "string",
"example": "6890762",
"description": "The unique identifier for the section which you provided in the URL."
},
"object": {
"enum": [
"section"
],
"type": "string",
"example": "section",
"description": "The type of object which was deleted. - `section`"
},
"deleted": {
"type": "boolean",
"example": true,
"description": "Whether the section was deleted successfully or not."
}
},
"description": "Response returned when an object is deleted"
}
detach_contact_from_conversation_request
{
"required": [
"admin_id"
],
"properties": {
"admin_id": {
"type": "string",
"example": "5017690",
"description": "The `id` of the admin who is performing the action."
}
}
}
error
{
"type": "object",
"title": "Error",
"required": [
"type",
"errors"
],
"properties": {
"type": {
"type": "string",
"example": "error.list",
"description": "The type is error.list"
},
"errors": {
"type": "array",
"items": {
"required": [
"code"
],
"properties": {
"code": {
"type": "string",
"example": "unauthorized",
"description": "A string indicating the kind of error, used to further qualify the HTTP response code"
},
"field": {
"type": "string",
"example": "email",
"nullable": true,
"description": "Optional. Used to identify a particular field or query parameter that was in error."
},
"message": {
"type": "string",
"example": "Access Token Invalid",
"nullable": true,
"description": "Optional. Human readable description of the error."
}
}
},
"description": "An array of one or more error objects"
},
"request_id": {
"type": "string",
"format": "uuid",
"example": "f93ecfa8-d08a-4325-8694-89aeb89c8f85",
"nullable": true,
"description": ""
}
},
"description": "The API will return an Error List for a failed request, which will contain one or more Error objects."
}
file_attribute
{
"type": "object",
"title": "File",
"properties": {
"url": {
"type": "string",
"example": "https://intercom-attachments-1.com/.../Screenshot.png",
"description": "The url of the file. This is a temporary URL and will expire after 30 minutes."
},
"name": {
"type": "string",
"example": "Screenshot.png",
"description": "The name of the file"
},
"type": {
"type": "string",
"example": "upload"
},
"width": {
"type": "integer",
"example": 3024,
"description": "The width of the file in pixels, if applicable"
},
"height": {
"type": "integer",
"example": 1964,
"description": "The height of the file in pixels, if applicable"
},
"filesize": {
"type": "integer",
"example": 11308309,
"description": "The size of the file in bytes"
},
"content_type": {
"type": "string",
"example": "image/png",
"description": "The type of file"
}
},
"description": "The value describing a file upload set for a custom attribute"
}
group_content
{
"type": "object",
"title": "Group Content",
"nullable": true,
"properties": {
"name": {
"type": "string",
"example": "Collection name",
"description": "The name of the collection or section."
},
"type": {
"enum": [
null,
"group_content"
],
"type": "string",
"example": "group_content",
"nullable": true,
"description": "The type of object - `group_content` ."
},
"description": {
"type": "string",
"example": " Collection description",
"description": "The description of the collection. Only available for collections."
}
},
"description": "The Content of a Group."
}
group_translated_content
{
"type": "object",
"title": "Group Translated Content",
"nullable": true,
"properties": {
"ar": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Arabic"
},
"bg": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Bulgarian"
},
"bs": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Bosnian"
},
"ca": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Catalan"
},
"cs": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Czech"
},
"da": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Danish"
},
"de": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in German"
},
"el": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Greek"
},
"en": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in English"
},
"es": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Spanish"
},
"et": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Estonian"
},
"fi": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Finnish"
},
"fr": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in French"
},
"he": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Hebrew"
},
"hr": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Croatian"
},
"hu": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Hungarian"
},
"id": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Indonesian"
},
"it": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Italian"
},
"ja": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Japanese"
},
"ko": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Korean"
},
"lt": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Lithuanian"
},
"lv": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Latvian"
},
"mn": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Mongolian"
},
"nb": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Norwegian"
},
"nl": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Dutch"
},
"pl": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Polish"
},
"pt": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Portuguese (Portugal)"
},
"ro": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Romanian"
},
"ru": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Russian"
},
"sl": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Slovenian"
},
"sr": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Serbian"
},
"sv": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Swedish"
},
"tr": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Turkish"
},
"vi": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Vietnamese"
},
"type": {
"enum": [
null,
"group_translated_content"
],
"type": "string",
"example": "group_translated_content",
"nullable": true,
"description": "The type of object - group_translated_content."
},
"pt-BR": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Portuguese (Brazil)"
},
"zh-CN": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Chinese (China)"
},
"zh-TW": {
"$ref": "#/components/schemas/group_content",
"description": "The content of the group in Chinese (Taiwan)"
}
},
"description": "The Translated Content of an Group. The keys are the locale codes and the values are the translated content of the Group."
}
help_center
{
"type": "object",
"title": "Help Center",
"x-tags": [
"Help Center"
],
"properties": {
"id": {
"type": "string",
"example": "123",
"description": "The unique identifier for the Help Center which is given by Intercom."
},
"created_at": {
"type": "integer",
"format": "date-time",
"example": 1672928359,
"description": "The time when the Help Center was created."
},
"identifier": {
"type": "string",
"example": "intercom",
"description": "The identifier of the Help Center. This is used in the URL of the Help Center."
},
"updated_at": {
"type": "integer",
"format": "date-time",
"example": 1672928610,
"description": "The time when the Help Center was last updated."
},
"display_name": {
"type": "string",
"example": "Intercom Help Center",
"description": "The display name of the Help Center only seen by teammates."
},
"workspace_id": {
"type": "string",
"example": "hfi1bx4l",
"description": "The id of the workspace which the Help Center belongs to."
},
"website_turned_on": {
"type": "boolean",
"example": true,
"description": "Whether the Help Center is turned on or not. This is controlled in your Help Center settings."
}
},
"description": "Help Centers contain collections"
}
help_center_list
{
"type": "object",
"title": "Help Centers",
"x-tags": [
"Help Center"
],
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/help_center"
},
"description": "An array of Help Center objects"
},
"type": {
"enum": [
"list"
],
"type": "string",
"example": "list",
"description": "The type of the object - `list`."
}
},
"description": "A list of Help Centers belonging to the App"
}
intercom_version
{
"enum": [
"1.0",
"1.1",
"1.2",
"1.3",
"1.4",
"2.0",
"2.1",
"2.2",
"2.3",
"2.4",
"2.5",
"2.6",
"2.7",
"2.8",
"2.9",
"2.10",
"Unstable"
],
"type": "string",
"default": "2.9",
"example": "2.9",
"description": "Intercom API version.</br>By default, it's equal to the version set in the app package."
}
merge_contacts_request
{
"type": "object",
"title": "Merge contact data",
"properties": {
"from": {
"type": "string",
"example": "5d70dd30de4efd54f42fd526",
"description": "The unique identifier for the contact to merge away from. Must be a lead."
},
"into": {
"type": "string",
"example": "5ba682d23d7cf92bef87bfd4",
"description": "The unique identifier for the contact to merge into. Must be a user."
}
},
"description": "Merge contact data."
}
message
{
"type": "object",
"title": "Message",
"x-tags": [
"Messages"
],
"required": [
"type",
"id",
"created_at",
"body",
"message_type"
],
"properties": {
"id": {
"type": "string",
"example": "1488971108",
"description": "The id representing the message."
},
"body": {
"type": "string",
"example": "Hello",
"description": "The message body, which may contain HTML."
},
"type": {
"type": "string",
"example": "user_message",
"description": "The type of the message"
},
"subject": {
"type": "string",
"example": "Greetings",
"description": "The subject of the message. Only present if message_type: email."
},
"created_at": {
"type": "integer",
"format": "date-time",
"example": 1667560812,
"description": "The time the conversation was created."
},
"message_type": {
"enum": [
"email",
"inapp",
"facebook",
"twitter"
],
"type": "string",
"example": "inapp",
"description": "The type of message that was sent. Can be email, inapp, facebook or twitter."
},
"conversation_id": {
"type": "string",
"example": "64619700005570",
"description": "The associated conversation_id"
}
},
"description": "Message are how you reach out to contacts in Intercom. They are created when an admin sends an outbound message to a contact."
}
multiple_filter_search_request
{
"type": "object",
"properties": {
"value": {
"oneOf": [
{
"type": "array",
"items": {
"$ref": "#/components/schemas/multiple_filter_search_request"
},
"title": "multiple filter search request",
"description": "Add mutiple filters."
},
{
"type": "array",
"items": {
"$ref": "#/components/schemas/single_filter_search_request"
},
"title": "single filter search request",
"description": "Add a single filter field."
}
]
},
"operator": {
"enum": [
"AND",
"OR"
],
"type": "string",
"example": "AND",
"description": "An operator to allow boolean inspection between multiple fields."
}
}
}
news_item
{
"type": "object",
"title": "News Item",
"x-tags": [
"News"
],
"properties": {
"id": {
"type": "string",
"example": "141",
"description": "The unique identifier for the news item which is given by Intercom."
},
"body": {
"type": "string",
"example": "We are excited to announce the launch of News Items, a new content type in Intercom enabling you to announce product updates, company news, promotions, events and more with your customers.",
"description": "The news item body, which may contain HTML."
},
"type": {
"enum": [
"news-item"
],
"type": "string",
"example": "news-item",
"description": "The type of object."
},
"state": {
"enum": [
"draft",
"live"
],
"type": "string",
"example": "live",
"description": "News items will not be visible to your users in the assigned newsfeeds until they are set live."
},
"title": {
"type": "string",
"example": "New feature: News Items",
"description": "The title of the news item."
},
"labels": {
"type": "array",
"items": {
"type": "string",
"example": "Product Update",
"nullable": true,
"description": "The label name."
},
"description": "Label names displayed to users to categorize the news item."
},
"reactions": {
"type": "array",
"items": {
"type": "string",
"example": "👍",
"nullable": true,
"description": "The emoji reaction to the news item."
},
"description": "Ordered list of emoji reactions to the news item. When empty, reactions are disabled."
},
"sender_id": {
"type": "integer",
"example": 123,
"description": "The id of the sender of the news item. Must be a teammate on the workspace."
},
"created_at": {
"type": "integer",
"format": "timestamp",
"example": 1610589632,
"description": "Timestamp for when the news item was created."
},
"updated_at": {
"type": "integer",
"format": "timestamp",
"example": 1610589632,
"description": "Timestamp for when the news item was last updated."
},
"workspace_id": {
"type": "string",
"example": "t74hdn32",
"description": "The id of the workspace which the news item belongs to."
},
"cover_image_url": {
"type": "string",
"format": "uri",
"example": "https://example.com/cover.jpg",
"nullable": true,
"description": "URL of the image used as cover. Must have .jpg or .png extension."
},
"deliver_silently": {
"type": "boolean",
"example": true,
"description": "When set to true, the news item will appear in the messenger newsfeed without showing a notification badge."
},
"newsfeed_assignments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/newsfeed_assignment"
},
"description": "A list of newsfeed_assignments to assign to the specified newsfeed."
}
},
"description": "A News Item is a content type in Intercom enabling you to announce product updates, company news, promotions, events and more with your customers."
}
news_item_request
{
"type": "object",
"title": "Create News Item Request",
"required": [
"title",
"sender_id"
],
"properties": {
"body": {
"type": "string",
"example": "<p>New costumes in store for this spooky season</p>",
"description": "The news item body, which may contain HTML."
},
"state": {
"enum": [
"draft",
"live"
],
"type": "string",
"example": "live",
"description": "News items will not be visible to your users in the assigned newsfeeds until they are set live."
},
"title": {
"type": "string",
"example": "Halloween is here!",
"description": "The title of the news item."
},
"labels": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"Product",
"Update",
"New"
],
"description": "Label names displayed to users to categorize the news item."
},
"reactions": {
"type": "array",
"items": {
"type": "string",
"nullable": true
},
"example": [
"😆",
"😅"
],
"description": "Ordered list of emoji reactions to the news item. When empty, reactions are disabled."
},
"sender_id": {
"type": "integer",
"example": 123,
"description": "The id of the sender of the news item. Must be a teammate on the workspace."
},
"deliver_silently": {
"type": "boolean",
"example": true,
"description": "When set to `true`, the news item will appear in the messenger newsfeed without showing a notification badge."
},
"newsfeed_assignments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/newsfeed_assignment"
},
"description": "A list of newsfeed_assignments to assign to the specified newsfeed."
}
},
"description": "A News Item is a content type in Intercom enabling you to announce product updates, company news, promotions, events and more with your customers."
}
newsfeed
{
"type": "object",
"title": "Newsfeed",
"x-tags": [
"News"
],
"properties": {
"id": {
"type": "string",
"example": "12312",
"description": "The unique identifier for the newsfeed which is given by Intercom."
},
"name": {
"type": "string",
"example": "My Newsfeed",
"description": "The name of the newsfeed. This name will never be visible to your users."
},
"type": {
"enum": [
"newsfeed"
],
"type": "string",
"example": "newsfeed",
"description": "The type of object."
},
"created_at": {
"type": "integer",
"format": "timestamp",
"example": 1674917488,
"description": "Timestamp for when the newsfeed was created."
},
"updated_at": {
"type": "integer",
"format": "timestamp",
"example": 1674917488,
"description": "Timestamp for when the newsfeed was last updated."
}
},
"description": "A newsfeed is a collection of news items, targeted to a specific audience.\n\nNewsfeeds currently cannot be edited through the API, please refer to [this article](https://www.intercom.com/help/en/articles/6362267-getting-started-with-news) to set up your newsfeeds in Intercom.\n"
}
newsfeed_assignment
{
"type": "object",
"title": "Newsfeed Assignment",
"x-tags": [
"News"
],
"properties": {
"newsfeed_id": {
"type": "integer",
"example": 198313,
"description": "The unique identifier for the newsfeed which is given by Intercom. Publish dates cannot be in the future, to schedule news items use the dedicated feature in app (see this article)."
},
"published_at": {
"type": "integer",
"format": "timestamp",
"example": 1674917488,
"description": "Publish date of the news item on the newsfeed, use this field if you want to set a publish date in the past (e.g. when importing existing news items). On write, this field will be ignored if the news item state is \"draft\"."
}
},
"description": "Assigns a news item to a newsfeed."
}
note
{
"type": "object",
"title": "Note",
"x-tags": [
"Notes"
],
"properties": {
"id": {
"type": "string",
"example": "17495962",
"description": "The id of the note."
},
"body": {
"type": "string",
"example": "<p>Text for the note.</p>",
"description": "The body text of the note."
},
"type": {
"type": "string",
"example": "note",
"description": "String representing the object's type. Always has the value `note`."
},
"author": {
"$ref": "#/components/schemas/admin",
"description": "Optional. Represents the Admin that created the note."
},
"contact": {
"type": "object",
"nullable": true,
"properties": {
"id": {
"type": "string",
"example": "214656d0c743eafcfde7f248",
"description": "The id of the contact."
},
"type": {
"type": "string",
"description": "String representing the object's type. Always has the value `contact`."
}
},
"description": "Represents the contact that the note was created about."
},
"created_at": {
"type": "integer",
"format": "timestamp",
"example": 1674589321,
"description": "The time the note was created."
}
},
"description": "Notes allow you to annotate and comment on your contacts."
}
note_list
{
"type": "object",
"title": "Paginated Response",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/note"
},
"description": "An array of notes."
},
"type": {
"type": "string",
"example": "list",
"description": "String representing the object's type. Always has the value `list`."
},
"pages": {
"$ref": "#/components/schemas/cursor_pages"
},
"total_count": {
"type": "integer",
"example": 1,
"description": "A count of the total number of notes."
}
},
"description": "A paginated list of notes associated with a contact."
}
open_conversation_request
{
"type": "object",
"title": "Open Conversation Request",
"required": [
"message_type",
"admin_id"
],
"properties": {
"admin_id": {
"type": "string",
"example": "5017690",
"description": "The id of the admin who is performing the action."
},
"message_type": {
"enum": [
"open"
],
"type": "string",
"example": "open"
}
},
"description": "Payload of the request to open a conversation"
}
pages_link
{
"type": "object",
"title": "Pagination Object",
"properties": {
"next": {
"type": "string",
"format": "uri",
"nullable": true,
"description": "A link to the next page of results. A response that does not contain a next link does not have further data to fetch."
},
"page": {
"type": "integer",
"example": 1
},
"type": {
"enum": [
"pages"
],
"type": "string",
"example": "pages"
},
"per_page": {
"type": "integer",
"example": 50
},
"total_pages": {
"type": "integer",
"example": 1
}
},
"description": "The majority of list resources in the API are paginated to allow clients to traverse data over multiple requests.\n\nTheir 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.\n"
}
paginated_response
{
"type": "object",
"title": "Paginated Response",
"properties": {
"data": {
"type": "array",
"items": {
"anyOf": [
{
"$ref": "#/components/schemas/news_item"
},
{
"$ref": "#/components/schemas/newsfeed"
}
]
},
"description": "An array of Objects"
},
"type": {
"enum": [
"list",
"conversation.list"
],
"type": "string",
"example": "list",
"description": "The type of object"
},
"pages": {
"$ref": "#/components/schemas/cursor_pages"
},
"total_count": {
"type": "integer",
"example": 1,
"description": "A count of the total number of objects."
}
},
"description": "Paginated Response"
}
part_attachment
{
"type": "object",
"title": "Part attachment",
"properties": {
"url": {
"type": "string",
"example": "https://picsum.photos/200/300",
"description": "The URL of the attachment"
},
"name": {
"type": "string",
"example": "example.png",
"description": "The name of the attachment"
},
"type": {
"type": "string",
"example": "upload",
"description": "The type of attachment"
},
"width": {
"type": "integer",
"example": 100,
"description": "The width of the attachment"
},
"height": {
"type": "integer",
"example": 100,
"description": "The height of the attachment"
},
"filesize": {
"type": "integer",
"example": 100,
"description": "The size of the attachment"
},
"content_type": {
"type": "string",
"example": "image/png",
"description": "The content type of the attachment"
}
},
"description": "The file attached to a part"
}
phone_switch
{
"type": "object",
"title": "Phone Switch",
"nullable": true,
"properties": {
"type": {
"enum": [
"phone_call_redirect"
],
"type": "string",
"default": "phone_call_redirect",
"example": "phone_call_redirect",
"description": ""
},
"phone": {
"type": "string",
"example": "+1 1234567890",
"description": "Phone number in E.164 format, that has received the SMS to continue the conversation in the Messenger."
}
},
"description": "Phone Switch Response"
}
redact_conversation_request
{
"oneOf": [
{
"type": "object",
"title": "Redact Conversation Part Request",
"required": [
"type",
"conversation_id",
"conversation_part_id"
],
"properties": {
"type": {
"enum": [
"conversation_part"
],
"type": "string",
"example": "conversation_part",
"description": "The type of resource being redacted."
},
"conversation_id": {
"type": "string",
"example": "19894788788",
"description": "The id of the conversation."
},
"conversation_part_id": {
"type": "string",
"example": "19381789428",
"description": "The id of the conversation_part."
}
},
"description": "Payload of the request to redact a conversation part"
},
{
"type": "object",
"title": "Redact Conversation Source Request",
"required": [
"type",
"conversation_id",
"source_id"
],
"properties": {
"type": {
"enum": [
"source"
],
"type": "string",
"example": "source",
"description": "The type of resource being redacted."
},
"source_id": {
"type": "string",
"example": "19894781231",
"description": "The id of the source."
},
"conversation_id": {
"type": "string",
"example": "19894788788",
"description": "The id of the conversation."
}
},
"description": "Payload of the request to redact a conversation source"
}
]
}
reference
{
"type": "object",
"title": "Reference",
"properties": {
"id": {
"type": "string",
"example": "1a2b3c",
"nullable": true,
"description": ""
},
"type": {
"type": "string",
"example": "contact",
"description": ""
}
},
"description": "reference to another object"
}
reply_conversation_request
{
"oneOf": [
{
"$ref": "#/components/schemas/contact_reply_conversation_request"
},
{
"$ref": "#/components/schemas/admin_reply_conversation_request"
}
]
}
search_request
{
"type": "object",
"title": "Search data",
"required": [
"query"
],
"properties": {
"query": {
"oneOf": [
{
"$ref": "#/components/schemas/single_filter_search_request",
"title": "Single filter search request"
},
{
"$ref": "#/components/schemas/multiple_filter_search_request",
"title": "multiple filter search request"
}
]
},
"pagination": {
"$ref": "#/components/schemas/starting_after_paging"
}
},
"description": "Search using Intercoms Search APIs."
}
section
{
"type": "object",
"title": "Section",
"x-tags": [
"Help Center"
],
"properties": {
"id": {
"type": "string",
"example": "6871119",
"description": "The unique identifier for the section which is given by Intercom."
},
"url": {
"type": "string",
"example": "http://intercom.test/help/section/name",
"nullable": true,
"description": "The URL of the section. For multilingual help centers, this will be the URL of the section for the default language."
},
"icon": {
"type": "string",
"example": "book-bookmark",
"nullable": true,
"description": "The icon of the section."
},
"name": {
"type": "string",
"example": "Default language name",
"description": "The name of the section. For multilingual sections, this will be the name of the default language's content."
},
"type": {
"enum": [
"section"
],
"type": "string",
"default": "section",
"example": "section",
"description": "The type of object - `section`."
},
"order": {
"type": "integer",
"example": 1,
"description": "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."
},
"parent_id": {
"oneOf": [
{
"type": "integer",
"title": "Integer"
},
{
"type": "string",
"title": "String"
}
],
"example": 6871119,
"description": "The id of the parent section."
},
"created_at": {
"type": "integer",
"format": "date-time",
"example": 1672928359,
"description": "The time when the section was created. For multilingual sections, this will be the timestamp of creation of the default language's content."
},
"updated_at": {
"type": "integer",
"format": "date-time",
"example": 1672928610,
"description": "The time when the section was last updated. For multilingual sections, this will be the timestamp of last update of the default language's content."
},
"workspace_id": {
"type": "string",
"example": "hfi1bx4l",
"description": "The id of the workspace which the section belongs to."
},
"default_locale": {
"type": "string",
"example": "en",
"description": "The default locale of the help center. This field is only returned for multilingual help centers."
},
"translated_content": {
"$ref": "#/components/schemas/group_translated_content",
"nullable": true
}
},
"description": "Sections are subdivisions of a collection, with a collection potentially having multiple sections."
}
section_list
{
"type": "object",
"title": "Sections",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/section"
},
"description": "An array of section objects"
},
"type": {
"enum": [
"list"
],
"type": "string",
"example": "list",
"description": "The type of the object - `list`."
},
"pages": {
"$ref": "#/components/schemas/cursor_pages"
},
"total_count": {
"type": "integer",
"example": 12,
"description": "A count of the total number of sections."
}
},
"description": "This will return a list of Sections for the App."
}
segment
{
"type": "object",
"title": "Segment",
"x-tags": [
"Segments"
],
"properties": {
"id": {
"type": "string",
"example": "56203d253cba154d39010062",
"description": "The unique identifier representing the segment."
},
"name": {
"type": "string",
"example": "Active",
"description": "The name of the segment."
},
"type": {
"enum": [
"segment"
],
"type": "string",
"example": "segment",
"description": "The type of object."
},
"count": {
"type": "integer",
"example": 3,
"nullable": true,
"description": "The number of items in the user segment. It's returned when `include_count=true` is included in the request."
},
"created_at": {
"type": "integer",
"example": 1394621988,
"description": "The time the segment was created."
},
"updated_at": {
"type": "integer",
"example": 1394622004,
"description": "The time the segment was updated."
},
"person_type": {
"enum": [
"contact",
"user"
],
"type": "string",
"example": "contact",
"description": "Type of the contact: contact (lead) or user."
}
},
"description": "A segment is a group of your contacts defined by the rules that you set."
}
segment_list
{
"type": "object",
"title": "Segment List",
"properties": {
"type": {
"enum": [
"segment.list"
],
"type": "string",
"example": "segment.list",
"description": "The type of the object"
},
"pages": {
"type": "object",
"description": "A pagination object, which may be empty, indicating no further pages to fetch."
},
"segments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/segment"
},
"description": "A list of Segment objects"
}
},
"description": "This will return a list of Segment Objects. The result may also have a pages object if the response is paginated."
}
single_filter_search_request
{
"type": "object",
"properties": {
"field": {
"type": "string",
"example": "custom_attributes.social_network",
"description": "The Intercom defined id representing the company."
},
"value": {
"type": "string",
"example": "facebook",
"description": "The Intercom defined id representing the company."
},
"operator": {
"enum": [
"=",
"!=",
"IN",
"NIN",
"<",
">",
"~",
"!~",
"^",
"$"
],
"type": "string",
"example": "=",
"description": "The Intercom defined id representing the company."
}
}
}
sla_applied
{
"type": "object",
"title": "Applied SLA",
"nullable": true,
"properties": {
"type": {
"type": "string",
"example": "conversation_sla_summary",
"description": "object type"
},
"sla_name": {
"type": "string",
"example": "",
"description": "The name of the SLA as given by the teammate when it was created."
},
"sla_status": {
"enum": [
"hit",
"missed",
"cancelled",
"active"
],
"type": "string",
"example": "hit",
"description": "SLA statuses:\n - `hit`: If there’s at least one hit event in the underlying sla_events table, and no “missed” or “canceled” events for the conversation.\n - `missed`: If there are any missed sla_events for the conversation and no canceled events. If there’s even a single missed sla event, the status will always be missed. A missed status is not applied when the SLA expires, only the next time a teammate replies.\n - `active`: An SLA has been applied to a conversation, but has not yet been fulfilled. SLA status is active only if there are no “hit, “missed”, or “canceled” events."
}
},
"description": "The SLA Applied object contains the details for which SLA has been applied to this conversation.\nImportant: if there are any canceled sla_events for the conversation - meaning an SLA has been manually removed from a conversation, the sla_status will always be returned as null.\n"
}
snooze_conversation_request
{
"type": "object",
"title": "Snooze Conversation Request",
"required": [
"message_type",
"admin_id",
"snoozed_until"
],
"properties": {
"admin_id": {
"type": "string",
"example": "5017691",
"description": "The id of the admin who is performing the action."
},
"message_type": {
"enum": [
"snoozed"
],
"type": "string",
"example": "snoozed"
},
"snoozed_until": {
"type": "integer",
"format": "timestamp",
"example": 1673609604,
"description": "The time you want the conversation to reopen."
}
},
"description": "Payload of the request to snooze a conversation"
}
social_profile
{
"type": "object",
"title": "Social Profile",
"properties": {
"url": {
"type": "string",
"format": "uri",
"example": "http://twitter.com/th1sland",
"description": "The name of the Social media profile"
},
"name": {
"type": "string",
"example": "Facebook",
"description": "The name of the Social media profile"
},
"type": {
"type": "string",
"example": "social_profile",
"description": "value is \"social_profile\""
}
},
"description": "A Social Profile allows you to label your contacts, companies, and conversations and list them using that Social Profile."
}
starting_after_paging
{
"type": "object",
"title": "StartingAfterPaging",
"nullable": true,
"properties": {
"page": {
"type": "integer",
"example": 2
},
"starting_after": {
"type": "string",
"example": "1HaSB+xrOyyMXAkS/c1RteCL7BzOzTvYjmjakgTergIH31eoe2v4/sbLsJWP\\nIncfQLD3ouPkZlCwJ86F\\n"
}
}
}
subscription_type
{
"type": "object",
"title": "Subscription Types",
"x-tags": [
"Subscription Types"
],
"properties": {
"id": {
"type": "string",
"example": "123456",
"description": "The unique identifier representing the subscription type."
},
"type": {
"type": "string",
"example": "subscription",
"description": "The type of the object - subscription"
},
"state": {
"enum": [
"live",
"draft",
"archived"
],
"type": "string",
"example": "live",
"description": "The state of the subscription type."
},
"consent_type": {
"enum": [
"opt_out",
"opt_in"
],
"type": "string",
"example": "opt_in",
"description": "Describes the type of consent."
},
"translations": {
"type": "array",
"items": {
"$ref": "#/components/schemas/translation"
},
"description": "An array of translations objects with the localised version of the subscription type in each available locale within your translation settings."
},
"content_types": {
"type": "array",
"items": {
"enum": [
"email",
"sms_message"
],
"type": "string",
"example": "email"
},
"description": "The message types that this subscription supports - can contain `email` or `sms_message`."
},
"default_translation": {
"$ref": "#/components/schemas/translation"
}
},
"description": "A subscription type lets customers easily opt out of non-essential communications without missing what's important to them."
}
subscription_type_list
{
"type": "object",
"title": "Subscription Types",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/subscription_type"
},
"description": "A list of subscription type objects associated with the workspace ."
},
"type": {
"enum": [
"list"
],
"type": "string",
"example": "list",
"description": "The type of the object"
}
},
"description": "A list of subscription type objects."
}
tag
{
"type": "object",
"title": "Tag",
"x-tags": [
"Tags"
],
"properties": {
"id": {
"type": "string",
"example": "123456",
"description": "The id of the tag"
},
"name": {
"type": "string",
"example": "Test tag",
"description": "The name of the tag"
},
"type": {
"type": "string",
"example": "tag",
"description": "value is \"tag\""
},
"applied_at": {
"type": "integer",
"format": "date-time",
"example": 1663597223,
"description": "The time when the tag was applied to the object"
},
"applied_by": {
"$ref": "#/components/schemas/reference"
}
},
"description": "A tag allows you to label your contacts, companies, and conversations and list them using that tag."
}
tag_company_request
{
"type": "object",
"title": "Tag Company Request Payload",
"required": [
"name",
"companies"
],
"properties": {
"name": {
"type": "string",
"example": "Independent",
"description": "The name of the tag, which will be created if not found."
},
"companies": {
"type": "array",
"items": {
"properties": {
"id": {
"type": "string",
"example": "531ee472cce572a6ec000006",
"description": "The Intercom defined id representing the company."
},
"company_id": {
"type": "string",
"example": "6",
"description": "The company id you have defined for the company."
}
}
},
"description": "The id or company_id of the company can be passed as input parameters."
}
},
"description": "You can tag a single company or a list of companies."
}
tag_list
{
"type": "object",
"title": "Tags",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/tag"
},
"description": "A list of tags objects associated with the workspace ."
},
"type": {
"enum": [
"list"
],
"type": "string",
"example": "list",
"description": "The type of the object"
}
},
"description": "A list of tags objects in the workspace."
}
tag_multiple_users_request
{
"type": "object",
"title": "Tag Users Request Payload",
"required": [
"name",
"users"
],
"properties": {
"name": {
"type": "string",
"example": "Independent",
"description": "The name of the tag, which will be created if not found."
},
"users": {
"type": "array",
"items": {
"properties": {
"id": {
"type": "string",
"example": "5f7f0d217289f8d2f4262080",
"description": "The Intercom defined id representing the user."
}
}
}
}
},
"description": "You can tag a list of users."
}
tags
{
"type": "object",
"title": "Tags",
"properties": {
"tags": {
"type": "array",
"items": {
"$ref": "#/components/schemas/tag"
},
"description": "A list of tags objects associated with the conversation."
},
"type": {
"enum": [
"tag.list"
],
"type": "string",
"example": "tag.list",
"description": "The type of the object"
}
},
"description": "A list of tags objects associated with a conversation"
}
team
{
"type": "object",
"title": "Team",
"x-tags": [
"Teams"
],
"properties": {
"id": {
"type": "string",
"example": "814865",
"description": "The id of the team"
},
"name": {
"type": "string",
"example": "Example Team",
"description": "The name of the team"
},
"type": {
"type": "string",
"example": "team",
"description": "Value is always \"team\""
},
"admin_ids": {
"type": "array",
"items": {
"type": "integer"
},
"example": [
493881
],
"description": "The list of admin IDs that are a part of the team."
},
"admin_priority_level": {
"$ref": "#/components/schemas/admin_priority_level"
}
},
"description": "Teams are groups of admins in Intercom."
}
team_list
{
"type": "object",
"title": "Team List",
"properties": {
"type": {
"enum": [
"team.list"
],
"type": "string",
"example": "team.list",
"description": "The type of the object"
},
"teams": {
"type": "array",
"items": {
"$ref": "#/components/schemas/team"
},
"description": "A list of team objects"
}
},
"description": "This will return a list of team objects for the App."
}
team_priority_level
{
"type": "object",
"title": "Team Priority Level",
"nullable": true,
"properties": {
"primary_team_ids": {
"type": "array",
"items": {
"type": "integer"
},
"example": [
814865
],
"nullable": true,
"description": "The primary team ids for the team"
},
"secondary_team_ids": {
"type": "array",
"items": {
"type": "integer"
},
"example": [
493881
],
"nullable": true,
"description": "The secondary team ids for the team"
}
},
"description": "Admin priority levels for teams"
}
ticket
{
"type": "object",
"title": "Ticket",
"x-tags": [
"Tickets"
],
"nullable": true,
"properties": {
"id": {
"type": "string",
"example": "1295",
"description": "The unique identifier for the ticket which is given by Intercom."
},
"type": {
"enum": [
"ticket"
],
"type": "string",
"default": "ticket",
"example": "ticket",
"description": "Always ticket"
},
"contacts": {
"$ref": "#/components/schemas/ticket_contacts"
},
"is_shared": {
"type": "boolean",
"example": true,
"description": "Whether or not the ticket is shared with the customer."
},
"ticket_id": {
"type": "string",
"example": "1390",
"description": "The ID of the Ticket used in the Intercom Inbox and Messenger. Do not use ticket_id for API queries."
},
"created_at": {
"type": "integer",
"format": "date-time",
"example": 1663597223,
"description": "The time the ticket was created as a UTC Unix timestamp."
},
"updated_at": {
"type": "integer",
"format": "date-time",
"example": 1663597260,
"description": "The last time the ticket was updated as a UTC Unix timestamp."
},
"ticket_type": {
"$ref": "#/components/schemas/ticket_type"
},
"ticket_parts": {
"$ref": "#/components/schemas/ticket_parts"
},
"ticket_state": {
"enum": [
"submitted",
"in_progress",
"waiting_on_customer",
"resolved"
],
"type": "string",
"example": "submitted",
"description": "The state the ticket is currenly in"
},
"team_assignee_id": {
"type": "string",
"example": "1295",
"description": "The id representing the team assigned to the ticket."
},
"admin_assignee_id": {
"type": "string",
"example": "1295",
"description": "The id representing the admin assigned to the ticket."
},
"ticket_attributes": {
"$ref": "#/components/schemas/ticket_custom_attributes"
},
"ticket_state_external_label": {
"type": "string",
"description": "The state the ticket is currently in, in a human readable form - visible to customers, in the messenger, email and tickets portal."
},
"ticket_state_internal_label": {
"type": "string",
"description": "The state the ticket is currently in, in a human readable form - visible in Intercom"
}
},
"description": "Tickets are how you track requests from your users."
}
ticket_contacts
{
"type": "object",
"title": "Contacts",
"x-tags": [
"Tickets"
],
"properties": {
"type": {
"enum": [
"contact.list"
],
"type": "string",
"example": "contact.list",
"description": "always contact.list"
},
"contacts": {
"type": "array",
"items": {
"$ref": "#/components/schemas/contact_reference"
},
"description": "The list of contacts affected by this ticket."
}
},
"description": "The list of contacts affected by a ticket."
}
ticket_custom_attributes
{
"type": "object",
"title": "Ticket Attributes",
"example": {
"_default_title_": "Found a bug",
"_default_description_": "The button's not working"
},
"description": "An object containing the different attributes associated to the ticket as key-value pairs. For the default title and description attributes, the keys are `_default_title_` and `_default_description_`.",
"additionalProperties": {
"anyOf": [
{
"type": "string",
"nullable": true
},
{
"type": "number"
},
{
"type": "boolean"
},
{
"type": "array",
"items": {
"description": "WARNING: Missing items property in array schema. Missing items property has been filled with this AnyType schema."
}
},
{
"$ref": "#/components/schemas/file_attribute"
}
]
}
}
ticket_note
{
"type": "object",
"title": "A Ticket Part representing a note",
"properties": {
"id": {
"type": "string",
"example": "3",
"description": "The id representing the note."
},
"body": {
"type": "string",
"example": "<p>Okay!</p>",
"nullable": true,
"description": "The message body, which may contain HTML."
},
"type": {
"enum": [
"ticket_part"
],
"type": "string",
"example": "ticket_part",
"description": "Always ticket_part"
},
"author": {
"$ref": "#/components/schemas/ticket_part_author"
},
"redacted": {
"type": "boolean",
"example": false,
"description": "Whether or not the ticket part has been redacted."
},
"part_type": {
"enum": [
"note"
],
"type": "string",
"example": "note",
"description": "Always note"
},
"created_at": {
"type": "integer",
"format": "date-time",
"example": 1663597223,
"description": "The time the note was created."
},
"updated_at": {
"type": "integer",
"format": "date-time",
"example": 1663597260,
"description": "The last time the note was updated."
},
"attachments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/part_attachment"
},
"title": "Ticket part attachments",
"description": "A list of attachments for the part."
}
},
"description": "A Ticket Part representing a note in the ticket"
}
ticket_part
{
"type": "object",
"title": "Ticket Part",
"x-tags": [
"Tickets"
],
"properties": {
"id": {
"type": "string",
"example": "3",
"description": "The id representing the ticket part."
},
"body": {
"type": "string",
"example": "<p>Okay!</p>",
"nullable": true,
"description": "The message body, which may contain HTML."
},
"type": {
"type": "string",
"example": "ticket_part",
"description": "Always ticket_part"
},
"author": {
"$ref": "#/components/schemas/ticket_part_author"
},
"redacted": {
"type": "boolean",
"example": false,
"description": "Whether or not the ticket part has been redacted."
},
"part_type": {
"type": "string",
"example": "comment",
"description": "The type of ticket part."
},
"created_at": {
"type": "integer",
"format": "date-time",
"example": 1663597223,
"description": "The time the ticket part was created."
},
"updated_at": {
"type": "integer",
"format": "date-time",
"example": 1663597260,
"description": "The last time the ticket part was updated."
},
"assigned_to": {
"$ref": "#/components/schemas/reference",
"nullable": true,
"description": "The id of the admin that was assigned the ticket by this ticket_part (null if there has been no change in assignment.)"
},
"attachments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/part_attachment"
},
"title": "Ticket part attachments",
"description": "A list of attachments for the part."
},
"external_id": {
"type": "string",
"example": "abcd1234",
"nullable": true,
"description": "The external id of the ticket part"
},
"ticket_state": {
"enum": [
"submitted",
"in_progress",
"waiting_on_customer",
"resolved"
],
"type": "string",
"example": "submitted",
"description": "The state of the ticket."
},
"previous_ticket_state": {
"enum": [
"submitted",
"in_progress",
"waiting_on_customer",
"resolved"
],
"type": "string",
"example": "submitted",
"description": "The previous state of the ticket."
}
},
"description": "A Ticket Part represents a message in the ticket."
}
ticket_part_author
{
"type": "object",
"title": "Ticket part author",
"properties": {
"id": {
"type": "string",
"example": "274",
"description": "The id of the author"
},
"name": {
"type": "string",
"example": "Operator",
"nullable": true,
"description": "The name of the author"
},
"type": {
"enum": [
"admin",
"bot",
"team"
],
"type": "string"
},
"email": {
"type": "string",
"format": "email",
"example": "operator+abcd1234@intercom.io",
"description": "The email of the author"
}
},
"description": "The author that wrote or triggered the part. Can be a bot, admin, team or user."
}
ticket_parts
{
"type": "object",
"title": "Ticket Parts",
"properties": {
"type": {
"enum": [
"ticket_part.list"
],
"type": "string",
"example": "ticket_part.list",
"description": ""
},
"total_count": {
"type": "integer",
"example": 2,
"description": ""
},
"ticket_parts": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ticket_part"
},
"title": "Tickt Parts",
"description": "A list of Ticket Part objects for each ticket. There is a limit of 500 parts."
}
},
"description": "A list of Ticket Part objects for each note and event in the ticket. There is a limit of 500 parts."
}
ticket_request_custom_attributes
{
"type": "object",
"title": "Ticket Attributes",
"example": {
"_default_title_": "Found a bug",
"_default_description_": "The button is not working"
},
"description": "The attributes set on the ticket. When setting the default title and description attributes, the attribute keys that should be used are `_default_title_` and `_default_description_`. When setting ticket type attributes of the list attribute type, the key should be the attribute name and the value of the attribute should be the list item id, obtainable by [listing the ticket type](ref:get_ticket-types). For example, if the ticket type has an attribute called `priority` of type `list`, the key should be `priority` and the value of the attribute should be the guid of the list item (e.g. `de1825a0-0164-4070-8ca6-13e22462fa7e`).",
"additionalProperties": {
"anyOf": [
{
"type": "string",
"nullable": true
},
{
"type": "number"
},
{
"type": "boolean"
},
{
"type": "array",
"items": {
"description": "WARNING: Missing items property in array schema. Missing items property has been filled with this AnyType schema."
}
}
]
}
}
ticket_type
{
"type": "object",
"title": "Ticket Type",
"x-tags": [
"Tickets"
],
"nullable": true,
"properties": {
"id": {
"type": "string",
"example": "1295",
"description": "The id representing the ticket type."
},
"icon": {
"type": "string",
"example": "🐞",
"description": "The icon of the ticket type"
},
"name": {
"type": "string",
"example": "Bug",
"description": "The name of the ticket type"
},
"type": {
"type": "string",
"example": "ticket_type",
"description": "String representing the object's type. Always has the value `ticket_type`."
},
"archived": {
"type": "boolean",
"example": false,
"description": "Whether the ticket type is archived or not."
},
"created_at": {
"type": "integer",
"format": "timestamp",
"description": "The date and time the ticket type was created."
},
"updated_at": {
"type": "integer",
"format": "timestamp",
"description": "The date and time the ticket type was last updated."
},
"description": {
"type": "string",
"example": "A bug that has been reported.",
"description": "The description of the ticket type"
},
"workspace_id": {
"type": "string",
"example": "ecahpwf5",
"description": "The id of the workspace that the ticket type belongs to."
},
"ticket_type_attributes": {
"$ref": "#/components/schemas/ticket_type_attribute_list"
}
},
"description": "A ticket type, used to define the data fields to be captured in a ticket."
}
ticket_type_attribute
{
"type": "object",
"title": "Ticket Type Attribute",
"nullable": true,
"properties": {
"id": {
"type": "string",
"example": "1",
"description": "The id representing the ticket type attribute."
},
"name": {
"type": "string",
"example": "Title",
"description": "The name of the ticket type attribute"
},
"type": {
"type": "string",
"example": "ticket_type_attribute",
"description": "String representing the object's type. Always has the value `ticket_type_attribute`."
},
"order": {
"type": "integer",
"example": 1,
"description": "The order of the attribute against other attributes"
},
"default": {
"type": "boolean",
"example": true,
"description": "Whether the attribute is built in or not."
},
"archived": {
"type": "boolean",
"example": false,
"description": "Whether the ticket type attribute is archived or not."
},
"data_type": {
"type": "string",
"example": "string",
"description": "The type of the data attribute (allowed values: \"string list integer decimal boolean datetime files\")"
},
"created_at": {
"type": "integer",
"format": "timestamp",
"description": "The date and time the ticket type attribute was created."
},
"updated_at": {
"type": "integer",
"format": "timestamp",
"description": "The date and time the ticket type attribute was last updated."
},
"description": {
"type": "string",
"example": "Bug title.",
"description": "The description of the ticket type attribute"
},
"workspace_id": {
"type": "string",
"example": "ecahpwf5",
"description": "The id of the workspace that the ticket type attribute belongs to."
},
"input_options": {
"type": "object",
"example": "multiline: true",
"description": "Input options for the attribute"
},
"ticket_type_id": {
"type": "integer",
"example": 42,
"description": "The id of the ticket type that the attribute belongs to."
},
"visible_on_create": {
"type": "boolean",
"default": true,
"example": false,
"description": "Whether the attribute is visible or not to teammates."
},
"required_to_create": {
"type": "boolean",
"default": false,
"example": false,
"description": "Whether the attribute is required or not for teammates."
},
"visible_to_contacts": {
"type": "boolean",
"default": true,
"example": false,
"description": "Whether the attribute is visible or not to contacts."
},
"required_to_create_for_contacts": {
"type": "boolean",
"default": false,
"example": false,
"description": "Whether the attribute is required or not for contacts."
}
},
"description": "Ticket type attribute, used to define each data field to be captured in a ticket."
}
ticket_type_attribute_list
{
"type": "object",
"title": "Ticket Type Attributes",
"properties": {
"type": {
"type": "string",
"description": "String representing the object's type. Always has the value `ticket_type_attributes.list`."
},
"ticket_type_attributes": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ticket_type_attribute"
},
"description": "A list of ticket type attributes associated with a given ticket type."
}
},
"description": "A list of attributes associated with a given ticket type."
}
ticket_type_list
{
"type": "object",
"title": "Ticket Types",
"properties": {
"type": {
"type": "string",
"description": "String representing the object's type. Always has the value `ticket_type.list`."
},
"ticket_types": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ticket_type"
},
"description": "A list of ticket_types associated with a given workspace."
}
},
"description": "A list of ticket types associated with a given workspace."
}
translation
{
"type": "object",
"title": "Translation",
"properties": {
"name": {
"type": "string",
"example": "Announcements",
"description": "The localised name of the subscription type."
},
"locale": {
"type": "string",
"example": "en",
"description": "The two character identifier for the language of the translation object."
},
"description": {
"type": "string",
"example": "Offers, product and feature announcements",
"description": "The localised description of the subscription type."
}
},
"description": "A translation object contains the localised details of a subscription type."
}
untag_company_request
{
"type": "object",
"title": "Untag Company Request Payload",
"required": [
"name",
"companies"
],
"properties": {
"name": {
"type": "string",
"example": "Independent",
"description": "The name of the tag which will be untagged from the company"
},
"companies": {
"type": "array",
"items": {
"properties": {
"id": {
"type": "string",
"example": "531ee472cce572a6ec000006",
"description": "The Intercom defined id representing the company."
},
"untag": {
"type": "boolean",
"example": true,
"description": "Always set to true"
},
"company_id": {
"type": "string",
"example": "6",
"description": "The company id you have defined for the company."
}
}
},
"description": "The id or company_id of the company can be passed as input parameters."
}
},
"description": "You can tag a single company or a list of companies."
}
update_article_request
{
"type": "object",
"title": "Update Article Request Payload",
"nullable": true,
"properties": {
"body": {
"type": "string",
"example": "<p>This is the body in html</p>",
"description": "The content of the article. For multilingual articles, this will be the body of the default language's content."
},
"state": {
"enum": [
"published",
"draft"
],
"type": "string",
"example": "draft",
"description": "Whether the article will be `published` or will be a `draft`. Defaults to draft. For multilingual articles, this will be the state of the default language's content."
},
"title": {
"type": "string",
"example": "Thanks for everything",
"description": "The title of the article.For multilingual articles, this will be the title of the default language's content."
},
"author_id": {
"type": "integer",
"example": 1295,
"description": "The id of the author of the article. For multilingual articles, this will be the id of the author of the default language's content. Must be a teammate on the help center's workspace."
},
"parent_id": {
"type": "string",
"example": "18",
"description": "The id of the article's parent collection or section. An article without this field stands alone."
},
"description": {
"type": "string",
"example": "Description of the Article",
"description": "The description of the article. For multilingual articles, this will be the description of the default language's content."
},
"parent_type": {
"type": "string",
"example": "collection",
"description": "The type of parent, which can either be a `collection` or `section`."
},
"translated_content": {
"$ref": "#/components/schemas/article_translated_content"
}
},
"description": "You can Update an Article"
}
update_collection_request
{
"type": "object",
"title": "Update Collection Request Payload",
"properties": {
"name": {
"type": "string",
"example": "collection 51",
"description": "The name of the collection. For multilingual collections, this will be the name of the default language's content."
},
"description": {
"type": "string",
"example": "English description",
"description": "The description of the collection. For multilingual collections, this will be the description of the default language's content."
},
"translated_content": {
"$ref": "#/components/schemas/group_translated_content",
"nullable": true
}
},
"description": "You can update a collection"
}
update_contact_request
{
"type": "object",
"title": "Update Contact Request Payload",
"properties": {
"name": {
"type": "string",
"example": "John Doe",
"nullable": true,
"description": "The contacts name"
},
"role": {
"type": "string",
"description": "The role of the contact."
},
"email": {
"type": "string",
"example": "jdoe@example.com",
"description": "The contacts email"
},
"phone": {
"type": "string",
"example": "+353871234567",
"nullable": true,
"description": "The contacts phone"
},
"avatar": {
"type": "string",
"example": "https://www.example.com/avatar_image.jpg",
"nullable": true,
"description": "An image URL containing the avatar of a contact"
},
"owner_id": {
"type": "integer",
"example": 123,
"nullable": true,
"description": "The id of an admin that has been assigned account ownership of the contact"
},
"external_id": {
"type": "string",
"description": "A unique identifier for the contact which is given to Intercom"
},
"last_seen_at": {
"type": "integer",
"format": "date-time",
"example": 1571672154,
"nullable": true,
"description": "The time when the contact was last seen (either where the Intercom Messenger was installed or when specified manually)"
},
"signed_up_at": {
"type": "integer",
"format": "date-time",
"example": 1571672154,
"nullable": true,
"description": "The time specified for when a contact signed up"
},
"custom_attributes": {
"type": "object",
"nullable": true,
"description": "The custom attributes which are set for the contact"
},
"unsubscribed_from_emails": {
"type": "boolean",
"example": true,
"nullable": true,
"description": "Whether the contact is unsubscribed from emails"
}
},
"description": "You can update a contact"
}
update_conversation_request
{
"type": "object",
"title": "Update Conversation Request",
"properties": {
"read": {
"type": "boolean",
"example": true,
"description": "Mark a conversation as read within Intercom."
},
"custom_attributes": {
"$ref": "#/components/schemas/custom_attributes"
}
},
"description": "Payload of the request to update a conversation"
}
update_data_attribute_request
{
"type": "object",
"title": "Update Data Attribute Request",
"properties": {
"options": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"option1",
"option2"
],
"description": "To create list attributes. Provide a set of hashes with `value` as the key of the options you want to make. `data_type` must be `string`."
},
"archived": {
"type": "boolean",
"example": false,
"description": "Whether the attribute is to be archived or not."
},
"description": {
"type": "string",
"example": "My Data Attribute Description",
"description": "The readable description you see in the UI for the attribute."
},
"messenger_writable": {
"type": "boolean",
"example": false,
"description": "Can this attribute be updated by the Messenger"
}
},
"description": ""
}
update_section_request
{
"type": "object",
"title": "Update Section Request Payload",
"properties": {
"name": {
"type": "string",
"example": "Section 51",
"description": "The name of the collection. For multilingual collections, this will be the name of the default language's content."
},
"parent_id": {
"type": "integer",
"example": 18,
"description": "The id for the collection this section will be within."
},
"translated_content": {
"$ref": "#/components/schemas/group_translated_content",
"nullable": true
}
},
"description": "You can update a Section"
}
update_ticket_request
{
"type": "object",
"title": "Update Ticket Request Payload",
"properties": {
"state": {
"enum": [
"in_progress",
"waiting_on_customer",
"resolved"
],
"type": "string",
"example": "submitted",
"description": "The state of the ticket."
},
"is_shared": {
"type": "boolean",
"example": true,
"description": "Specify whether the ticket is visible to users."
},
"assignment": {
"type": "object",
"properties": {
"admin_id": {
"type": "string",
"example": "123",
"description": "The ID of the admin performing the action."
},
"assignee_id": {
"type": "string",
"example": "123",
"description": "The ID of the admin or team to which the ticket is assigned. Set this 0 to unassign it."
}
}
},
"ticket_attributes": {
"type": "object",
"example": {
"title": "example",
"description": "having a problem"
},
"description": "The attributes set on the ticket."
}
},
"description": "You can update a Ticket"
}
update_ticket_type_attribute_request
{
"type": "object",
"title": "Update Ticket Type Attribute Request Payload",
"properties": {
"name": {
"type": "string",
"example": "Bug Priority",
"description": "The name of the ticket type attribute"
},
"archived": {
"type": "boolean",
"example": false,
"description": "Whether the attribute should be archived and not shown during creation of the ticket (it will still be present on previously created tickets)"
},
"multiline": {
"type": "boolean",
"example": false,
"description": "Whether the attribute allows multiple lines of text (only applicable to string attributes)"
},
"list_items": {
"type": "string",
"example": "Low Priority,Medium Priority,High Priority",
"description": "A comma delimited list of items for the attribute value (only applicable to list attributes)"
},
"description": {
"type": "string",
"example": "Priority level of the bug",
"description": "The description of the attribute presented to the teammate or contact"
},
"visible_on_create": {
"type": "boolean",
"default": true,
"example": true,
"description": "Whether the attribute is visible to teammates when creating a ticket in Inbox."
},
"required_to_create": {
"type": "boolean",
"default": false,
"example": false,
"description": "Whether the attribute is required to be filled in when teammates are creating the ticket in Inbox."
},
"visible_to_contacts": {
"type": "boolean",
"default": true,
"example": true,
"description": "Whether the attribute is visible to contacts when creating a ticket in Messenger."
},
"allow_multiple_values": {
"type": "boolean",
"example": false,
"description": "Whether the attribute allows multiple files to be attached to it (only applicable to file attributes)"
},
"required_to_create_for_contacts": {
"type": "boolean",
"default": false,
"example": false,
"description": "Whether the attribute is required to be filled in when contacts are creating the ticket in Messenger."
}
},
"description": "You can update a Ticket Type Attribute"
}
update_ticket_type_request
{
"type": "object",
"title": "Update Ticket Type Request Payload",
"nullable": true,
"properties": {
"icon": {
"type": "string",
"default": "🎟️",
"example": "🐞",
"description": "The icon of the ticket type."
},
"name": {
"type": "string",
"example": "Bug",
"description": "The name of the ticket type."
},
"archived": {
"type": "boolean",
"example": false,
"description": "The archived status of the ticket type."
},
"description": {
"type": "string",
"example": "A bug has been occured",
"description": "The description of the ticket type."
},
"is_internal": {
"type": "boolean",
"default": false,
"example": false,
"description": "Whether the tickets associated with this ticket type are intended for internal use only or will be shared with customers. This is currently a limited attribute."
}
},
"description": "The request payload for updating a ticket type.\nYou can copy the `icon` property for your ticket type from [Twemoji Cheatsheet](https://twemoji-cheatsheet.vercel.app/)\n"
}
update_visitor_request
{
"type": "object",
"anyOf": [
{
"required": [
"id"
]
},
{
"required": [
"user_id"
]
}
],
"title": "Update Visitor Request Payload",
"properties": {
"id": {
"type": "string",
"example": "8a88a590-e",
"description": "A unique identified for the visitor which is given by Intercom."
},
"name": {
"type": "string",
"example": "Christian Bale",
"description": "The visitor's name."
},
"user_id": {
"type": "string",
"example": "123",
"description": "A unique identified for the visitor which is given by you."
},
"custom_attributes": {
"type": "object",
"example": {
"team_mates": 9,
"monthly_spend": 155.5,
"paid_subscriber": true
},
"description": "The custom attributes which are set for the visitor.",
"additionalProperties": {
"type": "string"
}
}
},
"description": "Update an existing visitor."
}
visitor
{
"type": "object",
"title": "Visitor",
"nullable": true,
"properties": {
"id": {
"type": "string",
"example": "530370b477ad7120001d",
"description": "The Intercom defined id representing the Visitor."
},
"name": {
"type": "string",
"example": "Jane Doe",
"nullable": true,
"description": "The name of the visitor."
},
"tags": {
"type": "object",
"properties": {
"tags": {
"type": "array",
"items": {
"properties": {
"id": {
"type": "string",
"example": "8482",
"description": "The id of the tag."
},
"name": {
"type": "string",
"example": "tag_name",
"description": "The name of the tag."
},
"type": {
"enum": [
"tag"
],
"type": "string",
"example": "tag",
"description": "The type of the object"
}
}
}
},
"type": {
"enum": [
"tag.list"
],
"type": "string",
"example": "tag.list",
"description": "The type of the object"
}
}
},
"type": {
"type": "string",
"default": "visitor",
"example": "visitor",
"description": "Value is 'visitor'"
},
"email": {
"type": "string",
"format": "email",
"example": "jane.doe@example.com",
"description": "The email of the visitor."
},
"phone": {
"type": "string",
"example": "555-555-5555",
"nullable": true,
"description": "The phone number of the visitor."
},
"app_id": {
"type": "string",
"example": "hfi1bx4l",
"description": "The id of the app the visitor is associated with."
},
"avatar": {
"type": "object",
"properties": {
"type": {
"type": "string",
"default": "avatar",
"example": "avatar",
"description": ""
},
"image_url": {
"type": "string",
"format": "uri",
"example": "https://example.com/avatar.png",
"nullable": true,
"description": "This object represents the avatar associated with the visitor."
}
}
},
"user_id": {
"type": "string",
"example": "8a88a590-e1c3-41e2-a502-e0649dbf721c",
"description": "Automatically generated identifier for the Visitor."
},
"owner_id": {
"type": "string",
"example": "5169261",
"nullable": true,
"description": "The id of the admin that owns the Visitor."
},
"referrer": {
"type": "string",
"example": "https://www.google.com/",
"nullable": true,
"description": "The referer of the visitor."
},
"segments": {
"type": "object",
"properties": {
"type": {
"enum": [
"segment.list"
],
"type": "string",
"example": "segment.list",
"description": "The type of the object"
},
"segments": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"utm_term": {
"type": "string",
"example": "messenger",
"nullable": true,
"description": "The utm_term of the visitor."
},
"anonymous": {
"type": "boolean",
"example": false,
"description": "Identifies if this visitor is anonymous."
},
"companies": {
"type": "object",
"properties": {
"type": {
"enum": [
"company.list"
],
"type": "string",
"example": "company.list",
"description": "The type of the object"
},
"companies": {
"type": "array",
"items": {
"$ref": "#/components/schemas/company"
}
}
}
},
"pseudonym": {
"type": "string",
"example": "Red Duck from Dublin",
"nullable": true,
"description": "The pseudonym of the visitor."
},
"created_at": {
"type": "integer",
"example": 1663597223,
"description": "The time the Visitor was added to Intercom."
},
"updated_at": {
"type": "integer",
"example": 1663597260,
"description": "The last time the Visitor was updated."
},
"utm_medium": {
"type": "string",
"example": "email",
"nullable": true,
"description": "The utm_medium of the visitor."
},
"utm_source": {
"type": "string",
"example": "Intercom",
"nullable": true,
"description": "The utm_source of the visitor."
},
"utm_content": {
"type": "string",
"example": "banner",
"nullable": true,
"description": "The utm_content of the visitor."
},
"do_not_track": {
"type": "boolean",
"example": false,
"nullable": true,
"description": "Identifies if this visitor has do not track enabled."
},
"signed_up_at": {
"type": "integer",
"example": 1663597223,
"description": "The time the Visitor signed up for your product."
},
"utm_campaign": {
"type": "string",
"example": "intercom-link",
"nullable": true,
"description": "The utm_campaign of the visitor."
},
"location_data": {
"type": "object",
"properties": {
"type": {
"type": "string",
"default": "location_data",
"example": "location_data",
"description": ""
},
"timezone": {
"type": "string",
"example": "Europe/Dublin",
"description": "The timezone of the visitor."
},
"city_name": {
"type": "string",
"example": "Dublin",
"description": "The city name of the visitor."
},
"postal_code": {
"type": "string",
"example": "D02 N960",
"description": "The postal code of the visitor."
},
"region_name": {
"type": "string",
"example": "Leinster",
"description": "The region name of the visitor."
},
"country_code": {
"type": "string",
"example": "IRL",
"description": "The country code of the visitor."
},
"country_name": {
"type": "string",
"example": "Ireland",
"description": "The country name of the visitor."
},
"continent_code": {
"type": "string",
"example": "EU",
"description": "The continent code of the visitor."
}
}
},
"session_count": {
"type": "integer",
"example": 1,
"description": "The number of sessions the Visitor has had."
},
"las_request_at": {
"type": "integer",
"example": 1663597260,
"description": "The time the Lead last recorded making a request."
},
"social_profiles": {
"type": "object",
"properties": {
"type": {
"enum": [
"social_profile.list"
],
"type": "string",
"example": "social_profile.list",
"description": "The type of the object"
},
"social_profiles": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"has_hard_bounced": {
"type": "boolean",
"example": false,
"description": "Identifies if this visitor has had a hard bounce."
},
"custom_attributes": {
"type": "object",
"description": "The custom attributes you have set on the Visitor.",
"additionalProperties": {
"type": "string"
}
},
"remote_created_at": {
"type": "integer",
"example": 1663597223,
"description": "The time the Visitor was added to Intercom."
},
"marked_email_as_spam": {
"type": "boolean",
"example": false,
"description": "Identifies if this visitor has marked an email as spam."
},
"unsubscribed_from_emails": {
"type": "boolean",
"example": false,
"description": "Whether the Visitor is unsubscribed from emails."
}
},
"description": "Visitors are useful for representing anonymous people that have not yet been identified. They usually represent website visitors. Visitors are not visible in Intercom platform. The Visitors resource provides methods to fetch, update, convert and delete."
}
visitor_deleted_object
{
"type": "object",
"title": "Visitor Deleted Object",
"properties": {
"id": {
"type": "string",
"example": "530370b477ad7120001d",
"description": "The unique identifier for the visitor which is given by Intercom."
},
"type": {
"enum": [
"visitor"
],
"type": "string",
"example": "visitor",
"description": "The type of object which was deleted"
},
"user_id": {
"type": "string",
"example": "8a88a590-e1c3-41e2-a502-e0649dbf721c",
"description": "Automatically generated identifier for the Visitor."
}
},
"description": "Response returned when an object is deleted"
}