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

# List Conversation Messages

> The WhatsApp messages of one conversation, newest first

Only the WhatsApp messages of the conversation. A `chatId` of another workspace answers `404`, like a missing one.

## Message fields

* `wamid` is the WhatsApp message id: the same as `message.wamid` in [webhook events](https://docs.minimo.it/api-reference/whatsapp-transport/webhooks.md).
* `media.url` is a link to download the file of a stored message.
* `status` is the delivery status (`sent`, `received`, `failed`, …).

The list is in `data.data` and the pages in `data.pagination`. `pageSize` is at most 100.

## Permissions

The API key needs the **WhatsApp** permission.


## OpenAPI

````yaml get /public/v1/whatsapp/conversations/{chatId}/messages
openapi: 3.1.0
info:
  title: API Documentation
  description: Documentation for transactional and subscribe APIs
  version: 1.0.0
servers:
  - url: https://app.minimo.it
security:
  - bearerAuth: []
paths:
  /public/v1/whatsapp/conversations/{chatId}/messages:
    servers:
      - url: https://api.minimo.it
    get:
      summary: List the messages of a WhatsApp conversation
      description: The WhatsApp messages of one conversation, newest first.
      operationId: listWhatsappConversationMessages
      parameters:
        - name: chatId
          in: path
          required: true
          description: The `chatId` from List Conversations.
          schema:
            type: integer
        - name: page
          in: query
          required: false
          schema:
            type: integer
            default: 1
        - name: pageSize
          in: query
          required: false
          description: Up to 100.
          schema:
            type: integer
            default: 30
            maximum: 100
      responses:
        '200':
          description: Messages
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      data:
                        type: array
                        items:
                          $ref: '#/components/schemas/WhatsappConversationMessage'
                      pagination:
                        type: object
                        properties:
                          currentPage:
                            type: integer
                          nextPage:
                            type: integer
                            nullable: true
                          prevPage:
                            type: integer
                            nullable: true
                          totalPages:
                            type: integer
                          totalRecords:
                            type: integer
              example:
                data:
                  data:
                    - id: 99012
                      wamid: wamid.HBgLM...
                      direction: inbound
                      type: text
                      text: Do you ship to Sicily?
                      media: null
                      reaction: null
                      status: received
                      senderName: Mario Rossi
                      timestamp: 1794560400
                      timestampIso: '2026-11-13T09:00:00.000Z'
                  pagination:
                    totalRecords: 58
                    currentPage: 1
                    totalPages: 2
                    nextPage: 2
                    prevPage: null
        '401':
          description: >-
            Missing or invalid API key, or a key without the `WhatsApp`
            permission.
        '404':
          description: No conversation with this id in your workspace.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    example: FAIL
                  message:
                    type: string
      security:
        - bearerAuth: []
      x-codeSamples:
        - label: CLI
          lang: cURL
          source: |-
            curl --request GET \
              --url 'https://api.minimo.it/public/v1/whatsapp/conversations/1234/messages?page=1&pageSize=30' \
              --header 'Authorization: Bearer {{BEARER_TOKEN}}'
        - lang: JavaScript
          source: >-
            const res = await
            fetch('https://api.minimo.it/public/v1/whatsapp/conversations/1234/messages?page=1&pageSize=30',
            {
              method: 'GET',
              headers: {
                'Authorization': 'Bearer {{BEARER_TOKEN}}',
              },
            });

            const { data } = await res.json();

            console.log(data);
        - lang: Python
          source: |-
            import requests

            res = requests.get(
                'https://api.minimo.it/public/v1/whatsapp/conversations/1234/messages?page=1&pageSize=30',
                headers={'Authorization': 'Bearer {{BEARER_TOKEN}}'},
            )
            print(res.json())
components:
  schemas:
    WhatsappConversationMessage:
      type: object
      properties:
        id:
          type: integer
          description: Minimo message id, increasing over time.
          example: 99012
        wamid:
          type: string
          nullable: true
          description: >-
            WhatsApp message id, when known. Matches `message.wamid` in webhook
            events.
        direction:
          type: string
          enum:
            - inbound
            - outbound
          description: '`inbound` = from the contact, `outbound` = from you or your AI.'
        type:
          type: string
          enum:
            - text
            - image
            - video
            - audio
            - document
        text:
          type: string
          nullable: true
          description: The text, or the caption of a media.
        media:
          type: object
          nullable: true
          properties:
            url:
              type: string
              description: A link you can download the file from.
            type:
              type: string
              enum:
                - image
                - video
                - audio
                - document
            filename:
              type: string
              nullable: true
        reaction:
          type: string
          nullable: true
          description: The emoji reaction on this message, if any.
        status:
          type: string
          description: Delivery status, for example `sent`, `received` or `failed`.
        senderName:
          type: string
          nullable: true
        timestamp:
          type: integer
          nullable: true
          description: Epoch seconds.
        timestampIso:
          type: string
          format: date-time
          nullable: true
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: mn-API_CLIENT_ID-API_KEY

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.