fshy

Home / Data APIs

ip-api

ip-api.com/docs/api:jsonIP geolocation APIdata-apis/ip-apiJSONcomparereport an errorprovider JSON

Free allowance
Free endpoint with no API key: 45 requests a minute per IP address on /json (15 a minute on /batch, up to 100 IPs a batch), plain HTTP only
Verdict
★ qualifiesusable as stated; the read path was probed
Cost
free tier
Identity
anonymousno card, no phone
Binding limit
request-rate45 requests a minute per IP address on /json; 15 a minute on /batch
Evidence
documented13 sources; a first-party page was read and the sentence quoted
Freshness
stale on 2026-12-01checked 2026-10-31 (live); stale on 2026-12-01
Free tierfree endpoint with no API key: 45 requests a minute per IP address on /json (15 a minute on /batch, up to 100 IPs a batch), plain HTTP only
unit requests; metered on request-count; HTTPS and API keys need the Pro plan, EUR 13.3 a month when paid for 12 months
Pricenone stated
Limits
  • request-rate (binding) 45 requests a minute per IP address on /json; 15 a minute on /batch source
  • per-object-cap up to 100 IPs per batch request source
Identityanonymous no account and no key on the free endpoint
Egressnot applicable
Per-object capa batch request takes up to 100 IP addresses
Retentionnot stated
Interfacerest GET http://ip-api.com/json/{ip} (also xml, csv, line, php), POST http://ip-api.com/batch with a JSON array of up to 100 IPs; the same path over HTTPS answers HTTP 403 SSL unavailable for this endpoint
Toolingany HTTP client; the X-Rl and X-Ttl headers give the remaining requests and the seconds to the window reset
Composes with45 lookups a minute from one address with no key, or 15 batches of 100 a minute; part of the data falls back to MaxMind GeoLite2. Bulk path: the batch endpoint; no download
Reliabilitypast the per-minute limit the API answers HTTP 429; repeated overruns ban the IP address for up to 1 hour; no HTTPS on the free endpoint
NotesFree requests: 45 a minute per IP on /json, 15 batches of up to 100 IPs a minute on /batch, no key. Rate limit: HTTP 429, then a ban of up to 1 hour on repeated overruns. Bulk path: the batch endpoint; no database download.
Evidence notedocumented the JSON and batch documentation, the plans page and the terms page were quoted on 2026-10-30; a keyless HTTP lookup answered HTTP 200 and the HTTPS form answered HTTP 403 SSL unavailable. The rate limit was not exhausted to observe it.
Parsed numbers
  • has-free-tier 1
  • request-rate 45 requests / minute
Evidence 13
datesourcewhat it proved
2026-10-30ip-api.com/docs/api:jsonthe free endpoint needs no key
2026-10-30ip-api.com/docs/api:jsonthe JSON endpoint allows 45 requests a minute per IP
2026-10-30ip-api.com/docs/api:jsonoverruns get HTTP 429 and repeated overruns a 1-hour ban
2026-10-30ip-api.com/docs/api:jsonthe free API has no HTTPS
2026-10-30ip-api.com/docs/api:batcha batch takes up to 100 IPs
2026-10-30ip-api.com/docs/api:batchthe batch endpoint allows 15 requests a minute
2026-10-30members.ip-api.com/the plans page repeats 45 a minute
2026-10-30members.ip-api.com/Pro is EUR 13.3 a month
2026-10-30members.ip-api.com/the Pro price is for yearly payment
2026-10-30ip-api.com/docs/legalthe terms page states the block and the ban of up to 1 hour
2026-10-30ip-api.com/docs/legalsome ranges fall back to GeoLite2 data
2026-10-30probe: http://ip-api.com/json/8.8.8.8a keyless HTTP lookup succeeded
2026-10-30probe: https://ip-api.com/json/8.8.8.8the HTTPS form of the free endpoint is refused
More fields 2
bulk pathPOST /batch with up to 100 IPs, 15 a minute
free requests45 a minute per IP
Unknown values 1
  • egress terms: the field does not apply to this kind of offer