Splashify SMS

Docs

Open panel
Panel

Message status

Two reads: one message, or one day of them.

Read one message

GET

/api/v1/sms/messages/{message_id}

API key or session
bash
curl "https://api.splashifypro.com/api/v1/sms/messages/0f1c2d3e-4a5b-6c7d-8e9f-0a1b2c3d4e5f" \
  -H "Authorization: Bearer sms_live_your_key_here"
json
{
  "success": true,
  "message_id": "0f1c2d3e-4a5b-6c7d-8e9f-0a1b2c3d4e5f",
  "to": "919876543210",
  "sender_id": "SPLSFY",
  "body": "Your OTP is 482913. Valid for 10 minutes.",
  "category": "service_implicit",
  "status": "delivered",
  "detail": "DELIVERY_SUCCESS",
  "parts": 1,
  "unicode": false,
  "created_at": "2026-08-30T09:14:22Z",
  "submitted_at": "2026-08-30T09:14:23Z",
  "delivered_at": "2026-08-30T09:14:29Z"
}

A message id that is not yours returns 404, the same as one that does not exist. There is no way to read another account's message by guessing an id.

List a day

GET

/api/v1/sms/messages

API key or session
bash
curl "https://api.splashifypro.com/api/v1/sms/messages?day=2026-08-30&limit=200" \
  -H "Authorization: Bearer sms_live_your_key_here"

A day at a time, on purpose

Messages are stored partitioned by day, so a single-day read stays the same speed whether you sent ten messages last month or ten million. An endpoint that returned everything would get slower for you every week you stayed a customer.

To cover a range, request each day. The days are UTC, so a late-evening IST send lands on the following UTC day; if you present days to your own users in IST, convert on your side.

Statuses

Polling

If you poll rather than receiving webhooks:

  • Poll the single-message endpoint for messages you care about, not the list endpoint in a loop.
  • Back off. Most messages settle within seconds; a few take minutes. Every ten seconds for the first minute, then every minute, is plenty.
  • Stop at a final status. delivered, failed and rejected do not change afterwards.
  • Give up after 48 hours. Anything unresolved by then is settled automatically, and under charged-on-delivery billing it is refunded.

Receiving a delivery webhook is cheaper than polling if you can accept one.