/sms/logs, you can have PressOne push delivery events to yourhttp://, private/internal IPs, and cloud-metadata hostsPOST (JSON) to your URL. Requests time out after 10s, redirects are not/sms/logs using message_id as the source of truth.{
"event": "sms.delivered",
"message_id": "a3d5f0c1-9e22-4b7a-8f1c-2d6e9b0a4c77",
"status": "delivered",
"recipient": "+2348120191228",
"operator": "MTN",
"delivered_at": "2026-06-22T09:15:01.000Z",
"error_message": null,
"timestamp": "2026-06-22T09:15:01.123Z"
}| Field | Description |
|---|---|
event | sms.delivered, sms.sent, or sms.failed. |
message_id | The UUID returned by POST /sms/send. |
status | delivered, sent, or failed. |
recipient | Destination number (E.164). |
operator | Mobile network operator, if known (else null). |
delivered_at | ISO timestamp when delivered, else null. |
error_message | Failure reason when status is failed, else null. |
timestamp | When the event was emitted (ISO). |
2xx quickly. Webhooks are not signed; since message_id is an unguessableGET /sms/logs?message_id=….