API- und Entwicklerdokumentation
Eine kleine, vorhersehbare JSON-API. Die Endpunkte werden über unsere serverseitige Abstraktionsschicht für Anbieter proxymäßig weitergeleitet, mit Antwortnormalisierung, leichtem Caching und reibungsloser Fehlerbehandlung.
Endpunkte
GET /api/my-ip
Gibt Geolokalisierungs- und Netzwerkdaten für die öffentliche IP-Adresse des Aufrufers zurück, wie sie vom Server gesehen wird.
curl https://ipcheck.mubarokah.com/api/my-ip
GET /api/lookup?q=<ip|domain>
Suchen Sie nach einer IPv4-, IPv6-Adresse oder einer reinen Domain. Protokolle (http/https) und Pfade werden abgelehnt.
curl "https://ipcheck.mubarokah.com/api/lookup?q=8.8.8.8"
POST /api/bulk
Batch-Abfragen (bis zu 50 pro Anfrage). Die Parallelität ist serverseitig begrenzt.
curl -X POST -H 'content-type: application/json' \
-d '{"queries":["8.8.8.8","1.1.1.1","example.com"]}' \
https://ipcheck.mubarokah.com/api/bulkAntwortstruktur
{
"ok": true,
"query": "8.8.8.8",
"ip": "8.8.8.8",
"ipVersion": "IPv4",
"location": {
"continent": "North America",
"country": "United States",
"countryCode": "US",
"regionName": "Virginia",
"city": "Ashburn",
"zip": "20149",
"lat": 39.0438,
"lon": -77.4874,
"timezone": "America/New_York",
"utcOffsetSeconds": -14400,
"currency": "USD"
},
"network": {
"isp": "Google LLC",
"org": "Google Public DNS",
"as": "AS15169 Google LLC",
"asname": "GOOGLE",
"reverse": "dns.google"
},
"flags": { "mobile": false, "proxy": false, "hosting": true }
}Fehlermeldungen
invalid_query— Eingabe ist keine gültige IP oder Domäne.rate_limited— Ratenlimit des Upstream-Anbieters erreicht.provider_unreachable— Upstream-Server ist offline.
Ratengrenzen & Caching
Antworten werden serverseitig für 10 Minuten pro Abfrage zwischengespeichert. Der kostenlose öffentliche Tarif des Upstream-Anbieters ist ratenbegrenzt und für den nicht-kommerziellen Gebrauch bestimmt. Für den Produktionsbetrieb empfehlen wir die Konfiguration eines kommerziellen Anbieters über die unten dokumentierten Umgebungsvariablen.
Anbieter-Abstraktion
Stellen Sie die folgenden Umgebungsvariablen auf dem Server ein. Geheimnisse werden niemals an den Browser weitergegeben.
IP_PROVIDER=ip-api # or ip-api-pro IP_API_KEY=... # required for pro IP_API_BASE=http://ip-api.com
Hinweise
- Die IP-Geolokalisierung ist eine Schätzung und bestenfalls auf Stadt- oder Großstadtebene genau.
- Private und reservierte Adressbereiche können nicht geolokalisiert werden.
- Die API protokolliert keine Abfrageinhalte, die über das für das Caching erforderliche Maß hinausgehen.
