$ curl hrnco.net 3.145.59.56 $ http -b hrnco.net 3.145.59.56 $ wget -qO- hrnco.net 3.145.59.56 $ fetch -qo- https://hrnco.net 3.145.59.56 $ bat -print=b hrnco.net/ip 3.145.59.56
$ http hrnco.net/country United States $ http hrnco.net/country-iso US
$ http hrnco.net/city Seattle
$ http hrnco.net/json { "ip": "3.145.59.56", "ip_decimal": 59849528, "country": "United States", "country_eu": false, "country_iso": "US", "city": "Seattle", "hostname": "ec2-3-145-59-56.us-east-2.compute.amazonaws.com", "latitude": 47.6348, "longitude": -122.3451 }
Setting the Accept: application/json
header also works as expected.
Always returns the IP address including a trailing newline, regardless of user agent.
$ http hrnco.net/ip 3.145.59.56
As of 2018-07-25 it's no longer possible to force protocol using
the v4 and v6 subdomains. IPv4 or IPv6 still can be forced
by passing the appropiate flag to your client, e.g curl -4
or curl -6
.
Yes, as long as the rate limit is respected. The rate limit is in place to ensure a fair service for all.
Please limit automated requests to 1 request per minute. No guarantee is made for requests that exceed this limit. They may be rate-limited, with a 429 status code, or dropped entirely.
Yes, the source code and documentation is available on GitHub.