2026-09-04
IP lookups by path, for the caller, in batches, in bulk and from the browser
GET and self lookups, privacy mode, batch and bulk runs, a browser endpoint for publishable keys, a dashboard page, richer country facts, and a 50-per-second rate limit for IP endpoints.
GET /api/v1/ip/{ip}runs the same lookup asPOST /api/v1/ipwith the address in the path, andGET /api/v1/ip/meanswers for the address the call came from.- Privacy mode:
privacy: truein the body or?privacy=1on a GET keeps nothing about the lookup, not even the seven-day repeat marker; every such call is billed as fresh. Nothing about an IP lookup was ever logged or written to history; the security page now says so. POST /api/v1/ip/batchlooks up as many as 1,000 addresses in one call, in input order, with the paid partial results returned if the balance runs out mid-list.- Bulk runs:
POST /api/v1/ip/bulkqueues up to 100,000 addresses, with polling, cancellation, a CSV of every response field per row, anIdempotency-Keyheader and a signedbulk_ip_job.finishedwebhook, exactly like bulk email runs. POST /api/v1/ip/publiclooks an address up from the browser with a domain-locked publishable key; leaveipout for the visitor's own address. Daily credit caps and Cloudflare Turnstile apply as they do for the email widget.- New fields on every IP answer:
network(the prefix the location covers),continent,country_name,is_eu,timezone(only when the country or a single-zone region settles it),currency,calling_code,is_anonymous, andrisk_signals, which lists every contributing signal with the weight applied. - IP endpoints have their own rate limit of 50 requests per second per key. The email endpoints keep 5.
- The dashboard gained an IP intelligence page for single lookups, batches and bulk runs, and the docs gained an IP intelligence guide with three companion guides.
- Three more signals from free data:
is_unallocated(no regional registry has allocated or assigned the space, from the five RIRs' daily statistics; it scores 100),is_anycast(published CDN edge and public resolver ranges), andis_torfor IPv6 from the Tor Project's Onionoo relay data.abuse_contact: trueadds the network's abuse mailbox from its RDAP record, looked up only on request.
markdown version: /changelog/2026-09-04-ip-api-round-two.md · atom feed: /changelog.atom