freegeoip.app provides a free IP gelocation API for software developers. It uses a database of IP addresses that are associated to cities along with other relevant information like time zone, latitude and longitude.
You're allowed up to 15,000 queries per hour by default. Once this limit is reached, all of your requests will result in HTTP 403, forbidden, until your quota is cleared.
The HTTP API takes GET requests in the following schema:
JSON w/ Callback: https://freegeoip.app/json/22.214.171.124?callback=test