ID Check API — Ein Identitätsdokument verifizieren

Support DQE
Support DQE
  • Aktualisiert
ID Check API - Ein Identitätsdokument verifizieren

Verwenden Sie diesen Endpunkt, um die Identität einer Person zu verifizieren, indem Adresse, Name, Geburtsdatum, E-Mail und Telefonnummer mit der DQE-Datenbank abgeglichen werden.

Verwandte ID-Check-Dokumentation - Für eine Serviceübersicht, siehe ID Check — Einführung →
Für die Referenz der Ausgabespalten bei der Stapelverarbeitung, siehe ID Check Plus — Ausgabespalten →

/SEARCH/

Anfrage

Sowohl GET als auch POST werden unterstützt.

{SERVER_ADDRESS} und {LICENCE_CODE} werden von DQE bei der Kontoerstellung bereitgestellt. Wenden Sie sich an Ihren DQE-Kundenbetreuer, um diese Zugangsdaten zu erhalten.
GEThttps://{SERVER_ADDRESS}/SEARCH/?Address={ADDRESS}&PostalCode={POSTAL_CODE}&City={CITY}&LastName={NAME}&FirstName={FIRST_NAME}&BirthDate={DATE}&Email={EMAIL}&Phone={PHONE}&Licence={LICENCE_CODE}&Version=2

Codebeispiele

Vollständige Identitätsprüfung

curl "https://{SERVER_ADDRESS}/SEARCH/?Address=12%20Rue%20de%20la%20Paix&PostalCode=75002&City=Paris&LastName=Dupont&FirstName=Jean&BirthDate=1980-05-15&Email=jean.dupont%40example.com&Phone=0606060606&Licence={LICENCE_CODE}"
fetch("https://{SERVER_ADDRESS}/SEARCH/?" + new URLSearchParams({ Address: "12 Rue de la Paix", PostalCode: "75002", City: "Paris", LastName: "Dupont", FirstName: "Jean", BirthDate: "1980-05-15", Email: "jean.dupont@example.com", Phone: "0606060606", Licence: "{LICENCE_CODE}" })) .then(r => r.json()) .then(data => console.log(data));
import requests response = requests.get( "https://{SERVER_ADDRESS}/SEARCH/", params={ "Address": "12 Rue de la Paix", "PostalCode": "75002", "City": "Paris", "LastName": "Dupont", "FirstName": "Jean", "BirthDate": "1980-05-15", "Email": "jean.dupont@example.com", "Phone": "0606060606", "Licence": "{LICENCE_CODE}", }, ) print(response.json())
<?php $params = http_build_query([ 'Address' => '12 Rue de la Paix', 'PostalCode' => '75002', 'City' => 'Paris', 'LastName' => 'Dupont', 'FirstName' => 'Jean', 'BirthDate' => '1980-05-15', 'Email' => 'jean.dupont@example.com', 'Phone' => '0606060606', 'Licence' => '{LICENCE_CODE}', ]); $ch = curl_init("https://{SERVER_ADDRESS}/SEARCH/?{$params}"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($ch); curl_close($ch); $data = json_decode($response, true);
const axios = require('axios'); axios.get('https://{SERVER_ADDRESS}/SEARCH/', { params: { Address: '12 Rue de la Paix', PostalCode: '75002', City: 'Paris', LastName: 'Dupont', FirstName: 'Jean', BirthDate: '1980-05-15', Email: 'jean.dupont@example.com', Phone: '0606060606', Licence: '{LICENCE_CODE}' } }) .then(response => console.log(response.data));
HttpClient client = HttpClient.newHttpClient(); String url = "https://{SERVER_ADDRESS}/SEARCH/" + "?Address=12%20Rue%20de%20la%20Paix&PostalCode=75002&City=Paris" + "&LastName=Dupont&FirstName=Jean&BirthDate=1980-05-15" + "&Email=jean.dupont%40example.com&Phone=0606060606&Licence={LICENCE_CODE}"; HttpRequest request = HttpRequest.newBuilder() .uri(URI.create(url)) .GET() .build(); HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString()); System.out.println(response.body());
using var client = new HttpClient(); var url = "https://{SERVER_ADDRESS}/SEARCH/" + "?Address=12%20Rue%20de%20la%20Paix&PostalCode=75002&City=Paris" + "&LastName=Dupont&FirstName=Jean&BirthDate=1980-05-15" + "&Email=jean.dupont%40example.com&Phone=0606060606&Licence={LICENCE_CODE}"; var response = await client.GetAsync(url); var body = await response.Content.ReadAsStringAsync(); Console.WriteLine(body);
package main import ( "fmt" "io" "net/http" ) func main() { url := "https://{SERVER_ADDRESS}/SEARCH/" + "?Address=12%20Rue%20de%20la%20Paix&PostalCode=75002&City=Paris" + "&LastName=Dupont&FirstName=Jean&BirthDate=1980-05-15" + "&Email=jean.dupont%40example.com&Phone=0606060606&Licence={LICENCE_CODE}" resp, err := http.Get(url) if err != nil { panic(err) } defer resp.Body.Close() body, _ := io.ReadAll(resp.Body) fmt.Println(string(body)) }
POSThttps://{SERVER_ADDRESS}/SEARCH/

