Phone Number Validation API
Pricing
from $0.01 / 1,000 phone numbers
Phone Number Validation API
Check phone numbers against their numbering plan and format valid numbers. Get E.164, national, and international forms, plus country, line type, location, and likely time zones.
Pricing
from $0.01 / 1,000 phone numbers
Rating
0.0
(0)
Developer
Maxime Dupré
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
📞 Check and format phone numbers
This phone number validator helps developers, data teams, and sales teams clean phone lists. It checks numbering-plan rules and returns E.164, national, and international formats, plus country, line type, location, and likely time zones when known.
- Phone Number Validator — check whether numbers fit their numbering plan.
- International Phone Number Validation — use a country code for local numbers and check numbers from many regions.
- E.164 Phone Number Validation — turn valid numbers into a standard E.164 form.
- Phone Number Formatting — get national and international display forms.
- Phone Number Type Checker — label mobile, fixed-line, VoIP, toll-free, and other known number types.
- Extract Phone Numbers from Text — find phone-like values in text and check them with your list.
📦 Returned data
Each saved dataset row is one valid phone number. It includes the first input source where that number was found. If the same normalized number appears again, the later match is not saved.
Returned fields include:
phoneNumberandsourcee164,internationalFormat, andnationalFormatisValidandisPossiblecountryCodeandcallingCodetype,extension,location, andtimeZones
Location, country, and time-zone data may be empty when numbering-plan data does not provide it. These checks do not show whether a number is active, assigned, or owned by a person. They do not check WhatsApp accounts.
▶️ Running the Actor
- Add one or more values to Phone numbers.
- Set Default country for numbers that have no country calling code.
- You may add Text to scan and turn on Keep rejected inputs.
- Run the Actor and open the dataset.
🧾 Input
{"phoneNumbers": ["+1 202-555-0123","020 7946 0958"],"defaultCountry": "GB","text": "Call the Paris office at +33 1 42 68 53 00.","includeInvalid": true}
phoneNumbersis the required list to check.defaultCountryis an optional two-letter country code used for national numbers.textis optional free-form text. Phone-like values found there are checked too.includeInvalidkeeps rejected values and their reason in theREJECTED_INPUTSfile. It istrueby default.
📊 Output
A dataset row can look like this:
{"phoneNumber": "+1 202-555-0123","source": "phoneNumbers","e164": "+12025550123","internationalFormat": "+1 202-555-0123","nationalFormat": "(202) 555-0123","isValid": true,"isPossible": true,"countryCode": "US","callingCode": "1","type": "fixedLineOrMobile","timeZones": ["America/New_York"]}
When Keep rejected inputs is on, unparseable or implausible values go to REJECTED_INPUTS with phoneNumber, reason, and source. They do not create valid-number dataset rows.
💳 Pricing
This Actor uses pay-per-event pricing. You pay for each valid phone number saved to the dataset. Rejected inputs, repeated later matches, and runs with no valid saved phone number are not charged as phone-number events. Apify platform costs may still apply.
🔌 Integrations
Export the dataset as JSON, CSV, Excel, XML, RSS, or HTML. You can also run the Actor with the Apify API, schedule runs, or send finished data to webhooks and other Apify integrations.
❓ FAQ
Does this verify that a phone number is active or belongs to someone?
No. It checks the number against numbering-plan data. It does not call, text, run an HLR lookup, or check a subscriber.
Can it check national numbers without a + prefix?
Yes. Set defaultCountry to the two-letter country code that gives those numbers their local context.
What happens when the same number uses two formats?
The Actor uses the normalized number to spot repeats. It saves the first valid match and ignores later matches for that number.
Is a regex enough for E.164 validation?
A regex can check the shape of a value. This Actor also parses the number and checks its length and pattern against numbering-plan data.
Why can a valid number still be unused?
A valid result means the number fits its numbering plan. It does not prove that a carrier assigned it or that a person can answer it.
Do I need a phone service API key?
No third-party phone service key is needed for these numbering-plan checks. You still run the Actor through Apify.
📝 Changelog
- 0.1.0: Initial release.
🆘 Support
For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡
🔗 Related Actors
- Google Maps Phone Number Scraper — collect public business phone numbers from Google Maps before checking their format.
- SMTP Email Verifier — check email syntax, MX records, and SMTP evidence while cleaning contact lists.
- Website Emails Scraper — find public email addresses on a known list of sites.
- Person Email Finder — Name + Company to Email API — infer likely work email addresses from a name and company site.
Made with ❤️ by Maxime Dupré