❯ curl 127.0.0.1:8080

Columbus, United States · Amazon.com, Inc.

Additional information

IP address 216.73.216.47
Decimal 3628718127
Country United States
Country (ISO) US
Region Ohio
Region code OH
Metro code 535
Postal code 43215
City Columbus
Latitude 39.9587
Longitude -82.9987
Timezone America/New_York
ASN AS16509
Organization Amazon.com, Inc.

Location

Approximate location based on IP address. IP geolocation data is provided by MaxMind GeoLite2.

API

All data is available programmatically. When using curl, pass the -s flag to hide the progress bar.

Plain text

These endpoints return plain text by default, with a trailing newline at the end.

Command Response
curl 127.0.0.1:8080 216.73.216.47
curl 127.0.0.1:8080/country United States
curl 127.0.0.1:8080/country-iso US
curl 127.0.0.1:8080/city Columbus
curl 127.0.0.1:8080/asn AS16509
  • Set the Accept: application/json header to request response as JSON.
  • Append ?ip=IP to the request URL to lookup information for a different IP. This is not supported for the /port endpoint.

JSON

These endpoints always return JSON.

Command Description
curl 127.0.0.1:8080/json Retrieve all IP information. See response.
curl 127.0.0.1:8080/port/<PORT> Check if given port is reachable. See port response.

Response

{
  "ip": "216.73.216.47",
  "ip_decimal": 3628718127,
  "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.9587,
  "longitude": -82.9987,
  "time_zone": "America/New_York",
  "asn": "AS16509",
  "asn_org": "Amazon.com, Inc.",
  "user_agent": {
    "product": "Mozilla",
    "version": "5.0",
    "comment": "AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +[email protected])",
    "raw_value": "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +[email protected])"
  }
}

Port response

This is an example response. The actual result depends on the reachability of the queried port.

{
  "ip": "216.73.216.47",
  "port": 443,
  "reachable": false
}

FAQ

How do I force IPv4 or IPv6 lookup?
Pass the appropriate flag to your client, e.g. curl -4 or curl -6.
Is automated use permitted?
Yes, but please limit automated requests to 1 request per minute. Requests exceeding this limit may receive a 429 status code or be dropped entirely.
Can I run my own instance?
Yes. The source code and documentation are available on GitHub.