Enviar um e-mail transaccional pela API: os campos do POST /v1/email/messages

E-mail·· 12 visualizações· 3 min de leitura

A resposta curta: um e-mail é um pedido POST /v1/email/messages com o remetente de um domínio verificado, os destinatários, o assunto e o conteúdo em html, em text ou nos dois (ou um template_id). Sem send_at, o e-mail sai logo e a resposta, com o código 201, traz o estado real.

Os campos do pedido

Campo O que leva
from O remetente, de um domínio verificado ou de um subdomínio dele: facturas@asuaempresa.co.mz ou A Sua Empresa <facturas@asuaempresa.co.mz>
from_name Opcional: o nome que aparece ao lado do endereço
to, cc, bcc Um endereço, uma lista separada por vírgulas ou um array. No máximo 50 destinatários por e-mail, somando os três
reply_to Até 5 endereços para onde vão as respostas
subject O assunto, até 998 caracteres. Pode ter variáveis
html / text O conteúdo. Envie os dois sempre que puder
template_id e variables Um modelo guardado e os valores das variáveis. Veja modelos com variáveis
attachments Ficheiros em base64. Veja anexar facturas e bilhetes
send_at Opcional: data e hora de envio. Veja agendar um e-mail

Um exemplo

curl https://api.interweb.co.mz/v1/email/messages \
-H "Authorization: Bearer sandbox_..." \
-H "Content-Type: application/json" \
-H "Idempotency-Key: fatura-2026-214" \
-d '{"from": "A Sua Empresa <facturas@asuaempresa.co.mz>",
"to": ["ana@example.com"],
"reply_to": "contabilidade@asuaempresa.co.mz",
"subject": "Factura FT 2026/214 disponível",
"html": "<p>Olá Ana, a sua factura já está disponível.</p>",
"text": "Olá Ana, a sua factura já está disponível."}'

O que vem na resposta

Campo O que diz
id O número do e-mail, para o consultar depois com GET /v1/email/messages/{id}
status O estado: sent quando saiu, simulated em Sandbox. Veja os estados do e-mail
recipients e credits Quantos destinatários contaram e quantos créditos gastou
charged Se o envio já foi cobrado
suppressed Os destinatários que estavam na lista de bloqueados e ficaram de fora, sem custo

Repetir sem enviar duas vezes

Envie o cabeçalho Idempotency-Key com um valor único por e-mail, como fatura-2026-214. Se a ligação cair e repetir o pedido com o mesmo valor e o mesmo corpo, recebe a resposta guardada e o e-mail não sai outra vez. O mesmo valor com outro corpo dá 409 com idempotency_conflict. A ideia geral está em tempos de espera, repetições e idempotência.

Nunca chame a API a partir do navegador do cliente. A chave ficava à vista de quem abrisse a página. O pedido sai sempre do seu servidor.
Programa em PHP? O pedido é um POST com JSON, como em chamar uma API web a partir do PHP com o cURL.

Quer ver tudo o que a API faz e criar a sua chave? Veja a página da API.

Ver a página da API

VEJA TAMBÉM

Começar no Email Center: activar, verificar o domínio e enviar o primeiro e-mail

Modelos de e-mail transaccional com variáveis: escrever uma vez, preencher com os dados de cada cliente

To, Cc, Bcc e Reply-To no e-mail transaccional: quantos destinatários e quanto custa cada um

Estados do e-mail transaccional: sent, delivered, bounced, complained e failed explicados

Erros da API do Email Center: email_account_required, all_recipients_suppressed e outros motivos

Tempos de espera, repetições e idempotência: como não cobrar duas vezes ao cliente

PRODUTO RECOMENDADO

E-mail profissional no seu domínio

Caixas com o nome da sua empresa, sem publicidade, com filtro de spam. desde 321,75 MT/mês (plano de 3 anos, com cupão)

Ver planos
Esta resposta foi útil? A sua resposta ajuda-nos a melhorar este artigo.