Changelog
Changes to the API and to this documentation, newest first.
2026-08-25
API
- Webhook payload now includes
success:trueonly when the message was delivered (DELIVERED,READ,REPLIED,PARTIALLY DELIVERED), otherwisefalse. See Webhook. - If an async packet has no
idon any message, one webhook withrequest_idis sent instead of skipping the notification.
2026-08-24
API
- The notification about a rejected message now has the same shape as a delivery status: a flat object with
status: REJECTEDand the reason inerror. Thesuccessfield and the nesteddataarray are gone — one payload, one parser. See Webhook. - A rejected request now produces one notification per message that carried a
hook, each with its ownid. Previously one notification was sent per hook address, and the rest of the batch was reported to nobody. - The Verify (OTP) notification follows the same shape and now also carries
statusandupdated.
2026-08-21
Documentation
- New page Callbacks — incoming SMS to a dedicated number, Viber 2 Way replies, and the delivery report sent by email. None of these notifications were documented before.
- Webhook — added the
request_id,replyanddurationfields;idandmsg_idare strings, not numbers; added the delivery rules (one attempt, no retries, 5-second timeouts) and an example of a rejected message. - Verify (OTP) — documented the webhook that reports a rejected request.
- Request examples on the JSON API pages now come with ready-to-run cURL, PHP, Python and Node.js snippets.
- The
receive,deleteandpricecommands of the HTTP API were described assendby mistake. - Wap-Push is no longer documented.