All providers

Africa's Talking

sms·🇧🇫🇧🇯🇨🇮🇪🇬🇬🇭🇰🇪🇱🇸🇲🇱🇲🇼🇳🇦🇳🇪🇳🇬🇷🇼🇸🇳🇸🇿🇹🇬🇹🇿🇺🇬🇿🇦🇿🇲·Sandbox available

Africa's Talking is a pan-African communications platform offering SMS, USSD, voice, and airtime APIs across multiple African countries.

Use with AI agents

After installing the plugin or adding the MCP server, prompt your agent:

Fetch incoming SMS messages from your Africa's Talking inbox incrementally.
Install the plugin →

Capabilities

CapabilityTypeStatusiMethodExample
fetch_messagessynchronousAvailableGET
send_smssynchronousAvailablePOST

Gotchas

fetch_messages

  • Africa's Talking strongly recommends using webhook notifications (webhook_incoming_sms) instead of polling this endpoint. Configure SMS → SMS Callback URLs → Incoming Messages in the AT dashboard for real-time delivery.
  • lastReceivedId is a cursor. Store the last id value from each response and pass it on the next call — omitting it (or passing 0) returns messages from the beginning of your inbox and may return already-processed messages.

send_sms

  • In sandbox, DeliveryFailure means the AT Simulator is not active or not logged in. Open https://simulator.africastalking.com and log in before testing — the API returns 200 but nothing is delivered without the simulator running.
  • The username field must be the literal string "sandbox" when using the sandbox environment — not your real username. Sandbox API keys are separate from production keys; both are in the AT dashboard.
  • Messages containing % fail silently at the carrier level. Strip or replace % characters before passing to message.
  • Request body must be application/x-www-form-urlencoded. Use URLSearchParams to encode the body — sending JSON.stringify() causes a 400 or silent failure.
  • The API always returns HTTP 200 even when messages fail per recipient. Check SMSMessageData.Recipients[].statusCode — 101 means Sent; anything else is a failure for that recipient.
  • Phone numbers must be full E.164 format with + prefix (e.g. +254712345678). Local formats without + return statusCode 403 (InvalidPhoneNumber).
  • The default Africa's Talking sender ID only works in Kenya on Airtel numbers. For any other country or network, register a dedicated sender ID from the AT dashboard — otherwise messages will be rejected or undelivered.

Details

Category
sms
Sandbox
Yes