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.