---
updatedAt: 2026-06-15T09:50:57.000Z
agentTools:
  projectIndex: https://developers.tidio.com/llms.txt
---

# Get contact messages

Contacts may have conversations, which include messages from the contact as well as messages to the contact from chat operators or chatbots.
You can list the complete conversation for a particular contact.


# OpenAPI definition

```json
{
  "openapi": "3.0.3",
  "info": {
    "title": "Tidio - Openapi",
    "version": "1.0"
  },
  "servers": [
    {
      "url": "https://api.tidio.com/"
    }
  ],
  "tags": [
    {
      "name": "Conversations"
    }
  ],
  "security": [
    {
      "ClientId": [],
      "ClientSecret": []
    }
  ],
  "paths": {
    "/contacts/{contactId}/messages": {
      "get": {
        "tags": [
          "Conversations"
        ],
        "summary": "Get contact messages",
        "description": "Contacts may have conversations, which include messages from the contact as well as messages to the contact from chat operators or chatbots.\nYou can list the complete conversation for a particular contact.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/Cursor"
          },
          {
            "in": "path",
            "name": "contactId",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/ContactID"
                }
              ]
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of messages",
            "content": {
              "application/json; version=1": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "messages": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/Message"
                          }
                        },
                        "conversation_url": {
                          "type": "string",
                          "format": "uri",
                          "description": "URL to view the conversation in Tidio panel",
                          "example": "https://tidio.com/panel/conversations/12345",
                          "nullable": true
                        }
                      }
                    },
                    {
                      "$ref": "#/components/schemas/PaginatedResponse"
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/PaginationErrorResponse"
          }
        }
      }
    }
  },
  "components": {
    "parameters": {
      "Cursor": {
        "name": "cursor",
        "in": "query",
        "description": "Value from the previous page. Use null to fetch the first one",
        "required": false,
        "explode": false,
        "schema": {
          "type": "string",
          "example": "aWRfX2U2YTgyYTc0LTExNzAtNGY1Ny1hMDMxLWIzNmYzZjZiYzA5Mw=="
        }
      }
    },
    "schemas": {
      "Message": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "ID of the message",
            "format": "uuid",
            "example": "ad59e7ea-cd20-42b9-8c7b-f44d0ed9241e"
          },
          "author_type": {
            "type": "string",
            "enum": [
              "operator",
              "contact",
              "bot"
            ],
            "description": "Type of the message author",
            "example": "contact"
          },
          "author_id": {
            "type": "string",
            "nullable": true,
            "description": "Author ID of the message. When \"author_type\" is \"operator\", the operator ID is returned. When \"author_type\" is contact, the contact ID is returned. Null is returned for the rest of the \"author_type\" values.",
            "example": "3a7439a0-e939-4d8f-847c-be87197f2330"
          },
          "message": {
            "type": "string",
            "description": "The message content",
            "example": "Hi! I need help with my order."
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "description": "Date when message has been sent",
            "example": "2023-01-01T00:00:00+00:00"
          }
        }
      },
      "Meta": {
        "type": "object",
        "properties": {
          "cursor": {
            "type": "string",
            "nullable": true,
            "description": "Value to fetch the next page. Null means the page is the last one.",
            "example": "aWRfX2U2YTgyYTc0LTExNzAtNGY1Ny1hMDMxLWIzNmYzZjZiYzA5Mw=="
          },
          "limit": {
            "type": "integer",
            "description": "How many items were displayed on list",
            "example": 1000
          }
        }
      },
      "Error": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "example": "bad_request",
            "title": "Error code"
          },
          "message": {
            "type": "string",
            "title": "More specific description of the error",
            "example": "The request was invalid or cannot be served. "
          }
        }
      },
      "ErrorResponse": {
        "type": "object",
        "properties": {
          "errors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Error"
            }
          }
        }
      },
      "PaginatedResponse": {
        "type": "object",
        "properties": {
          "meta": {
            "$ref": "#/components/schemas/Meta"
          }
        }
      },
      "ContactID": {
        "type": "string",
        "format": "uuid",
        "description": "ID of the contact",
        "example": "a1b4ca4c-1108-4432-b256-1e4cf2bf6f9e"
      }
    },
    "securitySchemes": {
      "ClientId": {
        "type": "apiKey",
        "in": "header",
        "name": "X-Tidio-Openapi-Client-Id"
      },
      "ClientSecret": {
        "type": "apiKey",
        "in": "header",
        "name": "X-Tidio-Openapi-Client-Secret"
      }
    },
    "responses": {
      "PaginationErrorResponse": {
        "description": "Invalid cursor",
        "content": {
          "application/json; version=1": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponse"
            },
            "example": {
              "errors": [
                {
                  "code": "invalid_cursor",
                  "message": "Cursor is invalid"
                }
              ]
            }
          }
        }
      }
    }
  }
}
```