Skip to main content

MessageMedia connector — notification lifecycle

A notification is the connector's one stateful resource, tracked in the connector's local notification store. This page covers its states and the scheduling rules. How each step is implemented is in the architecture; how to call each one is in endpoints.

States

The connector records a status when a notification is created (the send call) and changes it only on cancel. There is no delivery-status webhook, so a row does not advance from NEW to DELIVERED/ERROR on its own after the initial send (see the connector notes).

Purge is orthogonal to status. POST …/purge marks the record purged and reports isPurged: true; it does not change the notification's status.

Status mapping

The stored MessageMedia status is normalised to the Ark NotificationStatus returned by the API:

MessageMedia status(es)Ark status
queued, processing, processedNEW
deliveredDELIVERED
scheduledSCHEDULED_DELIVERY
cancelledCANCELLED
expired, undeliverable, failedERROR
(any other)NEW (default)

Scheduling

A send with scheduledDateTime sets the MessageMedia message's scheduled time. The connector validates the window before calling MessageMedia:

  • More than 5 minutes in the future, and
  • No more than 35 days in the future.

Outside that window → 422 NOT022003. Scheduled messages (and messages still queued/processing) can be cancelled (DELETE) until MessageMedia sends them.