SMS
Send transactional and bulk SMS via API. One endpoint, up to 1000 recipients per request, delivery tracking, scheduled sending, and webhook callbacks.
Best for: order confirmations, appointment reminders, alert notifications, and any application that needs to reach users by text message.
Activate SMS | SMS API reference
What this is
WAYSCloud SMS lets you send text messages programmatically through a single API endpoint: POST /v1/sms/send. You create sender profiles (alphanumeric brand names or phone numbers), send messages to one or many recipients, and track delivery status through the API or webhook callbacks. Messages are queued instantly and delivered within 1-10 seconds. Multipart messages (over 160 GSM-7 characters or 70 Unicode characters) are split automatically.
When to use it
Use this when:
- You need to send transactional messages: order updates, shipping alerts, appointment reminders
- You need bulk messaging to up to 1000 recipients in a single call
- You want delivery receipts and webhook callbacks
- You need scheduled message delivery at a future time
Consider something else when:
- You need to verify a user owns a phone number — use Verify instead
- You need two-way conversation or chat — SMS is outbound-focused
What you get
- Single endpoint:
POST /v1/sms/sendfor all message types - Up to 1000 recipients per request
- Sender profiles: alphanumeric brand names (max 11 chars) or phone numbers
- Scheduled sending with timezone support
- Delivery tracking: QUEUED, SENT, DELIVERED, FAILED statuses
- Webhook callbacks for delivery reports
- Auto-splitting of multipart messages (GSM-7 at 160 chars, Unicode at 70 chars)
Pricing
All prices exclude VAT.
Plans
| Plan | EUR/month | NOK/month | SEK/month | DKK/month |
|---|---|---|---|---|
| SMS Sender Monthly Fee | 9 | 99 | 99 | 69 |
Usage
| Item | EUR | NOK | SEK | DKK |
|---|---|---|---|---|
| SMS Outbound | 0.09 | 0.99 | 0.99 | 0.69 |
Metered usage
| Item | Unit | EUR | NOK | SEK | DKK |
|---|---|---|---|---|---|
| SMS Inbound | per_message | 0.09 | 0.99 | 0.99 | 0.99 |
| SMS Outbound | per_message | 0.09 | 0.99 | 0.99 | 0.99 |
How it works
- Activate the service and create a sender profile (alphanumeric name or phone number).
- Send a message by calling
POST /v1/sms/sendwith the recipient list, message text, and sender profile ID. - Message is queued and delivered within 1-10 seconds.
- Track delivery by polling the message status or receiving a webhook callback at your
callback_url. - View history in the dashboard: delivery status, timestamps, and cost per message.
What you see in the dashboard
- Sent today / this month: message counts with delivery status breakdown
- Message history: recipient (masked), status badge (Delivered / Failed / Queued / Scheduled), timestamp
- Sender profiles: list of active profiles with approval status
- Usage stats: units consumed, estimated cost, segments per message
- Scheduled queue: upcoming messages with cancel option
Fastest way to get started
Dashboard
- Open my.wayscloud.services and go to Communication then SMS
- Click Activate and copy your API key
- Create a sender profile with an alphanumeric name (e.g.,
MyBrand) - Send your first message via the API
API
curl -X POST https://api.wayscloud.services/v1/sms/send \
-H "X-API-Key: wayscloud_sms_abc12_YOUR_SECRET" \
-H "Content-Type: application/json" \
-d '{
"to": ["+4791234567"],
"message": "Your order #4521 has shipped.",
"sender_profile_id": "profile-uuid-here"
}'Example request and response
Request: Send a scheduled SMS to multiple recipients
curl -X POST https://api.wayscloud.services/v1/sms/send \
-H "X-API-Key: wayscloud_sms_abc12_YOUR_SECRET" \
-H "Content-Type: application/json" \
-d '{
"to": ["+4791234567", "+4798765432", "+4790000001"],
"message": "Reminder: your appointment is tomorrow at 10:00. Reply CANCEL to reschedule.",
"sender_profile_id": "a3f2b1c4-d5e6-7890-abcd-123456789012",
"scheduled_at": "2026-03-31T07:00:00Z",
"timezone": "Europe/Oslo",
"callback_url": "https://your-app.com/webhooks/sms-delivery"
}'Response:
{
"sms_message_id": "msg-e7c3a219-4f80-4b12-9d6e-8a1f3c5b7d90",
"to": ["+4791234567", "+4798765432", "+4790000001"],
"status": "SCHEDULED",
"units_estimate": 3,
"scheduled_at": "2026-03-31T07:00:00Z"
}Create a sender profile:
curl -X POST https://api.wayscloud.services/v1/sms/sender-profiles \
-H "X-API-Key: wayscloud_sms_abc12_YOUR_SECRET" \
-H "Content-Type: application/json" \
-d '{
"name": "appointment-reminders",
"sender_id": "ClinicOslo",
"allow_reply": false,
"brand_confirmation": true
}'INFO
Alphanumeric sender IDs (e.g., ClinicOslo) require admin approval. Max 11 characters, letters and digits only.
Common use cases
- Order notifications — shipping confirmations, delivery updates, pickup alerts
- Appointment reminders — scheduled messages the day or hour before
- Security alerts — suspicious login notifications, password change confirmations
- Marketing campaigns — promotional messages to opted-in recipients
- Internal operations — on-call alerts, system status notifications to staff
Related services
- Verify (OTP/2FA) — for verification codes, use Verify instead of SMS
- Contacts — manage recipient lists for bulk messaging
- Live Events — notify viewers about upcoming streams
Related documentation
- Send an SMS — step-by-step guide
- SMS API reference — all 10 endpoints
- Verify vs SMS — when to use which
- API Keys — managing API credentials
- Billing — understanding per-message costs