solar.ia

Mensagens

Enviar mensagem

POSThttps://api.seudominio.com.br/integrations/v1/messages

Envia um texto ou um modelo para uma conversa, contato ou telefone.

Informe o que enviar (content ou template_id) e para quem (conversation_id, contact_id ou phone_number). Sem conversa, a mensagem vai para a conversa mais recente do contato — ou uma nova é aberta no canal.

Com template_id, no WhatsApp oficial a mensagem sai como modelo aprovado pela Meta (necessário fora da janela de 24 horas). Nos demais canais vai o texto do modelo, com {{nome}}, {{primeiro_nome}} e {{telefone}} preenchidos.

No chat, a mensagem aparece assinada como “Integração (API)”.

  • Enviando para uma conversation_id sem modelo, a resposta traz message_id no lugar de contact_id.

Corpo da requisição

application/json
contentstring

Texto da mensagem (até 4096 caracteres). Obrigatório sem template_id.

template_idstring (uuid)

Modelo de mensagem (veja Listar modelos). Substitui content.

conversation_idinteger

Conversa de destino. Tem prioridade sobre contato e telefone.

contact_idinteger

Contato de destino. Usa a conversa mais recente dele (ou abre uma).

phone_numberstring (telefone)

Telefone do contato. Se não existir, o contato é criado. Aceita DDD + número ou +55...

namestring

Nome usado ao criar o contato pelo telefone.

channel_idstring (uuid)

Canal usado para abrir a conversa quando o contato ainda não tem uma. Sem ele, usa o primeiro canal conectado.

Corpo para testar

Respostas

Fica só nesta aba do navegador e é usado nos exemplos abaixo.

curl --request POST \
  --url 'https://api.seudominio.com.br/integrations/v1/messages' \
  --header 'Authorization: Bearer sk_SEU_TOKEN' \
  --header 'Content-Type: application/json' \
  --data '{
  "phone_number": "11999990000",
  "name": "Maria",
  "content": "Olá! Sua reserva foi confirmada."
}'

A chamada é real: age sobre os dados do seu workspace.

Resposta
{
  "conversation_id": 120,
  "contact_id": 35
}