Skip to main content

SMS API

The Loyalty.lt SMS API allows partners to send SMS messages programmatically with automatic billing, delivery tracking, and marketing consent management.
SMS API is available only for approved partners. Contact [email protected] to request access.

Base URL

https://api.loyalty.lt/{locale}/sms

Features

Authentication

SMS API uses API Key + Secret authentication via headers:
X-API-Key
string
required
Your API key from the Partners Portal
X-API-Secret
string
required
Your API secret from the Partners Portal
curl -X POST "https://api.loyalty.lt/lt/sms/send" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: your_api_key" \
  -H "X-API-Secret: your_api_secret" \
  -d '{...}'

Sender Names (Alphatags)

Before sending SMS, you must have at least one approved sender name. Sender names:
  • Must be alphanumeric (letters, numbers, spaces)
  • Maximum 11 characters
  • Require approval before use
Manage your sender names in the Partners Portal → SMS → Sender Names.

Pricing

SMS messages are billed per message part:
RegionPrice per SMS
Lithuania€0.0556
Foreign numbers€0.1295
Exact pricing is displayed in the Partners Portal. Prices may vary based on your contract.
Messages longer than 160 characters (or 70 for Unicode) are split into multiple parts and billed accordingly.

Message Length Limits

EncodingSingle SMSMulti-part SMS (per part)
GSM-7 (Latin)160 chars153 chars
Unicode (Cyrillic, emoji, etc.)70 chars67 chars

Rate Limits

Limit TypeDefaultNotes
Per minute60 messagesCan be increased on request
Per dayUnlimitedSubject to account balance

Error Codes

CodeHTTP StatusDescription
1001401Invalid API credentials
1002402Insufficient balance
1003429Rate limit exceeded
2001422Sender name not approved
2002422Invalid phone number format

Webhook Delivery Reports

When message status changes, we send a POST request to your receiptURL:
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "externalId": "your-reference-123",
  "status": "DELIVERED",
  "recipient": "+37061234567",
  "timestamp": "2025-01-15T10:30:05.000Z",
  "error": null
}

Status Values

StatusDescription
SENTMessage sent to carrier
DELIVEREDConfirmed delivered to handset
FAILEDDelivery failed
UNDELIVERABLENumber invalid or unreachable
See Webhooks documentation for complete webhook handling examples.

Quick Start

1

Get API Credentials

Log in to Partners Portal and generate API credentials.
2

Add Sender Name

Request approval for your sender name (alphatag) in the Partners Portal.
3

Send Your First SMS

Use the Send SMS endpoint to send a test message.
4

Set Up Webhooks

Configure your webhook URL to receive delivery reports.