DocumentazioneInviare email
Inviare email
POST /emails/send — payload, risposta e template.
Endpoint principale per l'invio transazionale.
POST https://api.mailingcore.com/emails/send
Authorization: Bearer mc_live_xxxx
X-Tenant-Id: clxxxxxxxx
Content-Type: application/json
Scope richiesto: email:send.
Corpo della richiesta
{
"to": "[email protected]",
"subject": "Benvenuto su MailingCore",
"htmlBody": "<h1>Ciao</h1><p>Grazie per esserti registrato.</p>",
"textBody": "Ciao. Grazie per esserti registrato.",
"fromEmail": "[email protected]",
"fromName": "La Tua App",
"replyTo": "[email protected]",
"tags": ["welcome"],
"metadata": { "userId": "123" },
"idempotencyKey": "welcome-123-v1",
"templateVersionId": "clxversion...",
"unsubscribeLang": "it"
}
Campi
| Campo | Obbligatorio | Descrizione |
|---|---|---|
to | Si | Email del destinatario |
subject | Si | Oggetto (max 998 caratteri) |
htmlBody | Si* | HTML del messaggio (*oppure usa templateVersionId) |
textBody | No | Fallback testo semplice |
fromEmail | No | Mittente; il dominio deve essere verificato |
fromName | No | Nome visibile del mittente |
replyTo | No | Indirizzo di risposta |
tags | No | Etichette per filtrare i log |
metadata | No | JSON libero per la tua integrazione |
idempotencyKey | No | Retry sicuri (stessa key = stessa risposta) |
templateVersionId | No | Versione pubblicata del template |
projectId | No | Progetto SMTP (avanzato) |
unsubscribeLang | No | Lingua della pagina di disiscrizione nelle campagne |
Risposta (async)
{
"id": "clxlog...",
"status": "QUEUED",
"queued": true,
"position": 2
}
In sviluppo puoi forzare invio sincrono con ?sync=true.
Header di quota
Ogni risposta puo includere:
X-Quota-Limit: 5000
X-Quota-Used: 420
X-Quota-Percentage: 8
X-Quota-Warning: true
Dettagli in Quota mensile.
Invio in batch
POST /emails/batch — fino a 100 destinatari per richiesta. Stesso scope email:send.