the sms api of the bloonio platform

SMS that ships in one POST.

Lisoloo delivers your login codes, alerts and campaigns: right now, on a set date, or every week. One REST API, real-time delivery receipts.

  • 160 characters / GSM-7 segment
  • real-time delivery receipts
  • separate test & live keys
POST /send your server
$ curl -X POST …/api/v1/lisoloo/sms-api/send \
  -H "app-key: sk_live_••••••••••••" \
  -d '{
    "to": ["+243 998 857 000"],
    "message": "Your KITOKO code: 493 201. Valid 5 min.",
    "sender_id": "KITOKO"
  }'

202 · accepted · msg_8f3kq2

KITOKO your customer's phone

Your KITOKO code: 493 201. Valid 5 min.

09:41

queued sent delivered

delivered · 1 segment · 1.8 s

002 / sending

Now, tomorrow at 9, or every Monday.

Three sending modes, one endpoint. The sending_type field does the rest.

  1. immediate

    Instant

    OTPs, confirmations, alerts: queued in under a second, gone right after.

    "sending_type": "immediate"
  2. scheduled

    Scheduled

    Appointment reminders, announcements, payroll: set the date and time, Lisoloo remembers.

    "sending_type": "scheduled",
    "scheduled_dates": [
      { "date": "2026-07-01", "time": "08:00" }
    ]
  3. recurring

    Recurring

    Daily, weekly or monthly, between two dates, several times a day if needed.

    "sending_type": "recurring",
    "recurring_schedule": {
      "frequency": "weekly",
      "times": ["09:00"]
    }

003 / integration

One HTTP request, no machinery.

  • One key, two environments

    A single app-key header. Separate test and live keys, sk_test_… / sk_live_… format.

  • Delivery webhooks

    Statuses pushed to your URL (Basic Auth), automatic retries with exponential backoff.

  • SDKs or bare cURL

    Python, Node.js and PHP maintained, or copy the request as-is.

  • OpenAPI 3.1

    Complete specification, explorable and testable in the docs.

60 sends / min by default. Need more? Talk to us.

Browse the documentation
curl -X POST \
  https://apps.api.bloonio.com/api/v1/lisoloo/sms-api/send \
  -H "app-key: $LISOLOO_APP_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "to": ["+243998857000"],
    "message": "Your KITOKO code: 493 201. Valid 5 min.",
    "sender_id": "KITOKO",
    "sending_type": "immediate"
  }'

004 / use cases

OTPs, reminders, alerts, campaigns.

  1. 01

    One-time passcodes

    Logins and payments confirmed in seconds, on any handset.

  2. 02

    Appointment reminders

    Fewer no-shows, calendars that stay full.

  3. 03

    Operational alerts

    Payments received, low stock, incidents: your team knows before the customer does.

  4. 04

    Campaigns & promotions

    Thousands of recipients, one API call, per-message tracking.

005 / pricing

Credits, not subscriptions.

You top up a balance; every SMS debits it at the unit price. No forced tiers, no hidden fees: your balance and the current price are readable from the API at any time.

GET /balance remaining balance & unit price
POST /calculate turns a budget into an SMS count, before you send

Big volumes or specific routes? Write to us →

006 / questions

Frequently asked questions

Can I send with my own sender name?

Yes. The sender_id field takes an alphanumeric identifier (11 characters max.), your brand for instance. Depending on the destination country, prior registration may be required; we handle it with you.

How are segments counted?

A GSM-7 SMS holds 160 characters (153 per segment beyond that). Unicode characters lower the limit to 70. Each segment is billed as one SMS.

How do I track delivery?

Two options: poll GET /status with the message id, or receive webhooks on your URL. 14 states cover the whole cycle, from pending to delivered.

What is the test key for?

Every account gets two keys (sk_test_…, sk_live_…). The test key lets you integrate and automate your checks without touching the production balance.

What if a number is unreachable?

The message ends up undelivered, expired or failed depending on the case, visible by webhook or through the status endpoint. You always know what was delivered, and to whom.

Which countries are covered?

Lisoloo is operated by Bloonio and serves the DRC first; coverage expands route by route. Write to us with your destinations and we confirm before you send anything.

007 / contact

Volumes, routes, integration: write to us.

A technical question, a volume quote or a partnership: the message lands directly with the team operating the platform.

answer within one business day

✓✓ delivered

Message received.

We reply to the address you gave, within one business day.

Your first SMS can go out today.

Open an account, start in the test environment, switch to production when you're ready.