Geo API — IP geolocation from the EU
Country, region, city, coordinates, timezone, ASN and provider for any IP — via a fast, EU-hosted API. Localized names (DE/EN) and a downloadable database for local resolution. From €5/month, cancel monthly, ready in 60 seconds.
IP geolocation powers localization, fraud prevention, analytics and compliance -- yet most services send every user IP to a provider outside the EU. XICTRAQ resolves geo data fully locally on our EU servers, from a vendor-free base of open datasets. You get country, region, city, postal code, coordinates, timezone and network operator (ASN/provider), the matched network range (CIDR) and the responsible RIR -- as a JSON API with configurable API-key scopes and a tiered monthly quota. On top you get continent, an EU flag, country metadata (calling code, currency, official and widely spoken languages), a full time-zone object plus network signals such as hosting/cloud (incl. Azure), VPN, Tor, satellite, anycast and iCloud Relay detection -- complemented by an estimated abuse score with a risk rating, an estimated accuracy radius and a confidence per field. Resolve many IPs in one go via the batch endpoint (up to 1,000 IPs/request). Names come localized in German or English. If you prefer local resolution, download a database in the open GeoIP2 format (IPv4) and plug it into any compatible tool -- with no external account. For testing, 1,000 lookups/month are included without an add-on.
Geo API — IP geolocation from the EU features
Country, region, city, coordinates
Full resolution incl. postal code, latitude/longitude and timezone for IPv4 and IPv6.
ASN, network range & RIR registry
Autonomous system number and provider/org for every IP — incl. the provider domain, the matched network range (CIDR, e.g. 8.8.8.0/24) and the responsible RIR (RIPE/ARIN/APNIC/LACNIC/AFRINIC). From the RIR registry additionally org_id (org handle to group all networks of one company), org_type (e.g. LIR/end-user), registry_country (operator country per the registry), allocation_date (first ASN registration — young networks are a risk signal) and abuse_contact (operator abuse email).
Hosting, VPN, Tor & relay detection
Flags for hosting/datacenter, cloud provider (incl. Azure), VPN, Tor, satellite, anycast, iCloud Private Relay and bogon — plus a derived connection type. Ideal for fraud and risk prevention.
Abuse score & risk (estimate)
A derived abuse_score (0–100) and a risk rating (low/elevated/high) from hosting, VPN and Tor signals — a transparent estimate for scoring and checkout rules, not a guaranteed verdict. Without readable reputation datasets the API returns null instead of a top grade.
Batch lookup up to 1,000 IPs
POST /api/geo/batch resolves up to 1,000 IPs in a single request — perfect for bulk log enrichment. Each IP counts individually against the quota, invalid IPs return a per-entry error.
Country metadata: calling code, currency, languages
Per country a phone calling code (e.g. 49), currency as { code, symbol } and official and widely spoken languages (ISO 639-1) — ideal for pre-filling forms, price display and language selection.
Accuracy radius & confidence
Estimated radius in km and a confidence per field (country/region/city) — transparent estimates instead of false precision.
Continent, EU flag & time-zone object
Continent, EU flag, ISO 3166-2 region code and a full time-zone object with UTC offset, DST and local time.
EU-sovereign, GDPR-friendly
Resolution 100 % local on EU servers. The IP is never passed to third parties. For downstream processing there is a neutralised mode that strips personal fields.
Local database (.mmdb)
Downloadable database in the open GeoIP2 format for offline resolution in any compatible tool — IPv4, weekly refreshable (the live API additionally covers IPv6).
Names in German or English
Country, state and common cities localized — via the lang parameter.
API keys with scopes
Dedicated keys with a finely configurable “geo” scope, per-minute limit and tiered monthly quota. Plus a “neutral” scope that permanently neutralises every response from that key.
How it works
Create account & book a tier
Create a free account, then book the Geo API add-on (Starter, Pro or Business) — active immediately.
Create an API key with geo scope
Create a key with the “geo” scope under Settings → API Keys. The key is shown only once.
Call the lookup or download the .mmdb
GET /api/geo?ip=…&key=… returns JSON instantly. Or download the database and resolve fully offline.
Three tiers, one fair price
Available as an add-on on every plan, including Free. Cancel monthly, prices incl. VAT. For testing, 1,000 lookups / month are included without an add-on.
For tests, prototypes & small projects
Create account & bookFor production apps with real traffic
Create account & bookFor high volume & data-intensive workloads
Create account & bookOne request, all geo data
A simple GET call with your API key — instant JSON, no SDK, in any language.
curl "https://api.xictraq.com/api/geo?ip=84.124.0.1&lang=de&key=YOUR_KEY"{
"ip": "84.124.0.1",
"network": "84.124.0.0/24",
"country_code": "DE",
"country_name": "Deutschland",
"is_eu": true,
"calling_code": 49,
"currency": { "code": "EUR", "symbol": "€" },
"languages": ["de"],
"continent": "Europa",
"continent_code": "EU",
"rir": "RIPE",
"region": "Nordrhein-Westfalen",
"region_code": "DE-NW",
"city": "Köln",
"postal_code": "50667",
"latitude": 50.94,
"longitude": 6.96,
"timezone": "Europe/Berlin",
"time_zone": {
"id": "Europe/Berlin",
"utc_offset_seconds": 7200,
"utc_offset": "+02:00",
"is_dst": true,
"current_time": "2026-06-05T14:23:11+02:00"
},
"accuracy_radius_km": 25,
"confidence": { "country": 99, "region": 70, "city": 80 },
"asn": 8422,
"isp": "NetCologne",
"isp_domain": "netcologne.de",
"connection_type": "isp",
"is_hosting": false,
"is_datacenter": false,
"cloud_provider": null,
"is_anycast": false,
"is_relay": false,
"is_vpn": false,
"is_tor": false,
"is_satellite": false,
"is_bogon": false,
"abuse_score": 4,
"risk": "niedrig",
"quota": { "tier": "pro", "used": 1842, "monthly_limit": 500000 }
}Authentication via ?key= — protocol-independent (HTTP/2 & HTTP/3). CORS enabled. lang=de | en.
accuracy_radius_km, confidence and abuse_score/risk are transparent estimates (no guaranteed precision). Hint flags like is_vpn/is_tor/is_hosting/is_anycast are based on known IP ranges. timezone falls back to the primary country zone for single-time-zone countries.
curl -X POST "https://api.xictraq.com/api/geo/batch?key=YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"ips":["8.8.8.8","203.0.113.7"]}'{
"results": [
{ "ip": "8.8.8.8", "country_code": "US", "rir": "ARIN",
"is_anycast": true, "abuse_score": 12, "risk": "niedrig", "...": "…" },
{ "ip": "203.0.113.7", "error": "invalid_ip" }
],
"count": 2,
"quota": { "tier": "pro", "used": 1844, "monthly_limit": 500000 }
}Up to 1,000 IPs per request. Each IP counts individually against the quota; invalid IPs return a per-entry error (results in input order, plus count and quota).
What teams use the Geo API for
Localization & personalization
Pre-set language, currency, shipping options and content per country/region automatically — without a cookie banner.
Fraud & risk prevention
Detect hosting/VPN/carrier traffic via ASN and provider, vet suspicious logins by country, harden checkout.
Enrich analytics
Enrich your own logs, leads and events server-side with country/region/city and network operator — cleanly aggregatable.
Compliance & geo rules
Drive geoblocking, tax/legal logic and consent defaults by region — all kept in the EU.