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.

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:
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.

{
  "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.
{
  "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.");
}
}