Zum Hauptinhalt springen
Dieser Artikel beschreibt eine Anleitung zur Anbindung der API zur Verifizierung von Personalausweis-Fotos, die verwendet werden kann, um Fotos des Personalausweises zu übermitteln, die Informationen auf dem Personalausweis zu erkennen und den Namen, die Personalausweisnummer und das Foto mit den Ausweisfotos in der autoritativen Datenbank zu vergleichen, um festzustellen, ob es sich um dieselbe Person handelt, und somit die Echtheit der Personalausweisinformationen zu überprüfen.

Antragsprozess

Um die API zu nutzen, müssen Sie zunächst auf die entsprechende Seite der API zur Verifizierung von Personalausweis-Fotos gehen und den entsprechenden Dienst beantragen. Nachdem Sie die Seite betreten haben, klicken Sie auf die Schaltfläche „Acquire“, wie im Bild gezeigt: Wenn Sie noch nicht angemeldet oder registriert sind, werden Sie automatisch zur Anmeldeseite weitergeleitet, um sich zu registrieren und anzumelden. Nach der Anmeldung werden Sie automatisch zur aktuellen Seite zurückgeleitet. Bei der ersten Antragstellung gibt es ein kostenloses Kontingent, mit dem Sie die API kostenlos nutzen können.

Grundlegende Nutzung

Zunächst sollten Sie die grundlegende Nutzung verstehen, bei der Sie den Link zum Personalausweisbild eingeben, um die verarbeiteten Verifizierungsergebnisse zu erhalten. Zunächst müssen Sie einfach ein Feld image_url übermitteln, und wir können dann die entsprechenden Inhalte auf der Benutzeroberfläche ausfüllen, wie im Bild gezeigt:

Hier haben wir die Request-Header festgelegt, einschließlich:
  • accept: In welchem Format Sie die Antwort erhalten möchten, hier eingetragen als application/json, also im JSON-Format.
  • authorization: Der Schlüssel zur Nutzung der API, den Sie nach der Beantragung direkt auswählen können.
Zusätzlich haben wir den Request-Body festgelegt, einschließlich:
  • image_url: Der Link zum Bild des Personalausweises, das verarbeitet werden soll.
  • config: Optionale Konfigurationselemente, boolesche Felder, standardmäßig alle auf false, unterstützt copy_warn, border_check_warn, reshoot_warn, detect_ps_warn, temp_id_warn, quality (Schwellenwert 0-100).
Nach der Auswahl können Sie sehen, dass auf der rechten Seite auch der entsprechende Code generiert wurde, wie im Bild gezeigt:

