Intercom Conversations API

Manage conversations between contacts and admins.

OpenAPI Specification

intercom-conversations-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Intercom Admins Conversations API
  description: The Intercom API provides programmatic access to the Intercom AI-powered customer service platform. It enables developers to manage contacts, companies, conversations, articles, segments, messages, and data events, and to build seamless integrations with the Intercom Help Desk and Messenger.
  version: '2.15'
  contact:
    name: Intercom Developer Support
    url: https://developers.intercom.com/
servers:
- url: https://api.intercom.io
  description: Production (US)
- url: https://api.eu.intercom.io
  description: Europe
- url: https://api.au.intercom.io
  description: Australia
security:
- bearerAuth: []
tags:
- name: Conversations
  description: Manage conversations between contacts and admins.
paths:
  /conversations:
    get:
      operationId: listConversations
      summary: List conversations
      description: Retrieves a paginated list of conversations.
      tags:
      - Conversations
      responses:
        '200':
          description: Conversations list returned successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConversationList'
    post:
      operationId: createConversation
      summary: Create a conversation
      description: Creates a new user-initiated conversation.
      tags:
      - Conversations
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                from:
                  type: object
                body:
                  type: string
      responses:
        '200':
          description: Conversation created successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Conversation'
  /conversations/{conversation_id}:
    get:
      operationId: getConversation
      summary: Retrieve a conversation
      tags:
      - Conversations
      parameters:
      - name: conversation_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Conversation returned successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Conversation'
components:
  schemas:
    Conversation:
      type: object
      properties:
        type:
          type: string
        id:
          type: string
        title:
          type: string
        created_at:
          type: integer
        updated_at:
          type: integer
        state:
          type: string
        open:
          type: boolean
        priority:
          type: string
    ConversationList:
      type: object
      properties:
        type:
          type: string
        conversations:
          type: array
          items:
            $ref: '#/components/schemas/Conversation'
        total_count:
          type: integer
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
externalDocs:
  description: Intercom Developer Documentation
  url: https://developers.intercom.com/docs/