SMS API for developers

Messages belong
in your workflow.

Send customer updates, alerts, and verification messages from your own software. One API connects your product to the same Textly workspace, senders, wallet, and message history your team uses.

Base URLhttps://api.textly.co.ke
Send a messageHTTP / JSON
curl https://api.textly.co.ke/messages \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Idempotency-Key: order-10482-update" \
  -H "Content-Type: application/json" \
  -d '{
    "senderId": "approved-sender-uuid",
    "messages": [
      {
        "recipient": "254712345678",
        "text": "Hi Amina, your order is on its way."
      }
    ]
  }'
One requestPOST /messages

Built for messages your
product needs to send.

Use the API when a message should follow an action in your system, rather than someone opening a campaign dashboard.

Transactional updates

Confirm an order, appointment, or account event as soon as your application records it.

Timed reminders

Schedule a message for the right moment with a timestamp in the send request.

Customer notifications

Send to one recipient or submit a batch while keeping each message’s status visible.

A clear path from
request to receipt.

The integration follows three parts: identify your application, send with a stable request key, then listen for the outcome.

Read the quickstart
  1. 01

    Create an API key

    Manage keys in your Textly workspace. Keep the bearer token on your server and revoke it when needed.

  2. 02

    Send with confidence

    Call POST /messages with an approved sender, recipient, and message text. An Idempotency-Key makes a retry of the same request safe.

  3. 03

    Follow the result

    Query message status or receive signed delivery webhooks. Provider acceptance and confirmed delivery are separate events.

Delivery eventExample payload
{
  "id": "event-uuid",
  "type": "message.delivered",
  "data": {
    "messageId": "message-uuid",
    "recipient": "254712345678",
    "status": "delivered"
  }
}
Signed webhook to your HTTPS endpoint

Stay in sync after
the send.

A successful API response starts the journey. Signed webhooks let your product react when a message is accepted, delivered, failed, or rejected.

  • Verify signatures on incoming events
  • Deduplicate events by ID
  • Retry delivery when your endpoint is unavailable
Explore delivery webhooks

One integration.
A complete workspace.

The API sits alongside the tools your business needs to manage sending.

Sender IDs

Use an approved branded or available public sender.

Idempotent retries

Repeat a timed-out request without creating a second send.

Message history

Look up individual messages and recent batches.

Wallet visibility

Keep message charges and available balance in view.

Build messaging into
what you already run.

Start with the quickstart, inspect the endpoints, then connect your product to Textly.

Read the quickstart Open dashboard