Envio de Template

Caso você ainda não possua um Template criado e aprovado para uso, consulte a documentação sobre Template de WhatsApp para obter mais informações sobre como fazer esse procedimento.

O corpo da requisição deve conter um objeto JSON com os seguintes campos:

CampoObrigatórioDetalhesTipo

destinations

Sim

Detalhes sobre os identificadores do envio e destino

Destination[]

message

Sim

Detalhes sobre o objeto MESSAGE que será enviado

mensagem

defaultExtraInfo

Não

Dados adicionais que identificam a submissão que será relacionada a todos que receberem a mensagem

String

campaignAlias

Não

Campaign ID, é relacionada a todas as mensagens enviadas

String

Exemplo de requisição com Template

{
    "destinations": [{
            "correlationId": "MyCorrelationId",
            "destination": "5519900001111"      
  }],
    "message": {
        "template": {
            "namespace" : "aaaaaaaa_bbbb_cccc_dddd_eeeeeeeeeeee",
            "elementName" : "some_approved_image_hsm"
    },
    {  
            "languagePolicy": "DETERMINISTIC",
            "languageCode": "pt_BR"
      }
    }
}

Destinations:

CampoObrigatórioDetalhesTipo

correlationId

Não

Id definido pelo cliente que será retornado no status da mensagem (callback). Você pode usar esse id para rastrear envios de mensagens de maneira personalizada.

String

destination

Sim

Número de telefone que receberá a mensagem (código do país (55 para Brasil) e DDD são obrigatórios). Exemplos: 5519900001111, +5519900001111, +55(19) 900001111.

String

Message:

CampoObrigatórioDetalhesType

template

Sim

Detalhes sobre o objeto TEMPLATE que será enviado.

Template

Template:

CampoObrigatórioDetalhesTipo

elementName

Sim

Nome do modelo cadastrado e aprovado.

String

header

Sim, quando o Template possuir parâmetro no header

Objetos do cabeçalho com seus parâmetros

Header

bodyParameters

Sim (caso o template use variáveis)

A soma de todos os caracteres do corpo, considerando campos fixos e dinâmicos, é limitada a 1024 caracteres se o modelo registrado tiver apenas o corpo. É limitado a 160 caracteres se você tiver um cabeçalho ou rodapé.

Lista de strings

languageCode

Sim, quando houver mais de um idioma cadastrado para o mesmo template.

Codes: pt_BR, en, es, en_US, en_GB, pt_PT, es_AR, es_ES, es_MX, it, fr

String

buttons

Sim (Quando há no template)

A aprovação dos botões no template

Buttons

Exemplo de requisição de Template com Header e Parâmetros

{
  {
    "destinations": [{
            "correlationId": "MyCorrelationId",
            "destination": "5519900001111"      
  }],
    "message": {
        "template": {
            "namespace" : "aaaaaaaa_bbbb_cccc_dddd_eeeeeeeeeeee",
            "elementName" : "some_approved_image_hsm",
            "header": {
                "parameters": [
                    "header_parameter_1"
                ]
            },
            "bodyParameters": [
                "https://upload.wikimedia.org/wikipedia/commons/c/c3/Arquivo.jpg"
            ],
            "languagePolicy": "DETERMINISTIC",
            "languageCode": "pt_BR"
        }
    }
}
CampoObrigatórioDetalhesTipo

parameters

Opcional

Lista de parâmetros que serão substituídos no texto do cabeçalho. Nota: Caso esteja presente, o cabeçalho não deve ter título nem nenhum elemento.

String

title

Opcional

O título deve ter até 60 caracteres

String

(element)

Sim

Opções: text (padrão), image, audio, document, video.

Object

Element

CampoObrigatórioDetalhesTipo

url

Sim

URL da mídia. Use somente com URLs HTTP/HTTPS.

String

type

Sim

Tipo da midia (JPEG, MP3, PDF, etc)

String

Last updated