Klicken Sie auf die Schaltfläche „Try“, um einen Test durchzuführen, wie im obigen Bild gezeigt, hier haben wir folgendes Ergebnis erhalten:
{
  "sim": 99.76,
  "result": "Success",
  "description": "Erfolg",
  "name": "Name auf dem Personalausweis",
  "sex": "Geschlecht auf dem Personalausweis",
  "nation": "Nationalität auf dem Personalausweis",
  "birth": "Geburtsdatum auf dem Personalausweis",
  "address": "Wohnadresse auf dem Personalausweis",
  "id_num": "Personalausweisnummer",
  "portrait": "/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBA.....DEhE2lbPMcOtG3f/DLT/yX8if7Kxn/AD7h85wdttPifRf1e6//2Q==",
  "warnings": "",
  "quality": 0,
  "encryption": null
}
Die Rückgabe hat mehrere Felder, die wie folgt beschrieben werden:
  • sim, Ähnlichkeit, Wertebereich [0.00, 100.00]. Es wird empfohlen, eine Ähnlichkeit von mindestens 70 zu verwenden, um als dieselbe Person zu gelten. Der Schwellenwert kann je nach spezifischem Szenario angepasst werden (der Fehlerrate bei einem Schwellenwert von 70 beträgt eins zu tausend, bei einem Schwellenwert von 80 beträgt die Fehlerrate eins zu zehntausend).
  • result, Geschäftsfehlercode, bei Erfolg wird „Success“ zurückgegeben, bei Fehlern siehe die Fehlercode-Liste im Abschnitt „FailedOperation“.
  • description, hier das Ergebnis der Überprüfung von Name und Personalausweisnummer.
  • name, die Namensinformation auf dem Personalausweis, wenn kein Personalausweisbild hochgeladen wurde, ist dies leer.
  • sex, die Geschlechtsinformation auf dem Personalausweis, wenn kein Personalausweisbild hochgeladen wurde, ist dies leer.
  • nation, die Nationalitätsinformation auf dem Personalausweis, wenn kein Personalausweisbild hochgeladen wurde, ist dies leer.
  • birth, die Geburtsinformation auf dem Personalausweis, wenn kein Personalausweisbild hochgeladen wurde, ist dies leer.
  • address, die Wohnadresse auf dem Personalausweis, wenn kein Personalausweisbild hochgeladen wurde, ist dies leer.
  • id_num, die Personalausweisnummer auf dem Personalausweis, wenn kein Personalausweisbild hochgeladen wurde, ist dies leer.
  • portrait, die base64-Codierung des Passfotos, wenn das Ausschneiden fehlschlägt, wird das gesamte Bild des Personalausweises zum Vergleich verwendet und gibt leer zurück.
  • warnings, Warninformationen, wenn in der Konfiguration Warninformationen festgelegt sind, wird der Personenvergleich gestoppt, das Ergebnis gibt einen Fehler zurück (FailedOperation.OcrWarningOccurred) und enthält diese Warninformationen.
  • quality, Bildqualitätsbewertung, wenn in der Anfragekonfiguration eine Warnung für verschwommene Bilder konfiguriert ist, hat dieser Parameter Bedeutung, Wertebereich (0–100), derzeit liegt der Standardwert bei 50 Punkten, unter 50 Punkten wird eine Warnung für verschwommene Bilder ausgelöst.
  • encryption, Informationen zur Verschlüsselung sensibler Daten.
Es ist zu erkennen, dass die Informationen auf dem Personalausweis eine hohe Echtheit aufweisen. Wenn Sie außerdem den entsprechenden Anbindungscode generieren möchten, können Sie ihn direkt kopieren, zum Beispiel sieht der CURL-Code wie folgt aus:
curl -X POST 'https://api.acedata.cloud/identity/idcard/check-1e' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
  "image_url": {image_url}
}'
Der Anbindungscode in Python sieht wie folgt aus:
import requests

url = "https://api.acedata.cloud/identity/idcard/check-1e"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "image_url": {image_url}
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)

Fehlerbehandlung

Bei der Verwendung der API, wenn ein Fehler auftritt, gibt die API den entsprechenden Fehlercode und die Informationen zurück. Zum Beispiel:
  • 400 token_mismatched: Ungültige Anfrage, möglicherweise aufgrund fehlender oder ungültiger Parameter.
  • 400 api_not_implemented: Ungültige Anfrage, möglicherweise aufgrund fehlender oder ungültiger Parameter.
  • 401 invalid_token: Unbefugt, ungültiger oder fehlender Autorisierungstoken.
  • 429 too_many_requests: Zu viele Anfragen, Sie haben das Kontingent überschritten.
  • 500 api_error: Interner Serverfehler, etwas ist auf dem Server schiefgelaufen.

Beispiel für eine Fehlerantwort

{
  "success": false,
  "error": {
    "code": "api_error",
    "message": "Abruf fehlgeschlagen"
  },
  "trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89"
}

Fazit

Durch dieses Dokument haben Sie erfahren, wie Sie die API zur Verifizierung von Personalausweis-Fotos verwenden, um Fotos des Personalausweises zu übermitteln, die Informationen auf dem Personalausweis zu erkennen und den Namen, die Personalausweisnummer und das Foto mit den Ausweisfotos in der autoritativen Datenbank zu vergleichen, um festzustellen, ob es sich um dieselbe Person handelt, und somit die Echtheit der Personalausweisinformationen zu überprüfen. Wir hoffen, dass dieses Dokument Ihnen hilft, die API besser anzubinden und zu nutzen. Bei Fragen wenden Sie sich bitte jederzeit an unser technisches Support-Team.