Skip to main content
Todos os envios seguem o mesmo contrato: POST /send-* com phone + conteúdo, resposta queued com message_id, resultado no webhook delivery. Os campos comuns valem em quase todos:

Texto

Formatação do WhatsApp: *negrito*, _itálico_, ~riscado~, ```mono```. Links viram clicáveis automaticamente, mas sem prévia; para prévia com título e imagem, use send-link:

Mídia

send-image, send-audio, send-video, send-ptv (vídeo redondo), send-gif, send-document, send-sticker. O campo principal tem o nome do tipo (image, audio, video, ptv, gif, document, sticker) e aceita URL pública, data: URL ou base64 puro. Limites, formatos e conversões estão em Mídia.
  • send-audio: ptt: true (padrão) envia como voice note, com forma de onda; ptt: false envia como arquivo de áudio.
  • send-document: file_name define o nome exibido; extension (ou o path send-document/{extension} da z-api) ajuda quando a URL não tem extensão.
  • send-sticker: WebP 512×512; outros formatos são convertidos quando o servidor tem ffmpeg.

Localização

Contatos

send-contacts envia vários cartões numa mensagem só (contacts: [{ contact_name, contact_phone }]). Você também pode passar um vcard pronto.

Enquete

Os votos chegam no webhook received em poll_vote. send-poll-vote vota em uma enquete recebida (poll_message_id + options).

Reações e ações sobre mensagens

Responder, mencionar, editar

Edição vale para mensagens suas enviadas há pouco tempo (limite do WhatsApp) e que o engine tenha em cache; caso contrário o delivery vem com message_not_found. O contato recebe a mensagem marcada como “editada”; no webhook received (com notify_sent_by_me) chega is_edit: true.

Onde cada tipo funciona

Botões, listas, carrossel, PIX, eventos e status têm página própria: O que renderiza onde e a seção Interativos da referência.