DocsWebsitePricingSupportConsole
API reference

List messages

Your most recent messages, newest first.

GEThttps://api.siellabs.com/v1/messages

Query parameters#

limitintegerOptional
How many messages, 1–200. Default 50. Anything else is 400 invalid_limit.

The list holds every message of your account, whichever way it was sent: the API, the console, SMPP or a campaign. Each item is the message object without parts and links; fetch a message by id for those.

To follow your messages, use webhooks rather than polling the list: every status change reaches you within seconds, with nothing to page through.

Example#

curl "https://api.siellabs.com/v1/messages?limit=2" \
  -H "Authorization: Bearer $SMSGW_API_KEY"
200 OK
{
  "data": [
    {
      "id": "01a18c17-566b-7b3d-9f42-6a8e0d51c2b7",
      "to": "+447700900123",
      "from": "YourBrand",
      "body": "Your order #4821 has shipped",
      "status": "delivered",
      "country": "GB",
      "network": "Vodafone UK",
      "encoding": "gsm7",
      "segments": 1,
      "price_micros": 30000,
      "campaign_id": null,
      "error_code": null,
      "error_message": null,
      "attempts": 1,
      "created_at": "2026-10-30T09:15:02.123456Z",
      "sent_at": "2026-10-30T09:15:02.871Z",
      "done_at": "2026-10-30T09:15:09.004211Z"
    },
    {
      "id": "01a18c17-01f4-7a01-8c55-0e9f3b2d7a14",
      "to": "+447700900142",
      "from": "YourBrand",
      "body": "Your table for two is booked for 19:30",
      "status": "undelivered",
      "country": "GB",
      "encoding": "gsm7",
      "segments": 1,
      "price_micros": 30000,
      "campaign_id": null,
      "error_code": "DLR_UNDELIV",
      "error_message": "operator receipt stat:UNDELIV err:001",
      "attempts": 1,
      "created_at": "2026-10-30T09:14:40.5Z",
      "sent_at": "2026-10-30T09:14:41.02Z",
      "done_at": "2026-10-30T09:14:58.3Z"
    }
  ]
}