Python
pip install sendafricaTyped resources, sync and async clients, phone helpers, and SMS part analysis.
SDK guide
SENDAFRICA MESSAGING PLATFORM
Start with one API request, then choose the tools and delivery workflows that fit your stack. SendAfrica provides the REST API, official SDKs, CLI, sandbox, and production guides in one developer journey.
REST API · HTTPS · JSON
Create a developer API key in the portal, store it on your server, and send a request to the versioned API. This example uses a placeholder destination: replace it with a test number you control before running it. The request sends a real SMS and may use credits.
Create an API keycurl -X POST https://api.sendafrica.online/v1/sms/ \
-H "X-API-Key: $SENDAFRICA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"to": "<YOUR_TEST_NUMBER>",
"message": "Your order update is ready."
}'Keep the REST API as your stable foundation, or add an official client for typed resources, local helpers, and consistent error handling.
pip install sendafricaTyped resources, sync and async clients, phone helpers, and SMS part analysis.
SDK guidenpm install sendafricaTyped requests, native fetch, local phone normalization, and idempotent sends.
SDK guidego get github.com/SendAfrica/GO-SDKA dependency-free client with typed resources, retries, and webhook verification.
SDK guideBuild beyond a single message with account-scoped resources for contacts, campaigns, credits, sender IDs, and delivery events.
Single and bulk sends, per-recipient outcomes, message logs, and asynchronous delivery updates.
Read the guideManage contact lists and use campaigns for scheduled or larger audience workflows.
Read the guideRead balances and history, discover packages, and check supported destination rates.
Read the guideRead provider requirements, submit a registration request, and check which IDs are usable.
Read the guideVerify delivery events and payment callbacks before updating your own records.
Read the guideUse the isolated developer sandbox to exercise accepted, rejected, and error outcomes.
Read the guideSMS integrations need to account for retries, segmentation, and asynchronous delivery. The docs explain the practical details behind each one.
Continue in the developer portalAPI keys are shown once. Store them in server-side secrets, never in a browser bundle, committed file, or public log.
GSM-7 and Unicode messages use different segment limits. Use SDK analysis for a preview and `credits_used` from the API as the final value.
Use an `Idempotency-Key` for retryable writes and reuse it for the same logical request. A new key represents a new send.
A provider accepting a message is not the same as handset delivery. Reconcile final states from message logs and verified callbacks.
Open the developer portal for your API key, complete guides, SDK references, and practical testing tools.