WA.cr APP - API v2
  1. Messages
WA.cr APP - API v2
  • API v2 Documentation
    • Account
      • Get Account Info
      • Get Usage Statistics
      • Get Plan Limits
    • Authentication (OTP Verification)
      • Send OTP/Verification Code
      • Resend OTP
      • Verify OTP
      • Check OTP Status
      • List Authentication Templates
    • Comments
      • Get Comments
      • Add Comment
    • Contacts
      • List Contacts
      • Create Contact
      • Get Contact
      • Update Contact
      • Delete Contact
      • Batch Create Contacts
      • Batch Delete Contacts
    • Groups
      • List Groups
      • Create Group
      • Get Group
      • Update Group
      • Delete Group
      • Add Contacts to Group
      • Remove Contacts from Group
    • Messages
      • Send Text Message
        POST
      • Send Template Message
        POST
      • Send Media Message
        POST
      • Send Interactive Message
        POST
      • List Messages
        GET
      • Get Message
        GET
    • Sources
      • List Sources
      • Create Source
      • Get Source
      • Update Source
      • Delete Source
    • Statuses
      • List Statuses
      • Create Status
      • Get Status
      • Update Status
      • Delete Status
    • Templates
      • List Templates
      • Sync Templates from WhatsApp
      • Get Template
  1. Messages

List Messages

GET
/messages
Retrieve a paginated list of WhatsApp message history (sent and received).
Messages are returned from the WhatsappHistory model, ordered by most recent first.
Required Scope: messages:read

Query Parameters#

ParameterTypeDescription
pageintegerPage number (default: 1)
per_pageintegerItems per page (default: 15, max: 100)
sortstringSort field. Allowed: created_at, updated_at. Prefix with - for descending (default: -created_at)
searchstringSearch within message text (partial match)
qstringAlias for search
fieldsstringComma-separated list of fields to return

Filtering#

Apply filters using the format filter[field]=value or filter[field][operator]=value.
Filter FieldTypeDescription
typestringMessage type (e.g., text, template, image, video, document, audio, interactive)
statusstringDelivery status (sent, delivered, read, failed)
interaction_idintegerChat interaction ID (filters messages for a specific conversation)
directionstringMessage direction (inbound, outbound)

Filter Operators#

OperatorExampleDescription
(none)filter[status]=sentExact match
nefilter[status][ne]=failedNot equal
infilter[type][in]=text,templateMatch any value
not_infilter[type][not_in]=audioExclude values

Response Fields#

FieldTypeDescription
idintegerMessage record ID
interaction_idinteger|nullChat interaction ID
sender_idstring|nullSender phone number or ID
typestring|nullMessage type
messagestring|nullMessage content
statusstring|nullDelivery status
message_idstring|nullWhatsApp message ID
sent_atstringISO 8601 timestamp (time_sent or created_at)
is_readbooleanWhether message has been read

Error Responses#

StatusError CodeDescription
401UNAUTHORIZEDInvalid or missing API token
403INSUFFICIENT_SCOPEToken missing messages:read scope
429RATE_LIMIT_EXCEEDEDToo many requests
500INTERNAL_ERRORFailed to fetch messages

Request

Authorization
Bearer Token
Provide your bearer token in the
Authorization
header when making requests to protected resources.
Example:
Authorization: Bearer ********************
or
Query Params

Responses

🟢200
application/json
Successful response
Body

Request Request Example
Shell
JavaScript
Java
Swift
curl --location -g --request GET '/messages?page=1&per_page=15&sort=-created_at&search=hello&filter[type]=text&filter[status]=sent&filter[interaction_id]=9&filter[direction]=outbound' \
--header 'Authorization: Bearer <token>'
Response Response Example
{}
Modified at 2026-02-25 01:06:20
Previous
Send Interactive Message
Next
Get Message
Built with