$ curl ip.mademoe.com 216.73.216.217 $ http -b ip.mademoe.com 216.73.216.217 $ ht -b ip.mademoe.com 216.73.216.217 $ wget -qO- ip.mademoe.com 216.73.216.217 $ fetch -qo- http://ip.mademoe.com 216.73.216.217 $ bat -print=b ip.mademoe.com/ip 216.73.216.217
$ http ip.mademoe.com/country United States $ http ip.mademoe.com/country-iso US
$ http ip.mademoe.com/city Columbus
$ http ip.mademoe.com/asn AS16509
Looks like you're with AMAZON-02
$ http ip.mademoe.com/json
{
"ip": "216.73.216.217",
"ip_decimal": 3628718297,
"country": "United States",
"country_iso": "US",
"country_eu": false,
"region_name": "Ohio",
"region_code": "OH",
"metro_code": 535,
"zip_code": "43215",
"city": "Columbus",
"latitude": 39.9625,
"longitude": -83.0061,
"time_zone": "America/New_York",
"asn": "AS16509",
"asn_org": "AMAZON-02",
"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 ip.mademoe.com/ip 216.73.216.217
$ http ip.mademoe.com/port/8080
{
"ip": "216.73.216.217",
"port": 8080,
"reachable": false
}
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.