Skip to content

Intercom API v2.16 changelog

Official spec by Intercom

Mirrored962.16-65a9457

Everything spec0 has recorded for this API, newest first, with the diff between each entry and the one before it.

Intercom last changed this API on Oct 12, 2026. 45 changes across 35 endpoints, and 2 of them may not be compatible with code that already calls it.

Latest release

  1. 2.16-65a9457
    Latest
    2 changes may be incompatible96

    Detected spec digest 65a9457

    Mirrored from the official Intercom OpenAPI specification (their version: 2.16-65a9457).

    45 changes in the API surface

    35 endpoints
    • GET/admins/activity_logsall may be incompatible1

      operationId listActivityLogs

      • added the new 'inbox_bulk_action' enum value to the 'activity_logs/items/activity_type' response property for the response status '200' may be incompatible

        Adding new enum values to response could be unexpected for clients, use x-extensible-enum instead.

    • POST/admins/activity_logs/searchall may be incompatible1

      operationId searchActivityLogs

      • added the new 'inbox_bulk_action' enum value to the 'activity_logs/items/activity_type' response property for the response status '200' may be incompatible

        Adding new enum values to response could be unexpected for clients, use x-extensible-enum instead.

    • POST/tickets3

      operationId createTicket

      • added the new optional request property '/allOf[subschema #1: Create Ticket Request Payload]/channel'

      • added the optional property 'channel' to the response with the '200' status

      • added the optional property 'ticket_parts/ticket_parts/items/translations' to the response with the '200' status

    • GET/tickets/{ticket_id}2

      operationId getTicket

      • added the optional property 'channel' to the response with the '200' status

      • added the optional property 'ticket_parts/ticket_parts/items/translations' to the response with the '200' status

    • POST/ai/external_pages2

      operationId createExternalPage

      • added the new optional request property 'audience_ids'

      • added the optional property 'audience_ids' to the response with the '200' status

    • POST/conversations/{conversation_id}/convert2

      operationId convertConversationToTicket

      • added the optional property 'channel' to the response with the '200' status

      • added the optional property 'ticket_parts/ticket_parts/items/translations' to the response with the '200' status

    • POST/fin/start2

      operationId startFinConversation

      • added the new optional request property 'environment'

      • added the optional property 'intercom_conversation_id' to the response with the '200' status

    • POST/tickets/{ticket_id}/change_type2

      operationId changeTicketType

      • added the optional property 'channel' to the response with the '200' status

      • added the optional property 'ticket_parts/ticket_parts/items/translations' to the response with the '200' status

    • POST/tickets/search2

      operationId searchTickets

      • added the optional property 'tickets/items/channel' to the response with the '200' status

      • added the optional property 'tickets/items/ticket_parts/ticket_parts/items/translations' to the response with the '200' status

    • PUT/ai/external_pages/{page_id}2

      operationId updateExternalPage

      • added the new optional request property 'audience_ids'

      • added the optional property 'audience_ids' to the response with the '200' status

    • PUT/tickets/{ticket_id}2

      operationId updateTicket

      • added the optional property 'channel' to the response with the '200' status

      • added the optional property 'ticket_parts/ticket_parts/items/translations' to the response with the '200' status

    • DELETE/ai/external_pages/{page_id}1

      operationId deleteExternalPage

      • added the optional property 'audience_ids' to the response with the '200' status

    • DELETE/tickets/{ticket_id}/linked_conversations/{id}1

      operationId unlinkConversationFromTicket

      • added the optional property 'conversation_parts/conversation_parts/items/translations' to the response with the '200' status

    • GET/ai/external_pages1

      operationId listExternalPages

      • added the optional property 'data/items/audience_ids' to the response with the '200' status

    • GET/ai/external_pages/{page_id}1

      operationId getExternalPage

      • added the optional property 'audience_ids' to the response with the '200' status

    • GET/conversations/{conversation_id}1

      operationId retrieveConversation

      • added the optional property 'conversation_parts/conversation_parts/items/translations' to the response with the '200' status

    • GET/conversations/{id}/side_conversations1

      operationId listSideConversations

      • added the optional property 'side_conversations/items/conversation_parts/items/translations' to the response with the '200' status

    • GET/fin_voice/collect/{id}1

      operationId collectFinVoiceCallById

      • added the optional property 'data' to the response with the '200' status

    • GET/fin_voice/conversation/{conversation_id}1

      operationId collectFinVoiceCallsByConversationId

      • added the optional property '/items/data' to the response with the '200' status

    • GET/fin_voice/external_id/{external_id}1

      operationId collectFinVoiceCallByExternalId

      • added the optional property 'data' to the response with the '200' status

    • GET/fin_voice/phone_number/{phone_number}1

      operationId collectFinVoiceCallByPhoneNumber

      • added the success response with the status '200'

    • POST/conversations/{conversation_id}/parts1

      operationId manageConversation

      • added the optional property 'conversation_parts/conversation_parts/items/translations' to the response with the '200' status

    • POST/conversations/{conversation_id}/reply1

      operationId replyConversation

      • added the optional property 'conversation_parts/conversation_parts/items/translations' to the response with the '200' status

    • POST/conversations/{id}/merge1

      operationId mergeConversation

      • added the optional property 'conversation_parts/conversation_parts/items/translations' to the response with the '200' status

    • POST/conversations/redact1

      operationId redactConversation

      • added the optional property 'conversation_parts/conversation_parts/items/translations' to the response with the '200' status

    • POST/fin_voice/register1

      operationId registerFinVoiceCall

      • added the optional property 'data' to the response with the '200' status

    • POST/fin/ask1

      operationId askFin

      • endpoint added

    • POST/fin/capabilities1

      operationId listFinCapabilities

      • endpoint added

    • POST/fin/escalate1

      operationId escalateFinConversation

      • endpoint added

    • POST/fin/procedures/{procedure_id}/run1

      operationId runFinProcedure

      • endpoint added

    • POST/fin/reply1

      operationId replyToFin

      • added the optional property 'intercom_conversation_id' to the response with the '200' status

    • POST/tickets/{ticket_id}/linked_conversations1

      operationId linkConversationToTicket

      • added the optional property 'conversation_parts/conversation_parts/items/translations' to the response with the '200' status

    • POST/tickets/{ticket_id}/reply1

      operationId replyTicket

      • added the optional property 'translations' to the response with the '200' status

    • POST/tickets/enqueue1

      operationId enqueueCreateTicket

      • added the new optional request property '/allOf[subschema #1: Create Ticket Request Payload]/channel'

    • PUT/conversations/{conversation_id}1

      operationId updateConversation

      • added the optional property 'conversation_parts/conversation_parts/items/translations' to the response with the '200' status

