Messages
Messages are individual communications within a chat thread.
Messages can include text, media attachments, rich link previews, and reactions. All messages are associated with a specific chat and sent from a phone number you own.
Messages support delivery status tracking and read receipts.
Rich Link Previews
Send a URL as a link part to deliver it with a rich preview card showing the
page’s title, description, and image (when available). A URL inside a text
part renders a preview too.
Limitations:
- A message carries exactly one part, so a link is never combined with text or media.
- Maximum URL length: 2,048 characters.
Get all messages in a thread
Get a message by ID
Delete a message from system
Add or remove a reaction to a message
ModelsExpand Collapse
Message object { id, chat_id, created_at, 14 more }
DEPRECATED: Use delivery_status instead (true when delivery_status is delivered or read). Whether the message has been delivered.
DEPRECATED: Use delivery_status == "read" instead. Whether the message has been read.
DEPRECATED: Use from_handle instead. Phone number of the message sender.
The sender of this message as a full handle object
The sender of this message as a full handle object
parts: optional array of TextPartResponse { reactions, type, value } or MediaPartResponse { id, filename, mime_type, 4 more } or LinkPartResponse { reactions, type, value } Message parts in order (text, media, and link)
Message parts in order (text, media, and link)
TextPartResponse object { reactions, type, value } A text message part
A text message part
Reactions on this message part
Reactions on this message part
MediaPartResponse object { id, filename, mime_type, 4 more } A media attachment part
A media attachment part
Reactions on this message part
Reactions on this message part
LinkPartResponse object { reactions, type, value } A rich link preview part
A rich link preview part
Reactions on this message part
Reactions on this message part
Present only when this message was recovered by reconciliation rather than delivered live, and set to the time of that recovery. The field is omitted entirely for normally-delivered messages, which is the overwhelming majority. When present, expect sent_at to be substantially earlier — the message is genuine but was ingested late, so it may not have appeared in earlier reads of this conversation.