Batch Phone Validation
Validate up to 50 phone numbers in a single request
/v1/geo/phone-validate-batch
curl -X POST "https://geo.toolkitapi.io/v1/geo/phone-validate-batch" \
-H "Content-Type: application/json" \
-d '{
"numbers": ["+14155552671", "+442071234567", "invalid-number"],
"default_country": "US"
}'
import httpx
resp = httpx.post(
"https://geo.toolkitapi.io/v1/geo/phone-validate-batch",
json={
"numbers": ["+14155552671", "+442071234567", "invalid-number"],
"default_country": "US"
},
)
print(resp.json())
const resp = await fetch("https://geo.toolkitapi.io/v1/geo/phone-validate-batch", {
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({
"numbers": ["+14155552671", "+442071234567", "invalid-number"],
"default_country": "US"
}),
});
const data = await resp.json();
console.log(data);
# See curl example
{
"total": 3,
"results": [
{
"input": "+14155552671",
"valid": true,
"e164": "+14155552671",
"national": "(415) 555-2671",
"international": "+1 415-555-2671",
"country_code": 1,
"country": "US",
"region": "California",
"carrier": "T-Mobile USA",
"line_type": "mobile"
},
{
"input": "+442071234567",
"valid": true,
"e164": "+442071234567",
"national": "020 7123 4567",
"international": "+44 20 7123 4567",
"country_code": 44,
"country": "GB",
"region": "London",
"carrier": null,
"line_type": "fixed_line"
},
{
"input": "invalid-number",
"valid": false,
"e164": null,
"national": null,
"international": null,
"country_code": null,
"country": null,
"region": null,
"carrier": null,
"line_type": null
}
],
"summary": {
"valid": 2,
"invalid": 1,
"line_types": {"mobile": 1, "fixed_line": 1}
}
}
Try It Live
Description
How to Use
1. Provide an array of phone numbers in the `numbers` field (max 50).
2. Optionally set `default_country` (ISO alpha-2) as a fallback for numbers without a country prefix.
3. Send a POST request and use the `summary` to quickly assess data quality.
4. Iterate over `results` for per-number details.
About This Tool
Use Batch Phone Validation to validate up to 50 phone numbers in a single request. Each number is parsed, validated, and enriched with carrier and line type information, just like the single phone-validate endpoint but in bulk.
The response includes per-number results plus a summary with aggregate counts of valid/invalid numbers and a breakdown by line type.
Why Use This Tool
- CRM data cleaning — Validate and normalise an entire contact list in one call
- Import validation — Check uploaded CSV phone columns before saving to the database
- Marketing campaigns — Filter valid mobile numbers before launching SMS campaigns
- Data quality audits — Generate summary statistics on phone number quality
Frequently Asked Questions
What is the maximum batch size?
Are invalid numbers included in the results?
Does the default_country apply to all numbers?
Start using Batch Phone Validation now
Get your free API key and make your first request in under a minute.