Earlier versions7

  1. 2.16-1a6e50fNo change to the API surface

    #v2.16-1a6e50fDetected spec digest 1a6e50f

    Mirrored from the official Intercom OpenAPI specification (their version: 2.16-1a6e50f).

    No changes to operations or schemas were detected — the document changed in ways the diff does not classify, such as descriptions or examples.

  2. 2.16-714293168 changes across 2 endpoints66 changes may be incompatible

    #v2.16-7142931Detected spec digest 7142931

    Mirrored from the official Intercom OpenAPI specification (their version: 2.16-7142931).

    68 changes in the API surface

    2 endpoints
    • DELETE/conversations/{conversation_id}/customers/{contact_id}33 of 34 may be incompatible34

      operationId detachContactFromConversation

      • removed the optional property 'admin_assignee_id' from the response with the '200' status may be incompatible

      • removed the optional property 'ai_agent' from the response with the '200' status may be incompatible

      • removed the optional property 'ai_agent_participated' from the response with the '200' status may be incompatible

      • removed the optional property 'channel' from the response with the '200' status may be incompatible

      • removed the optional property 'company' from the response with the '200' status may be incompatible

      • removed the optional property 'contacts' from the response with the '200' status may be incompatible

      • removed the optional property 'conversation_parts' from the response with the '200' status may be incompatible

      • removed the optional property 'conversation_rating' from the response with the '200' status may be incompatible

      • removed the optional property 'created_at' from the response with the '200' status may be incompatible

      • removed the optional property 'custom_attributes' from the response with the '200' status may be incompatible

      • removed the optional property 'external_references' from the response with the '200' status may be incompatible

      • removed the optional property 'first_contact_reply' from the response with the '200' status may be incompatible

      • removed the optional property 'id' from the response with the '200' status may be incompatible

      • removed the optional property 'linked_objects' from the response with the '200' status may be incompatible

      • removed the optional property 'monitor_evaluations' from the response with the '200' status may be incompatible

      • removed the optional property 'open' from the response with the '200' status may be incompatible

      • removed the optional property 'priority' from the response with the '200' status may be incompatible

      • removed the optional property 'read' from the response with the '200' status may be incompatible

      • removed the optional property 'sales_agent' from the response with the '200' status may be incompatible

      • removed the optional property 'sales_agent_participated' from the response with the '200' status may be incompatible

      • removed the optional property 'scorecards' from the response with the '200' status may be incompatible

      • removed the optional property 'sla_applied' from the response with the '200' status may be incompatible

      • removed the optional property 'snoozed_until' from the response with the '200' status may be incompatible

      • removed the optional property 'source' from the response with the '200' status may be incompatible

      • removed the optional property 'state' from the response with the '200' status may be incompatible

      • removed the optional property 'statistics' from the response with the '200' status may be incompatible

      • removed the optional property 'tags' from the response with the '200' status may be incompatible

      • removed the optional property 'team_assignee_id' from the response with the '200' status may be incompatible

      • removed the optional property 'teammates' from the response with the '200' status may be incompatible

      • removed the optional property 'title' from the response with the '200' status may be incompatible

      • removed the optional property 'type' from the response with the '200' status may be incompatible

      • removed the optional property 'updated_at' from the response with the '200' status may be incompatible

      • removed the optional property 'waiting_since' from the response with the '200' status may be incompatible

      • added the required property 'customers' to the response with the '200' status

    • POST/conversations/{conversation_id}/customers33 of 34 may be incompatible34

      operationId attachContactToConversation

      • removed the optional property 'admin_assignee_id' from the response with the '200' status may be incompatible

      • removed the optional property 'ai_agent' from the response with the '200' status may be incompatible

      • removed the optional property 'ai_agent_participated' from the response with the '200' status may be incompatible

      • removed the optional property 'channel' from the response with the '200' status may be incompatible

      • removed the optional property 'company' from the response with the '200' status may be incompatible

      • removed the optional property 'contacts' from the response with the '200' status may be incompatible

      • removed the optional property 'conversation_parts' from the response with the '200' status may be incompatible

      • removed the optional property 'conversation_rating' from the response with the '200' status may be incompatible

      • removed the optional property 'created_at' from the response with the '200' status may be incompatible

      • removed the optional property 'custom_attributes' from the response with the '200' status may be incompatible

      • removed the optional property 'external_references' from the response with the '200' status may be incompatible

      • removed the optional property 'first_contact_reply' from the response with the '200' status may be incompatible

      • removed the optional property 'id' from the response with the '200' status may be incompatible

      • removed the optional property 'linked_objects' from the response with the '200' status may be incompatible

      • removed the optional property 'monitor_evaluations' from the response with the '200' status may be incompatible

      • removed the optional property 'open' from the response with the '200' status may be incompatible

      • removed the optional property 'priority' from the response with the '200' status may be incompatible

      • removed the optional property 'read' from the response with the '200' status may be incompatible

      • removed the optional property 'sales_agent' from the response with the '200' status may be incompatible

      • removed the optional property 'sales_agent_participated' from the response with the '200' status may be incompatible

      • removed the optional property 'scorecards' from the response with the '200' status may be incompatible

      • removed the optional property 'sla_applied' from the response with the '200' status may be incompatible

      • removed the optional property 'snoozed_until' from the response with the '200' status may be incompatible

      • removed the optional property 'source' from the response with the '200' status may be incompatible

      • removed the optional property 'state' from the response with the '200' status may be incompatible

      • removed the optional property 'statistics' from the response with the '200' status may be incompatible

      • removed the optional property 'tags' from the response with the '200' status may be incompatible

      • removed the optional property 'team_assignee_id' from the response with the '200' status may be incompatible

      • removed the optional property 'teammates' from the response with the '200' status may be incompatible

      • removed the optional property 'title' from the response with the '200' status may be incompatible

      • removed the optional property 'type' from the response with the '200' status may be incompatible

      • removed the optional property 'updated_at' from the response with the '200' status may be incompatible

      • removed the optional property 'waiting_since' from the response with the '200' status may be incompatible

      • added the required property 'customers' to the response with the '200' status

  3. 2.16-839fd59No change to the API surface

    #v2.16-839fd59Detected spec digest 839fd59

    Mirrored from the official Intercom OpenAPI specification (their version: 2.16-839fd59).

    No changes to operations or schemas were detected — the document changed in ways the diff does not classify, such as descriptions or examples.

  4. 2.16-212b09312 changes across 3 endpoints

    #v2.16-212b093Detected spec digest 212b093

    Mirrored from the official Intercom OpenAPI specification (their version: 2.16-212b093).

    12 changes in the API surface

    3 endpoints
    • POST/contacts/search4

      operationId SearchContacts

      • added the new '<=' enum value to the request property 'query/oneOf[subschema #1: Single Filter Search Request]/operator'

      • added the new '<=' enum value to the request property 'query/oneOf[subschema #2: Multiple Filter Search Request]/value/oneOf[subschema #2: single filter search request]/items/operator'

      • added the new '>=' enum value to the request property 'query/oneOf[subschema #1: Single Filter Search Request]/operator'

      • added the new '>=' enum value to the request property 'query/oneOf[subschema #2: Multiple Filter Search Request]/value/oneOf[subschema #2: single filter search request]/items/operator'

    • POST/conversations/search4

      operationId searchConversations

      • added the new '<=' enum value to the request property 'query/oneOf[subschema #1: Single Filter Search Request]/operator'

      • added the new '<=' enum value to the request property 'query/oneOf[subschema #2: Multiple Filter Search Request]/value/oneOf[subschema #2: single filter search request]/items/operator'

      • added the new '>=' enum value to the request property 'query/oneOf[subschema #1: Single Filter Search Request]/operator'

      • added the new '>=' enum value to the request property 'query/oneOf[subschema #2: Multiple Filter Search Request]/value/oneOf[subschema #2: single filter search request]/items/operator'

    • POST/tickets/search4

      operationId searchTickets

      • added the new '<=' enum value to the request property 'query/oneOf[subschema #1: Single Filter Search Request]/operator'

      • added the new '<=' enum value to the request property 'query/oneOf[subschema #2: Multiple Filter Search Request]/value/oneOf[subschema #2: single filter search request]/items/operator'

      • added the new '>=' enum value to the request property 'query/oneOf[subschema #1: Single Filter Search Request]/operator'

      • added the new '>=' enum value to the request property 'query/oneOf[subschema #2: Multiple Filter Search Request]/value/oneOf[subschema #2: single filter search request]/items/operator'

  5. 2.16-57be9a318 changes across 2 endpoints4 changes may be incompatible

    #v2.16-57be9a3Detected spec digest 57be9a3

    Mirrored from the official Intercom OpenAPI specification (their version: 2.16-57be9a3).

    18 changes in the API surface

    2 endpoints
    • GET/admins/activity_logs2 of 9 may be incompatible9

      operationId listActivityLogs

      • added the new 'admin_occupancy_setting_change' enum value to the 'activity_logs/items/activity_type' response property for the response status '200' may be incompatible

        Adding new enum values to response could be unexpected for clients, use x-extensible-enum instead.

      • added the new 'admin_occupancy_state_change' enum value to the 'activity_logs/items/activity_type' response property for the response status '200' may be incompatible

        Adding new enum values to response could be unexpected for clients, use x-extensible-enum instead.

      • added the optional property 'activity_logs/items/metadata/auto' to the response with the '200' status

      • added the optional property 'activity_logs/items/metadata/changes' to the response with the '200' status

      • added the optional property 'activity_logs/items/metadata/last_activity_at' to the response with the '200' status

      • added the optional property 'activity_logs/items/metadata/new_state' to the response with the '200' status

      • added the optional property 'activity_logs/items/metadata/previous_state' to the response with the '200' status

      • added the optional property 'activity_logs/items/metadata/setting_type' to the response with the '200' status

      • added the optional property 'activity_logs/items/metadata/threshold_minutes' to the response with the '200' status

    • POST/admins/activity_logs/search2 of 9 may be incompatible9

      operationId searchActivityLogs

      • added the new 'admin_occupancy_setting_change' enum value to the 'activity_logs/items/activity_type' response property for the response status '200' may be incompatible

        Adding new enum values to response could be unexpected for clients, use x-extensible-enum instead.

      • added the new 'admin_occupancy_state_change' enum value to the 'activity_logs/items/activity_type' response property for the response status '200' may be incompatible

        Adding new enum values to response could be unexpected for clients, use x-extensible-enum instead.

      • added the optional property 'activity_logs/items/metadata/auto' to the response with the '200' status

      • added the optional property 'activity_logs/items/metadata/changes' to the response with the '200' status

      • added the optional property 'activity_logs/items/metadata/last_activity_at' to the response with the '200' status

      • added the optional property 'activity_logs/items/metadata/new_state' to the response with the '200' status

      • added the optional property 'activity_logs/items/metadata/previous_state' to the response with the '200' status

      • added the optional property 'activity_logs/items/metadata/setting_type' to the response with the '200' status

      • added the optional property 'activity_logs/items/metadata/threshold_minutes' to the response with the '200' status

  6. 2.16-9bd5a633 changes across 3 endpoints2 changes may be incompatible

    #v2.16-9bd5a63Detected spec digest 9bd5a63

    Mirrored from the official Intercom OpenAPI specification (their version: 2.16-9bd5a63).

    3 changes in the API surface

    3 endpoints
    • POST/fin/replyall may be incompatible1

      operationId replyToFin

      • added the new 'replying' enum value to the 'status' response property for the response status '200' may be incompatible

        Adding new enum values to response could be unexpected for clients, use x-extensible-enum instead.

    • POST/fin/startall may be incompatible1

      operationId startFinConversation

      • added the new 'replying' enum value to the 'status' response property for the response status '200' may be incompatible

        Adding new enum values to response could be unexpected for clients, use x-extensible-enum instead.

    • POST/fin/csat1

      operationId submitFinCsat

      • endpoint added

  7. 2.16First version

    #v2.16Detected spec digest e4c31a4

    Mirrored from the official Intercom OpenAPI specification (their version: 2.16).

    No earlier version to compare against.

Intercom API v2.16 changelog — Intercom