Text messaging you can host yourself.

Pager is a notification platform with an SMS API: send and receive text messages, get delivery receipts on a webhook, and have opt-outs enforced for you. It runs on your own infrastructure, so the messages and the numbers stay yours.

We will only use your email to tell you when Pager accounts open. We will not share it, and we will not send you marketing.
+1 (828) 888-8202Lunarsoft
Your Lunarsoft verification code is 481920.
POST /v1/messages — queued, then delivered
HELP
Inbound. A question, not a consent change
Lunarsoft: Support support@lunarsoft.dev. Msg&data rates may apply. Reply STOP to unsubscribe.
Answered automatically. Consent untouched
STOP
Inbound. Recognised whatever the case or punctuation
Lunarsoft: You have been unsubscribed and will receive no further messages. Reply START to resubscribe.
Sent once, and the number is suppressed from now on
Your Lunarsoft verification code is 771043.
Refused with 422 before it reached the carrier

What it does today

All of this is running in production now.
Outbound SMS
One POST sends a message. Long text is segmented for you, the response tells you what it cost in segments, and an Idempotency-Key means a retried request is never a second message.
Inbound messages
Replies arrive at your webhook as they land. Inbound is enabled per account or per number, so one number can answer somewhere different from the rest.
Delivery receipts
Every message reports what actually happened to it -- queued, sent, delivered or failed -- to the same webhook, with the carrier reason when there is one.
Consent and opt-out
STOP, HELP and the rest of the standard keywords are handled before your code sees them. A send to a number that has opted out is refused rather than delivered, so compliance is not left to callers.
Scoped API keys
Keys are issued per account, shown once, and every request is rate limited with the limit, remaining and reset returned on the response so a client can pace itself instead of being refused.
Signed webhooks
Deliveries are signed, retried with backoff, and carry a correlation id that matches the platform logs. You can prove a callback came from us and find it again afterwards.

One request to send

The whole API is described at /docs, generated from the same schemas the server validates against.
curl -X POST https://sms.lunarsoft.dev/v1/messages \
  -H "Authorization: Bearer $PAGER_API_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
    "from": "+18288888202",
    "to":   "+12395550147",
    "body": "Your verification code is 481920."
  }'
Each of these makes the same request. The response carries the message id, its status and how many segments it was billed as.
ON THE ROADMAP

Not built yet

These are planned, not available. Nothing below is something you can use today.
Self-serve accounts
Sign up, issue your own keys and claim a number without an email to us.
Delivery reporting
Per-number and per-campaign delivery rates in a console rather than in logs.
More carriers
A second upstream, so a provider outage is a route change rather than an incident.

Accounts are not open yet.

Pager runs today, but sign-up does not exist yet. Leave an address and we will tell you the moment it does.

We will only use your email to tell you when Pager accounts open. We will not share it, and we will not send you marketing.