GeoIPy API
GeoIPy bietet eine robuste Echtzeit-IP-zu-Geolokalisierungs-API, die genaue Standortdaten ermitteln und potenzielle Sicherheitsbedrohungen durch hochriskante IP-Adressen identifizieren kann. Die Ergebnisse werden innerhalb von Millisekunden im JSON-Format geliefert. Mit der GeoIPy-API können Sie die Standorte der Besucher Ihrer Website sofort ermitteln und Ihre Benutzererfahrung und Anwendung entsprechend anpassen.
Diese Dokumentation umfasst ausführlich die API-Funktionen, verfügbaren Optionen und Integrationsanleitungen für verschiedene Programmiersprachen.
Diese Dokumentation umfasst ausführlich die API-Funktionen, verfügbaren Optionen und Integrationsanleitungen für verschiedene Programmiersprachen.
API-Zugriffstoken
Ihr API-Zugriffstoken dient als eindeutiges Authentifizierungsmittel für den Zugriff auf die GeoIPy API. Fügen Sie es als access_key-Parameter in die URL der API ein und weisen Sie ihm den Wert Ihres Zugriffstokens zu.
Token-URL:
Fügen Sie Ihren API-Zugriffsschlüssel an: Das folgende Beispiel zeigt, wie Sie mit Hilfe der GeoIPy API eine Authentifizierung in einer API-Anfrage durchführen:
Token-URL:
https://www.geoipy.com/
Fügen Sie Ihren API-Zugriffsschlüssel an: Das folgende Beispiel zeigt, wie Sie mit Hilfe der GeoIPy API eine Authentifizierung in einer API-Anfrage durchführen:
https://www.geoipy.com/api/IPsInfo/?ip=@(Model.IP)
&key=@(Key)
API-Ausgabe
Die GeoIPy API kann Daten entweder im JSON-Format liefern. Das folgende Beispiel zeigt das API-Er
gebnis, das GeoIPy als Antwort auf den vorherigen API-Aufruf liefert, der Informationen für die IP-Adresse @(Model.IP) anfordert.
API-Antworten enthalten umfangreiche Daten zu Standort, Währung, Zeitzone und Verbindung.
{ "ip": "3.141.38.5", "hostname": "3.141.38.5", "type": "ipv4", "continent_code": "NA", "continent_name": "North America", "country_code": "US", "country_name": "United States", "region_code": "OH", "region_name": "Ohio", "city": "Columbus", "zip": "43201", "latitude": 39.995578765869141, "longitude": -82.999458312988281, "msa": "18140", "dma": "535", "radius": "41.01305", "ip_routing_type": "international proxy", "connection_type": "tx", "location": { "geoname_id": 4509177, "capital": "Washington D.C.", "languages": [ { "code": "en", "name": "English", "native": "English" } ], "country_flag": "https://www.geoipy.com/flags/us.svg", "country_flag_emoji": "🇺🇸", "country_flag_emoji_unicode": "U+1F1FA U+1F1F8", "calling_code": "1", "is_eu": false }, "time_zone": { "id": "America/New_York", "current_time": "2024-11-21T14:21:03+03:00", "gmt_offset": -18000, "code": "EST", "is_daylight_saving": false }, "currency": { "code": "USD", "name": "US Dollar", "plural": "US dollars", "symbol": "$", "symbol_native": "$" }, "connection": { "asn": 16509, "isp": "amazon.com Inc.", "sld": "amazonaws", "tld": "com", "carrier": "amazon.com inc.", "home": false, "organization_type": "Retail", "isic_code": "G4791", "naics_code": "004541" } }
API-Antworten enthalten umfangreiche Daten zu Standort, Währung, Zeitzone und Verbindung.
Fehlercodes
Wenn eine angeforderte Ressource nicht verfügbar ist oder ein API-Aufruf ein Problem aufweist, wird ein JSON-Fehler zurückgegeben. Diese Fehler sind immer von einem Fehlercode und einer Beschreibung begleitet.
Beispiel für einen Fehler: Der unten stehende Fehler wird zurückgegeben, wenn Ihr monatliches API-Anfragekontingent überschritten wurde.
Beispiel für einen Fehler: Der unten stehende Fehler wird zurückgegeben, wenn Ihr monatliches API-Anfragekontingent überschritten wurde.
{ "success": false, "error": { "code": 100, "type": "missing_access_key", "info": "No API Key was specified." } }
Code | Typ | Info |
---|---|---|
100 | missing_access_key | No API Key was specified. |
101 | invalid_access_key | No API Key was specified or an invalid API Key was specified. |
102 | inactive_user | The current user account is not active. User will be prompted to get in touch with Customer Support. |
103 | invalid_api_function | The requested API endpoint does not exist. |
104 | usage_limit_reached | The maximum allowed amount of monthly API requests has been reached. |
105 | function_access_restricted | The current subscription plan does not support this API endpoint. |
106 | https_access_restricted | The user's current subscription plan does not support HTTPS Encryption. |
301 | invalid_fields | One or more invalid fields were specified using the fields parameter. |
302 | too_many_ips | Too many IPs have been specified for the Bulk Lookup Endpoint. (max. 50) |
303 | batch_not_supported_on_plan | The Bulk Lookup Endpoint is not supported on the current subscription plan |
404 | 404_not_found | The requested resource does not exist. |
PHP (cURL)
//Legen Sie IP-Adresse und API-Zugriffsschlüssel fest
$ip = '3.141.38.5';
$key = 'veluihrPp9w0CekwtTlTo7TzaofQaIwp';
// CURL initialisieren:
$ch = curl_init('https://www.geoipy.com/api/IPsInfo?ip='.$ip.'&key='.$key.'');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// Die Daten speichern:
$json = curl_exec($ch);
curl_close($ch);
// Die JSON-Antwort dekodieren:
$api_result = json_decode($json, true);
// Die Objekte "capital" innerhalb von "location" abrufen:
echo $api_result['location']['capital'];
JavaScript (jQuery.ajax)
// Legen Sie IP-Adresse und API-Zugriffsschlüssel fest
var ip = '3.141.38.5'
var key = 'veluihrPp9w0CekwtTlTo7TzaofQaIwp';
// Das API-Ergebnis über jQuery.ajax abrufen
$.ajax({
url: 'https://www.geoipy.com/api/IPsInfo?ip=' + ip + '&key=' + key,
dataType: 'jsonp',
success: function(json) {
// Ausgabe des Objekts "capital" innerhalb von "location"
alert(json.location.capital);
}
});
C#
using System.Net.Http;
using Newtonsoft.Json.Linq;
// ...
// Legen Sie IP-Adresse und API-Zugriffsschlüssel fest
string ip = "3.141.38.5";
string Key = "veluihrPp9w0CekwtTlTo7TzaofQaIwp";
// Instanzieren einer HttpClient-Instanz
using (var httpClient = new HttpClient())
{
// Senden einer HTTP-GET-Anforderung an die angegebene URL
var response = await httpClient.GetAsync($"https://www.geoipy.com/api/IPsInfo?ip={ip}&key={Key}");
// Überprüfen, ob die Antwort erfolgreich ist
if (response.IsSuccessStatusCode)
{
// Lesen der JSON-Antwort als Zeichenfolge
string jsonResponse = await response.Content.ReadAsStringAsync();
// Deserialisieren der JSON-Zeichenfolge in ein JObject
JObject apiResult = JObject.Parse(jsonResponse);
// Abrufen des Objekts "capital" innerhalb des Objekts "location"
string capital = apiResult["location"]["capital"].ToString();
// Ausgabe der Hauptstadt
Console.WriteLine(capital);
}
else
{
Console.WriteLine("Beim Abrufen der Daten ist ein Fehler aufgetreten.");
}
}