Know the number before you send.
Validate any African phone number for format, line type and carrier in one API call - single or up to 1,000 at once. Clean your lists, drop non-mobile numbers and stop paying to text dead numbers. Free, and no message sent.
{ "phone": "+256772123456" }
{ "valid": true, "country": "UG", "type": "mobile", "carrier": "MTN", "e164": "+256772123456" }
Everything you need to clean a list
One endpoint tells you whether a number is worth sending to - and why not, when it isn't.
Validity and format
Confirm a number is well-formed and correct for its country, and get it back in clean E.164.
Line type
Tell mobile from fixed-line, VoIP or unknown - so you only pay to text real handsets.
Carrier and region
See the assigned network and location for each number, across all 54 African markets.
Single or bulk
Validate one number or up to 1,000 in a single call - ideal for cleaning an import.
No charge to validate
Validation is free and runs offline, with no network round-trip and no message sent.
Spam and fraud pre-check
Drop malformed, impossible or non-mobile numbers before they ever hit a route.
Validate before you spend
Run a single number or a whole import through one request. Numbers that fail come back with a reason - so you can drop them, fix them, or route them somewhere else - before a single message is billed.
curl -X POST https://sms.esmsafrica.io/api/validate \
-H "Authorization: Bearer esms_live_..." \
-H "Content-Type: application/json" \
-d '{ "phone": ["+256772123456", "+254712345678"] }'Number Lookup, answered
Is this a live HLR lookup?
Not yet. Validation today is offline: it confirms a number is well-formed and reachable-looking and names the carrier it was originally assigned to, with no charge. Live HLR reachability and number-portability status are on our roadmap as a paid add-on.
Which countries are supported?
All 54 African countries, plus international numbers. Pass any number in full international format and we return its country, line type and assigned carrier.
How many numbers can I check at once?
Up to 1,000 numbers in a single request. Send one phone string for a single result, or an array for a batch with a summary of valid, invalid and mobile counts.
Does validation cost anything?
No. Validation is free and does not send a message. You only pay when you actually send SMS to the numbers that pass.
Part of one messaging platform
SMS منبر
Bulk SMS, an SMS API and OTP to every African mobile network on direct routes.
eSMS Verify
Managed phone verification and OTP - generate, send, rate-limit and check codes in two API calls.
Two-Way SMS
Dedicated or shared short codes to send and receive SMS, with signed webhooks and replies from your code.
SMPP Gateway
High-throughput A2P SMS over direct SMPP binds with guaranteed TPS and DLRs.
eSMS Mail
Transactional and marketing email with a modern API, delivery reports and analytics.
eSMS Links
Branded short links, QR codes and click analytics for your campaigns.
eSMS Chat
AI plus human customer-support chat you can add to any website.
eSMS Workspace
The desktop app that brings Email, SMS and SMPP into one place.
Stop paying to text dead numbers.
Validate free, then send only to the numbers that pass - across every network in all 54 African countries.