Free IP geolocation and risk API: limits, fields and how to call it

IP99's lookup is a free JSON API with no key and no signup: GET https://ip99.com/v1/ip/{ip}, 500 lookups per day per client IP and 60 per minute. One call returns geolocation down to the city (the district for Chinese addresses), the ASN and usage type of the network, and a risk verdict — proxy, VPN, dial-up pool, cloud phone, datacenter — with the age of the evidence behind it. IPv4 and IPv6.

Call it

curl https://ip99.com/v1/ip/8.8.8.8

The whole API is described in an OpenAPI 3.1 specification you can import into Postman, Insomnia, a code generator or a GPT action. Response (captured 2026-09-13, trimmed to the fields that matter):

{
  "ip": "8.8.8.8",
  "geo": { "continent": "NA", "country": "US", "region": "California", "city": "Mountain View",
           "lat": 37.386, "lon": -122.084, "tz": "America/Los_Angeles" },
  "network": { "asn": 15169, "usage_type": "IDC" },
  "risk": { "score": 0, "level": "none", "signals": ["hosting"] },
  "evidence_state": "none",
  "computed_at": "2026-09-13T15:40:41Z"
}

An address in China carries all three Latin names: GET /v1/ip/27.22.66.200 returns "region": "Hubei", "city": "Xiangyang" and "district": "Xiangcheng".

Fields

Changed 2026-09-17 (breaking). risk now has the same shape as the professional Pulse tier: risk.tags and risk.tag_details are no longer returned, and neither is the top-level boolean signals object — matched signals are only in risk.signals. A parser that still reads the old fields gets undefined.

Limits and errors

For AI agents

The same lookup is a Model Context Protocol tool, ip_risk_lookup, at https://ip99.com/mcp: read-only, no key needed for the free allowance. Machine-readable guidance is in llms.txt.

What the free tier does not include

Per-source evidence detail, historical verdicts (?at=) and phone-number risk profiles belong to the professional and enterprise tiers; the free lookup is the same verdict at the same freshness, without the volume. Details: API documentation · pricing.

FAQ

Is there a free IP geolocation API without a key?

Yes. GET https://ip99.com/v1/ip/{ip} needs no key and no signup: 500 lookups per day per client IP and 60 per minute, returning geolocation down to the city (the district for Chinese addresses), ASN, usage type and a risk verdict in one JSON response.

What is the rate limit?

60 requests per minute and 500 per day per client IP without a key; a free account raises the daily allowance to 5000. Over the limit the API answers 429 with a stable error code and a retry_after.

Does it support IPv6?

Yes. Both IPv4 and IPv6 addresses are accepted on the same endpoint and return the same fields.

Is the free data the same as the paid data?

The verdict and its freshness are the same. Paid plans add volume, keys and usage reporting, and the professional tier adds per-source evidence detail (every observation with its captured_at and age_min) and historical lookups at a past time (?at=). The geolocation is the same on every tier: country, region and city, plus the district for Chinese addresses.

Can I use the free API in production?

For low volumes, yes, keeping in mind that the allowance is per client IP and shared by everything behind the same NAT. For anything you depend on, a key gives you your own allowance and visibility of your usage.

Related: What is my IP address? · IP location: where an IP address is · IP address lookup: what you can and cannot find out · How to detect a proxy, VPN or datacenter IP · Rotating residential proxies and dial-up pools · Residential proxy vs datacenter proxy · Is this IP a VPN? · What an IP risk score means · How fresh should IP risk evidence be? · What is an ASN? · Proxy exit addresses captured this week · IP risk profile · IP ranges by country · IP ranges by ASN.