v1 · stable Developer documentation

LynSMS API

Send, track, and orchestrate SMS at scale with a JSON REST API. Drop in anywhere you can make an HTTPS request — and let LynSMS handle routing, fallback, and delivery reporting.

Predictable JSON

Every endpoint returns the same envelope: success, data, meta.request_id.

Bearer auth

Mint scoped API keys per environment. Revoke instantly. Rate-limit per key.

Multi-provider routing

Twilio, Sinch, Infobip, ClickSend — with automatic fallback on retryable failure.

Signed webhooks

HMAC-SHA-256 signatures on every delivery, with exponential-backoff retries.

Base URL

https://lynsms.com/api/v1

Send your first message

Authenticate with your API key, then POST a JSON body to /messages/send:

curl https://lynsms.com/api/v1/messages/send \
  -H "Authorization: Bearer ds_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "to":   "+12025550143",
    "from": "LynSMS",
    "body": "Your verification code is 482194"
  }'
import fetch from "node-fetch";

const res = await fetch("https://lynsms.com/api/v1/messages/send", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.LYNSMS_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    to: "+12025550143",
    from: "LynSMS",
    body: "Your verification code is 482194",
  }),
});

console.log(await res.json());
import os, requests

resp = requests.post(
    "https://lynsms.com/api/v1/messages/send",
    headers={
        "Authorization": f"Bearer {os.environ['LYNSMS_API_KEY']}",
        "Content-Type": "application/json",
    },
    json={
        "to":   "+12025550143",
        "from": "LynSMS",
        "body": "Your verification code is 482194",
    },
)
print(resp.json())

A successful call returns the created message:

{
  "success": true,
  "data": {
    "id": "msg_VyB2pNkX0wnA9aTrLqDh1Z3Fc",
    "object": "message",
    "to": "+12025550143",
    "from": "LynSMS",
    "body": "Your verification code is 482194",
    "status": "sent",
    "cost": 0.0500,
    "currency": "USD",
    "provider": "twilio",
    "created_at": "2026-05-12T11:34:21+00:00",
    "sent_at":   "2026-05-12T11:34:21+00:00"
  },
  "meta": { "request_id": "req_dXp9k...", "api_version": "v1" }
}

Endpoints at a glance

POST/v1/messages/sendSend a single SMS
POST/v1/messages/bulkSend to up to 1,000 recipients
GET/v1/messages/{id}Retrieve a message
GET/v1/messagesList messages
GET/v1/accountAccount profile
GET/v1/balanceCurrent balance
GET/v1/usageUsage statistics
GET/v1/sendersList sender IDs
POST/v1/senders/createRegister a sender ID
GET/v1/senders/{id}Retrieve a sender
GET/v1/api-keysList API keys
POST/v1/api-keys/createCreate a new API key
DELETE/v1/api-keys/{id}Revoke a key
GET/v1/webhooksList webhook endpoints
POST/v1/webhooks/createCreate a webhook endpoint
DELETE/v1/webhooks/{id}Delete an endpoint
GET/v1/eventsList webhook events

Next steps