Skip to main content
Every SMS submitted through Zeckta progresses through a delivery lifecycle. Statuses can be retrieved using the Message Status API and are reflected in campaign reports, delivery analytics, and webhook notifications.

Message Lifecycle

queued

processing

submitted

sent

delivered
Messages may also transition into terminal states:
failed
expired
undeliverable
rejected

Status Reference

Internal Processing

StatusDescription
queuedMessage has been accepted and is waiting to be processed.
processingMessage is currently being prepared for delivery.
scheduledMessage is scheduled for future delivery and has not yet entered processing.

Gateway & Carrier Processing

StatusDescription
submittedMessage has been accepted by the messaging gateway for delivery.
bufferedMessage is temporarily buffered by the carrier or gateway pending delivery.
sentMessage has been successfully dispatched toward the destination network.

Final States

StatusDescription
deliveredDelivery to the recipient handset has been confirmed.
failedDelivery failed and will not be retried automatically.
expiredThe carrier validity period expired before delivery could be completed.
undeliverableThe destination network or handset could not accept the message.
rejectedThe message was rejected before delivery processing completed.

Terminal States

The following statuses are considered final:
  • delivered
  • failed
  • expired
  • undeliverable
  • rejected
Once a message reaches a terminal state, no further delivery updates will be generated.

Checking Message Status

Retrieve the latest status using:
GET /v1/messaging/sms/messages/{messageId}
Example response:
{
  "success": true,
  "data": {
    "messageId": "f35f37e3-7db4-469d-a55e-17c9cbd1f681",
    "status": "delivered"
  }
}

Webhook Events

Webhook notifications are emitted when a message reaches significant delivery milestones.
EventAssociated Status
MESSAGE_SUBMITTEDsubmitted
MESSAGE_SENTsent
MESSAGE_DELIVEREDdelivered
MESSAGE_FAILEDfailed
MESSAGE_UNDELIVERABLEundeliverable
MESSAGE_EXPIREDexpired
MESSAGE_REJECTEDrejected
The following statuses do not generate webhook events:
  • queued
  • processing
  • scheduled
  • buffered

Delivery status availability depends on carrier support, destination network capabilities, and regional regulations.