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
user_image
file
erforderlich

Zu analysierendes Gesichtsfoto (z. B. ein Selfie). Reichen Sie ein einzelnes Foto von vorne ein, auf dem das Gesicht der Person deutlich sichtbar und gut ausgeleuchtet ist. Zulässige Dateiendungen: tiff, jpg, jpeg, png, webp (kein PDF). Maximale Upload-Größe: 5 MB (größere Dateien werden mit 400 abgelehnt). Bilder werden vor der Verarbeitung automatisch auf ca. 0,3 MB komprimiert, sodass sehr hohe Auflösungen die Genauigkeit nicht verbessern.

face_liveness_score_decline_threshold
number<float>
Standard:30

Liveness-Schwellenwert (0–100). Ein Liveness-score bei oder unter diesem Wert fügt eine LOW_LIVENESS_SCORE-Warnung hinzu und lehnt ab. Erhöhen Sie ihn für eine strengere Spoofing-Abwehr; Werte außerhalb von 0–100 geben 400 zurück.

Erforderlicher Bereich: 0 <= x <= 100
Beispiel:

30

age_estimation_decline_threshold
integer
Standard:18

Mindestwert für das geschätzte Alter in Jahren. Ein geschätztes Alter unter diesem Wert fügt eine AGE_BELOW_MINIMUM-Warnung hinzu und führt zur Ablehnung. Setzen Sie den Wert auf 0, um die Altersprüfung zu deaktivieren (der Aufruf führt dann nur Liveness-Erkennung + Altersschätzung ohne altersbasierte Entscheidung durch).

Erforderlicher Bereich: 0 <= x <= 100
Beispiel:

18

rotate_image
boolean
Standard:false

Wenn true, testet der Dienst das Eingabebild in 90-Grad-Schritten (0, 90, 180, 270) und verwendet die Ausrichtung, die die beste Gesichtserkennung liefert – nützlich für mobile Aufnahmen mit fehlender EXIF-Ausrichtung. Erhöht die Latenz, aktivieren Sie dies also nur, wenn Sie aufrechte Bilder nicht garantieren können.

Beispiel:

false

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 und mit dem erkannten Gesicht zum Gesichtsindex Ihrer Anwendung hinzugefügt. 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":"age-gate"}) – es wird in ein Objekt geparst.

Beispiel:

Antwort

Altersschätzung und passive Liveness abgeschlossen. age_estimation.age_estimation ist das vom Modell vorhergesagte Alter in Jahren des größten erkannten Gesichts (null, falls keines vorhanden); age_estimation.score ist der Score für passive Liveness (0–100); status ist nur dann Approved, wenn warnings leer ist. Eine Erfassung einer minderjährigen Person oder ein Spoofing 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.

age_estimation
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