Skip to main content
GET
/
{locale}
/
sms
/
status
/
{message_id}
curl -X GET "https://api.loyalty.lt/lt/sms/status/msg_abc123def456" \
  -H "X-API-Key: your_api_key" \
  -H "X-API-Secret: your_api_secret"
{
  "success": true,
  "data": {
    "message_id": "msg_abc123def456",
    "status": "delivered",
    "source": "MyBrand",
    "destination": "+37061234567",
    "sent_at": "2025-01-15T10:30:00Z",
    "delivered_at": "2025-01-15T10:30:05Z",
    "failed_at": null,
    "scheduled": null,
    "validity": "2025-01-16T10:30:00Z",
    "cost": {
      "amount": 0.0556,
      "currency": "EUR"
    },
    "error_message": null
  }
}

Get SMS Status

Retrieve the current delivery status and details of a previously sent SMS message.

Path Parameters

locale
string
required
Language code (e.g., lt, en)
message_id
string
required
Message ID returned from the Send SMS endpoint.Example: msg_abc123def456

Authentication

X-API-Key
string
required
API key from Partners Portal
X-API-Secret
string
required
API secret from Partners Portal

Response

success
boolean
Whether the request was successful
data
object
curl -X GET "https://api.loyalty.lt/lt/sms/status/msg_abc123def456" \
  -H "X-API-Key: your_api_key" \
  -H "X-API-Secret: your_api_secret"
{
  "success": true,
  "data": {
    "message_id": "msg_abc123def456",
    "status": "delivered",
    "source": "MyBrand",
    "destination": "+37061234567",
    "sent_at": "2025-01-15T10:30:00Z",
    "delivered_at": "2025-01-15T10:30:05Z",
    "failed_at": null,
    "scheduled": null,
    "validity": "2025-01-16T10:30:00Z",
    "cost": {
      "amount": 0.0556,
      "currency": "EUR"
    },
    "error_message": null
  }
}

Status Values

StatusDescription
queuedMessage accepted and waiting to be sent
sentMessage sent to carrier network
deliveredConfirmed delivered to recipient’s phone
failedDelivery failed (see error_message)
expiredMessage validity period expired before delivery

Polling vs Webhooks

For real-time status updates, use webhooks instead of polling this endpoint. Set receipt: true and receiptURL when sending the message.
If you must poll:
  • Wait at least 5 seconds between requests
  • Most messages are delivered within 10-30 seconds
  • Stop polling after delivered, failed, or expired status