Transacional — Envio Único¶
Envia email e/ou SMS directamente para um conjunto de destinatários sem criar previamente um objecto mensagem. Os contactos são criados automaticamente na lista associada se não existirem.
Nota
Este endpoint requer Content-Type: application/json. Chamadas com application/x-www-form-urlencoded devolvem um erro "Unimplemented".
Endpoint¶
POST /transactional/<transactional>/transaction
POST /transactional/<transactional>/transaction¶
Payload¶
O payload deve ser um objecto JSON enviado com Content-Type: application/json.
| Campo | Tipo | Descrição |
|---|---|---|
recipients |
array | Array de objectos destinatário. Cada email/telefone pode aparecer no máximo uma vez. |
template |
objecto (opcional) | Template de email partilhado, aplicado a todos os destinatários sem payload próprio. |
Objecto destinatário:
| Campo | Tipo | Descrição |
|---|---|---|
email |
string (opcional) | Endereço de email do destinatário |
telephone |
string (opcional) | Número de telefone do destinatário |
externalreference |
string (opcional) | Referência do seu sistema, devolvida inalterada nos callbacks de entrega |
payload.email |
string (opcional) | HTML de email para este destinatário. Substitui o template partilhado. |
payload.sms |
string (opcional) | Texto SMS para este destinatário. Substitui o template partilhado. |
Pelo menos um de email ou telephone deve estar presente por destinatário.
Devolve: A entidade transacional, created (contactos adicionados à lista) e nonsubscribed (contactos ignorados por terem cancelado a subscrição).
Exemplo — enviar usando o template de mensagem configurado:
curl -u "username:api_key" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"recipients": [
{
"email": "destinatario@exemplo.pt",
"telephone": "351910000001",
"externalreference": "encomenda-123"
}
]
}' \
https://app.duo.pt/transactional/{transactional_id}/transaction
Exemplo — enviar com payload personalizado por destinatário:
curl -u "username:api_key" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"recipients": [
{
"email": "destinatario@exemplo.pt",
"telephone": "351910000001",
"externalreference": "encomenda-456",
"payload": {
"sms": "A sua encomenda #456 foi enviada."
}
}
]
}' \
https://app.duo.pt/transactional/{transactional_id}/transaction
Resposta: