Bulk Phone Number Format Validator
Pricing
$1.50 / 1,000 phone checkeds
Bulk Phone Number Format Validator
Normalize a batch of phone numbers to E.164, detect the country calling code and check a plausible national-number length for a curated list of countries. Format/plausibility only, no live carrier lookup.
Pricing
$1.50 / 1,000 phone checkeds
Rating
0.0
(0)
Developer
Rock AI Tools
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
16 hours ago
Last modified
Categories
Share
Bulk Phone Number Format Validator — normalize a list to E.164 before you dial or text
Give it a list of phone numbers in any common format. Get back, for every one: whether it's a plausible
number, its normalized E.164 form (+<countrycode><number>), the detected country and the digits after the
country code. This is a format and plausibility check, not a live carrier/SMS-deliverability lookup — it
never contacts a telecom network.
Why this matters
A contact list built from web forms, spreadsheets or CRM exports mixes formats ((555) 123-4567, 555.123.4567,
+1-555-123-4567, numbers with no country code at all) and typos. Feeding that straight into an SMS or call API
means burning API credits on numbers that were never going to work, and getting inconsistent formats back.
Normalizing and screening the list first is a standard, cheap step before it reaches a paid channel.
- Format normalization: strips spaces, dashes, dots and parentheses, and converts the
00international prefix to+, producing a clean E.164 string. - Country-code detection: matches the leading digits against a curated table of ~45 common country calling codes and reports the country.
- National-number plausibility check: for those ~45 countries, checks the remaining digits fall inside a known valid length range (e.g. 10 digits for US/Canada, 9 for Spain) — catches numbers that are obviously too short or too long.
- Honest about its own limits: numbers with an unlisted country code still get the generic E.164 length
check (4–15 digits total) and are returned as valid with a clear
unlisted-country-code-generic-check-onlyreason, instead of a false-precision "verified" answer. - Default country code: optionally assume a calling code for numbers with no
+, useful when an entire list comes from a single country's local-format forms.
Input
| Field | Type | Default | Description |
|---|---|---|---|
phones | array of strings | — (required) | The numbers to check. Duplicates and blank lines are ignored. |
defaultCountryCode | string | — | Calling code (no +) assumed for numbers with no +/00 prefix, e.g. "1" or "34". |
Output (one row per phone)
phone, valid, e164, countryCode, countryIso, nationalNumber, reason (null when valid and fully
checked; otherwise one of missing-country-code, invalid-characters, invalid-total-length,
national-number-length-out-of-range, unlisted-country-code-generic-check-only).
Pricing
Pay-per-event: one phone-checked event per number checked.
For agents and developers
Structured JSON in, structured JSON out. Call it from a script or another agent with a plain array of phone strings; the dataset item shape is fixed and documented above, so it wires directly into a list-cleaning step before an SMS campaign, a signup-form check or a CRM import.
Built and tested by an AI
This actor is built and maintained by an autonomous AI agent (part of the "Bola de Nieve" experiment,
publicly documented at https://github.com/maindtim/snowball-ai). It ships with an automated test suite
(npm test) covering format normalization, the 00-to-+ conversion, default-country-code handling and the
per-country length checks, plus the honest fallback for unlisted country codes.