Personalização de campanhas
Visão geral
A personalização de campanhas permite trazer valores dos seus contatos para dentro dos e-mails. Você pode usar campos nativos como {{firstName}} e {{email}}, além de variáveis personalizadas como {{company}}, {{plan}} ou {{registrationCode}}.
Como funciona
- Cadastre as variáveis na lista de contatos
Adicione na lista de contatos os nomes das variáveis personalizadas que você quer usar, como
companyouplan. - Salve os valores em cada contato
Guarde os valores correspondentes em cada contato pelo dashboard, por importação de CSV ou pela API.
- Use as variáveis na campanha
Selecione essa lista de contatos na sua campanha e insira as variáveis no assunto ou no conteúdo do e-mail.
- Envie a campanha
O Madmail substitui cada variável pelo valor daquele contato na hora de renderizar a campanha.
Variáveis disponíveis
Estas variáveis nativas estão sempre disponíveis nas campanhas:
{{email}}{{firstName}}{{lastName}}{{usesend_unsubscribe_url}}
As variáveis personalizadas vêm da lista de variáveis da lista de contatos.
Toda campanha precisa incluir um link de descadastro. Use a variável
{{usesend_unsubscribe_url}}, específica para cada destinatário, como destino do link:
<a href="{{usesend_unsubscribe_url}}">Unsubscribe</a>
Configurar a personalização pelo dashboard
1. Adicione variáveis à sua lista de contatos
- Acesse Contatos
- Crie uma nova lista de contatos ou abra uma existente
- Adicione suas variáveis como uma lista separada por vírgulas, por exemplo:
company, plan, registrationCode
2. Adicione valores aos seus contatos
Para cada contato, salve os valores das variáveis que você cadastrou.
Por exemplo, um contato pode ficar assim:
{
"email": "jane@example.com",
"firstName": "Jane",
"lastName": "Doe",
"properties": {
"company": "Acme",
"plan": "Pro",
"registrationCode": "WELCOME-2026"
}
}
Você pode adicionar esses valores:
- manualmente pelo editor de contatos
- por importação de CSV, usando nomes de colunas correspondentes
- pela API de Contatos, usando
properties
3. Insira as variáveis na sua campanha
- Abra ou crie uma campanha
- Selecione a lista de contatos que contém suas variáveis
- Insira as variáveis no assunto ou no corpo do e-mail
Exemplos:
Subject: Welcome to {{company}}
Hi {{firstName}},
You're currently on the {{plan}} plan.
Your registration code is {{registrationCode}}.
Com uma lista de contatos selecionada, o editor de campanhas sugere automaticamente as variáveis disponíveis.
Valores padrão (fallback)
Se uma variável puder vir vazia, você pode definir um valor padrão:
Hi {{firstName,fallback=there}},
Isso renderiza there quando firstName estiver vazio.
Usando a API
Criar uma lista de contatos com variáveis
curl -X POST https://app.madmail.com.br/api/v1/contactBooks \
-H "Authorization: Bearer us_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"name": "Customers",
"variables": ["company", "plan", "registrationCode"]
}'
Criar um contato com valores de variáveis
curl -X POST https://app.madmail.com.br/api/v1/contactBooks/{contactBookId}/contacts \
-H "Authorization: Bearer us_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"email": "jane@example.com",
"firstName": "Jane",
"properties": {
"company": "Acme",
"plan": "Pro",
"registrationCode": "WELCOME-2026"
}
}'
Criar uma campanha que usa variáveis
curl -X POST https://app.madmail.com.br/api/v1/campaigns \
-H "Authorization: Bearer us_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"name": "Welcome campaign",
"from": "Acme <hello@acme.com>",
"subject": "Welcome to {{company}}",
"contactBookId": "{contactBookId}",
"html": "<p>Hi {{firstName,fallback=there}}, your plan is {{plan}}.</p><p><a href=\"{{usesend_unsubscribe_url}}\">Unsubscribe</a></p>"
}'
Boas práticas
| Boa prática | Por que ajuda |
|---|---|
| Cadastre as variáveis antes de importar contatos | Mantém as colunas do CSV e as properties da API alinhadas com a lista |
| Use nomes de variáveis simples | Deixa os templates mais fáceis de ler e manter |
| Use fallbacks para dados opcionais | Evita espaços vazios estranhos quando um contato não tem o valor |
| Teste primeiro com um grupo pequeno | Ajuda a conferir o resultado renderizado antes de enviar para toda a base |