SMS Quick Start
Send OTP codes, alerts, and transactional SMS to 190+ countries. Every message returns a delivery receipt so you know it arrived.
Testing without real SMS? Use Sandbox Mode — no real messages sent, predictable OTP codes, and no billing.
1Send an SMS
POST the recipient number and message text. The from field sets the sender ID visible to the user (carrier support varies by country).
curl -X POST https://api.novauth.com/api/v1/connect-hub/sms \
-H "x-api-key: YOUR_API_KEY" \
-H "x-account-id: YOUR_ACCOUNT_ID" \
-H "Content-Type: application/json" \
-d '{
"to": "+14155552671",
"text": "Your verification code is 482951. Valid for 10 minutes.",
"from": "Novauth"
}'{
"messageId": "a3f2c1d0-4e5b-6c7d-8e9f-0a1b2c3d4e5f", // save for delivery check
"from": "Novauth",
"to": "+14155552671"
}Text length: SMS messages are capped at 160 characters per segment. Messages up to 4 096 characters are accepted — they are automatically split into concatenated segments and reassembled on the handset.
2Check delivery status
Poll the SDR (SMS Delivery Report) endpoint to verify the message reached the handset. Check shortly after sending — typical delivery is under 5 seconds.
curl https://api.novauth.com/api/v1/connect-hub/sms/a3f2c1d0-.../sdr \
-H "x-api-key: YOUR_API_KEY" \
-H "x-account-id: YOUR_ACCOUNT_ID"3Report the verification outcome
Once your user submits the code they received, POST the result to the webhook endpoint to close the SMS record and record the outcome.
# Report the verification outcome from your backend
curl -X POST https://api.novauth.com/api/v1/connect-hub/sms/webhook \
-H "x-api-key: YOUR_API_KEY" \
-H "x-account-id: YOUR_ACCOUNT_ID" \
-H "Content-Type: application/json" \
-d '{
"id": "a3f2c1d0-...",
"status": "Success"
}'API Reference
/smsSend an SMS message/sms/{messageId}/sdrGet SMS delivery report/sms/webhookReport verification outcome/sms/sdrList all SMS records (paginated)Request body — POST /sms
tostringrequiredRecipient phone in E.164 formattextstringrequiredMessage content (1–4 096 chars)fromstringoptionalSender ID or number (carrier-dependent)List all SMS records
# Paginated list of all SMS records
curl -X POST https://api.novauth.com/api/v1/connect-hub/sms/sdr \
-H "x-api-key: YOUR_API_KEY" \
-H "x-account-id: YOUR_ACCOUNT_ID" \
-H "Content-Type: application/json" \
-d '{
"page": 1,
"rows_per_page": 20,
"sort_by": "created_at",
"sort_direction": "DESC"
}'