Conversations
Mark as read
Sets unread_count to 0 for the conversation in whatsappx.si and returns the conversation. Live listeners receive a conversation.updated event. It does not send read receipts (blue ticks) to the contact.
- Bearer API key
- Scope:
write - or app session
- Workspace:
X-Tenant-ID(optional with a key)
Path parameters
iduuidrequiredConversation id.
Headers
AuthorizationstringrequiredYour API key as
Bearer <key>. The wordBearerand the space are case-sensitive. Browser clients signed in to the app use the session cookie instead.X-Tenant-IDuuidoptionalWorkspace id. Optional with an API key (a key always acts in its own workspace); if you send it, it must match the key’s workspace. Required with a session cookie. You can pass
?tenant=<id>instead.
Response
200 OKapplication/json
iduuidConversation id. Use it in
/api/conversations/{id}paths.workspace_iduuidWorkspace the conversation belongs to.
whatsapp_jidstringWhatsApp chat id (JID), for example
15551234567@s.whatsapp.netfor a person or…@g.usfor a group.channel_providerenumHow the number is connected:
scan(linked by QR code) ormeta(WhatsApp Business Platform, Cloud API).channel_iduuidmay be absentThe Meta channel (phone number) the chat belongs to. Left out for QR-linked chats.
phone_number_idstringmay be absentMeta phone number id of the channel. Left out for QR-linked chats.
namestringDisplay name: the contact or group name, or
+<digits>for a chat started by phone number.typeenumindividualorgroup.phonestringmay be absentPhone number as digits only, without
+.group_subjectstringmay be absentGroup subject, for group chats.
avatar_urlstringmay be absentProfile picture URL, when one has been downloaded.
last_messagestringnullablePreview of the newest message: its text,
Photofor an image, or the file name (orDocument) for a document.nullwhen the chat has no messages.last_message_attimestampnullableTime of the newest message as an RFC 3339 string in UTC.
nullwhen the chat has no messages.unread_countintegerUnread incoming messages.
0after the chat is marked as read.assignee_iduuidmay be absentUser id of the assigned teammate (a user id, not a membership id). Left out when unassigned.
assignee_namestringmay be absentName of the assigned teammate.
Status codes
- 200OK. The updated conversation, with
unread_countset to0. In this responselast_messageisnullandassignee_nameis left out; call the get endpoint for the full summary. - 400Bad request. The id in the path is not a valid UUID.
- 401Unauthorized. The API key is unknown, revoked or expired (
invalid or expired API key), or there is no key and no signed-in session (unauthorized). - 402Payment required. Only when subscriptions are enforced and the workspace has no active subscription. The body includes
code: "payment_required". - 403Forbidden. The API key has the
readscope, which only allows GET requests (API key is read-only). A key in another workspace getsAPI key belongs to a different workspace. - 404Not found. The conversation does not exist in this workspace, belongs to the inactive connection (QR vs Cloud API), or (for agents signed in to the app) is not assigned to you.
- 500Server error. Something went wrong on our side. Retry with backoff.