$ curl ifconfig.vpnhero.app 216.73.216.30 $ http -b ifconfig.vpnhero.app 216.73.216.30 $ ht -b ifconfig.vpnhero.app 216.73.216.30 $ wget -qO- ifconfig.vpnhero.app 216.73.216.30 $ fetch -qo- http://ifconfig.vpnhero.app 216.73.216.30 $ bat -print=b ifconfig.vpnhero.app/ip 216.73.216.30
$ http ifconfig.vpnhero.app/country United States $ http ifconfig.vpnhero.app/country-iso US
$ http ifconfig.vpnhero.app/city Altadena
$ http ifconfig.vpnhero.app/asn AS20001
$ http ifconfig.vpnhero.app/json
{
"ip": "216.73.216.30",
"ip_decimal": 3628718110,
"country": "United States",
"country_iso": "US",
"country_eu": false,
"region_name": "California",
"region_code": "CA",
"metro_code": 803,
"zip_code": "91001",
"city": "Altadena",
"latitude": 34.1931,
"longitude": -118.1383,
"time_zone": "America/Los_Angeles",
"asn": "AS20001",
"asn_org": "TWC-20001-PACWEST",
"user_agent": {
"product": "Mozilla",
"version": "5.0",
"comment": "AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)",
"raw_value": "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"
}
}
Setting the Accept: application/json header also works as expected.
Always returns the IP address including a trailing newline, regardless of user agent.
$ http ifconfig.vpnhero.app/ip 216.73.216.30
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.