Anexos
Formato, limites e regras dos anexos de e-mail, no envio transacional e em campanhas.
Anexos são aceitos tanto no envio transacional quanto na criação de campanha. O formato do item é o mesmo nos dois casos.
filenamestringobrigatórioNome do arquivo como o destinatário vai vê-lo. Diretórios são descartados
(../../etc/nota.pdf vira nota.pdf) e os caracteres < > : " | ? * são
removidos.
contentstringopcionalConteúdo do arquivo em base64. Aceita data URI (data:application/pdf;base64,...)
— nesse caso o contentType é extraído do prefixo. Mutuamente exclusivo com url.
urlstringopcionalEndereço de onde baixar o arquivo no momento do envio. A URL precisa estar
acessível sem autenticação. Mutuamente exclusivo com content.
contentTypestringopcionalMIME type do arquivo. Quando omitido, é derivado da extensão do filename.
{
"attachments": [
{
"filename": "nota-fiscal.pdf",
"content": "JVBERi0xLjQKJcfsj6IKNSAwIG9iago8PC9MZW5ndGgg...",
"contentType": "application/pdf"
},
{
"filename": "boleto.pdf",
"url": "https://cdn.suaempresa.com/boletos/8f2a.pdf"
}
]
}Limites
| Regra | Valor |
|---|---|
| Anexos por e-mail | 10 |
| Tamanho total (soma dos anexos, já decodificados) | 15 MB |
| Tamanho máximo do corpo da requisição | 25 MB |
Comprimento do filename | 200 caracteres |
Um dos dois, nunca os dois
Cada anexo precisa de content ou url. Informar ambos — ou nenhum — devolve 400.
Anexos de campanha ficam guardados
Em campanhas, o anexo é persistido junto da campanha e reenviado em cada disparo, inclusive nos agendados. No envio transacional, o arquivo é usado apenas naquele envio. Por isso, quando a campanha tem anexo, o disparo passa a ser feito e-mail a e-mail em vez de em lote — o que reduz a velocidade de envio.
Erros
Anexos inválidos devolvem 400 com o código INVALID_EMAIL_ATTACHMENT. As causas possíveis são: falta de filename, ausência de content e url, presença dos dois, base64 malformado, ou qualquer um dos limites acima excedido.
Um corpo de requisição acima de 25 MB devolve 413 antes mesmo da validação dos anexos.