List the messages of a WhatsApp line between two dates
crm.lines.messages.list
LecturaIdempotenteDesde 2026-11-01
Lists the messages of the conversations of one CRM WhatsApp line created between since (epoch ms, inclusive) and until (epoch ms, exclusive; default, and the latest it can be, one minute ago, so a message still being saved goes to the next export; since must be before it, otherwise 400 invalid_input), conversation by conversation, in one paged export instead of crm.conversations.list plus one crm.messages.list per conversation. The messages of each conversation come together, oldest first, and each page also brings conversations (the conversations of its messages, in the same order: contact name and phone, linked persons, deals, companies and prospects, owner, status, last activity) and until. Each message comes as in crm.messages.list (conversation_id, direction, content (the text), media, template, delivery status, who sent it, external_id; transcription and media_description when the AI Setter already read a voice note or an image), with attachments as links signed for one hour (media_urls_expire_at) and without the raw platform payload; a deleted message comes with nothing of what it said or showed. Paginated by cursor (limit up to 200 messages): the first page fixes the window and returns its until, next_cursor keeps it, and the conversations go in a stable order (not by recent activity), so following next_cursor never skips or repeats a message even while new ones arrive, and that until is the since of the next export. The exception is a message saved later with its original time, like the chat history of a phone that joins the line: it can fall in a window already exported. Pass next_cursor with the same line and since (otherwise 400 invalid_cursor). A page can bring fewer than limit, even none, while has_more is true (each call walks up to 400 of the line's conversations): follow next_cursor until has_more is false. An iterator over the messages alone leaves out conversations and until: read them from each page. What a conversation without a line (imported from another system) sent through this line stays with that conversation and is not included. A seller with restricted scope only gets the conversations they own, unless they work the line. Not found (line_not_found) if the line is not one of the organization's CRM WhatsApp lines (crm.lines.list); the conversations of a line already removed are still in crm.conversations.list with phone_number_id. Requires view_inbox.
Alcance
crm:read
Permiso
Ver el módulo · Acción del CRM: view_inbox
Tool del MCP
crm_lines_messages_listEn la superficie completa; en la compacta, mb_execute_operation con id: "crm.lines.messages.list".
Costo declarado: hasta 1110 lecturas y 0 escrituras por llamada (cuentan en el cupo diario).
Parámetros
line_idstringrutarequerido
The WhatsApp line: its phone number id (phoneNumberId in crm.lines.list).
sinceintegerqueryrequerido
Start of the window (epoch ms, inclusive).
limitintegerqueryopcional
How many items this page brings at most (see the maximum and the default in the schema).
Por defecto: 50
cursorstringqueryopcional
The next_cursor of the previous page, exactly as it came (only for the same list and filters); without it, the first page.
untilintegerqueryopcional
End of the window (epoch ms, exclusive). Default, and the latest it can be: one minute ago (a message still being saved goes to the next export). The first page fixes it (the response's until) and next_cursor keeps it.
Respuesta
dataarray<object>
has_moreboolean
conversationsarray<object>
The conversations of the page's messages, in the same order: contact name and phone, linked persons, deals, companies and prospects, owner, status and last activity.
untilnumber
The end of the window this export uses (epoch ms, exclusive): the first page fixes it and next_cursor keeps it. It is the since of the next export.
Lists the WhatsApp lines of the CRM in the order of CRM → Settings → Lines: id (the Meta phone number id), phone, name, its WhatsApp Business account (waba_id, the one its templates belong to), status (the health Meta reports: flagged, restricted, banned, disconnected…, or active / pending by whether MB Suite subscribed to it; a number bought in MB Suite is never pending), display_status (exactly what the app's Status column shows, including the billing status of a number bought in MB Suite when it is not active), quality rating, Meta's review of the account (account_review_status), when a contact last wrote to the line (last_inbound_at), coexistence with the WhatsApp Business app, who gets notified of new messages, which sellers work the line and the access mode, with the name of each of those members (member_names). Use the id with crm.lines.receivers.update or crm.lines.sellers.update, and as from_phone_number_id in crm.whatsapp.send_text, send_media and send_template to send from that line.
Alcance
crm:read
Permiso
Ver el módulo
Tool del MCP
crm_lines_listEn la superficie completa; en la compacta, mb_execute_operation con id: "crm.lines.list".
Costo declarado: hasta 250 lecturas y 0 escrituras por llamada (cuentan en el cupo diario).
Replaces the whole set of users notified in the app when a message arrives on a WhatsApp line (up to 10; an empty list notifies nobody). Each one must be a CRM seller with access to the CRM. Receivers also work the line when the org restricts sellers to their own lines. Requires manage_line_receivers (Managers and admins).
Alcance
crm:write
Permiso
Editar en el módulo · Acción del CRM: manage_line_receivers
Tool del MCP
crm_lines_receivers_updateEn la superficie completa; en la compacta, mb_execute_operation con id: "crm.lines.receivers.update".
Costo declarado: hasta 33 lecturas y 3 escrituras por llamada (cuentan en el cupo diario).
Parámetros
line_idstringrutarequerido
The line: the id of crm.lines.list (Meta's phone number id).
receiversarray<string>cuerporequerido
The whole new list of members notified in the app (user ids of CRM sellers with access to the CRM, up to 10): it replaces the current one, and an empty list notifies nobody.
Sets the sellers that work a WhatsApp line (up to 50 CRM sellers; AI positions are not allowed) and optionally the access mode: all (every seller, the list is ignored) or selected (only the listed sellers plus the line's receivers; an empty list is allowed). Without a mode the previous one stays. It only matters for sellers restricted to their own records; Managers and admins see every line. Requires manage_line_receivers.
Alcance
crm:write
Permiso
Editar en el módulo · Acción del CRM: manage_line_receivers
Tool del MCP
crm_lines_sellers_updateEn la superficie completa; en la compacta, mb_execute_operation con id: "crm.lines.sellers.update".
Costo declarado: hasta 52 lecturas y 2 escrituras por llamada (cuentan en el cupo diario).
Parámetros
line_idstringrutarequerido
The line: the id of crm.lines.list (Meta's phone number id).
sellersarray<string>cuerporequerido
The whole new list of sellers that work the line (user ids of CRM sellers, no AI positions, up to 50): it replaces the current one.
modeenumcuerpoopcional
all: every seller works the line (the list is kept but ignored); selected: only the listed sellers and the line's receivers (an empty list leaves only the receivers). Without it, the mode stays as it is.