What it does today
All of this is running in production now.Outbound SMSOne 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 messagesReplies 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 receiptsEvery 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-outSTOP, 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 keysKeys 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 webhooksDeliveries 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."
}'ON THE ROADMAP
Not built yet
These are planned, not available. Nothing below is something you can use today.Self-serve accountsSign up, issue your own keys and claim a number without an email to us.
Delivery reportingPer-number and per-campaign delivery rates in a console rather than in logs.
More carriersA 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.