IP Vigilante provides a free geographical IP locator API, so the developers can obtain geographical information of an IP in various formats: JSON and CSV.
You can get the IP info with a simple query
https://ipvigilante.com/8.8.8.8
The returned JSON is
{ "status": "success", "data": { "ipv4": "8.8.8.8", "continent_name": "North America", "country_name": "United States", "subdivision_1_name": "California", "subdivision_2_name": null, "city_name": "Mountain View", "latitude": "37.38600", "longitude": "-122.08380" } }
You can take a look to the full IP Vigilante API documentation.
You can see how to work with the API in the programming examples section.