> ## Documentation Index
> Fetch the complete documentation index at: https://docs.enginy.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Get inbox contact messages

> Return the flattened inbox message history for a contact.

Required parameters:
- contactId: contact ID path parameter for the thread you want to inspect.

Optional query parameters:
- senderIdentityId: limit the returned history to conversations owned by one sender identity
- archived: set to true to read an archived thread instead of an active one. Defaults to false.

    > **Required scope:** `MESSAGING_READ`
    >
    > **Rate limit:** 100 requests per minute



## OpenAPI

````yaml https://openapi.enginy.ai/definitions.json get /v1/inboxes/:contactId/messages
openapi: 3.1.0
info:
  title: Enginy API
  version: 1.0.0
  description: Public API for Enginy platform
servers:
  - url: https://openapi.enginy.ai
    description: Configured server
security: []
tags:
  - name: AI Variables
    description: >-
      Manage AI variables and discover the entity fields you can reference in
      prompts and entity requests.
  - name: Inbox
    description: >-
      Inbox endpoints for listing contact threads, reading thread messages,
      managing tags, and sending manual replies.
  - name: Workflows
    description: >-
      Build, validate, publish, run, and inspect advanced (graph) workflows,
      plus the block/condition catalog needed to author a workflow plan.
paths:
  /v1/inboxes/:contactId/messages:
    get:
      tags:
        - Inbox
      summary: Get inbox contact messages
      description: >-
        Return the flattened inbox message history for a contact.


        Required parameters:

        - contactId: contact ID path parameter for the thread you want to
        inspect.


        Optional query parameters:

        - senderIdentityId: limit the returned history to conversations owned by
        one sender identity

        - archived: set to true to read an archived thread instead of an active
        one. Defaults to false.

            > **Required scope:** `MESSAGING_READ`
            >
            > **Rate limit:** 100 requests per minute
      parameters:
        - schema:
            type: string
            description: Contact ID for the thread you want to inspect
            example: '123'
          required: true
          description: Contact ID for the thread you want to inspect
          name: contactId
          in: path
        - schema:
            type: integer
            exclusiveMinimum: 0
            description: Return only the message history visible for one sender identity.
            example: 14
          required: false
          description: Return only the message history visible for one sender identity.
          name: senderIdentityId
          in: query
        - schema:
            type: boolean
            description: Return archived threads instead of active ones. Defaults to false.
            example: false
          required: false
          description: Return archived threads instead of active ones. Defaults to false.
          name: archived
          in: query
      responses:
        '200':
          description: Inbox messages retrieved successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    enum:
                      - success
                  message:
                    type: string
                  data:
                    type: object
                    properties:
                      contactId:
                        type: number
                        description: Contact ID
                      messages:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: number
                              description: Unique identifier for the message
                            content:
                              type: string
                              description: Content of the message
                            subject:
                              type:
                                - string
                                - 'null'
                              description: Subject of the message (for emails)
                            type:
                              type: string
                              description: Type of message (LINKEDIN, EMAIL, INMAIL, etc.)
                            isContactSender:
                              type: boolean
                              description: >-
                                Whether the message was sent by the contact
                                (true) or by the identity (false)
                            isAutosent:
                              type: boolean
                              description: >-
                                Whether the message was sent automatically by
                                Enginy
                            isAudio:
                              type:
                                - boolean
                                - 'null'
                              description: Whether the message is an audio message
                            isBounced:
                              type: boolean
                              description: >-
                                Whether the message bounced (e.g. email delivery
                                failed). Always false for inbound messages.
                            url:
                              type:
                                - string
                                - 'null'
                              description: URL associated with the message
                            attachment:
                              type:
                                - string
                                - 'null'
                              description: Attachment associated with the message
                            attachmentName:
                              type:
                                - string
                                - 'null'
                              description: Name of the attachment
                            contentType:
                              type: string
                              description: >-
                                Content type of the message (TEXT, AUDIO, IMAGE,
                                VIDEO, FILE)
                            createdAt:
                              type: string
                              format: date-time
                              description: Date and time when the message was created
                            updatedAt:
                              type: string
                              format: date-time
                              description: Date and time when the message was last updated
                            viewCount:
                              type: number
                              description: Number of times the message has been viewed
                            clickCount:
                              type: number
                              description: >-
                                Number of times links in the message have been
                                clicked
                            conversationId:
                              type: number
                              description: Conversation ID for the message
                            senderIdentityId:
                              type: number
                              description: >-
                                Sender identity ID associated with the
                                conversation
                          required:
                            - id
                            - content
                            - subject
                            - type
                            - isContactSender
                            - isAutosent
                            - isAudio
                            - isBounced
                            - url
                            - attachment
                            - attachmentName
                            - contentType
                            - createdAt
                            - updatedAt
                            - viewCount
                            - clickCount
                            - conversationId
                            - senderIdentityId
                        description: Flattened messages across matching conversations
                    required:
                      - contactId
                      - messages
                required:
                  - status
                  - message
                  - data
              examples:
                default:
                  summary: Full message history for one contact thread
                  value:
                    status: success
                    message: Inbox messages retrieved successfully
                    data:
                      contactId: 123
                      messages:
                        - id: 9001
                          conversationId: 456
                          senderIdentityId: 14
                          content: >-
                            Thanks, this looks interesting. Can you send
                            pricing?
                          subject: 'Re: Intro from Enginy'
                          type: EMAIL
                          isContactSender: true
                          isAutosent: false
                          isAudio: false
                          isBounced: false
                          url: null
                          attachment: null
                          attachmentName: null
                          contentType: TEXT
                          createdAt: '2026-03-20T09:41:12.000Z'
                          updatedAt: '2026-03-20T09:41:12.000Z'
                          viewCount: 0
                          clickCount: 0
                        - id: 9002
                          conversationId: 456
                          senderIdentityId: 14
                          content: >-
                            Yes, let me know what team size you are targeting
                            and I will tailor the pricing recommendation.
                          subject: 'Re: Intro from Enginy'
                          type: EMAIL
                          isContactSender: false
                          isAutosent: false
                          isAudio: false
                          isBounced: false
                          url: null
                          attachment: null
                          attachmentName: null
                          contentType: TEXT
                          createdAt: '2026-03-20T10:03:40.000Z'
                          updatedAt: '2026-03-20T10:03:40.000Z'
                          viewCount: 0
                          clickCount: 0
        '400':
          description: Invalid contact ID
        '404':
          description: Contact or sender identity not found
      security:
        - apiKey: []
components:
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: x-api-key

````