SMS API

Branded SMS to every Kenyan network — Safaricom, Airtel, Telkom and Equitel — through a REST API whose contract is frozen: it will never change under you.

Endpoints at a glance

Platform endpoints (under /api/v1/, scoped tokens):

  • Sender ID requests — apply for your branded sender with documents, track approval
  • Campaigns — group sends with drafts, scheduling, live progress and resend
  • Blacklist — your opt-out list, per sender or global

Concepts in one minute

Sender IDs

The name that appears on the recipient's phone (e.g. MOBILESASA, your brand). Sender IDs are registered per network — apply over the API with your business documents; the API rejects sends from names your account doesn't own.

Message parts & billing

A single SMS carries 160 GSM-7 characters (70 for Unicode). Longer texts are split into parts of 153 (67 Unicode) and rebuilt on the handset — you are billed per part. Accented characters are transliterated to plain ASCII before sending so a stray “é” doesn't silently double your bill.

Priority

Transactional traffic (OTPs, alerts) is dispatched on a high-priority lane ahead of bulk marketing, so a campaign never delays a login code.

Which endpoint should I use?

One recipient → /v1/send/message. Same text to a list → /v1/send/bulk. Different text per person (names, amounts) → /v1/send/bulk-personalized. Need to reconcile sends against your own IDs, or want the cost back → use the v2 variant.