---
title: "List messages"
method: GET
path: "/messages"
tags: ["Messages"]
---

# List messages

`GET /messages`

This endpoint lets you retrieve the messages for a specific conversation.

⚠️ This endpoint is paginated using cursor pagination. This means that in
order to get the next page of results, you need to provide the cursor
returned in the previous call.

## Query parameters

- `conversation_id` integer, required — The id of the conversation
- `per_page` integer
- `cursor` string

## Response `200`

OK

- object — Response object
  - `messages` Message[] — The list of messages for a specific conversation, paginated.
    - `id` integer — The id of the message.
    - `conversation_id` integer — The id of the parent conversation.
    - `date` string — The date at which the message was sent or received, in the ISO 8601 format (ex: "2023-01-31 16:22:17.327878+00:00").
    - `content_type` 'Text' | 'Image' | 'Video' | 'Audio' | 'Document' | 'IgStoryReply' | 'IgStoryMention' | 'Unsupported' — The type of the message: - "Text" describes a simple text message. - "Image" describes a message that only contains an image. - "IgStoryReply" (for "Instagram" conversations) describes a notification of reply to an Instagram story. - "IgStoryMention" (for "Instagram" conversations) describes a notification of a mention in an Instagram story. - "Unsupported" describes a message whose content is not supported. ⚠️ New values may be added to this enum without prior notice and without following the classic depreciation cycle. It is up to you to gracefully handle the case where new values are added. We recommend showing a "Unhandled content" placeholder to the user in place of the message ⚠️
    - `sender_type` 'User' | 'Consumer' | 'Metadata' — Describes the person that sent the Message: - "User" indicates that the message was sent as the Business. Such messages can be sent by a Partoo user, via API, or directly on the messaging platform. - "Consumer" indicates that the message was sent by a consumer, a client that wants to get in touch with the business. - "Metadata" is reserved for special messages that appear in the Partoo inbox. They only give contextual information about the conversation, and are not shown to the consumer. ⚠️ New values may be added to this enum without prior notice and without following the classic depreciation cycle. It is up to you to gracefully handle the case where new values are added. We recommend ignoring messages with unhandled sender_type ⚠️
    - `sender_label` string, nullable — Name of the person sending the message
    - `status` 'Sending' | 'Success' | 'Failed' — The delivery status of the message. Messages send via Partoo are created with the status "Sending", and propagated to the messaging channel. If the message is sent successfully, the status is changed to "Success". If the messaging channel fails to send the message, the status changed to "Failed". A failed message can be retried using the [/retry endpoint](/api-reference/messages/retry-send-message).
    - `is_deleted` boolean — If the message has been deleted by the consumer on the messaging channel (for now, only "Instagram" messages can be deleted).
    - `is_automated` boolean — If the message was sent by a Partoo automation (chatbot, ...).
    - `content` union
      - string — The text of the message.
      - string, url — The url of the image.
      - VideoMessageContent
        - `url` string, url — The url of the video.
        - `file_name` string, nullable — Name of the video file.
      - AudioMessageContent
        - `url` string, url — The url of the audio.
        - `file_name` string, nullable — Name of the audio file.
      - DocumentMessageContent
        - `url` string, url — The url of the document.
        - `file_name` string, nullable — Name of the document file.
      - IgStoryReplyMessageContent
        - `url` string, url — The url of the story that received the reply.
        - `content` string — Text of the reply, or url of the image.
        - `content_type` 'Image' | 'Text' — The type of content of ther reply.
        - `id` string — The Instagram ID of the story.
      - string, url — The url of the story mentionned.
      - UnsupportedMessageContent
        - `type` 'video' | 'audio' | 'unknown'
      - 'Solving'
      - 'Reopening'
    - `user_id` string, nullable — For "User" messages sent via the Partoo application, the id of the user that sent the message.
    - `custom_channel` CustomChannelMessage
      - `external_message_id` string — The unique id of the message in your system.
  - `count` integer — Total number of results available for the filters and dimensions requested.
  - `next_cursor` string, nullable — The cursor to use in order to retrieve the next page of data. When all data have been fetched, the value is null.

## Other responses

- `401` — You are not authenticated
- `403` — You are not allowed to perform this action

---

[API](https://skmtc.net/partoo/apis/partoo-rest-api.md) · [All operations](https://skmtc.net/partoo/apis/partoo-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/partoo/partoo-rest-api/versions/3652d8b1a8b3/schema)
