Endpoint
Sends a published campaign to an audience you stored earlier. This is the endpoint that supports scheduling.
Request body
Response
status starts as processing and the counts start at 0. Poll Get sendout status for the outcome.
Scheduling
PassscheduledAt to dispatch later. Constraints:
- No more than 30 minutes in the past β a time slightly behind now dispatches on the next sweep rather than being rejected.
- No more than 3 years ahead.
- Honoured to the minute; seconds are truncated.
Unusable recipients
onInvalidEntries decides what a recipient the campaign cannot accept β a missing required variable, for instance β does to the send.
When recipients are rejected,
validationReportUrl on the status response links to an annotated copy of your CSV naming the offending rows.
Retrying safely
A send goes to a whole audience, so a retry after a timeout is expensive to get wrong. Mint anidempotencyKey and reuse it when retrying:
- The same key returns the original response instead of creating a second send.
- The same key with different parameters is rejected with
400β that is a mistake, not a retry. - A key whose first request is still running returns
409. Retry once it finishes. - Keys are remembered for 24 hours, maximum 128 characters.
Get sendout status
This endpoint reports whether the send was accepted, not whether the messages arrived. Delivery is reported by webhooks.
