Retrieve a message
GET/messages/{id}
GET /messages/{id}: read a message's current status, delivery timestamps and error code.
Poll a message by id to follow its delivery status. Scoped to your workspace - an unknown id returns 404.
Request
curl https://sendy.co.il/api/v1/messages/cmqzkdkul0007p20mf0r4tz21 \
-H "Authorization: Bearer sk_live_8Jc…"const res = await fetch(`https://sendy.co.il/api/v1/messages/cmqzkdkul0007p20mf0r4tz21`, {
headers: { Authorization: "Bearer sk_live_8Jc…" },
});
const message = await res.json();Response · 200 OK
{
"id": "cmqzkdkul0007p20mf0r4tz21",
"status": "delivered",
"to": "+972501234567",
"from": "Sendy",
"credits_charged": 1,
"credits_refunded": 0,
"refunded": false,
"error_code": null,
"created_at": "2026-06-29T18:41:32.877Z",
"sent_at": "2026-06-29T18:41:36.932Z",
"delivered_at": "2026-06-29T18:41:38.579Z",
"idempotency_key": null
}The same object is the data of every message.* webhook event (below), so one parser serves both the poll and the push surface. idempotency_key echoes the header the send was made with - handy for correlating without storing our id.