Skip to main content
GET
/
whatsapp
/
messages
List messages
curl --request GET \
  --url https://api.kapso.ai/platform/v1/whatsapp/messages \
  --header 'X-API-Key: <api-key>'
{
  "data": [
    {
      "id": "wamid.HBgMMTIzNDU2Nzg5MBUCABIYGTA5RTlCQkI2NTI3",
      "timestamp": "1705395000",
      "type": "text",
      "from": "14155550123",
      "text": {
        "body": "Hello, I need help with my order"
      },
      "kapso": {
        "direction": "inbound",
        "status": "delivered",
        "processing_status": "processed",
        "origin": "cloud_api",
        "phone_number": "14155550123",
        "phone_number_id": "123456789012345",
        "has_media": false,
        "whatsapp_conversation_id": "c63ced48-1283-4d55-8c8d-930f525aa0e5",
        "contact_name": "Alicia",
        "content": "Hello, I need help with my order"
      }
    }
  ],
  "paging": {
    "cursors": {
      "before": "eyJ2YWx1ZXMiOlsiMjAyNi0wMy0yNlQxNTowNTowMC4wMDAwMDBaIiwiMzQzMCJdLCJjb2x1bW5zIjpbImNyZWF0ZWRfYXQiLCJpZCJdfQ==",
      "after": "eyJ2YWx1ZXMiOlsiMjAyNi0wMy0yNlQxNTowMDowMC4wMDAwMDBaIiwiMzQyMSJdLCJjb2x1bW5zIjpbImNyZWF0ZWRfYXQiLCJpZCJdfQ=="
    },
    "next": "eyJ2YWx1ZXMiOlsiMjAyNi0wMy0yNlQxNTowMDowMC4wMDAwMDBaIiwiMzQyMSJdLCJjb2x1bW5zIjpbImNyZWF0ZWRfYXQiLCJpZCJdfQ==",
    "previous": null
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.kapso.ai/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

X-API-Key
string
header
required

Query Parameters

phone_number_id
string

Filter by WhatsApp phone number ID

conversation_id
string<uuid>

Filter by conversation ID

phone_number
string

Filter by contact phone number (partial match)

business_scoped_user_id
string

Filter by exact WhatsApp business-scoped user ID

direction
enum<string>

Filter by message direction

Available options:
inbound,
outbound
status
enum<string>

Filter by message status

Available options:
pending,
sent,
delivered,
read,
failed
message_type
string

Filter by message type

has_media
boolean

Filter messages with media attachments

limit
integer
default:20

Maximum number of results per cursor-paginated page (default 20, max 100).

Required range: 1 <= x <= 100
before
string

Cursor for the previous page (Base64 encoded).

after
string

Cursor for the next page (Base64 encoded).

Response

List of messages

data
object[]
required
paging
object
required