❯ curl ip.upputuri.in

Show my IP address

Singapore, Singapore · Tencent Building, Kejizhongyi Avenue

Additional information

IP address 43.173.179.183
Decimal 732804023
Country Singapore
Country (ISO) SG
Postal code 17
City Singapore
Latitude 1.2872
Longitude 103.8507
Timezone Asia/Singapore
ASN AS132203
Organization Tencent Building, Kejizhongyi Avenue

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 ip.upputuri.in?ip=43.173.179.183 43.173.179.183
curl ip.upputuri.in/country?ip=43.173.179.183 Singapore
curl ip.upputuri.in/country-iso?ip=43.173.179.183 SG
curl ip.upputuri.in/city?ip=43.173.179.183 Singapore
curl ip.upputuri.in/asn?ip=43.173.179.183 AS132203
  • 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 ip.upputuri.in/json?ip=43.173.179.183 Retrieve all IP information. See response.
curl ip.upputuri.in/port/<PORT> Check if given port is reachable. See port response.

Response

{
  "ip": "43.173.179.183",
  "ip_decimal": 732804023,
  "country": "Singapore",
  "country_iso": "SG",
  "country_eu": false,
  "zip_code": "17",
  "city": "Singapore",
  "latitude": 1.2872,
  "longitude": 103.8507,
  "time_zone": "Asia/Singapore",
  "asn": "AS132203",
  "asn_org": "Tencent Building, Kejizhongyi Avenue",
  "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": "43.173.179.183",
  "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.