Skip to main content
Under Uganda Communications Commission (UCC) regulations and operator routing agreements, every SMS must use an approved alphanumeric Sender ID.

Default Sender ID

UGATEXT is approved and provisioned on every account. Pass it in the sender_id field:
sender_id is required. Missing, blank, or unapproved values are rejected with 403 SENDER_ID_NOT_APPROVED. Accepted field aliases are senderId and from.

Register a custom Sender ID

A custom Sender ID shows your brand name (up to 11 characters, for example MYSCHOOL) to recipients. Registration carries a fee that depends on the country.
1

Check pricing

GET /sender-ids/pricing?country=Uganda returns the current price list, setup fees, and lead times for Uganda, Kenya, or DR Congo (country=DR Congo). This endpoint does not require authentication.
2

Create a request

POST /sender-ids/requests with:The request is created in the awaiting_payment state. A 409 means the name is already registered by another account.
3

Upload documents

POST /sender-ids/requests/{id}/documents with a base64-encoded PDF, PNG, or JPG (max 5 MB). Supported kind values: mtn_letter, airtel_letter, certificate_of_incorporation, tin_certificate, other.
4

Pay and submit

POST /sender-ids/requests/{id}/pay debits your wallet and submits the request for telecom review. It returns 402 INSUFFICIENT_BALANCE if your wallet is too low.
5

Track status

GET /sender-ids lists your Sender IDs with status and document counts. GET /sender-ids/requests/{id} returns details, documents, and audit history.

Approval times

You can keep sending with the default UGATEXT Sender ID while your request is under review.

Revoke a Sender ID

POST /sender-ids/{id}/revoke permanently revokes an approved Sender ID. Sends using it are blocked immediately.