Developer API & CLI
Look up your IP from a terminal or script — no key, no sign-up. Every endpoint is
CORS-enabled (Access-Control-Allow-Origin: *)
and returns only the caller's own request data.
Endpoints
GET /ip — plain text, just the IP
curl myipis.sh/ip
GET /api/ip — JSON: IP, geo, ISP, browser, headers
curl myipis.sh/api/ip
GET / — a CLI user-agent also gets the bare IP
curl myipis.sh
Browsers get the full HTML page; curl, wget, HTTPie and friends get plain text.
/api/ip response
{
"ip": "203.0.113.7",
"version": "IPv4",
"isPrivate": false,
"forwardedFor": ["203.0.113.7"],
"userAgent": "Mozilla/5.0 …",
"browser": { "name": "Chrome", "version": "149.0.0.0", "os": "macOS", "device": "Desktop" },
"geo": {
"city": "London", "region": "England", "country": "United Kingdom",
"countryCode": "GB", "latitude": 51.5142, "longitude": -0.0931,
"timeZone": "Europe/London", "asn": 1221, "asnOrganization": "Example ISP"
},
"headers": { "Accept-Language": "en-GB", "…": "…" }
}
geo is null when lookups are disabled or the address is private;
individual geo fields may be null too.
Notes
- • No authentication and no rate limit — please be reasonable.
- • Responses are never cached (
Cache-Control: no-store). - • Want both your IPv4 and IPv6? Query the protocol-pinned hosts
ipv4.myipis.shandipv6.myipis.sh— each reports the address it saw.