Endpoint

MethodGET
URLhttps://ipsnapshot.com/api/ip/{ip}
Your own IPhttps://ipsnapshot.com/api/ip/self
AuthNone required for the free per-IP allowance. An IPNOVA API key (free account at api.ipnova.com) applies your plan allowance instead: send it as the X-Api-Key header or the ?key= query parameter. Keyed responses carry X-Credits-Remaining and X-Credits-Used.
Rate limit100 requests a day and 30 a minute, per IP (see X-RateLimit-Remaining header)
CORSAccess-Control-Allow-Origin: *, call it straight from the browser
CachingResponses cacheable for 1h (Cache-Control: max-age=3600)
OpenAPIMachine-readable spec at /openapi.json

Plans

One key. Twelve APIs.

A free IPNOVA API account gives you 5,000 lookups a month across every API below, 60 a minute, no card, for evaluation and small projects. Paid plans from $19 a month for production volumes, with a commercial licence and a hard cap instead of overage billing.

Card BINVINSWIFT/BICIBANHS tariffDisposable emailIP dataPhoneHolidaysMAC vendorPostal codeAirport
Create your free key

Takes a minute. Send it as X-Api-Key or ?key=.

Without a key this API answers 100 requests a day per IP address, for evaluation and personal use. Try it: curl https://ipsnapshot.com/api/ip/8.8.8.8

Example Request

curlcurl https://ipsnapshot.com/api/ip/8.8.8.8
JavaScriptconst r = await fetch('https://ipsnapshot.com/api/ip/8.8.8.8').then(r => r.json());
PHP$r = json_decode(file_get_contents('https://ipsnapshot.com/api/ip/8.8.8.8'), true);
Pythonr = requests.get('https://ipsnapshot.com/api/ip/8.8.8.8').json()

Response Fields

FieldTypeDescription
successbooleantrue when the lookup succeeded
ipstringThe address that was looked up
data.ip_versionint4 or 6
data.country_codestringISO 3166-1 alpha-2 code
data.country / region / city / continentstringGeolocation (city-level for IPv4)
data.asnintAutonomous system number
data.ispstringNetwork operator / organization
data.is_vpnbooleanAppears on public VPN provider lists
data.is_datacenterbooleanFalls within a datacenter/hosting range
data.is_torbooleanActive Tor exit node
data.risk_level / risk_scorestring / intCombined risk assessment (0-100)
pagestringHuman-readable page for this IP on ipsnapshot.com

Errors

Every non-200 response uses the same envelope: success: false, an error flag, a machine-readable reason, a human message, and a docs link back to this page.

StatusReasonMeaning
400invalid_inputThe address is not a valid IPv4 or IPv6 address
401invalid_keyThe supplied API key is unknown or revoked
429rate_limitToo many requests in the last minute (Retry-After: 60)
429daily_limitKeyless per-IP daily cap reached
429credits_exhaustedKeyed monthly allowance used up

Example, an invalid address:

{"success": false, "error": true, "reason": "invalid_input", "message": "Provide a valid IPv4 or IPv6 address.", "docs": "https://ipsnapshot.com/ip-lookup-api"}

What Teams Use It For

  • Fraud screening at signup or checkout. Flag datacenter, VPN and proxy traffic before it creates an account or places an order, using the security block in every response.
  • Content localisation. Pick the right currency, language or store from the country and timezone fields without asking the visitor.
  • Log enrichment. Turn raw IPs in access or audit logs into country, city, ASN and hosting-provider context for incident review.
  • Traffic analytics. Split human, datacenter and bot traffic in your own dashboards with the ASN and datacenter flags.
  • Compliance gating. Restrict access by region where a licence or regulation requires it, with the country field as the first filter.

Fair Use & Attribution

  • 100 requests per day per IP - enough to evaluate the API; a free IPNOVA API key raises the limit.

Frequently Asked Questions

Is the IP lookup API really free?

Yes. No API key, no registration, no credit card. Each IP address can make up to 100 requests per day. CORS is enabled, so you can call it directly from the browser.

Does it support IPv6?

Yes. IPv6 lookups return country-level geolocation and ASN data. IPv4 lookups additionally include city-level location and threat-list flags.

How fresh is the data?

Geolocation and ASN data are refreshed monthly from DB-IP; VPN, datacenter, and Tor lists are refreshed regularly from public sources.

Can I test it right now?

Try /api/ip/8.8.8.8 in your browser, or look up 8.8.8.8, 1.1.1.1, or your own IP with What Is My IP.

How do I call the IP lookup API?

Send a GET request to https://ipsnapshot.com/api/ip/{ip} - for example https://ipsnapshot.com/api/ip/8.8.8.8. Use /api/ip/self to look up your own address. The response is JSON.

What data does the API return?

Country, region, city, continent, ASN and network operator (ISP), plus security flags: VPN list, datacenter/hosting range, and Tor exit node, with an overall risk score.