DocumentazioneCreare e inviare campagna

Creare e inviare campagna

Flusso test → schedule → send con POST /campaigns.

Questa guida copre il ciclo completo: dalla bozza all'invio effettivo, inclusi test e programmazione.

Scope richiesti: campaigns:read e campaigns:write.

  1. Crea la campagna in DRAFT

    POST /campaigns con templateVersionId e audienceFilter. La campagna parte in stato DRAFT.

  2. Invia un test (opzionale)

    POST /campaigns/:id/test a 1–5 indirizzi di prova. La campagna resta in DRAFT.

  3. Programma o invia subito

    POST /campaigns/:id/schedule per data futura, oppure POST /campaigns/:id/send per invio immediato.

  4. Monitora le statistiche

    GET /campaigns/:id per stats in tempo reale durante il fan-out.

1. Creare la campagna

curl -X POST "https://api.mailingcore.com/campaigns" \
  -H "Authorization: Bearer mc_live_xxxx" \
  -H "X-Tenant-Id: clxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Newsletter giugno",
    "templateVersionId": "clxversion...",
    "timezone": "Europe/Rome",
    "audienceFilter": { "locale": "it", "optIn": true }
  }'

2. Invio di prova

POST /campaigns/:id/test

{
  "emails": ["[email protected]", "[email protected]"]
}
  • Da 1 a 5 indirizzi validi (duplicati ignorati, case-insensitive).
  • Non cambia lo stato della campagna (DRAFT resta DRAFT).
  • Non avvia il fan-out; conta comunque nella quota mensile.
  • Risposta: { campaignId, sent, rejected, results: [{ email, status, id }] }.

3. Programmare l'invio

POST /campaigns/:id/schedule

{
  "scheduledAt": "2026-07-01T09:00:00.000Z",
  "timezone": "Europe/Rome"
}

La campagna passa da DRAFT a SCHEDULED. All'ora indicata parte il fan-out asincrono.

4. Invio immediato

POST /campaigns/:id/send

Disponibile da DRAFT o SCHEDULED. La campagna entra in SENDING e poi SENT al completamento.

5. Annullare

POST /campaigns/:id/cancel

Annulla prima o durante l'invio. Lo stato diventa CANCELLED.

Modifiche in bozza

PATCH /campaigns/:id funziona solo in DRAFT. Puoi cambiare nome, template, filtro audience o subject.