> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ugatext.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Sender IDs

> Send with the default UGATEXT Sender ID or register your own UCC-approved brand name.

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:

```json theme={null}
{
  "to": "+256700000000",
  "sender_id": "UGATEXT",
  "message": "Hello from UgaText"
}
```

> [!NOTE]
>
> `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:

| Field | Required | Description |
| - | - | - |
| `sender_id` | Yes | 3 to 11 uppercase alphanumeric characters. |
| `purpose` | Yes | What you will send (max 1,000 characters). |
| `network` | No | `both` (default), `mtn`, or `airtel`. |
| `is_default` | No | Make this your default Sender ID. |

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`.

| Field | Required | Description |
| - | - | - |
| `kind` | Yes | Document type, from the list above. |
| `file_base64` | Yes | Base64-encoded file content. |
| `filename` | No | File name, for example `authorization_letter.pdf`. |
| `mime_type` | No | File type, for example `application/pdf`. |

**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

| Country | Approval time |
| - | - |
| Uganda | 5 to 10 working days |
| Kenya | 7 to 14 working days |

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.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.