Pular para o conteúdo principal

Enviar botões interativos

Não existe um endpoint separado /messages/interactive. Os botões são campos extras (buttons, header, footer) do único endpoint de envio:
POST https://pilotstatus.com.br/v1/messages/send

Onde os botões são permitidos

  • Envios de template (templateId) — buttons sobrescrevem os botões do próprio template e podem ser combinados com a mídia do template (incluindo video / document; a Meta Cloud API pode rejeitar algumas combinações de botões com vídeo/documento no momento da entrega).
  • Envios de texto livre (text) — buttons junto com o texto; header e footer exigem buttons.
  • Não permitidos no modo de mídia direta pura (media + mediaType sem templateId/text) — veja Enviar uma mensagem.
Até 3 botões por mensagem. Tipos: reply, url, call, copy.

Exemplo: template + botões

curl -X POST "https://pilotstatus.com.br/v1/messages/send" \
  -H "Content-Type: application/json" \
  -H "x-api-key: ps_sua_chave_aqui" \
  -d '{
    "templateId": "confirm-template",
    "destinationNumber": "+5511999999999",
    "variables": { "name": "João" },
    "buttons": [
      { "type": "reply", "displayText": "Confirmar", "id": "confirm" },
      { "type": "url", "displayText": "Ver detalhes", "url": "https://example.com/order/123" }
    ]
  }'

Resposta (202)

{
  "id": "msg_abc",
  "correlationId": "corr_123",
  "status": "QUEUED"
}

Como as respostas de botão chegam

Quando o contato toca em um botão de resposta (reply), você recebe um webhook de entrada normalmessage.reply (ou message.received) — cujo content é o texto do botão (ex.: "Confirmar"), com quotedMessageId apontando para a sua mensagem original.
Não existe um evento ou tipo de mensagem button_reply nem um campo button_id — o id que você define no botão de resposta não é devolvido. Identifique o toque no botão pelo texto em content mais o quotedMessageId (e o correlationId quando presente).
Veja os payloads completos em Eventos de webhook e a lista completa de parâmetros (formato dos objetos de botão, regras de header/footer) em Enviar uma mensagem.