Pular para o conteúdo principal
POST
Enviar lista
Envia uma mensagem com um botão que abre uma lista de opções, organizadas em seções. É ideal quando há mais de três escolhas, como horários disponíveis, produtos de um cardápio ou assuntos do atendimento. A janela de 24 horas precisa estar aberta.
O destinatário pode ser informado pelo número de telefone (to) ou pelo ID do usuário (recipient). Se os dois forem enviados, vale o to; para enviar pelo ID do usuário, deixe o to em branco. Veja a diferença em Destinatário.

Estrutura da mensagem

A mensagem é do tipo interactive, com interactive.type igual a list. O cliente vê o texto e um botão; ao tocar no botão, abre a lista para escolher uma opção.

Seções e opções

Cada seção tem um título e suas opções (rows):
O limite é de 10 opções no total, somando todas as seções, e não 10 por seção. Uma lista com duas seções, de 6 e 5 opções, é recusada com o erro 131009 (“Total row count exceed max allowed count: 10”).
No Testar, a lista já vem preenchida com duas seções de horários. Troque pelas opções do seu atendimento.

Resposta do cliente

Quando o cliente escolhe uma opção, chega pelo webhook uma mensagem do tipo interactive, com interactive.type igual a list_reply. O list_reply.id é o id da opção escolhida, e o context.id aponta para a mensagem com a lista:
Use o list_reply.id para identificar a escolha. Um id com informação útil, como seg-09h ou produto-123, evita consultas extras no seu sistema.
A resposta do cliente é uma mensagem nova, então renova a janela de 24 horas. Veja mais detalhes na documentação de mensagens de lista da Meta.

Autorizações

Authorization
string
header
obrigatório

Token gerado no painel da Datafy ao criar o canal. Formato: sk_live_xxx.

Parâmetros de caminho

phone_number_id
string
obrigatório

ID do número que envia a mensagem. Descubra com GET /me.

Corpo

application/json
messaging_product
enum<string>
padrão:whatsapp
obrigatório

Sempre whatsapp.

Opções disponíveis:
whatsapp
Exemplo:

"whatsapp"

to
string
obrigatório

Número do destinatário com código do país e DDD, como 5511999999999. Tem prioridade sobre recipient: para enviar pelo ID do usuário, deixe em branco.

Exemplo:

"5511999999999"

type
enum<string>
padrão:interactive
obrigatório

Sempre interactive.

Opções disponíveis:
interactive
Exemplo:

"interactive"

interactive
object
obrigatório

Mensagem com um botão que abre uma lista de opções.

recipient_type
enum<string>
padrão:individual

Sempre individual.

Opções disponíveis:
individual
Exemplo:

"individual"

recipient
string

ID do usuário no WhatsApp (BSUID), recebido nos webhooks em from_user_id e contacts[].user_id, como BR.13491208655302741918. Usado quando to não é informado.

context
object

Responde citando uma mensagem anterior da conversa.

Resposta

Envio aceito pela Meta. Não confirma a entrega.