Overview
The Infer Record Country endpoint analyzes email addresses and phone numbers to determine the likely country location of a person. This endpoint infers country information by:- Analyzing email domain top-level domains (TLDs) such as
.co.uk,.fr,.de - Parsing phone number country codes and validating phone number formats
Request
Headers
Your API key for authentication
application/json
Request Body
An array of records containing contact information. Maximum 1000 records per request.
Request Example
Response
Response Structure
The endpoint returns an array of result objects, one for each input record. Results maintain the same order as the input records.Result Object
Your identifier from the request
Whether the record appears to be international (non-US).
true: Non-US country detectedfalse: US country detectednull: No country could be determined from the provided information
The most likely country name based on the analysis. If multiple countries are detected, returns the first one from the inferred list.
null if no country could be determined.Array of unique country names inferred from the contact information. Combines results from both email TLDs and phone number country codes.
null if no countries could be inferred.Detailed metadata for each email address analyzed
Detailed metadata for each phone number analyzed
Email Metadata Object
The email address as provided in the request
Whether the email address passed basic validation (format check, sanitization)
Whether the email domain indicates a non-US location based on TLD analysis
true: Non-US TLD detected (e.g.,.co.uk,.fr,.de)false: US TLD detected or generic TLD with no country inferencenull: Email is invalid or no country could be determined
Uppercase ISO country code extracted from the email TLD (e.g., “GB”, “FR”, “DE”).
null if no country-specific TLD detected or email is invalid.Full country name corresponding to the TLD (e.g., “United Kingdom”, “France”, “Germany”).
null if no country-specific TLD detected or email is invalid.Phone Metadata Object
The phone number as provided in the request
Whether the phone number passed validation and could be parsed successfully
Whether the phone number is international (non-US)
true: Non-US country code detectedfalse: US country code detected (+1)null: Phone is invalid or country could not be determined
Phone number in E.164 format (e.g., “+442071234567”).
null if the phone number is invalid.Uppercase ISO country code (e.g., “GB”, “FR”, “US”).
null if the phone number is invalid or country could not be determined.Full country name (e.g., “United Kingdom”, “France”, “United States”).
null if the phone number is invalid or country could not be determined.Error Responses
400- Bad Request: Invalid input format401- Unauthorized: Invalid API key404- Not Found: This endpoint only supports v2 API version (calling/v1/infer_record_countrywill return this error)413- Payload Too Large: More than 1000 records in request422- Unprocessable Entity: Invalid data format, including:- Input data is not a JSON object with a
recordskey recordsfield is not a list- Required fields are missing (e.g.,
record_id) - Invalid field types or values
- Input data is not a JSON object with a
500- Internal Server Error
Notes
API Version Support
- This endpoint only supports API version v2 (
/v2/infer_record_country) - Maximum 1000 records per request
Country Inference Logic
Country inference is based on:- Email TLD analysis: Extracts country from top-level domains (e.g.,
.co.uk→ United Kingdom,.fr→ France,.de→ Germany)- Generic TLDs like
.com,.org,.netdo not provide country information - Email addresses without country-specific TLDs will have
nullvalues for country fields
- Generic TLDs like
- Phone number parsing: Uses international phone number validation library to:
- Parse and validate phone numbers in various formats
- Extract country codes
- Standardize to E.164 format
Field Behavior
is_intl: Determined by checking if any non-US country was inferredtrue: At least one non-US country detectedfalse: Only US detectednull: No country information could be extracted
most_likely_country: Returns the first country from theinferred_countrieslist- When multiple countries are detected from different emails/phones, the order depends on the order they appear in your input
inferred_countries: Contains unique country names from all emails and phones analyzed- Duplicates are removed
- Returns
nullif empty (no countries inferred)
Validation
- Invalid emails (failed format validation) are included in results with
is_valid: falseandnullcountry fields - Invalid phone numbers are included in results with
is_valid: falseandnullcountry fields - Duplicate emails and phones within a single record are automatically deduplicated before processing
Input Field Compatibility
- Name fields (
first_name,last_name,middle_name,full_name,name_suffix) are accepted for API compatibility with the resolve endpoint but are not used in country inference logic - The endpoint uses the same
ResolveInputmodel as the resolve endpoint, allowing seamless integration

