Our IP Analysis process performs comprehensive validation of user locations based on IP addresses and device information. This guide explains the structure and contents of an IP analysis report.

Report Structure
The verification report is returned as a JSON object containing a location
object with the following key sections:
- Location Status: Overall session status based on IP analysis results
- IP Location Data: Geographic information derived from the IP address
- Device Information: Details about the user's device and browser
- Network Analysis: VPN detection and network provider insights
- Location Comparison: Comparative analysis between IP and document locations
- Verification Metadata: Additional verification details and timestamps
Core Response Fields
interface IPAnalysisResponse {
location: {
// Verification Status
status: 'Approved' | 'Declined' | 'In Review' | 'Not Finished';
// Device Information
device_brand: string;
device_model: string;
browser_family: string;
os_family: string;
platform: 'mobile' | 'desktop';
// IP Location Data
ip_country: string;
ip_country_code: string;
ip_state: string;
ip_city: string;
latitude: number;
longitude: number;
ip_address: string;
// Network Information
isp: string | null;
organization: string | null;
is_vpn_or_tor: boolean;
is_data_center: boolean;
// Time Zone Data
time_zone: string;
time_zone_offset: string;
// Location Comparison
document_location: {
latitude: number;
longitude: number;
};
ip_location: {
latitude: number;
longitude: number;
};
distance_from_document_to_ip_km: {
distance: number;
direction: string;
};
// Warnings
warnings: {
risk: string;
additional_data: string | null;
log_type: 'information' | 'warning' | 'error';
short_description: string;
long_description: string;
}[];
}
}
Sample JSON Response
{
"ip_analysis": {
"status": "Approved",
"device_brand": "Apple",
"device_model": "iPhone",
"browser_family": "Mobile Safari",
"os_family": "iOS",
"platform": "mobile",
"ip_country": "Spain",
"ip_country_code": "ES",
"ip_state": "Barcelona",
"ip_city": "Barcelona",
"latitude": 41.4022,
"longitude": 2.1407,
"ip_address": "83.50.226.71",
"isp": null,
"organization": null,
"is_vpn_or_tor": false,
"is_data_center": false,
"time_zone": "Europe/Madrid",
"time_zone_offset": "+0100",
"locations_info": {
"ip": {
"location": {"latitude": 40.2206327, "longitude": 1.5770097},
"distance_from_id_document": 23.4,
"distance_from_poa_document": 12.3
},
"id_document": {
"location": {"latitude": 41.2706327, "longitude": 1.9770097},
"distance_from_ip": 23.4,
"distance_from_poa_document": 18.7,
},
"poa_document": {
"location": {"latitude": 41.2706327, "longitude": 1.9770097},
"distance_from_ip": 12.3,
"distance_from_id_document": 18.7
},
},
"warnings": [],
},
}
For more information about potential warnings during the IP analysis process, check our IP Analysis Warnings guide.