Ir para o conteúdo

Exemplos de templates e payloads

Esta página tem como objetivo ilustar payloads adequados para cada tipo de template.

Templates sem cabeçalho

Nestes templates o valor do campo cabeçalho é selecionado como Nenhum. Neste caso o corpo da mensagem pode ou não conter parâmetros, que são identificados pelo uso de chaves {{1}} com o número do parâmetro.

Como são templates sem cabeçalho, o atributo header pode ser sempre omitido.

Texto estático

No campo Corpo foi inserido um texto estático (não contém nenhum parâmetro), conforme abaixo:

Caro usuário, seu certificado digital irá expirar dentro de 10 dias.

Quando um template tem um corpo estático como este, o atributo body pode ser omitido no payload conforme o exemplo de payload abaixo.

{
    "nomeTemplate": "NOME_TEMPLATE",
    "wabaId": "WABA_ID",
    "destinatarios": [ "CONTATO_1", "CONTATO_2" ]
}'

Texto dinâmico

No campo Corpo foi inserido um texto contendo dois parâmetros, conforme abaixo:

Caro usuário {{1}}, seu certificado digital irá expirar em {{2}} dias. Favor consultar endereço em anexo para endereços de agências para renovação.

Desta forma o payload será conforme abaixo. Perceba que o atributo header é ausente pois não há cabeçalho.

{
    "nomeTemplate": "NOME_TEMPLATE",
    "wabaId": "WABA_ID",
    "destinatarios": [ "CONTATO_1", "CONTATO_2" ],
    "body": {
        "parametros": [
            { "tipo": "text", "valor": "Valor parâmetro 1" },
            { "tipo": "text", "valor": "Valor parâmetro 2" }
        ]
    }

}

Templates com cabeçalho

Nos exemplos desta seção lidamos com templates que tem cabeçalho, ou seja, aqueles cujo valor do campo cabeçalho foi escolhido como Text ou Media.

Cabeçalho do tipo Mídia

Nestes exemplos o cabeçalho escolhido foi do tipo Media e payload vai variar de acordo com a presença ou não de parâmetros do corpo do template.

Cabeçalho Mídia e corpo estático

No campo Corpo foi inserido um texto estático (não contém nenhum parâmetro), conforme abaixo:

Seu certificado irá expirar em 10 dias. Consulte o pdf em anexo para passos para renovação.

Sendo o texto do corpo estático e o cabeçalho do tipo media, apenas o id da media deve ser enviado no payload, conforme exemplo abaixo.

{
    "nomeTemplate": "NOME_TEMPLATE",
    "wabaId": "WABA_ID",
    "destinatarios": [ "CONTATO_1", "CONTATO_2" ],
    "header": {
        "idMedia": "ID_MEDIA"
    }
}'

Cabeçalho Mídia e corpo dinâmico

No campo Corpo foi inserido um texto dinâmico contendo dois parâmetros, conforme abaixo:

Caro usuário {{1}}, seu certificado irá expirar em {{2}} dias. Consulte o pdf em anexo para passos para renovação.

Sendo o texto do corpo dinâmico e o cabeçalho do tipo media, o payload de solicitação de envio de mensagens deve conter o atributo idMedia no header e os parâmetros do texto dinâmico do corpo no atributo body, conforme exemplo abaixo.

{
    "nomeTemplate": "NOME_TEMPLATE",
    "wabaId": "WABA_ID",
    "destinatarios": [ "CONTATO_1", "CONTATO_2" ],
    "header": {
        "idMedia": "ID_MEDIA"
    },
    "body": {
        "parametros": [
            { "tipo": "text", "valor": "Valor parâmetro 1" },
            { "tipo": "text", "valor": "Valor parâmetro 2" }
        ]
    }
}'

Cabeçalho do tipo Text

Nestes exemplos o cabeçalho escolhido foi do tipo Text e payload vai variar de acordo com a presença ou não de parâmetros do corpo do template.

Cabeçalho Text estático e corpo estático

No texto do cabeçalho Text foi colocado um texto estático, conforme abaixo.

Aviso de expiração de certificado digital.

No texto do campo Corpo foi também colocado um valor estático, conforme abaixo.

Caro usuário, seu certificado digital irá expirar em 10 dias.

Sendo ambos os textos de cabeçalho e corpo estático, ambos os atributos header e body do payload podem ser omitidos, conforme exemplo abaixo.

{
    "nomeTemplate": "NOME_TEMPLATE",
    "wabaId": "WABA_ID",
    "destinatarios": [ "CONTATO_1", "CONTATO_2" ]
}'

Cabeçalho Text estático e corpo dinâmico

No texto do cabeçalho Text foi colocado um texto estático, conforme abaixo.

Aviso de expiração de certificado digital.

No texto do campo Corpo foi também colocado um valor dinâmico, incluindo dois parâmetros, conforme abaixo.

Caro usuário {{1}}, seu certificado digital irá expirar em {{2}} dias.

Neste caso o atributo header do payload é omitido, enquanto o atributo body deve conter dois parâmetros, conforme exemplo abaixo.

{
    "nomeTemplate": "NOME_TEMPLATE",
    "wabaId": "WABA_ID",
    "destinatarios": [ "CONTATO_1", "CONTATO_2" ],
    "body": {
        "parametros": [
            { "tipo": "text", "valor": "Valor par 1" },
            { "tipo": "text", "valor": "Valor par 2" }
        ]
    }
}'

Cabeçalho Text dinâmico e corpo estático

No texto do cabeçalho Text foi colocado um texto dinâmico, conforme abaixo.

Aviso de expiração de certificado digital para {{1}}.

No texto do campo Corpo foi colocado um valor estático, conforme abaixo.

Caro usuário, seu certificado digital irá expirar em 10 dias.

Neste caso o atributo header contém um parâmetro, enquanto o atributo body é omitido, conforme exemplo abaixo.

{
    "nomeTemplate": "NOME_TEMPLATE",
    "wabaId": "WABA_ID",
    "destinatarios": [ "CONTATO_1", "CONTATO_2" ],
    "header": {
        "parametros": [
            { "tipo": "text", "valor": "c1" }
        ]
    }
}'

Cabeçalho Text dinâmico e corpo dinâmico

No texto do cabeçalho Text foi colocado um texto dinâmico, conforme abaixo.

Aviso de expiração de certificado digital para {{1}}.

No texto do campo Corpo foi também colocado um valor dinâmico, incluindo dois parâmetros, conforme abaixo.

Caro usuário {{1}}, seu certificado digital irá expirar em {{2}} dias.

Neste caso o atributo header do payload deve conter um parâmetro, enquanto o atributo body deve conter dois parâmetros, conforme exemplo abaixo.

{
    "nomeTemplate": "NOME_TEMPLATE",
    "wabaId": "WABA_ID",
    "destinatarios": [ "CONTATO_1", "CONTATO_2" ],
    "header": {
        "parametros": [
            { "tipo": "text", "valor": "par h1" }
        ]
    },
    "body": {
        "parametros": [
            { "tipo": "text", "valor": "par c1" },
            { "tipo": "text", "valor": "par c2" }
        ]
    }
}'