Zum Hauptinhalt springen
POST
cURL

Autorisierungen

x-api-key
string
header
erforderlich

Der API-Schlüssel Ihrer Anwendung, aus Entwickler -> API-Schlüssel in der Business Console. Der Primärschlüssel hat Vollzugriff. Ein benannter Schlüssel kann im Geltungsbereich eingeschränkt werden: keine, Lese- oder Schreibberechtigung pro Ressource, beschränkt auf bestimmte Workflows oder genehmigte Sitzungen, auf eine Liste von IP-Adressen und auf ein Ablaufdatum. 401 bedeutet, dass der Schlüssel falsch, widerrufen oder abgelaufen ist; 403 bedeutet, dass kein Schlüssel gesendet wurde, der Schlüssel keinen Zugriff auf diese Ressource oder Aktion hat oder die Anfrage von einer Adresse außerhalb seiner IP-Liste stammte; 404 bei einer Sitzungsroute bedeutet, dass die Sitzung außerhalb der Workflows oder Status des Schlüssels liegt. Ein Schlüssel ohne Medienzugriff erhält Bild-, Video- und PDF-URLs als null, und ein Schlüssel ohne Schreibberechtigung für Sitzungen erhält Sitzungslinks und Token als null. Siehe https://docs.didit.me/console/api-keys.

Body

multipart/form-data
document
file
erforderlich

Das Adressnachweis-Dokument. Zulässige Dateiendungen: tiff, jpg, jpeg, png, pdf, webp. Maximale Upload-Größe: 15 MB (größere Dateien werden mit 400 abgelehnt). Mehrseitige PDFs werden unterstützt (erhöhte Latenz zu erwarten); verschlüsselte PDFs erfordern document_password. Bilder werden vor der Verarbeitung automatisch komprimiert.

document_password
string
write-only

Passwort zur Entschlüsselung von document, wenn es sich um eine verschlüsselte PDF-Datei handelt. Das Senden einer verschlüsselten PDF-Datei ohne (oder mit einem falschen) Passwort gibt 400 zurück.

expected_address
string

Gegen das Dokument zu verifizierende Adresse. Sie wird geocodiert und mit der extrahierten Adresse verglichen; eine Nichtübereinstimmung (oder eine erwartete Adresse, die nicht geocodiert/verifiziert werden kann) fügt ADDRESS_MISMATCH_WITH_PROVIDED hinzu, geregelt durch poa_address_mismatch_action. Die geocodierte Form wird in expected_details_formatted_address / expected_details_parsed_address zurückgegeben.

Beispiel:

"Av. Monseñor Tavella 1291, Salta, Argentina"

expected_country
string

Land, das mit dem Dokument abgeglichen werden soll (ISO 3166-1-Code, z. B. ARG oder AR). Eine Nichtübereinstimmung mit dem Land des Dokuments fügt POA_COUNTRY_MISMATCH_WITH_PROVIDED hinzu, gesteuert durch poa_address_mismatch_action.

Beispiel:

"ARG"

expected_first_name
string

Vorname, der mit name_on_document abgeglichen werden soll (Fuzzy-Match, transliterationssensitiv). Ein Wert unter dem Übereinstimmungsschwellenwert fügt NAME_MISMATCH_WITH_PROVIDED hinzu, gesteuert durch poa_address_mismatch_action.

Beispiel:

"Sophia"

expected_last_name
string

Mit name_on_document abzugleichender Nachname, der zusammen mit expected_first_name für den Übereinstimmungswert herangezogen wird.

Beispiel:

"Martinez"

poa_languages_allowed
string

Kommagetrennte Liste der akzeptierten Dokumentensprachen als ISO 639-1-Codes (z. B. en,es,fr). Wenn weggelassen oder leer, werden alle 51 unterstützten Sprachen akzeptiert. Ein Dokument in einer Sprache außerhalb der Liste fügt UNSUPPORTED_DOCUMENT_LANGUAGE hinzu (gesteuert durch poa_unsupported_language_action); ein unbekannter Code in der Liste gibt 400 mit dem vollständigen Satz unterstützter Codes zurück.

Beispiel:

"en,es"

poa_document_age_months
string

Kommagetrennte key:value-Paare, die das maximale Dokumentenalter in Monaten pro Dokumenttyp festlegen – Schlüssel: utility_bill, bank_statement, government_issued_document, other_poa_document; Werte: 1–120 oder -1 für unbegrenzt (keine Altersprüfung). Standardwerte bei Auslassung: utility_bill:3,bank_statement:3,government_issued_document:12,other_poa_document:12. Ein Dokument, das älter als sein Grenzwert ist, wird mit POA_DOCUMENT_EXPIRED abgelehnt. Achtung: Wenn Sie dieses Feld angeben, listen Sie jeden Typ auf, den Sie akzeptieren – ausgelassene Typen werden als nicht akzeptiert behandelt (informatives POA_DOCUMENT_NOT_SUPPORTED_FOR_APPLICATION) und ihre Altersprüfung wird übersprungen.

Beispiel:

"utility_bill:3,bank_statement:6"

poa_name_mismatch_action
enum<string>
Standard:DECLINE

Akzeptiert, wird jedoch derzeit nicht angewendet – Warnungen wegen Namensabweichungen (NAME_MISMATCH_WITH_PROVIDED) folgen stattdessen poa_address_mismatch_action. Legen Sie poa_address_mismatch_action fest, um das Verhalten bei Namens- und Adressabweichungen zu steuern.

Verfügbare Optionen:
DECLINE,
NO_ACTION
poa_document_issues_action
enum<string>
Standard:DECLINE

Was bei Problemen mit der Dateiintegrität zu tun ist — in der Praxis wird von diesem Endpoint nur DOCUMENT_METADATA_MISMATCH erzeugt.

Verfügbare Optionen:
DECLINE,
NO_ACTION
poa_document_authenticity_action
enum<string>
Standard:DECLINE

Was zu tun ist, wenn eine Dokumentenmanipulation vermutet wird (SUSPECTED_DOCUMENT_MANIPULATION) — z. B. wurde das PDF nach der digitalen Signatur geändert, mit einem bekannten PDF-Editor bearbeitet, weist eine Overlay-Text-Manipulation auf oder hat inkonsistente EXIF-Daten. Regelt auch POA_DOCUMENT_UNPROVEN_TEXT_REPLACEMENT (ein neu eingegebenes Textfeld, bei dem die Datei weder eine Änderung noch den Originalzustand belegen kann): DECLINE lehnt dies ebenfalls ab, NO_ACTION behält es als Warnung bei.

Verfügbare Optionen:
DECLINE,
NO_ACTION
poa_unsupported_language_action
enum<string>
Standard:DECLINE

Was zu tun ist, wenn die Dokumentsprache außerhalb von poa_languages_allowed liegt (UNSUPPORTED_DOCUMENT_LANGUAGE).

Verfügbare Optionen:
DECLINE,
NO_ACTION
poa_address_mismatch_action
enum<string>
Standard:DECLINE

Was zu tun ist, wenn die extrahierten Details nicht mit den expected_*-Feldern übereinstimmen: ADDRESS_MISMATCH_WITH_PROVIDED, NAME_MISMATCH_WITH_PROVIDED und POA_COUNTRY_MISMATCH_WITH_PROVIDED folgen alle dieser Aktion.

Verfügbare Optionen:
DECLINE,
NO_ACTION
poa_issuer_not_identified_action
enum<string>
Standard:DECLINE

Was zu tun ist, wenn kein ausstellendes Unternehmen bzw. keine ausstellende Organisation auf dem Dokument identifiziert werden kann (ISSUER_NOT_IDENTIFIED).

Verfügbare Optionen:
DECLINE,
NO_ACTION
save_api_request
boolean
Standard:true

Wenn true (Standard), wird der Aufruf als Sitzung vom Typ API persistent gespeichert — sichtbar in der Business Console, abrufbar über GET /v3/session/{sessionId}/decision/ unter Verwendung der zurückgegebenen request_id, angekündigt über einen status.updated-Webhook, wobei das hochgeladene Dokument gespeichert wird. Wenn false, wird nichts gespeichert und request_id ist eine flüchtige UUID, die nur der Antwortkorrelation dient.

Beispiel:

true

vendor_data
string

Optionale opake Zeichenfolge (Ihre interne Benutzer-ID, E-Mail, UUID…), die in der gespeicherten Sitzung hinterlegt und in der Antwort zurückgegeben wird. Verwenden Sie sie, um API-Aufrufe mit Ihren eigenen Datensätzen abzugleichen und Sitzungen später zu filtern.

Beispiel:

"user-123"

metadata
object

Optionales JSON-Objekt, das mit der Sitzung gespeichert (wenn save_api_request=true) und in der Antwort zurückgegeben wird. Senden Sie es bei Multipart-Anfragen als JSON-codiertes String-Feld (z. B. metadata={"flow":"onboarding"}) – es wird in ein Objekt geparst.

Beispiel:

Antwort

Dokument verarbeitet. poa.status ist Approved oder Declined; jedes erkannte Problem wird einzeln in poa.warnings aufgeführt. Ein abgelaufenes, nicht übereinstimmendes oder verdächtiges Dokument gibt dennoch 200 mit status: "Declined" zurück – prüfen Sie den Body, nicht nur den HTTP-Code. Wenn save_api_request=true, ist request_id die persistierte Sitzungs-ID.

request_id
string<uuid>

Beibehaltene Sitzungs-ID, wenn save_api_request=true (verwendbar mit GET /v3/session/{sessionId}/decision/); andernfalls eine vorübergehende Korrelations-UUID.

poa
object
vendor_data
string | null

Rückgabe der von Ihnen gesendeten vendor_data oder null.

metadata
object | null

Rückgabe des von Ihnen gesendeten metadata-Objekts oder null.

created_at
string<date-time>

ISO 8601-Zeitstempel (UTC), wann die Antwort generiert wurde.

Zuletzt geändert am 7. November 2026