Transactional
Cancel a timed send
POST/v1/transactional/messages/{id}/cancel
Requires an API key with the transactional:send scope. About keys and scopes
Stops a message sent with sendAt before it goes: it becomes skipped with reason cancelled, and message.skipped is published. Once a worker has started sending it, the answer is 409 CONFLICT. Agent keys are refused with 403.
Path parameters
idstringrequireduuid
Returns
Returns 200 OK with a TransactionalMessageDetail in data. Otherwise returns an error; Errors lists every code and which to retry.
idstringrequireduuid
contactIdstring | nullrequiredNull when the contact was erased, or the message passed the retention period: the message no longer names anyone.
uuid
recipientAddressstring | nullrequiredThe address an email went to, frozen at its first attempt; null for push, and until then.
channelstringrequiredone of
email,pushstatusstringrequiredone of
queued,sending,skipped,sent,failed,delivered,bounced,complainedfailureReasonstring | nullrequiredWhy it failed or was skipped, e.g.
suppressed,consent_missing,provider_rejected.correlationIdstring | nullrequiredThe
correlationIdgiven when it was sent, if any.templateobject | nullrequiredThe stored template and published version it was sent from; null for inline content. Messages sent before template versions carry
version: null.2 child attributes
idstringrequireduuid
versioninteger | nullrequiredmin > 0 · max 9007199254740991
createdAtstringrequireddate-time
sendAtstring | nullrequiredWhen a timed email goes out; null when it went at once.
date-time
sentAtstring | nullrequiredWhen it was handed to the provider.
date-time
deliveredAtstring | nullrequiredWhen the provider confirmed delivery.
date-time
failedAtstring | nullrequiredWhen it failed or was skipped (a cancelled send included).
date-time
openedAtstring | nullrequiredFirst open; only with
tracking.opens.date-time
clickedAtstring | nullrequiredFirst click; only with
tracking.clicks.date-time