Senden Sie alle Parameter im Anfragetext mittels Content-Type: application/x-www-form-urlencoded. Die Serveradresse bleibt in der URL.

Codebeispiele

Vollständige Identitätsprüfung

curl -X POST "https://{SERVER_ADDRESS}/SEARCH/" \ -H "Content-Type: application/x-www-form-urlencoded" \ -d "Licence={LICENCE_CODE}" \ -d "Address=12 Rue de la Paix" \ -d "PostalCode=75002" \ -d "City=Paris" \ -d "LastName=Dupont" \ -d "FirstName=Jean" \ -d "BirthDate=1980-05-15" \ -d "Email=jean.dupont@example.com" \ -d "Phone=0606060606"
fetch("https://{SERVER_ADDRESS}/SEARCH/", { method: "POST", headers: { "Content-Type": "application/x-www-form-urlencoded" }, body: new URLSearchParams({ Licence: "{LICENCE_CODE}", Address: "12 Rue de la Paix", PostalCode: "75002", City: "Paris", LastName: "Dupont", FirstName: "Jean", BirthDate: "1980-05-15", Email: "jean.dupont@example.com", Phone: "0606060606" }) }) .then(r => r.json()) .then(data => console.log(data));
import requests response = requests.post( "https://{SERVER_ADDRESS}/SEARCH/", data={ "Licence": "{LICENCE_CODE}", "Address": "12 Rue de la Paix", "PostalCode": "75002", "City": "Paris", "LastName": "Dupont", "FirstName": "Jean", "BirthDate": "1980-05-15", "Email": "jean.dupont@example.com", "Phone": "0606060606", }, ) print(response.json())
<?php $ch = curl_init("https://{SERVER_ADDRESS}/SEARCH/"); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query([ 'Licence' => '{LICENCE_CODE}', 'Address' => '12 Rue de la Paix', 'PostalCode' => '75002', 'City' => 'Paris', 'LastName' => 'Dupont', 'FirstName' => 'Jean', 'BirthDate' => '1980-05-15', 'Email' => 'jean.dupont@example.com', 'Phone' => '0606060606', ])); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($ch); curl_close($ch); $data = json_decode($response, true);
const axios = require('axios'); const qs = require('querystring'); axios.post('https://{SERVER_ADDRESS}/SEARCH/', qs.stringify({ Licence: '{LICENCE_CODE}', Address: '12 Rue de la Paix', PostalCode: '75002', City: 'Paris', LastName: 'Dupont', FirstName: 'Jean', BirthDate: '1980-05-15', Email: 'jean.dupont@example.com', Phone: '0606060606' })) .then(response => console.log(response.data));
HttpClient client = HttpClient.newHttpClient(); String form = "Licence={LICENCE_CODE}&Address=12%20Rue%20de%20la%20Paix&PostalCode=75002" + "&City=Paris&LastName=Dupont&FirstName=Jean&BirthDate=1980-05-15" + "&Email=jean.dupont%40example.com&Phone=0606060606"; HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://{SERVER_ADDRESS}/SEARCH/")) .header("Content-Type", "application/x-www-form-urlencoded") .POST(HttpRequest.BodyPublishers.ofString(form)) .build(); HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString()); System.out.println(response.body());
using var client = new HttpClient(); var form = new Dictionary<string, string> { ["Licence"] = "{LICENCE_CODE}", ["Address"] = "12 Rue de la Paix", ["PostalCode"] = "75002", ["City"] = "Paris", ["LastName"] = "Dupont", ["FirstName"] = "Jean", ["BirthDate"] = "1980-05-15", ["Email"] = "jean.dupont@example.com", ["Phone"] = "0606060606" }; var response = await client.PostAsync( "https://{SERVER_ADDRESS}/SEARCH/", new FormUrlEncodedContent(form)); var body = await response.Content.ReadAsStringAsync(); Console.WriteLine(body);
package main import ( "fmt" "io" "net/http" "net/url" ) func main() { form := url.Values{} form.Set("Licence", "{LICENCE_CODE}") form.Set("Address", "12 Rue de la Paix") form.Set("PostalCode", "75002") form.Set("City", "Paris") form.Set("LastName", "Dupont") form.Set("FirstName", "Jean") form.Set("BirthDate", "1980-05-15") form.Set("Email", "jean.dupont@example.com") form.Set("Phone", "0606060606") resp, err := http.PostForm("https://{SERVER_ADDRESS}/SEARCH/", form) if err != nil { panic(err) } defer resp.Body.Close() body, _ := io.ReadAll(resp.Body) fmt.Println(string(body)) }

Parameter

Parameter Beschreibung Pflicht / Optional
Licence Ihr DQE-Lizenzcode. Pflicht
Address Hausnummer und Straßenname. Pflicht
PostalCode Postleitzahl. Pflicht
City Stadtname. Pflicht
LastName Nachname der zu verifizierenden Person. Pflicht
FirstName Vorname der zu verifizierenden Person. Pflicht
BirthDate Geburtsdatum im Format YYYY-MM-DD. Pflicht
Email Zu verifizierende E-Mail-Adresse. Pflicht
Phone Zu verifizierende Telefonnummer. Pflicht
Version Gibt bei der Einstellung 2 Informationen zum Lizenzstatus zurück. Optional

