Skip to content
Developers

SMS API for developers

JSON over HTTPS, one header for authentication, clear error codes. If you can call a REST endpoint, you can send SMS.

Get a free API key

Send a message

The response tells you the message id, the number of parts and the cost straight away.

curl -X POST https://jasms.dk/api/v1/send \
  -H "X-Api-Key: PUBLIC:SECRET" \
  -H "Content-Type: application/json" \
  -d '{"to": "+4512345678",
       "body": "Hej Anna, din tid er i morgen kl. 10:30",
       "sender": "MinSalon"}'
{"ok": true, "message_id": 23001, "status": "queued",
 "parts": 1, "cost": "0.3588", "cost_currency": "DKK"}

Endpoints

POST /api/v1/send send one SMS
POST /api/v1/messages send many in one call
GET /api/v1/messages/{id} status, parts and cost
DELETE /api/v1/messages/{id} cancel a scheduled message
POST /api/v1/verify/start one-time code (and /verify/check)
GET /api/v1/rate price before you send
GET /api/v1/prices your price list
GET /api/v1/balance balance and credit
GET /api/v1/lookup is the number valid and mobile
GET /api/v1/senders sender names (create, default)
GET /api/v1/numbers your numbers and requests
GET /api/v1/inbound incoming SMS

Webhooks

Signed callbacks for queued, sent, delivered, failed and received messages, with retries.

Idempotency

Send an Idempotency-Key and a retried request never sends twice.

Scoped keys

Limit a key to destinations, a sender or a number of parts — useful for a webshop or a single app.

EU data

Servers in the EU and a GDPR processing agreement as part of the terms.

Full documentation with your own keys after login: /portal/api-docs