Antwort

Die JSON-Antwort enthält bei Erfolg ein einzelnes Objekt DATA1 mit folgenden Schlüsseln.

Schlüssel Mögliche Werte Beschreibung Typ
Check_FirstName E, S, P, D, ? Ergebnis der Vornamen-Verifizierung. STRING(1)
Check_BirthDate Siehe Geburtsdatum-Codes unten. Ergebnis der Geburtsdatum-Verifizierung. STRING(3)
Check_Number True, False Gibt an, ob die Hausnummer mit der Datenbank übereinstimmt. STRING(5)
HOUSEHOLDID — Eindeutige Kennung in der Datenbank. STRING(30)
FirstName_Dist — Anzahl der unterschiedlichen Zeichen zwischen dem übermittelten Vornamen und dem Datenbankwert. STRING(2)
LastName_Dist — Anzahl der unterschiedlichen Zeichen zwischen dem übermittelten Nachnamen und dem Datenbankwert. STRING(2)
Result FOUND, NOT FOUND Gibt an, ob der Haushalt anhand von Adress-, E-Mail- oder Telefondaten gefunden wurde. STRING(9)
Check_Email E, D, ? Ergebnis der E-Mail-Verifizierung. STRING(1)
Check_LastName E, S, P, D, ? Ergebnis der Nachnamen-Verifizierung. STRING(1)
Check_City E, S, P, N, D, ? Ergebnis der Stadt-Verifizierung. STRING(1)
Check_PostalCode E, N, D, ? Ergebnis der Postleitzahl-Verifizierung. STRING(1)
Check_Phone E, D, ? Ergebnis der Telefon-Verifizierung. STRING(1)
Check_Address E, S, P, N, D, ? Ergebnis der Adress-Verifizierung. STRING(1)

Vergleichscode-Werte

Allgemeine Vergleichscode-Werte, verwendet von Check_FirstName, Check_LastName, Check_City, Check_PostalCode, Check_Phone, Check_Email und Check_Address:

Code Beschreibung
? Das Feld wurde nicht angegeben, ist nicht verfügbar, oder das abonnierte Produkt erlaubt diese Prüfung nicht.
E Der Wert in der Datenbank ist mit dem in der Anfrage angegebenen Wert strikt identisch.
S Der Wert in der Datenbank liegt nahe am in der Anfrage angegebenen Wert, bis zu 10 % Abweichung.
P Der Wert in der Datenbank weicht recht stark vom in der Anfrage angegebenen Wert ab, bis zu 25 % Abweichung.
N Für Adresse und Stadt: Der Wert weicht stark vom Anfragewert ab, bis zu 35 % Abweichung. Für Postleitzahl: Die ersten 3 Ziffern stimmen überein.
D Der Wert in der Datenbank unterscheidet sich vollständig vom in der Anfrage angegebenen Wert.

Vergleichscodes für das Geburtsdatum

Spezifische Vergleichscodes, verwendet von Check_BirthDate:

Code Beschreibung
000 Jahr, Monat und Tag sind identisch.
001 Jahr und Monat sind identisch, aber der Tag ist unterschiedlich.
010 Jahr und Tag sind identisch, aber der Monat ist unterschiedlich.
100 Monat und Tag sind identisch, aber das Jahr ist unterschiedlich.
011 Das Jahr ist identisch, aber Monat und Tag sind unterschiedlich.
101 Der Monat ist identisch, aber Jahr und Tag sind unterschiedlich.
110 Der Tag ist identisch, aber Jahr und Monat sind unterschiedlich.
111 Jahr, Monat und Tag sind unterschiedlich.
--- In der Datenbank ist kein Datum verfügbar.

Antwortbeispiel

Haushalt gefunden

{
  "DATA1": {
    "Check_FirstName": "E",
    "Check_BirthDate": "000",
    "Check_Number": "True",
    "HOUSEHOLDID": "3678263863104901575",
    "FirstName_Dist": "0",
    "LastName_Dist": "0",
    "Result": "FOUND",
    "Check_Email": "D",
    "Check_LastName": "E",
    "Check_City": "E",
    "Check_Address": "E",
    "Check_PostalCode": "E",
    "Check_Phone": "D"
  }
}

Fehler

HTTP Fehlertyp Antworttext
400 Fehlender oder leerer Pflichtparameter (z. B. Address, PostalCode, LastName oder ein anderes Pflichtfeld)
{"status": 400, "message": "Missing parameters", "details": "Address", "error": "bad request"}
401 Fehlende, leere oder falsche Lizenz
{"status": 401, "message": "Your licence is not allowed to cover this functionality", "details": "deded", "error": "unauthorized_client"}

API testen

Klicken Sie auf die Schaltfläche unten, um diesen Endpunkt live in Ihrem Browser zu testen.

Konsole öffnen

Siehe auch

Verknüpfung mit

War dieser Beitrag hilfreich?

0 von 0 fanden dies hilfreich