from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.document_ai.analyze(
document=open("document.pdf", "rb"),
fields="[{\"key\": \"employer_name\", \"name\": \"Employer name\", \"instruction\": \"The employer or company issuing the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": false}, {\"key\": \"employee_name\", \"name\": \"Employee name\", \"instruction\": \"The full name of the employee as printed on the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": true}, {\"key\": \"net_pay\", \"name\": \"Net pay\", \"instruction\": \"The net amount paid to the employee for the period.\", \"type\": \"number\", \"required\": true, \"is_full_name\": false}, {\"key\": \"pay_date\", \"name\": \"Pay date\", \"instruction\": \"The payment date shown on the payslip.\", \"type\": \"date\", \"required\": false, \"is_full_name\": false}]",
)
print(result)
import Didit, { fileFromPath } from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.documentAi.analyze({
document: await fileFromPath("document.pdf"),
fields: "[{\"key\": \"employer_name\", \"name\": \"Employer name\", \"instruction\": \"The employer or company issuing the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": false}, {\"key\": \"employee_name\", \"name\": \"Employee name\", \"instruction\": \"The full name of the employee as printed on the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": true}, {\"key\": \"net_pay\", \"name\": \"Net pay\", \"instruction\": \"The net amount paid to the employee for the period.\", \"type\": \"number\", \"required\": true, \"is_full_name\": false}, {\"key\": \"pay_date\", \"name\": \"Pay date\", \"instruction\": \"The payment date shown on the payslip.\", \"type\": \"date\", \"required\": false, \"is_full_name\": false}]",
});
console.log(result);
ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.DocumentAi.Analyze(ctx, didit.DocumentAiAnalyzeParams{
Document: didit.FileFromPath("document.pdf"),
Fields: "[{\"key\": \"employer_name\", \"name\": \"Employer name\", \"instruction\": \"The employer or company issuing the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": false}, {\"key\": \"employee_name\", \"name\": \"Employee name\", \"instruction\": \"The full name of the employee as printed on the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": true}, {\"key\": \"net_pay\", \"name\": \"Net pay\", \"instruction\": \"The net amount paid to the employee for the period.\", \"type\": \"number\", \"required\": true, \"is_full_name\": false}, {\"key\": \"pay_date\", \"name\": \"Pay date\", \"instruction\": \"The payment date shown on the payslip.\", \"type\": \"date\", \"required\": false, \"is_full_name\": false}]",
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)
import java.nio.file.Path;
import me.didit.Didit;
import me.didit.types.DocumentAiAnalyzeParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.documentAi().analyze(DocumentAiAnalyzeParams.builder()
.document(Path.of("document.pdf"))
.fields("[{\"key\": \"employer_name\", \"name\": \"Employer name\", \"instruction\": \"The employer or company issuing the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": false}, {\"key\": \"employee_name\", \"name\": \"Employee name\", \"instruction\": \"The full name of the employee as printed on the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": true}, {\"key\": \"net_pay\", \"name\": \"Net pay\", \"instruction\": \"The net amount paid to the employee for the period.\", \"type\": \"number\", \"required\": true, \"is_full_name\": false}, {\"key\": \"pay_date\", \"name\": \"Pay date\", \"instruction\": \"The payment date shown on the payslip.\", \"type\": \"date\", \"required\": false, \"is_full_name\": false}]")
.build());
System.out.println(result);
<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
use Didit\File;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->documentAi->analyze([
'document' => File::fromPath('document.pdf'),
'fields' => '[{"key": "employer_name", "name": "Employer name", "instruction": "The employer or company issuing the payslip.", "type": "text", "required": true, "is_full_name": false}, {"key": "employee_name", "name": "Employee name", "instruction": "The full name of the employee as printed on the payslip.", "type": "text", "required": true, "is_full_name": true}, {"key": "net_pay", "name": "Net pay", "instruction": "The net amount paid to the employee for the period.", "type": "number", "required": true, "is_full_name": false}, {"key": "pay_date", "name": "Pay date", "instruction": "The payment date shown on the payslip.", "type": "date", "required": false, "is_full_name": false}]',
]);
print_r($result->toArray());
require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.document_ai.analyze(
document: Pathname("document.pdf"),
fields: "[{\"key\": \"employer_name\", \"name\": \"Employer name\", \"instruction\": \"The employer or company issuing the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": false}, {\"key\": \"employee_name\", \"name\": \"Employee name\", \"instruction\": \"The full name of the employee as printed on the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": true}, {\"key\": \"net_pay\", \"name\": \"Net pay\", \"instruction\": \"The net amount paid to the employee for the period.\", \"type\": \"number\", \"required\": true, \"is_full_name\": false}, {\"key\": \"pay_date\", \"name\": \"Pay date\", \"instruction\": \"The payment date shown on the payslip.\", \"type\": \"date\", \"required\": false, \"is_full_name\": false}]"
)
puts result.to_h
using System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.DocumentAi.AnalyzeAsync(new DocumentAiAnalyzeParams
{
Document = FileUpload.FromPath("document.pdf"),
Fields = "[{\"key\": \"employer_name\", \"name\": \"Employer name\", \"instruction\": \"The employer or company issuing the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": false}, {\"key\": \"employee_name\", \"name\": \"Employee name\", \"instruction\": \"The full name of the employee as printed on the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": true}, {\"key\": \"net_pay\", \"name\": \"Net pay\", \"instruction\": \"The net amount paid to the employee for the period.\", \"type\": \"number\", \"required\": true, \"is_full_name\": false}, {\"key\": \"pay_date\", \"name\": \"Pay date\", \"instruction\": \"The payment date shown on the payslip.\", \"type\": \"date\", \"required\": false, \"is_full_name\": false}]",
});
Console.WriteLine(JsonSerializer.Serialize(result));
curl --request POST \
--url https://verification.didit.me/v3/document-ai/ \
--header 'Content-Type: multipart/form-data' \
--header 'x-api-key: <api-key>' \
--form document=@example-file \
--form 'fields=[{"key": "employer_name", "name": "Employer name", "instruction": "The employer or company issuing the payslip.", "type": "text", "required": true, "is_full_name": false}, {"key": "employee_name", "name": "Employee name", "instruction": "The full name of the employee as printed on the payslip.", "type": "text", "required": true, "is_full_name": true}, {"key": "net_pay", "name": "Net pay", "instruction": "The net amount paid to the employee for the period.", "type": "number", "required": true, "is_full_name": false}, {"key": "pay_date", "name": "Pay date", "instruction": "The payment date shown on the payslip.", "type": "date", "required": false, "is_full_name": false}]' \
--form expected_first_name=Sophia \
--form expected_last_name=Martinez \
--form 'expected_company_name=<string>' \
--form 'expected_company_country=<string>' \
--form document_ai_name_match_score_threshold=80 \
--form document_ai_unreadable_document_action=REVIEW \
--form document_ai_missing_required_fields_action=REVIEW \
--form document_ai_document_tampering_action=DECLINE \
--form document_ai_name_mismatch_action=NO_ACTION \
--form document_ai_unsupported_file_action=REVIEW \
--form save_api_request=true \
--form vendor_data=user-123 \
--form 'metadata={
"flow": "onboarding"
}'
{ "request_id": "9d6a3b1e-2f0c-4a8e-9b7d-1c2e3f4a5b6c", "document_ai": { "status": "Approved", "extracted_data": { "employer_name": "Acme Payments Ltd", "employee_name": "Sophia Martinez", "net_pay": 3120.5, "pay_date": "2026-07-31" }, "detected_codes": [ { "type": "CODE_128", "page_number": 1, "position": [ [ 96, 456 ], [ 96, 616 ], [ 1012, 611 ], [ 1015, 456 ] ], "x": 96, "y": 456, "width": 919, "height": 160, "page_width": 1200, "page_height": 1700, "raw_payload": "SU5WLTIwMjYtMDA0Mg==", "parsed_payload": "INV-2026-0042" } ], "fields": [ { "key": "employer_name", "name": "Employer name", "instruction": "The employer or company issuing the payslip.", "type": "text", "required": true, "is_full_name": false }, { "key": "employee_name", "name": "Employee name", "instruction": "The full name of the employee as printed on the payslip.", "type": "text", "required": true, "is_full_name": true }, { "key": "net_pay", "name": "Net pay", "instruction": "The net amount paid to the employee for the period.", "type": "number", "required": true, "is_full_name": false }, { "key": "pay_date", "name": "Pay date", "instruction": "The payment date shown on the payslip.", "type": "date", "required": false, "is_full_name": false } ], "name_match_score": 100, "name_on_document": "Sophia Martinez", "warnings": [] }, "vendor_data": "user-123", "metadata": { "flow": "onboarding" }, "created_at": "2026-08-19T16:40:12.318Z"}
IA documentaire
API d'extraction de données de documents personnalisée
Didit extrait les champs définis par vous de tout PDF ou image via POST /v3/document-ai/. Contrôle de falsification. $0.20 par document.
POST
/
v3
/
document-ai
/
Python
from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.document_ai.analyze(
document=open("document.pdf", "rb"),
fields="[{\"key\": \"employer_name\", \"name\": \"Employer name\", \"instruction\": \"The employer or company issuing the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": false}, {\"key\": \"employee_name\", \"name\": \"Employee name\", \"instruction\": \"The full name of the employee as printed on the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": true}, {\"key\": \"net_pay\", \"name\": \"Net pay\", \"instruction\": \"The net amount paid to the employee for the period.\", \"type\": \"number\", \"required\": true, \"is_full_name\": false}, {\"key\": \"pay_date\", \"name\": \"Pay date\", \"instruction\": \"The payment date shown on the payslip.\", \"type\": \"date\", \"required\": false, \"is_full_name\": false}]",
)
print(result)
import Didit, { fileFromPath } from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.documentAi.analyze({
document: await fileFromPath("document.pdf"),
fields: "[{\"key\": \"employer_name\", \"name\": \"Employer name\", \"instruction\": \"The employer or company issuing the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": false}, {\"key\": \"employee_name\", \"name\": \"Employee name\", \"instruction\": \"The full name of the employee as printed on the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": true}, {\"key\": \"net_pay\", \"name\": \"Net pay\", \"instruction\": \"The net amount paid to the employee for the period.\", \"type\": \"number\", \"required\": true, \"is_full_name\": false}, {\"key\": \"pay_date\", \"name\": \"Pay date\", \"instruction\": \"The payment date shown on the payslip.\", \"type\": \"date\", \"required\": false, \"is_full_name\": false}]",
});
console.log(result);
ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.DocumentAi.Analyze(ctx, didit.DocumentAiAnalyzeParams{
Document: didit.FileFromPath("document.pdf"),
Fields: "[{\"key\": \"employer_name\", \"name\": \"Employer name\", \"instruction\": \"The employer or company issuing the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": false}, {\"key\": \"employee_name\", \"name\": \"Employee name\", \"instruction\": \"The full name of the employee as printed on the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": true}, {\"key\": \"net_pay\", \"name\": \"Net pay\", \"instruction\": \"The net amount paid to the employee for the period.\", \"type\": \"number\", \"required\": true, \"is_full_name\": false}, {\"key\": \"pay_date\", \"name\": \"Pay date\", \"instruction\": \"The payment date shown on the payslip.\", \"type\": \"date\", \"required\": false, \"is_full_name\": false}]",
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)
import java.nio.file.Path;
import me.didit.Didit;
import me.didit.types.DocumentAiAnalyzeParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.documentAi().analyze(DocumentAiAnalyzeParams.builder()
.document(Path.of("document.pdf"))
.fields("[{\"key\": \"employer_name\", \"name\": \"Employer name\", \"instruction\": \"The employer or company issuing the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": false}, {\"key\": \"employee_name\", \"name\": \"Employee name\", \"instruction\": \"The full name of the employee as printed on the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": true}, {\"key\": \"net_pay\", \"name\": \"Net pay\", \"instruction\": \"The net amount paid to the employee for the period.\", \"type\": \"number\", \"required\": true, \"is_full_name\": false}, {\"key\": \"pay_date\", \"name\": \"Pay date\", \"instruction\": \"The payment date shown on the payslip.\", \"type\": \"date\", \"required\": false, \"is_full_name\": false}]")
.build());
System.out.println(result);
<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
use Didit\File;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->documentAi->analyze([
'document' => File::fromPath('document.pdf'),
'fields' => '[{"key": "employer_name", "name": "Employer name", "instruction": "The employer or company issuing the payslip.", "type": "text", "required": true, "is_full_name": false}, {"key": "employee_name", "name": "Employee name", "instruction": "The full name of the employee as printed on the payslip.", "type": "text", "required": true, "is_full_name": true}, {"key": "net_pay", "name": "Net pay", "instruction": "The net amount paid to the employee for the period.", "type": "number", "required": true, "is_full_name": false}, {"key": "pay_date", "name": "Pay date", "instruction": "The payment date shown on the payslip.", "type": "date", "required": false, "is_full_name": false}]',
]);
print_r($result->toArray());
require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.document_ai.analyze(
document: Pathname("document.pdf"),
fields: "[{\"key\": \"employer_name\", \"name\": \"Employer name\", \"instruction\": \"The employer or company issuing the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": false}, {\"key\": \"employee_name\", \"name\": \"Employee name\", \"instruction\": \"The full name of the employee as printed on the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": true}, {\"key\": \"net_pay\", \"name\": \"Net pay\", \"instruction\": \"The net amount paid to the employee for the period.\", \"type\": \"number\", \"required\": true, \"is_full_name\": false}, {\"key\": \"pay_date\", \"name\": \"Pay date\", \"instruction\": \"The payment date shown on the payslip.\", \"type\": \"date\", \"required\": false, \"is_full_name\": false}]"
)
puts result.to_h
using System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.DocumentAi.AnalyzeAsync(new DocumentAiAnalyzeParams
{
Document = FileUpload.FromPath("document.pdf"),
Fields = "[{\"key\": \"employer_name\", \"name\": \"Employer name\", \"instruction\": \"The employer or company issuing the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": false}, {\"key\": \"employee_name\", \"name\": \"Employee name\", \"instruction\": \"The full name of the employee as printed on the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": true}, {\"key\": \"net_pay\", \"name\": \"Net pay\", \"instruction\": \"The net amount paid to the employee for the period.\", \"type\": \"number\", \"required\": true, \"is_full_name\": false}, {\"key\": \"pay_date\", \"name\": \"Pay date\", \"instruction\": \"The payment date shown on the payslip.\", \"type\": \"date\", \"required\": false, \"is_full_name\": false}]",
});
Console.WriteLine(JsonSerializer.Serialize(result));
curl --request POST \
--url https://verification.didit.me/v3/document-ai/ \
--header 'Content-Type: multipart/form-data' \
--header 'x-api-key: <api-key>' \
--form document=@example-file \
--form 'fields=[{"key": "employer_name", "name": "Employer name", "instruction": "The employer or company issuing the payslip.", "type": "text", "required": true, "is_full_name": false}, {"key": "employee_name", "name": "Employee name", "instruction": "The full name of the employee as printed on the payslip.", "type": "text", "required": true, "is_full_name": true}, {"key": "net_pay", "name": "Net pay", "instruction": "The net amount paid to the employee for the period.", "type": "number", "required": true, "is_full_name": false}, {"key": "pay_date", "name": "Pay date", "instruction": "The payment date shown on the payslip.", "type": "date", "required": false, "is_full_name": false}]' \
--form expected_first_name=Sophia \
--form expected_last_name=Martinez \
--form 'expected_company_name=<string>' \
--form 'expected_company_country=<string>' \
--form document_ai_name_match_score_threshold=80 \
--form document_ai_unreadable_document_action=REVIEW \
--form document_ai_missing_required_fields_action=REVIEW \
--form document_ai_document_tampering_action=DECLINE \
--form document_ai_name_mismatch_action=NO_ACTION \
--form document_ai_unsupported_file_action=REVIEW \
--form save_api_request=true \
--form vendor_data=user-123 \
--form 'metadata={
"flow": "onboarding"
}'
{ "request_id": "9d6a3b1e-2f0c-4a8e-9b7d-1c2e3f4a5b6c", "document_ai": { "status": "Approved", "extracted_data": { "employer_name": "Acme Payments Ltd", "employee_name": "Sophia Martinez", "net_pay": 3120.5, "pay_date": "2026-07-31" }, "detected_codes": [ { "type": "CODE_128", "page_number": 1, "position": [ [ 96, 456 ], [ 96, 616 ], [ 1012, 611 ], [ 1015, 456 ] ], "x": 96, "y": 456, "width": 919, "height": 160, "page_width": 1200, "page_height": 1700, "raw_payload": "SU5WLTIwMjYtMDA0Mg==", "parsed_payload": "INV-2026-0042" } ], "fields": [ { "key": "employer_name", "name": "Employer name", "instruction": "The employer or company issuing the payslip.", "type": "text", "required": true, "is_full_name": false }, { "key": "employee_name", "name": "Employee name", "instruction": "The full name of the employee as printed on the payslip.", "type": "text", "required": true, "is_full_name": true }, { "key": "net_pay", "name": "Net pay", "instruction": "The net amount paid to the employee for the period.", "type": "number", "required": true, "is_full_name": false }, { "key": "pay_date", "name": "Pay date", "instruction": "The payment date shown on the payslip.", "type": "date", "required": false, "is_full_name": false } ], "name_match_score": 100, "name_on_document": "Sophia Martinez", "warnings": [] }, "vendor_data": "user-123", "metadata": { "flow": "onboarding" }, "created_at": "2026-08-19T16:40:12.318Z"}
Envoyez un document et la liste des champs à lire dans ce document. Didit exécute sur le fichier son modèle d’extraction par défaut, renvoie tous les champs avec leur type (text, number ou date au format YYYY-MM-DD), détecte et décode les codes QR et codes-barres pris en charge, vérifie que le fichier n’a pas été manipulé et, si vous le souhaitez, compare le nom figurant sur le document à la personne ou à l’entreprise attendue. Utilisez-le pour les justificatifs de fonds, les fiches de paie, les relevés bancaires, les documents fiscaux, les factures ou tout document qui ne correspond pas à un modèle fixe.Il s’agit de la version serveur à serveur de l’étape Document AI hébergée. La requête est au format multipart/form-data : le fichier est transmis dans document, et les définitions des champs dans fields, sous la forme d’une chaîne contenant un tableau JSON encodé.
fields est un tableau JSON de 1 à 30 éléments, envoyé sous la forme d’une seule chaîne. Chaque élément comporte une key (lettres minuscules, chiffres et tirets bas, unique dans la requête), un name lisible, une instruction qui indique au modèle ce qu’il doit rechercher, un type (text, number ou date) et deux indicateurs : required et is_full_name.
[ { "key": "account_holder", "name": "Account holder", "instruction": "Full name of the person or company the account belongs to", "type": "text", "required": true, "is_full_name": true }, { "key": "balance", "name": "Closing balance", "instruction": "Closing balance shown on the statement, as a number without the currency symbol", "type": "number", "required": true }, { "key": "currency", "name": "Currency", "instruction": "Three-letter currency code of the balance", "type": "text" }, { "key": "statement_date", "name": "Statement date", "instruction": "Date the statement was issued", "type": "date", "required": true }]
Dans une requête multipart, le tableau entier constitue une seule valeur de formulaire :
curl -X POST https://verification.didit.me/v3/document-ai/ \ -H "x-api-key: $DIDIT_API_KEY" \ -F "document=@./bank-statement.pdf" \ -F 'fields=[{"key":"account_holder","name":"Account holder","instruction":"Full name of the account holder","type":"text","required":true,"is_full_name":true},{"key":"balance","name":"Closing balance","instruction":"Closing balance as a number","type":"number","required":true}]' \ -F "expected_first_name=Jane" \ -F "expected_last_name=Doe"
La réponse reprend les fields normalisés et renvoie extracted_data, indexé par vos valeurs key, avec null pour tout ce que le modèle n’a pas pu trouver. name, instruction et type sont facultatifs pour chaque élément (type vaut text par défaut) ; key est obligatoire. Envoyer fields sous forme de clés de formulaire de type crochets (fields[0][key]=...), ou sous une autre forme qu’un tableau JSON, renvoie 400 avant le lancement de toute extraction. Rien n’est donc facturé.
Chaque réponse réussie inclut document_ai.detected_codes. Chaque élément contient :
Champ
Description
type
Symbologie détectée, par exemple QR_CODE, CODE_128, EAN_13, DATA_MATRIX ou PDF_417
page_number
Numéro de la page, à partir de 1
position
Polygone détecté, en pixels de la page rendue, ou null lorsqu’aucune localisation fiable n’est disponible
x, y, width, height
Cadre englobant, en pixels de la page rendue, ou null lorsqu’aucune localisation fiable n’est disponible
page_width, page_height
Dimensions de la page rendue utilisées par les coordonnées
parsed_payload
Chaîne décodée ou valeur structurée, ou null lorsque le code ne peut être que localisé
raw_payload
Payload brut du décodeur, sous forme de chaîne base64 lorsqu’il est disponible ; sinon, chaîne vide
Le tableau couvre chaque page traitée d’un PDF et reste vide lorsqu’aucun code pris en charge n’est trouvé. Didit ne devine jamais un payload : des codes QR endommagés peuvent être renvoyés avec leur position et parsed_payload: null, tandis que les échecs de détection de codes ne font pas échouer la requête Document AI.
Marquez au plus un champ avec is_full_name: true et indiquez la personne ou l’entreprise à laquelle le document doit appartenir :
Vous vérifiez
Envoyez
Le nom est comparé à
Une personne
expected_first_name + expected_last_name
le nom complet de la personne
Une entreprise
expected_company_name (+ expected_company_country, facultatif, code ISO à 2 lettres)
le nom de l’entreprise
Envoyez l’un ou l’autre groupe, pas les deux. Lorsqu’un nom est extrait et qu’un nom attendu est présent, la réponse inclut name_match_score (de 0 à 100) et name_on_document. Un score inférieur à document_ai_name_match_score_threshold (par défaut 80) déclenche l’avertissement DOCUMENT_AI_NAME_MISMATCH et applique document_ai_name_mismatch_action. Si aucun champ n’est marqué is_full_name, Didit utilise le premier champ de type texte dont la clé ressemble à un nom (name, holder, full_name, account_holder) ; marquez explicitement le champ lorsque vous voulez contrôler la valeur comparée. Lorsqu’aucune valeur de nom ne peut être trouvée sur le document, ou qu’aucun nom attendu n’est envoyé, la vérification du nom est ignorée et name_match_score vaut null.
Chaque risque ci-dessous correspond à un paramètre d’action que vous pouvez définir par requête : DECLINE, REVIEW ou NO_ACTION. L’action la plus stricte déclenchée détermine document_ai.status (Declined > In Review > Approved), et chaque risque déclenché est listé dans document_ai.warnings. Les valeurs par défaut correspondent à celles de l’étape de workflow hébergée ; consultez Règles et avertissements Document AI pour savoir comment chaque risque est détecté.
Fichiers acceptés : PDF (plusieurs pages prises en charge), JPG, JPEG, PNG, TIFF, WebP, ou un ZIP contenant le document, jusqu’à 30 Mo. Les PDF chiffrés renvoient 400 ; importez à la place un PDF déchiffré ou une photo.
save_api_request (par défaut true) : la requête, les champs extraits et les codes détectés apparaissent dans la Business Console, sous Vérifications manuelles, où votre équipe peut les examiner. Définissez-le sur false pour ne pas les sauvegarder.
vendor_data et metadata sont renvoyés sans modification dans la réponse, afin que vous puissiez relier le résultat à vos propres enregistrements.
Prix : $0.20 par document, facturé lorsque le document est traité et qu’un statut est renvoyé. La remise de votre forfait s’applique. Voir Tarifs.
Vous avez besoin que l’utilisateur téléverse lui-même le document, que vous collectiez jusqu’à 3 documents dans un même parcours, que l’écran de téléversement soit traduit automatiquement, ou que vous croisiez les champs extraits avec des données d’identité ou de questionnaire ? Utilisez plutôt l’étape de workflow Document AI hébergée.
La clé API de votre application, issue de Développeurs -> Clés API dans la Business Console. La clé principale dispose d'un accès complet. Une clé nommée peut être restreinte : aucun, lecture ou écriture par ressource, limitée à certains workflows ou aux sessions approuvées, à une liste d'adresses IP et à une date d'expiration. 401 signifie que la clé est incorrecte, révoquée ou expirée ; 403 signifie qu'aucune clé n'a été envoyée, que la clé n'a pas accès à cette ressource ou action, ou que la requête provient d'une adresse hors de sa liste d'IP ; 404 sur une route de session signifie que la session est hors des workflows ou des statuts de la clé. Une clé sans accès aux médias reçoit les URL d'images, de vidéos et de PDF à null, et une clé sans accès en écriture aux sessions reçoit les liens et tokens de session à null. Voir https://docs.didit.me/console/api-keys.
Le document à lire. Extensions autorisées : tiff, jpg, jpeg, png, pdf, webp, zip. Taille maximale de téléversement : 30 MB (les fichiers plus volumineux sont rejetés avec une erreur 400). Les fichiers PDF multipages sont pris en charge (prévoyez une latence plus élevée) ; les PDF chiffrés sont rejetés avec une erreur 400. Les images sont automatiquement compressées avant le traitement.
Une chaîne de tableau encodée en JSON avec 1–30 définitions de champs (maximum 16 KB). Chaque élément : key (obligatoire, ^[a-z0-9_]{1,64}$, unique — la clé renvoyée dans extracted_data), name (≤ 100 caractères, affiché dans les messages), instruction (≤ 500 caractères, ce que le modèle doit lire), type (text par défaut | number | date), required (booléen, par défaut false), is_full_name (booléen, par défaut false, au maximum un par requête). Les tableaux de formulaires de type crochets, le JSON invalide, les clés dupliquées ou plus d'un is_full_name renvoient 400 avant tout traitement ou facturation.
Exemple:
"[{\"key\": \"employer_name\", \"name\": \"Employer name\", \"instruction\": \"The employer or company issuing the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": false}, {\"key\": \"employee_name\", \"name\": \"Employee name\", \"instruction\": \"The full name of the employee as printed on the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": true}, {\"key\": \"net_pay\", \"name\": \"Net pay\", \"instruction\": \"The net amount paid to the employee for the period.\", \"type\": \"number\", \"required\": true, \"is_full_name\": false}, {\"key\": \"pay_date\", \"name\": \"Pay date\", \"instruction\": \"The payment date shown on the payslip.\", \"type\": \"date\", \"required\": false, \"is_full_name\": false}]"
Prénom à vérifier par rapport au champ du nom du document (recherche floue, tenant compte de la translittération). À utiliser conjointement avec expected_last_name ; ne peut pas être combiné avec expected_company_name.
Nom de l'entreprise à vérifier par rapport au champ de nom du document (pour les documents d'entreprise). Ne peut pas être combiné avec expected_first_name / expected_last_name (aucun exemple de valeur fourni intentionnellement — l'exemple de requête généré utilise les champs de personne physique ; remplacez-les par celui-ci lors de la vérification d'un document d'entreprise).
Code pays ISO 3166-1 alpha-2 optionnel (deux lettres ASCII, par ex. FR) qui ajuste la normalisation du nom de l'entreprise pour expected_company_name. Utilisé uniquement avec expected_company_name.
Valeur minimale de name_match_score (0–100) pour considérer le nom comme correspondant. Un score inférieur ajoute DOCUMENT_AI_NAME_MISMATCH, régi par document_ai_name_mismatch_action.
Ce qu'il faut faire lorsqu'au moins un champ required n'a pas pu être lu (DOCUMENT_AI_MISSING_REQUIRED_FIELDS ; additional_data.missing_fields les énumère).
Ce qu'il faut faire lorsque l'analyse médico-légale PDF/EXIF suspecte une manipulation — modification après signature numérique, éditeur PDF connu, manipulation par texte superposé, réexportation suspecte, anomalies d'image (DOCUMENT_AI_SUSPECTED_MANIPULATION).
Lorsque la valeur est true (par défaut), conserve l'appel sous la forme d'une session de type API — visible dans la Business Console, récupérable via GET /v3/session/{sessionId}/decision/ à l'aide du request_id renvoyé, avec le document importé, les valeurs extraites, les définitions de champs et l'instantané de correspondance de nom stockés. Lorsque la valeur est false, rien n'est stocké et request_id est un UUID éphémère servant uniquement à la corrélation des réponses ; l'appel reste facturé.
Chaîne opaque optionnelle (votre identifiant d'utilisateur interne, e-mail, UUID…) stockée sur la session persistée et renvoyée dans la réponse. Utilisez-la pour corréler les appels d'API avec vos propres enregistrements et pour filtrer les sessions ultérieurement.
Objet JSON optionnel stocké avec la session (lorsque save_api_request=true) et renvoyé dans la réponse. Dans les requêtes multipart, envoyez-le sous forme de champ textuel encodé en JSON (par ex. metadata={"flow":"onboarding"}) — il est analysé sous forme d'objet.
Exemple:
{ "flow": "onboarding" }
Réponse
Document traité. document_ai.status est Approved, Declined ou In Review ; chaque problème détecté est détaillé dans document_ai.warnings. Un document problématique renvoie tout de même 200 — inspectez le corps de la réponse, pas seulement le code HTTP. Lorsque save_api_request=true, request_id est l'identifiant de la session enregistrée.
Identifiant de session persistante lorsque save_api_request=true (utilisable avec GET /v3/session/{sessionId}/decision/) ; sinon un UUID de corrélation temporaire.
Moment où la requête a été traitée (UTC, ISO 8601).
Dernière modification le 7 novembre 2026
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Didit Docs","description":"The best way to integrate identity and fraud checks into your app. One API, four product lines (KYC · KYB · Transaction Monitoring · Wallet Screening), 220+ countries, 14,000+ documents, sub-2s inference, $10 free credit/month.","colors":{"primary":"#2567FF","light":"#90B1FF","dark":"#1B4FE0"},"logo":{"light":"https://mintcdn.com/didit-0f962782/dCzNNoYCusBNdK3I/logo/didit.svg?fit=max\u0026auto=format\u0026n=dCzNNoYCusBNdK3I\u0026q=85\u0026s=9f162fb8295fa1fd9300a24b293ce0b7","dark":"https://mintcdn.com/didit-0f962782/TefoKXCbZA_GIK5a/logo/didit-logo-wordmark-white.svg?fit=max\u0026auto=format\u0026n=TefoKXCbZA_GIK5a\u0026q=85\u0026s=c8c541689c814ca6a2c873cf6185a3a7","href":"https://docs.didit.me"},"favicon":"https://mintcdn.com/didit-0f962782/t6r0B-WdGMU5mSS-/favicon.ico?fit=max\u0026auto=format\u0026n=t6r0B-WdGMU5mSS-\u0026q=85\u0026s=b291917b960ebe959ae3b1aa233eafa8","api":{"examples":{"prefill":true},"mdx":{"auth":{"method":"key","name":"x-api-key"},"server":"https://verification.didit.me"}},"background":{"color":{"light":"#FFFFFF","dark":"#1A1A1A"}},"navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Support"},{"icon":"signal","href":"https://status.didit.me","label":"Status"}],"primary":{"type":"button","label":"Sign in","href":"https://business.didit.me"}},"footer":{"socials":{"x":"https://x.com/didit","github":"https://github.com/didit-protocol","linkedin":"https://linkedin.com/company/91001155","website":"https://didit.me"}},"search":{"prompt":"Search Didit docs..."},"seo":{"metatags":{"twitter:site":"@didit","theme-color":"#2567FF","apple-mobile-web-app-title":"Didit Docs"},"organization":{"id":"https://didit.me/#organization","name":"Didit","legalName":"Didit Protocol","url":"https://didit.me","logo":"https://didit.me/logos/primary-horizontal-light.png","sameAs":["https://www.linkedin.com/company/91001155","https://www.youtube.com/@getdidit","https://github.com/didit-protocol","https://x.com/didit"]},"indexing":"navigable"},"fonts":{"heading":{"family":"Inter","weight":500},"body":{"family":"Inter","weight":400}},"errors":{"404":{"redirect":false,"title":"Page not found","description":"This page moved or never existed. [Back to docs](/)"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"thumbnails":{"appearance":"light","background":"https://mintcdn.com/didit-0f962782/Xkecx-xLq1K2abHK/images/og-thumbnail-backplate.png?fit=max\u0026auto=format\u0026n=Xkecx-xLq1K2abHK\u0026q=85\u0026s=c699fa252554b2ac8d4c631e209a1473","fonts":{"family":"Inter"}},"metadata":{"timestamp":true},"styling":{"latex":true},"navigation":{"languages":[{"language":"en","href":""},{"language":"es","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Soporte"},{"icon":"signal","href":"https://status.didit.me","label":"Estado"}],"primary":{"type":"button","label":"Iniciar sesión","href":"https://business.didit.me"}},"href":"es"},{"language":"pt-BR","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Suporte"},{"icon":"signal","href":"https://status.didit.me","label":"Status"}],"primary":{"type":"button","label":"Entrar","href":"https://business.didit.me"}},"href":"pt-br"},{"language":"ja","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"サポート"},{"icon":"signal","href":"https://status.didit.me","label":"ステータス"}],"primary":{"type":"button","label":"サインイン","href":"https://business.didit.me"}},"href":"ja"},{"language":"de","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Support"},{"icon":"signal","href":"https://status.didit.me","label":"Status"}],"primary":{"type":"button","label":"Anmelden","href":"https://business.didit.me"}},"href":"de"},{"language":"fr","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Assistance"},{"icon":"signal","href":"https://status.didit.me","label":"Statut"}],"primary":{"type":"button","label":"Se connecter","href":"https://business.didit.me"}},"href":"fr"},{"language":"it","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Supporto"},{"icon":"signal","href":"https://status.didit.me","label":"Stato"}],"primary":{"type":"button","label":"Accedi","href":"https://business.didit.me"}},"href":"it"},{"language":"pt","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Suporte"},{"icon":"signal","href":"https://status.didit.me","label":"Estado"}],"primary":{"type":"button","label":"Iniciar sessão","href":"https://business.didit.me"}},"href":"pt"},{"language":"ca","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Suport"},{"icon":"signal","href":"https://status.didit.me","label":"Estat"}],"primary":{"type":"button","label":"Inicia la sessió","href":"https://business.didit.me"}},"href":"ca"},{"language":"id","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Dukungan"},{"icon":"signal","href":"https://status.didit.me","label":"Status"}],"primary":{"type":"button","label":"Masuk","href":"https://business.didit.me"}},"href":"id"},{"language":"ru","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Поддержка"},{"icon":"signal","href":"https://status.didit.me","label":"Статус"}],"primary":{"type":"button","label":"Вход","href":"https://business.didit.me"}},"href":"ru"},{"language":"ko","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"지원"},{"icon":"signal","href":"https://status.didit.me","label":"상태"}],"primary":{"type":"button","label":"로그인","href":"https://business.didit.me"}},"href":"ko"},{"language":"zh","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"支持"},{"icon":"signal","href":"https://status.didit.me","label":"状态"}],"primary":{"type":"button","label":"登录","href":"https://business.didit.me"}},"href":"zh"},{"language":"ar","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"الدعم"},{"icon":"signal","href":"https://status.didit.me","label":"الحالة"}],"primary":{"type":"button","label":"تسجيل الدخول","href":"https://business.didit.me"}},"href":"ar"},{"language":"hi","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"सहायता"},{"icon":"signal","href":"https://status.didit.me","label":"स्थिति"}],"primary":{"type":"button","label":"साइन इन करें","href":"https://business.didit.me"}},"href":"hi"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"didit-0f962782","hasAudioNarration":false,"actualSubdomain":"didit-0f962782","customDomains":["docs.didit.me"],"gitSource":{"type":"github","owner":"didit-protocol","repo":"mintlify-docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aef60ae8e01a92054befade","clientVersion":"0.0.4087","searchFilterCounts":[{"language":"ar","tag":"مرجع API","count":432},{"language":"ca","tag":"Referència de l'API","count":432},{"language":"de","tag":"API-Referenz","count":432},{"language":"es","tag":"Referencia de la API","count":432},{"language":"fr","tag":"Référence API","count":432},{"language":"hi","tag":"API संदर्भ","count":432},{"language":"id","tag":"Referensi API","count":432},{"language":"it","tag":"Riferimento API","count":432},{"language":"ja","tag":"APIリファレンス","count":432},{"language":"ko","tag":"API 레퍼런스","count":432},{"language":"pt-BR","tag":"Referência da API","count":432},{"language":"pt","tag":"Referência da API","count":432},{"language":"ru","tag":"Справочник API","count":432},{"language":"zh","tag":"API 参考","count":432},{"language":"en","tag":"API Reference","count":424},{"language":"en","tag":"Database Validation","count":129},{"language":"ar","tag":"التحقق من قواعد البيانات","count":129},{"language":"ca","tag":"Validació en bases de dades","count":129},{"language":"de","tag":"Datenbankvalidierung","count":129},{"language":"es","tag":"Validación de base de datos","count":129},{"language":"fr","tag":"Validation en base de données","count":129},{"language":"hi","tag":"डेटाबेस सत्यापन","count":129},{"language":"id","tag":"Validasi Database","count":129},{"language":"it","tag":"Validazione su database","count":129},{"language":"ja","tag":"データベース検証","count":129},{"language":"ko","tag":"데이터베이스 검증","count":129},{"language":"pt-BR","tag":"Validação de banco de dados","count":129},{"language":"pt","tag":"Validação de base de dados","count":129},{"language":"ru","tag":"Проверка по базам данных","count":129},{"language":"zh","tag":"数据库核验","count":129},{"language":"ca","tag":"Primers passos","count":93},{"language":"de","tag":"Erste Schritte","count":93},{"language":"es","tag":"Primeros pasos","count":93},{"language":"ja","tag":"はじめに","count":93},{"language":"ko","tag":"시작하기","count":93},{"language":"pt-BR","tag":"Primeiros passos","count":93},{"language":"ru","tag":"Начало работы","count":93},{"language":"en","tag":"Get Started","count":87},{"language":"ar","tag":"ابدأ الآن","count":87},{"language":"fr","tag":"Commencer","count":87},{"language":"hi","tag":"शुरू करें","count":87},{"language":"id","tag":"Mulai","count":87},{"language":"it","tag":"Inizia","count":87},{"language":"pt","tag":"Começar","count":87},{"language":"zh","tag":"快速开始","count":87},{"language":"ko","tag":"인증","count":85},{"language":"en","tag":"User Verification","count":74},{"language":"ar","tag":"التحقق من المستخدمين","count":74},{"language":"ca","tag":"Verificació d'usuaris","count":74},{"language":"de","tag":"Benutzerverifizierung","count":74},{"language":"es","tag":"Verificación de usuarios","count":74},{"language":"fr","tag":"Vérification des utilisateurs","count":74},{"language":"hi","tag":"उपयोगकर्ता सत्यापन","count":74},{"language":"id","tag":"Verifikasi Pengguna","count":74},{"language":"it","tag":"Verifica degli utenti","count":74},{"language":"ja","tag":"ユーザー認証","count":74},{"language":"ko","tag":"사용자 인증","count":74},{"language":"pt-BR","tag":"Verificação de usuários","count":74},{"language":"pt","tag":"Verificação de utilizadores","count":74},{"language":"ru","tag":"Проверка пользователей","count":74},{"language":"zh","tag":"用户验证","count":74},{"language":"en","tag":"Integrate / SDKs","count":62},{"language":"ar","tag":"التكامل / SDKs","count":62},{"language":"ca","tag":"Integració / SDK","count":62},{"language":"de","tag":"Integrieren / SDKs","count":62},{"language":"es","tag":"Integración / SDKs","count":62},{"language":"fr","tag":"Intégrer / SDK","count":62},{"language":"hi","tag":"इंटीग्रेट करें / SDK","count":62},{"language":"id","tag":"Integrasi / SDK","count":62},{"language":"it","tag":"Integrazione / SDK","count":62},{"language":"ja","tag":"連携 / SDK","count":62},{"language":"ko","tag":"연동 / SDK","count":62},{"language":"pt-BR","tag":"Integração / SDKs","count":62},{"language":"pt","tag":"Integrar / SDKs","count":62},{"language":"ru","tag":"Интеграция / SDK","count":62},{"language":"zh","tag":"集成 / SDK","count":62},{"language":"en","tag":"Travel Rule","count":55},{"language":"ar","tag":"Travel Rule","count":55},{"language":"ca","tag":"Travel Rule","count":55},{"language":"de","tag":"Travel Rule","count":55},{"language":"es","tag":"Travel Rule","count":55},{"language":"fr","tag":"Travel Rule","count":55},{"language":"hi","tag":"Travel Rule","count":55},{"language":"id","tag":"Travel Rule","count":55},{"language":"it","tag":"Travel Rule","count":55},{"language":"ja","tag":"トラベルルール","count":55},{"language":"ko","tag":"Travel Rule","count":55},{"language":"pt-BR","tag":"Travel Rule","count":55},{"language":"pt","tag":"Travel Rule","count":55},{"language":"ru","tag":"Travel Rule","count":55},{"language":"zh","tag":"Travel Rule","count":55},{"language":"en","tag":"Verification","count":48},{"language":"ar","tag":"التحقق","count":48},{"language":"ca","tag":"Verificació","count":48},{"language":"de","tag":"Verifizierung","count":48},{"language":"es","tag":"Verificación","count":48},{"language":"fr","tag":"Vérification","count":48},{"language":"hi","tag":"सत्यापन","count":48},{"language":"id","tag":"Verifikasi","count":48},{"language":"it","tag":"Verifica","count":48},{"language":"ja","tag":"検証","count":48},{"language":"pt-BR","tag":"Verificação","count":48},{"language":"pt","tag":"Verificação","count":48},{"language":"ru","tag":"Верификация","count":48},{"language":"zh","tag":"验证","count":48},{"language":"en","tag":"Authentication","count":37},{"language":"ar","tag":"المصادقة","count":37},{"language":"ca","tag":"Autenticació","count":37},{"language":"de","tag":"Authentifizierung","count":37},{"language":"es","tag":"Autenticación","count":37},{"language":"fr","tag":"Authentification","count":37},{"language":"hi","tag":"प्रमाणीकरण","count":37},{"language":"id","tag":"Autentikasi","count":37},{"language":"it","tag":"Autenticazione","count":37},{"language":"ja","tag":"認証","count":37},{"language":"pt-BR","tag":"Autenticação","count":37},{"language":"pt","tag":"Autenticação","count":37},{"language":"ru","tag":"Аутентификация","count":37},{"language":"zh","tag":"身份认证","count":37},{"language":"en","tag":"Digital ID wallets","count":35},{"language":"en","tag":"User and Business Verifications","count":35},{"language":"ar","tag":"محافظ الهوية الرقمية","count":35},{"language":"ar","tag":"التحقق من المستخدمين والشركات","count":35},{"language":"ca","tag":"Carteres d'identitat digital","count":35},{"language":"ca","tag":"Verificacions d'usuaris i empreses","count":35},{"language":"de","tag":"Digitale ID-Wallets","count":35},{"language":"de","tag":"Benutzer- und Unternehmensverifizierungen","count":35},{"language":"es","tag":"Wallets de identidad digital","count":35},{"language":"es","tag":"Verificaciones de usuarios y empresas","count":35},{"language":"fr","tag":"Portefeuilles d'identité numérique","count":35},{"language":"fr","tag":"Vérifications des utilisateurs et des entreprises","count":35},{"language":"hi","tag":"डिजिटल ID वॉलेट","count":35},{"language":"hi","tag":"उपयोगकर्ता और व्यवसाय सत्यापन","count":35},{"language":"id","tag":"Dompet ID Digital","count":35},{"language":"id","tag":"Verifikasi Pengguna dan Bisnis","count":35},{"language":"it","tag":"Wallet di identità digitale","count":35},{"language":"it","tag":"Verifiche di utenti e aziende","count":35},{"language":"ja","tag":"デジタルIDウォレット","count":35},{"language":"ja","tag":"ユーザーと企業の認証","count":35},{"language":"ko","tag":"디지털 신분증 지갑","count":35},{"language":"ko","tag":"사용자 인증 및 기업 확인","count":35},{"language":"pt-BR","tag":"Carteiras de identidade digital","count":35},{"language":"pt-BR","tag":"Verificações de usuários e empresas","count":35},{"language":"pt","tag":"Carteiras de identidade digital","count":35},{"language":"pt","tag":"Verificações de utilizadores e empresas","count":35},{"language":"ru","tag":"Цифровые ID-кошельки","count":35},{"language":"ru","tag":"Верификация пользователей и компаний","count":35},{"language":"zh","tag":"数字身份钱包","count":35},{"language":"zh","tag":"用户与企业验证","count":35},{"language":"ko","tag":"거래 모니터링","count":28}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","href":"/_mintlify/custom/didit-0f962782/714dd91730ddd114/style.css"}],"page":{"pagePath":"fr/standalone-apis/document-ai","slug":"/fr/standalone-apis/document-ai","pageMetadata":{"title":"API d'extraction de données de documents personnalisée","sidebarTitle":"API Document AI","description":"Didit extrait les champs définis par vous de tout PDF ou image via POST /v3/document-ai/. Contrôle de falsification. $0.20 par document.","keywords":["API extraction de données de documents","API Document AI","OCR de documents personnalisé","API justificatif de fonds","extraction de fiche de paie","OCR de relevés bancaires","extraction de documents KYC","détection de falsification de documents","API Didit"],"openapi":"fr/openapi-25.json POST /v3/document-ai/","href":"/fr/standalone-apis/document-ai"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Didit extrait les champs définis par vous de tout PDF ou image via POST /v3/document-ai/. Contrôle de falsification. $0.20 par document.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Note,Table}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Envoyez un document et la liste des champs à lire dans ce document. Didit exécute sur le fichier son modèle d’extraction par défaut, renvoie tous les champs avec leur type (`,_jsx(_components.code,{children:`text`}),`, `,_jsx(_components.code,{children:`number`}),` ou `,_jsx(_components.code,{children:`date`}),` au format `,_jsx(_components.code,{children:`YYYY-MM-DD`}),`), détecte et décode les codes QR et codes-barres pris en charge, vérifie que le fichier n’a pas été manipulé et, si vous le souhaitez, compare le nom figurant sur le document à la personne ou à l’entreprise attendue. Utilisez-le pour les justificatifs de fonds, les fiches de paie, les relevés bancaires, les documents fiscaux, les factures ou tout document qui ne correspond pas à un modèle fixe.`]}),`\n`,_jsxs(_components.p,{children:[`Il s’agit de la version serveur à serveur de l’étape `,_jsx(_components.a,{href:`/fr/core-technology/document-ai/overview`,children:`Document AI`}),` hébergée. La requête est au format `,_jsx(_components.code,{children:`multipart/form-data`}),` : le fichier est transmis dans `,_jsx(_components.code,{children:`document`}),`, et les définitions des champs dans `,_jsx(_components.code,{children:`fields`}),`, sous la forme d’une chaîne contenant un tableau JSON encodé.`]}),`\n`,_jsx(Heading,{level:`2`,id:`définir-les-champs-à-extraire`,children:`Définir les champs à extraire`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`fields`}),` est un tableau JSON de 1 à 30 éléments, envoyé sous la forme d’une seule chaîne. Chaque élément comporte une `,_jsx(_components.code,{children:`key`}),` (lettres minuscules, chiffres et tirets bas, unique dans la requête), un `,_jsx(_components.code,{children:`name`}),` lisible, une `,_jsx(_components.code,{children:`instruction`}),` qui indique au modèle ce qu’il doit rechercher, un `,_jsx(_components.code,{children:`type`}),` (`,_jsx(_components.code,{children:`text`}),`, `,_jsx(_components.code,{children:`number`}),` ou `,_jsx(_components.code,{children:`date`}),`) et deux indicateurs : `,_jsx(_components.code,{children:`required`}),` et `,_jsx(_components.code,{children:`is_full_name`}),`.`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`30`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`30`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"key\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"account_holder\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Account holder\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"instruction\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Full name of the person or company the account belongs to\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"text\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"required\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"is_full_name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"key\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"balance\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Closing balance\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"instruction\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Closing balance shown on the statement, as a number without the currency symbol\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"number\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"required\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"key\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"currency\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Currency\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"instruction\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Three-letter currency code of the balance\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"text\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"key\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"statement_date\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Statement date\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"instruction\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Date the statement was issued\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"date\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"required\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`]`})}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`Dans une requête multipart, le tableau entier constitue une seule valeur de formulaire :`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`6`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`6`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -X`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://verification.didit.me/v3/document-ai/`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"x-api-key: `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`$DIDIT_API_KEY`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -F`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"document=@./bank-statement.pdf\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -F`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'fields=[{\"key\":\"account_holder\",\"name\":\"Account holder\",\"instruction\":\"Full name of the account holder\",\"type\":\"text\",\"required\":true,\"is_full_name\":true},{\"key\":\"balance\",\"name\":\"Closing balance\",\"instruction\":\"Closing balance as a number\",\"type\":\"number\",\"required\":true}]'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -F`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"expected_first_name=Jane\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -F`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"expected_last_name=Doe\"`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`La réponse reprend les `,_jsx(_components.code,{children:`fields`}),` normalisés et renvoie `,_jsx(_components.code,{children:`extracted_data`}),`, indexé par vos valeurs `,_jsx(_components.code,{children:`key`}),`, avec `,_jsx(_components.code,{children:`null`}),` pour tout ce que le modèle n’a pas pu trouver. `,_jsx(_components.code,{children:`name`}),`, `,_jsx(_components.code,{children:`instruction`}),` et `,_jsx(_components.code,{children:`type`}),` sont facultatifs pour chaque élément (`,_jsx(_components.code,{children:`type`}),` vaut `,_jsx(_components.code,{children:`text`}),` par défaut) ; `,_jsx(_components.code,{children:`key`}),` est obligatoire. Envoyer `,_jsx(_components.code,{children:`fields`}),` sous forme de clés de formulaire de type crochets (`,_jsx(_components.code,{children:`fields[0][key]=...`}),`), ou sous une autre forme qu’un tableau JSON, renvoie `,_jsx(_components.code,{children:`400`}),` avant le lancement de toute extraction. Rien n’est donc facturé.`]}),`\n`,_jsx(Heading,{level:`2`,id:`codes-qr-et-codes-barres`,children:`Codes QR et codes-barres`}),`\n`,_jsxs(_components.p,{children:[`Chaque réponse réussie inclut `,_jsx(_components.code,{children:`document_ai.detected_codes`}),`. Chaque élément contient :`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Champ`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`type`})}),_jsxs(_components.td,{children:[`Symbologie détectée, par exemple `,_jsx(_components.code,{children:`QR_CODE`}),`, `,_jsx(_components.code,{children:`CODE_128`}),`, `,_jsx(_components.code,{children:`EAN_13`}),`, `,_jsx(_components.code,{children:`DATA_MATRIX`}),` ou `,_jsx(_components.code,{children:`PDF_417`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`page_number`})}),_jsx(_components.td,{children:`Numéro de la page, à partir de 1`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`position`})}),_jsxs(_components.td,{children:[`Polygone détecté, en pixels de la page rendue, ou `,_jsx(_components.code,{children:`null`}),` lorsqu’aucune localisation fiable n’est disponible`]})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[_jsx(_components.code,{children:`x`}),`, `,_jsx(_components.code,{children:`y`}),`, `,_jsx(_components.code,{children:`width`}),`, `,_jsx(_components.code,{children:`height`})]}),_jsxs(_components.td,{children:[`Cadre englobant, en pixels de la page rendue, ou `,_jsx(_components.code,{children:`null`}),` lorsqu’aucune localisation fiable n’est disponible`]})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[_jsx(_components.code,{children:`page_width`}),`, `,_jsx(_components.code,{children:`page_height`})]}),_jsx(_components.td,{children:`Dimensions de la page rendue utilisées par les coordonnées`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`parsed_payload`})}),_jsxs(_components.td,{children:[`Chaîne décodée ou valeur structurée, ou `,_jsx(_components.code,{children:`null`}),` lorsque le code ne peut être que localisé`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`raw_payload`})}),_jsx(_components.td,{children:`Payload brut du décodeur, sous forme de chaîne base64 lorsqu’il est disponible ; sinon, chaîne vide`})]})]})]}),`\n`,_jsxs(_components.p,{children:[`Le tableau couvre chaque page traitée d’un PDF et reste vide lorsqu’aucun code pris en charge n’est trouvé. Didit ne devine jamais un payload : des codes QR endommagés peuvent être renvoyés avec leur position et `,_jsx(_components.code,{children:`parsed_payload: null`}),`, tandis que les échecs de détection de codes ne font pas échouer la requête Document AI.`]}),`\n`,_jsx(Heading,{level:`2`,id:`correspondance-de-nom`,children:`Correspondance de nom`}),`\n`,_jsxs(_components.p,{children:[`Marquez au plus un champ avec `,_jsx(_components.code,{children:`is_full_name: true`}),` et indiquez la personne ou l’entreprise à laquelle le document doit appartenir :`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Vous vérifiez`}),_jsx(_components.th,{children:`Envoyez`}),_jsx(_components.th,{children:`Le nom est comparé à`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Une personne`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`expected_first_name`}),` + `,_jsx(_components.code,{children:`expected_last_name`})]}),_jsx(_components.td,{children:`le nom complet de la personne`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Une entreprise`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`expected_company_name`}),` (+ `,_jsx(_components.code,{children:`expected_company_country`}),`, facultatif, code ISO à 2 lettres)`]}),_jsx(_components.td,{children:`le nom de l’entreprise`})]})]})]}),`\n`,_jsxs(_components.p,{children:[`Envoyez l’un ou l’autre groupe, pas les deux. Lorsqu’un nom est extrait et qu’un nom attendu est présent, la réponse inclut `,_jsx(_components.code,{children:`name_match_score`}),` (de 0 à 100) et `,_jsx(_components.code,{children:`name_on_document`}),`. Un score inférieur à `,_jsx(_components.code,{children:`document_ai_name_match_score_threshold`}),` (par défaut `,_jsx(_components.code,{children:`80`}),`) déclenche l’avertissement `,_jsx(_components.code,{children:`DOCUMENT_AI_NAME_MISMATCH`}),` et applique `,_jsx(_components.code,{children:`document_ai_name_mismatch_action`}),`. Si aucun champ n’est marqué `,_jsx(_components.code,{children:`is_full_name`}),`, Didit utilise le premier champ de type texte dont la clé ressemble à un nom (`,_jsx(_components.code,{children:`name`}),`, `,_jsx(_components.code,{children:`holder`}),`, `,_jsx(_components.code,{children:`full_name`}),`, `,_jsx(_components.code,{children:`account_holder`}),`) ; marquez explicitement le champ lorsque vous voulez contrôler la valeur comparée. Lorsqu’aucune valeur de nom ne peut être trouvée sur le document, ou qu’aucun nom attendu n’est envoyé, la vérification du nom est ignorée et `,_jsx(_components.code,{children:`name_match_score`}),` vaut `,_jsx(_components.code,{children:`null`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`risques-et-actions`,children:`Risques et actions`}),`\n`,_jsxs(_components.p,{children:[`Chaque risque ci-dessous correspond à un paramètre d’action que vous pouvez définir par requête : `,_jsx(_components.code,{children:`DECLINE`}),`, `,_jsx(_components.code,{children:`REVIEW`}),` ou `,_jsx(_components.code,{children:`NO_ACTION`}),`. L’action la plus stricte déclenchée détermine `,_jsx(_components.code,{children:`document_ai.status`}),` (`,_jsx(_components.code,{children:`Declined`}),` > `,_jsx(_components.code,{children:`In Review`}),` > `,_jsx(_components.code,{children:`Approved`}),`), et chaque risque déclenché est listé dans `,_jsx(_components.code,{children:`document_ai.warnings`}),`. Les valeurs par défaut correspondent à celles de l’étape de workflow hébergée ; consultez `,_jsx(_components.a,{href:`/fr/core-technology/document-ai/warnings-document-ai`,children:`Règles et avertissements Document AI`}),` pour savoir comment chaque risque est détecté.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Risque`}),_jsx(_components.th,{children:`Paramètre`}),_jsx(_components.th,{children:`Par défaut`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`DOCUMENT_AI_UNREADABLE_DOCUMENT`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`document_ai_unreadable_document_action`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`REVIEW`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`DOCUMENT_AI_MISSING_REQUIRED_FIELDS`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`document_ai_missing_required_fields_action`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`REVIEW`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`DOCUMENT_AI_SUSPECTED_MANIPULATION`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`document_ai_document_tampering_action`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`DECLINE`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`DOCUMENT_AI_NAME_MISMATCH`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`document_ai_name_mismatch_action`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`NO_ACTION`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`DOCUMENT_AI_UNSUPPORTED_FILE`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`document_ai_unsupported_file_action`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`REVIEW`})})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`fichiers-sauvegarde-et-facturation`,children:`Fichiers, sauvegarde et facturation`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Fichiers acceptés :`}),` PDF (plusieurs pages prises en charge), JPG, JPEG, PNG, TIFF, WebP, ou un ZIP contenant le document, jusqu’à 30 Mo. Les PDF chiffrés renvoient `,_jsx(_components.code,{children:`400`}),` ; importez à la place un PDF déchiffré ou une photo.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:_jsx(_components.code,{children:`save_api_request`})}),` (par défaut `,_jsx(_components.code,{children:`true`}),`) : la requête, les champs extraits et les codes détectés apparaissent dans la Business Console, sous `,_jsx(_components.strong,{children:`Vérifications manuelles`}),`, où votre équipe peut les examiner. Définissez-le sur `,_jsx(_components.code,{children:`false`}),` pour ne pas les sauvegarder.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:_jsx(_components.code,{children:`vendor_data`})}),` et `,_jsx(_components.strong,{children:_jsx(_components.code,{children:`metadata`})}),` sont renvoyés sans modification dans la réponse, afin que vous puissiez relier le résultat à vos propres enregistrements.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Prix :`}),` $0.20 par document, facturé lorsque le document est traité et qu’un statut est renvoyé. La remise de votre forfait s’applique. Voir `,_jsx(_components.a,{href:`/fr/getting-started/pricing#tarification-des-api-autonomes-serveur-%C3%A0-serveur`,children:`Tarifs`}),`.`]}),`\n`]}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[`Vous avez besoin que l’utilisateur téléverse lui-même le document, que vous collectiez jusqu’à 3 documents dans un même parcours, que l’écran de téléversement soit traduit automatiquement, ou que vous croisiez les champs extraits avec des données d’identité ou de questionnaire ? Utilisez plutôt l’étape de workflow `,_jsx(_components.a,{href:`/fr/core-technology/document-ai/overview`,children:`Document AI`}),` hébergée.`]})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"API d'extraction de données de documents personnalisée","sidebarTitle":"API Document AI","description":"Didit extrait les champs définis par vous de tout PDF ou image via POST /v3/document-ai/. Contrôle de falsification. $0.20 par document.","keywords":["API extraction de données de documents","API Document AI","OCR de documents personnalisé","API justificatif de fonds","extraction de fiche de paie","OCR de relevés bancaires","extraction de documents KYC","détection de falsification de documents","API Didit"],"openapi":"fr/openapi-25.json POST /v3/document-ai/","href":"/fr/standalone-apis/document-ai"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Définir les champs à extraire","slug":"définir-les-champs-à-extraire","depth":2,"children":[]},{"title":"Codes QR et codes-barres","slug":"codes-qr-et-codes-barres","depth":2,"children":[]},{"title":"Correspondance de nom","slug":"correspondance-de-nom","depth":2,"children":[]},{"title":"Risques et actions","slug":"risques-et-actions","depth":2,"children":[]},{"title":"Fichiers, sauvegarde et facturation","slug":"fichiers-sauvegarde-et-facturation","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/didit-0f962782/5fb7c0c336c92274/snippets/data/database-validation-coverage.js","/_mintlify/custom/didit-0f962782/4ac7d3c2a19a354d/database-validation-playground.js"],"openApiReferenceData":{"operation":{"summary":"Document AI (extraction de champs personnalisés + vérifications de falsification)","description":"Didit extrait les champs définis par vous de tout PDF ou image via POST /v3/document-ai/. Contrôle de falsification. $0.20 par document.","operationId":"post_v3document-ai","x-didit-sdk":{"resource":"document_ai","method":"analyze","auth":"api_key","server":true},"tags":["Standalone APIs"],"security":["fd01abc8-f094-4545-915d-6136eba6608c"],"requestBody":"ea651d94-571a-461e-896b-808a748cf265","responses":{"200":"aa6629c3-b100-4256-84b7-19312c6f9594","400":"080de0e0-d430-438b-87f9-777e77e91b16","403":"2b92f719-3b23-460b-ba22-ecfe5e64521b","429":"a9a5eb64-100e-4b03-8087-3d9182ba18fb","503":"a5ec0396-3c56-4c94-a433-bc7d52313e13"},"x-codeSamples":[{"lang":"python","label":"Python","source":"from didit import Didit\n\n# Reads DIDIT_API_KEY.\nclient = Didit()\n\nresult = client.document_ai.analyze(\n document=open(\"document.pdf\", \"rb\"),\n fields=\"[{\\\"key\\\": \\\"employer_name\\\", \\\"name\\\": \\\"Employer name\\\", \\\"instruction\\\": \\\"The employer or company issuing the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"employee_name\\\", \\\"name\\\": \\\"Employee name\\\", \\\"instruction\\\": \\\"The full name of the employee as printed on the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": true}, {\\\"key\\\": \\\"net_pay\\\", \\\"name\\\": \\\"Net pay\\\", \\\"instruction\\\": \\\"The net amount paid to the employee for the period.\\\", \\\"type\\\": \\\"number\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"pay_date\\\", \\\"name\\\": \\\"Pay date\\\", \\\"instruction\\\": \\\"The payment date shown on the payslip.\\\", \\\"type\\\": \\\"date\\\", \\\"required\\\": false, \\\"is_full_name\\\": false}]\",\n)\nprint(result)"},{"lang":"javascript","label":"Node.js","source":"import Didit, { fileFromPath } from \"@didit-protocol/sdk-node\";\n\n// Reads DIDIT_API_KEY.\nconst didit = new Didit();\n\nconst result = await didit.documentAi.analyze({\n document: await fileFromPath(\"document.pdf\"),\n fields: \"[{\\\"key\\\": \\\"employer_name\\\", \\\"name\\\": \\\"Employer name\\\", \\\"instruction\\\": \\\"The employer or company issuing the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"employee_name\\\", \\\"name\\\": \\\"Employee name\\\", \\\"instruction\\\": \\\"The full name of the employee as printed on the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": true}, {\\\"key\\\": \\\"net_pay\\\", \\\"name\\\": \\\"Net pay\\\", \\\"instruction\\\": \\\"The net amount paid to the employee for the period.\\\", \\\"type\\\": \\\"number\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"pay_date\\\", \\\"name\\\": \\\"Pay date\\\", \\\"instruction\\\": \\\"The payment date shown on the payslip.\\\", \\\"type\\\": \\\"date\\\", \\\"required\\\": false, \\\"is_full_name\\\": false}]\",\n});\nconsole.log(result);"},{"lang":"go","label":"Go","source":"ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\nresult, err := client.DocumentAi.Analyze(ctx, didit.DocumentAiAnalyzeParams{\n\tDocument: didit.FileFromPath(\"document.pdf\"),\n\tFields: \"[{\\\"key\\\": \\\"employer_name\\\", \\\"name\\\": \\\"Employer name\\\", \\\"instruction\\\": \\\"The employer or company issuing the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"employee_name\\\", \\\"name\\\": \\\"Employee name\\\", \\\"instruction\\\": \\\"The full name of the employee as printed on the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": true}, {\\\"key\\\": \\\"net_pay\\\", \\\"name\\\": \\\"Net pay\\\", \\\"instruction\\\": \\\"The net amount paid to the employee for the period.\\\", \\\"type\\\": \\\"number\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"pay_date\\\", \\\"name\\\": \\\"Pay date\\\", \\\"instruction\\\": \\\"The payment date shown on the payslip.\\\", \\\"type\\\": \\\"date\\\", \\\"required\\\": false, \\\"is_full_name\\\": false}]\",\n})\nif err != nil {\n\tlog.Fatal(err)\n}\nfmt.Printf(\"%+v\\n\", result)"},{"lang":"java","label":"Java","source":"import java.nio.file.Path;\nimport me.didit.Didit;\nimport me.didit.types.DocumentAiAnalyzeParams;\n\n// Reads DIDIT_API_KEY.\nDidit client = new Didit();\n\nvar result = client.documentAi().analyze(DocumentAiAnalyzeParams.builder()\n .document(Path.of(\"document.pdf\"))\n .fields(\"[{\\\"key\\\": \\\"employer_name\\\", \\\"name\\\": \\\"Employer name\\\", \\\"instruction\\\": \\\"The employer or company issuing the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"employee_name\\\", \\\"name\\\": \\\"Employee name\\\", \\\"instruction\\\": \\\"The full name of the employee as printed on the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": true}, {\\\"key\\\": \\\"net_pay\\\", \\\"name\\\": \\\"Net pay\\\", \\\"instruction\\\": \\\"The net amount paid to the employee for the period.\\\", \\\"type\\\": \\\"number\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"pay_date\\\", \\\"name\\\": \\\"Pay date\\\", \\\"instruction\\\": \\\"The payment date shown on the payslip.\\\", \\\"type\\\": \\\"date\\\", \\\"required\\\": false, \\\"is_full_name\\\": false}]\")\n .build());\nSystem.out.println(result);"},{"lang":"php","label":"PHP","source":"\u003c?php\n\nrequire 'vendor/autoload.php';\n\nuse Didit\\DiditClient;\nuse Didit\\File;\n\n// Reads DIDIT_API_KEY.\n$didit = new DiditClient();\n\n$result = $didit->documentAi->analyze([\n 'document' => File::fromPath('document.pdf'),\n 'fields' => '[{\"key\": \"employer_name\", \"name\": \"Employer name\", \"instruction\": \"The employer or company issuing the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": false}, {\"key\": \"employee_name\", \"name\": \"Employee name\", \"instruction\": \"The full name of the employee as printed on the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": true}, {\"key\": \"net_pay\", \"name\": \"Net pay\", \"instruction\": \"The net amount paid to the employee for the period.\", \"type\": \"number\", \"required\": true, \"is_full_name\": false}, {\"key\": \"pay_date\", \"name\": \"Pay date\", \"instruction\": \"The payment date shown on the payslip.\", \"type\": \"date\", \"required\": false, \"is_full_name\": false}]',\n]);\nprint_r($result->toArray());"},{"lang":"ruby","label":"Ruby","source":"require \"didit\"\n\n# Reads DIDIT_API_KEY.\ndidit = Didit::Client.new\n\nresult = didit.document_ai.analyze(\n document: Pathname(\"document.pdf\"),\n fields: \"[{\\\"key\\\": \\\"employer_name\\\", \\\"name\\\": \\\"Employer name\\\", \\\"instruction\\\": \\\"The employer or company issuing the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"employee_name\\\", \\\"name\\\": \\\"Employee name\\\", \\\"instruction\\\": \\\"The full name of the employee as printed on the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": true}, {\\\"key\\\": \\\"net_pay\\\", \\\"name\\\": \\\"Net pay\\\", \\\"instruction\\\": \\\"The net amount paid to the employee for the period.\\\", \\\"type\\\": \\\"number\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"pay_date\\\", \\\"name\\\": \\\"Pay date\\\", \\\"instruction\\\": \\\"The payment date shown on the payslip.\\\", \\\"type\\\": \\\"date\\\", \\\"required\\\": false, \\\"is_full_name\\\": false}]\"\n)\nputs result.to_h"},{"lang":"csharp","label":".NET","source":"using System;\nusing System.Text.Json;\nusing Didit;\n\n// Reads DIDIT_API_KEY.\nusing var client = new DiditClient();\n\nvar result = await client.DocumentAi.AnalyzeAsync(new DocumentAiAnalyzeParams\n{\n Document = FileUpload.FromPath(\"document.pdf\"),\n Fields = \"[{\\\"key\\\": \\\"employer_name\\\", \\\"name\\\": \\\"Employer name\\\", \\\"instruction\\\": \\\"The employer or company issuing the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"employee_name\\\", \\\"name\\\": \\\"Employee name\\\", \\\"instruction\\\": \\\"The full name of the employee as printed on the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": true}, {\\\"key\\\": \\\"net_pay\\\", \\\"name\\\": \\\"Net pay\\\", \\\"instruction\\\": \\\"The net amount paid to the employee for the period.\\\", \\\"type\\\": \\\"number\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"pay_date\\\", \\\"name\\\": \\\"Pay date\\\", \\\"instruction\\\": \\\"The payment date shown on the payslip.\\\", \\\"type\\\": \\\"date\\\", \\\"required\\\": false, \\\"is_full_name\\\": false}]\",\n});\nConsole.WriteLine(JsonSerializer.Serialize(result));"}],"method":"post","type":"path","servers":["a9065592-827a-4694-9173-00fef1d85496"],"path":"/v3/document-ai/","baseUrlOptions":["https://verification.didit.me"],"title":"Document AI (extraction de champs personnalisés + vérifications de falsification)","codeSamples":[{"label":"Python","lang":"python","source":"from didit import Didit\n\n# Reads DIDIT_API_KEY.\nclient = Didit()\n\nresult = client.document_ai.analyze(\n document=open(\"document.pdf\", \"rb\"),\n fields=\"[{\\\"key\\\": \\\"employer_name\\\", \\\"name\\\": \\\"Employer name\\\", \\\"instruction\\\": \\\"The employer or company issuing the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"employee_name\\\", \\\"name\\\": \\\"Employee name\\\", \\\"instruction\\\": \\\"The full name of the employee as printed on the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": true}, {\\\"key\\\": \\\"net_pay\\\", \\\"name\\\": \\\"Net pay\\\", \\\"instruction\\\": \\\"The net amount paid to the employee for the period.\\\", \\\"type\\\": \\\"number\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"pay_date\\\", \\\"name\\\": \\\"Pay date\\\", \\\"instruction\\\": \\\"The payment date shown on the payslip.\\\", \\\"type\\\": \\\"date\\\", \\\"required\\\": false, \\\"is_full_name\\\": false}]\",\n)\nprint(result)"},{"label":"Node.js","lang":"javascript","source":"import Didit, { fileFromPath } from \"@didit-protocol/sdk-node\";\n\n// Reads DIDIT_API_KEY.\nconst didit = new Didit();\n\nconst result = await didit.documentAi.analyze({\n document: await fileFromPath(\"document.pdf\"),\n fields: \"[{\\\"key\\\": \\\"employer_name\\\", \\\"name\\\": \\\"Employer name\\\", \\\"instruction\\\": \\\"The employer or company issuing the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"employee_name\\\", \\\"name\\\": \\\"Employee name\\\", \\\"instruction\\\": \\\"The full name of the employee as printed on the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": true}, {\\\"key\\\": \\\"net_pay\\\", \\\"name\\\": \\\"Net pay\\\", \\\"instruction\\\": \\\"The net amount paid to the employee for the period.\\\", \\\"type\\\": \\\"number\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"pay_date\\\", \\\"name\\\": \\\"Pay date\\\", \\\"instruction\\\": \\\"The payment date shown on the payslip.\\\", \\\"type\\\": \\\"date\\\", \\\"required\\\": false, \\\"is_full_name\\\": false}]\",\n});\nconsole.log(result);"},{"label":"Go","lang":"go","source":"ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\nresult, err := client.DocumentAi.Analyze(ctx, didit.DocumentAiAnalyzeParams{\n\tDocument: didit.FileFromPath(\"document.pdf\"),\n\tFields: \"[{\\\"key\\\": \\\"employer_name\\\", \\\"name\\\": \\\"Employer name\\\", \\\"instruction\\\": \\\"The employer or company issuing the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"employee_name\\\", \\\"name\\\": \\\"Employee name\\\", \\\"instruction\\\": \\\"The full name of the employee as printed on the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": true}, {\\\"key\\\": \\\"net_pay\\\", \\\"name\\\": \\\"Net pay\\\", \\\"instruction\\\": \\\"The net amount paid to the employee for the period.\\\", \\\"type\\\": \\\"number\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"pay_date\\\", \\\"name\\\": \\\"Pay date\\\", \\\"instruction\\\": \\\"The payment date shown on the payslip.\\\", \\\"type\\\": \\\"date\\\", \\\"required\\\": false, \\\"is_full_name\\\": false}]\",\n})\nif err != nil {\n\tlog.Fatal(err)\n}\nfmt.Printf(\"%+v\\n\", result)"},{"label":"Java","lang":"java","source":"import java.nio.file.Path;\nimport me.didit.Didit;\nimport me.didit.types.DocumentAiAnalyzeParams;\n\n// Reads DIDIT_API_KEY.\nDidit client = new Didit();\n\nvar result = client.documentAi().analyze(DocumentAiAnalyzeParams.builder()\n .document(Path.of(\"document.pdf\"))\n .fields(\"[{\\\"key\\\": \\\"employer_name\\\", \\\"name\\\": \\\"Employer name\\\", \\\"instruction\\\": \\\"The employer or company issuing the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"employee_name\\\", \\\"name\\\": \\\"Employee name\\\", \\\"instruction\\\": \\\"The full name of the employee as printed on the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": true}, {\\\"key\\\": \\\"net_pay\\\", \\\"name\\\": \\\"Net pay\\\", \\\"instruction\\\": \\\"The net amount paid to the employee for the period.\\\", \\\"type\\\": \\\"number\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"pay_date\\\", \\\"name\\\": \\\"Pay date\\\", \\\"instruction\\\": \\\"The payment date shown on the payslip.\\\", \\\"type\\\": \\\"date\\\", \\\"required\\\": false, \\\"is_full_name\\\": false}]\")\n .build());\nSystem.out.println(result);"},{"label":"PHP","lang":"php","source":"\u003c?php\n\nrequire 'vendor/autoload.php';\n\nuse Didit\\DiditClient;\nuse Didit\\File;\n\n// Reads DIDIT_API_KEY.\n$didit = new DiditClient();\n\n$result = $didit->documentAi->analyze([\n 'document' => File::fromPath('document.pdf'),\n 'fields' => '[{\"key\": \"employer_name\", \"name\": \"Employer name\", \"instruction\": \"The employer or company issuing the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": false}, {\"key\": \"employee_name\", \"name\": \"Employee name\", \"instruction\": \"The full name of the employee as printed on the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": true}, {\"key\": \"net_pay\", \"name\": \"Net pay\", \"instruction\": \"The net amount paid to the employee for the period.\", \"type\": \"number\", \"required\": true, \"is_full_name\": false}, {\"key\": \"pay_date\", \"name\": \"Pay date\", \"instruction\": \"The payment date shown on the payslip.\", \"type\": \"date\", \"required\": false, \"is_full_name\": false}]',\n]);\nprint_r($result->toArray());"},{"label":"Ruby","lang":"ruby","source":"require \"didit\"\n\n# Reads DIDIT_API_KEY.\ndidit = Didit::Client.new\n\nresult = didit.document_ai.analyze(\n document: Pathname(\"document.pdf\"),\n fields: \"[{\\\"key\\\": \\\"employer_name\\\", \\\"name\\\": \\\"Employer name\\\", \\\"instruction\\\": \\\"The employer or company issuing the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"employee_name\\\", \\\"name\\\": \\\"Employee name\\\", \\\"instruction\\\": \\\"The full name of the employee as printed on the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": true}, {\\\"key\\\": \\\"net_pay\\\", \\\"name\\\": \\\"Net pay\\\", \\\"instruction\\\": \\\"The net amount paid to the employee for the period.\\\", \\\"type\\\": \\\"number\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"pay_date\\\", \\\"name\\\": \\\"Pay date\\\", \\\"instruction\\\": \\\"The payment date shown on the payslip.\\\", \\\"type\\\": \\\"date\\\", \\\"required\\\": false, \\\"is_full_name\\\": false}]\"\n)\nputs result.to_h"},{"label":".NET","lang":"csharp","source":"using System;\nusing System.Text.Json;\nusing Didit;\n\n// Reads DIDIT_API_KEY.\nusing var client = new DiditClient();\n\nvar result = await client.DocumentAi.AnalyzeAsync(new DocumentAiAnalyzeParams\n{\n Document = FileUpload.FromPath(\"document.pdf\"),\n Fields = \"[{\\\"key\\\": \\\"employer_name\\\", \\\"name\\\": \\\"Employer name\\\", \\\"instruction\\\": \\\"The employer or company issuing the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"employee_name\\\", \\\"name\\\": \\\"Employee name\\\", \\\"instruction\\\": \\\"The full name of the employee as printed on the payslip.\\\", \\\"type\\\": \\\"text\\\", \\\"required\\\": true, \\\"is_full_name\\\": true}, {\\\"key\\\": \\\"net_pay\\\", \\\"name\\\": \\\"Net pay\\\", \\\"instruction\\\": \\\"The net amount paid to the employee for the period.\\\", \\\"type\\\": \\\"number\\\", \\\"required\\\": true, \\\"is_full_name\\\": false}, {\\\"key\\\": \\\"pay_date\\\", \\\"name\\\": \\\"Pay date\\\", \\\"instruction\\\": \\\"The payment date shown on the payslip.\\\", \\\"type\\\": \\\"date\\\", \\\"required\\\": false, \\\"is_full_name\\\": false}]\",\n});\nConsole.WriteLine(JsonSerializer.Serialize(result));"}],"requiredOnlyExamples":false,"requestExampleType":"codeSamples","responseExampleType":"generated","prefillPlaygroundWithExample":true,"prefillPlaygroundExamples":[{"body.document":"\u003cstring>","body.fields":"[{\"key\": \"employer_name\", \"name\": \"Employer name\", \"instruction\": \"The employer or company issuing the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": false}, {\"key\": \"employee_name\", \"name\": \"Employee name\", \"instruction\": \"The full name of the employee as printed on the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": true}, {\"key\": \"net_pay\", \"name\": \"Net pay\", \"instruction\": \"The net amount paid to the employee for the period.\", \"type\": \"number\", \"required\": true, \"is_full_name\": false}, {\"key\": \"pay_date\", \"name\": \"Pay date\", \"instruction\": \"The payment date shown on the payslip.\", \"type\": \"date\", \"required\": false, \"is_full_name\": false}]","body.expected_first_name":"Sophia","body.expected_last_name":"Martinez","body.expected_company_name":"\u003cstring>","body.expected_company_country":"\u003cstring>","body.document_ai_name_match_score_threshold":80,"body.document_ai_unreadable_document_action":"REVIEW","body.document_ai_missing_required_fields_action":"REVIEW","body.document_ai_document_tampering_action":"DECLINE","body.document_ai_name_mismatch_action":"NO_ACTION","body.document_ai_unsupported_file_action":"REVIEW","body.save_api_request":true,"body.vendor_data":"user-123","body.metadata":{"flow":"onboarding"}}]},"dependencies":{"parameters":{},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","required":["document","fields"],"properties":{"document":{"type":"string","format":"binary","description":"Le document à lire. Extensions autorisées : `tiff`, `jpg`, `jpeg`, `png`, `pdf`, `webp`, `zip`. Taille maximale de téléversement : **30 MB** (les fichiers plus volumineux sont rejetés avec une erreur `400`). Les fichiers PDF multipages sont pris en charge (prévoyez une latence plus élevée) ; les PDF chiffrés sont rejetés avec une erreur `400`. Les images sont automatiquement compressées avant le traitement.","isRequired":true,"uniqueKey":"document","typeLabel":"file"},"fields":{"type":"string","description":"Une chaîne de tableau encodée en JSON avec **1–30** définitions de champs (maximum 16 KB). Chaque élément : `key` (obligatoire, `^[a-z0-9_]{1,64}$`, unique — la clé renvoyée dans `extracted_data`), `name` (≤ 100 caractères, affiché dans les messages), `instruction` (≤ 500 caractères, ce que le modèle doit lire), `type` (`text` par défaut | `number` | `date`), `required` (booléen, par défaut `false`), `is_full_name` (booléen, par défaut `false`, au maximum un par requête). Les tableaux de formulaires de type crochets, le JSON invalide, les clés dupliquées ou plus d'un `is_full_name` renvoient `400` avant tout traitement ou facturation.","example":"[{\"key\": \"employer_name\", \"name\": \"Employer name\", \"instruction\": \"The employer or company issuing the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": false}, {\"key\": \"employee_name\", \"name\": \"Employee name\", \"instruction\": \"The full name of the employee as printed on the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": true}, {\"key\": \"net_pay\", \"name\": \"Net pay\", \"instruction\": \"The net amount paid to the employee for the period.\", \"type\": \"number\", \"required\": true, \"is_full_name\": false}, {\"key\": \"pay_date\", \"name\": \"Pay date\", \"instruction\": \"The payment date shown on the payslip.\", \"type\": \"date\", \"required\": false, \"is_full_name\": false}]","isRequired":true,"uniqueKey":"fields","typeLabel":"string"},"expected_first_name":{"type":"string","description":"Prénom à vérifier par rapport au champ du nom du document (recherche floue, tenant compte de la translittération). À utiliser conjointement avec `expected_last_name` ; ne peut pas être combiné avec `expected_company_name`.","example":"Sophia","uniqueKey":"expected_first_name","typeLabel":"string"},"expected_last_name":{"type":"string","description":"Nom de famille à vérifier par rapport au champ du nom du document, combiné avec `expected_first_name` pour `name_match_score`.","example":"Martinez","uniqueKey":"expected_last_name","typeLabel":"string"},"expected_company_name":{"type":"string","description":"Nom de l'entreprise à vérifier par rapport au champ de nom du document (pour les documents d'entreprise). Ne peut pas être combiné avec `expected_first_name` / `expected_last_name` (aucun exemple de valeur fourni intentionnellement — l'exemple de requête généré utilise les champs de personne physique ; remplacez-les par celui-ci lors de la vérification d'un document d'entreprise).","uniqueKey":"expected_company_name","typeLabel":"string"},"expected_company_country":{"type":"string","description":"Code pays ISO 3166-1 alpha-2 optionnel (deux lettres ASCII, par ex. `FR`) qui ajuste la normalisation du nom de l'entreprise pour `expected_company_name`. Utilisé uniquement avec `expected_company_name`.","uniqueKey":"expected_company_country","typeLabel":"string"},"document_ai_name_match_score_threshold":{"type":"integer","minimum":0,"maximum":100,"default":80,"description":"Valeur minimale de `name_match_score` (0–100) pour considérer le nom comme correspondant. Un score inférieur ajoute `DOCUMENT_AI_NAME_MISMATCH`, régi par `document_ai_name_mismatch_action`.","example":80,"uniqueKey":"document_ai_name_match_score_threshold","typeLabel":"integer"},"document_ai_unreadable_document_action":{"type":"string","enum":["DECLINE","REVIEW","NO_ACTION"],"default":"REVIEW","description":"Ce qu'il faut faire lorsqu'aucun champ n'a pu être lu à partir du document (`DOCUMENT_AI_UNREADABLE_DOCUMENT`).","uniqueKey":"document_ai_unreadable_document_action","typeLabel":"enum\u003cstring>"},"document_ai_missing_required_fields_action":{"type":"string","enum":["DECLINE","REVIEW","NO_ACTION"],"default":"REVIEW","description":"Ce qu'il faut faire lorsqu'au moins un champ `required` n'a pas pu être lu (`DOCUMENT_AI_MISSING_REQUIRED_FIELDS` ; `additional_data.missing_fields` les énumère).","uniqueKey":"document_ai_missing_required_fields_action","typeLabel":"enum\u003cstring>"},"document_ai_document_tampering_action":{"type":"string","enum":["DECLINE","REVIEW","NO_ACTION"],"default":"DECLINE","description":"Ce qu'il faut faire lorsque l'analyse médico-légale PDF/EXIF suspecte une manipulation — modification après signature numérique, éditeur PDF connu, manipulation par texte superposé, réexportation suspecte, anomalies d'image (`DOCUMENT_AI_SUSPECTED_MANIPULATION`).","uniqueKey":"document_ai_document_tampering_action","typeLabel":"enum\u003cstring>"},"document_ai_name_mismatch_action":{"type":"string","enum":["DECLINE","REVIEW","NO_ACTION"],"default":"NO_ACTION","description":"Ce qu'il faut faire lorsque `name_match_score` est inférieur au seuil (`DOCUMENT_AI_NAME_MISMATCH`).","uniqueKey":"document_ai_name_mismatch_action","typeLabel":"enum\u003cstring>"},"document_ai_unsupported_file_action":{"type":"string","enum":["DECLINE","REVIEW","NO_ACTION"],"default":"REVIEW","description":"Que faire lorsque le fichier importé est vide ou n'est pas un fichier traitable (`DOCUMENT_AI_UNSUPPORTED_FILE`).","uniqueKey":"document_ai_unsupported_file_action","typeLabel":"enum\u003cstring>"},"save_api_request":{"type":"boolean","default":true,"description":"Lorsque la valeur est `true` (par défaut), conserve l'appel sous la forme d'une session de type API — visible dans la Business Console, récupérable via `GET /v3/session/{sessionId}/decision/` à l'aide du `request_id` renvoyé, avec le document importé, les valeurs extraites, les définitions de champs et l'instantané de correspondance de nom stockés. Lorsque la valeur est `false`, rien n'est stocké et `request_id` est un UUID éphémère servant uniquement à la corrélation des réponses ; l'appel reste facturé.","example":true,"uniqueKey":"save_api_request","typeLabel":"boolean"},"vendor_data":{"type":"string","description":"Chaîne opaque optionnelle (votre identifiant d'utilisateur interne, e-mail, UUID…) stockée sur la session persistée et renvoyée dans la réponse. Utilisez-la pour corréler les appels d'API avec vos propres enregistrements et pour filtrer les sessions ultérieurement.","example":"user-123","uniqueKey":"vendor_data","typeLabel":"string"},"metadata":{"type":"object","additionalProperties":true,"description":"Objet JSON optionnel stocké avec la session (lorsque `save_api_request=true`) et renvoyé dans la réponse. Dans les requêtes multipart, envoyez-le sous forme de champ textuel encodé en JSON (par ex. `metadata={\"flow\":\"onboarding\"}`) — il est analysé sous forme d'objet.","example":{"flow":"onboarding"},"uniqueKey":"metadata","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"document":"\u003cstring>","fields":"[{\"key\": \"employer_name\", \"name\": \"Employer name\", \"instruction\": \"The employer or company issuing the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": false}, {\"key\": \"employee_name\", \"name\": \"Employee name\", \"instruction\": \"The full name of the employee as printed on the payslip.\", \"type\": \"text\", \"required\": true, \"is_full_name\": true}, {\"key\": \"net_pay\", \"name\": \"Net pay\", \"instruction\": \"The net amount paid to the employee for the period.\", \"type\": \"number\", \"required\": true, \"is_full_name\": false}, {\"key\": \"pay_date\", \"name\": \"Pay date\", \"instruction\": \"The payment date shown on the payslip.\", \"type\": \"date\", \"required\": false, \"is_full_name\": false}]","expected_first_name":"Sophia","expected_last_name":"Martinez","expected_company_name":"\u003cstring>","expected_company_country":"\u003cstring>","document_ai_name_match_score_threshold":80,"document_ai_unreadable_document_action":"REVIEW","document_ai_missing_required_fields_action":"REVIEW","document_ai_document_tampering_action":"DECLINE","document_ai_name_mismatch_action":"NO_ACTION","document_ai_unsupported_file_action":"REVIEW","save_api_request":true,"vendor_data":"user-123","metadata":{"flow":"onboarding"}}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"aa6629c3-b100-4256-84b7-19312c6f9594":{"description":"Document traité. `document_ai.status` est `Approved`, `Declined` ou `In Review` ; chaque problème détecté est détaillé dans `document_ai.warnings`. Un document problématique renvoie tout de même `200` — inspectez le corps de la réponse, pas seulement le code HTTP. Lorsque `save_api_request=true`, `request_id` est l'identifiant de la session enregistrée.","content":{"application/json":{"examples":{"Approved":{"title":"Approved","value":{"request_id":"9d6a3b1e-2f0c-4a8e-9b7d-1c2e3f4a5b6c","document_ai":{"status":"Approved","extracted_data":{"employer_name":"Acme Payments Ltd","employee_name":"Sophia Martinez","net_pay":3120.5,"pay_date":"2026-07-31"},"detected_codes":[{"type":"CODE_128","page_number":1,"position":[[96,456],[96,616],[1012,611],[1015,456]],"x":96,"y":456,"width":919,"height":160,"page_width":1200,"page_height":1700,"raw_payload":"SU5WLTIwMjYtMDA0Mg==","parsed_payload":"INV-2026-0042"}],"fields":[{"key":"employer_name","name":"Employer name","instruction":"The employer or company issuing the payslip.","type":"text","required":true,"is_full_name":false},{"key":"employee_name","name":"Employee name","instruction":"The full name of the employee as printed on the payslip.","type":"text","required":true,"is_full_name":true},{"key":"net_pay","name":"Net pay","instruction":"The net amount paid to the employee for the period.","type":"number","required":true,"is_full_name":false},{"key":"pay_date","name":"Pay date","instruction":"The payment date shown on the payslip.","type":"date","required":false,"is_full_name":false}],"name_match_score":100,"name_on_document":"Sophia Martinez","warnings":[]},"vendor_data":"user-123","metadata":{"flow":"onboarding"},"created_at":"2026-08-19T16:40:12.318Z"}},"In Review — missing required field":{"title":"In Review — missing required field","value":{"request_id":"3f2a9c7b-5d4e-4b1a-8c6f-0e9d8c7b6a5f","document_ai":{"status":"In Review","extracted_data":{"employer_name":"Acme Payments Ltd","employee_name":"Sophia Martinez","net_pay":null,"pay_date":"2026-07-31"},"detected_codes":[],"fields":[{"key":"employer_name","name":"Employer name","instruction":"The employer or company issuing the payslip.","type":"text","required":true,"is_full_name":false},{"key":"employee_name","name":"Employee name","instruction":"The full name of the employee as printed on the payslip.","type":"text","required":true,"is_full_name":true},{"key":"net_pay","name":"Net pay","instruction":"The net amount paid to the employee for the period.","type":"number","required":true,"is_full_name":false},{"key":"pay_date","name":"Pay date","instruction":"The payment date shown on the payslip.","type":"date","required":false,"is_full_name":false}],"name_match_score":100,"name_on_document":"Sophia Martinez","warnings":[{"risk":"DOCUMENT_AI_MISSING_REQUIRED_FIELDS","feature":"DOCUMENT_AI","additional_data":{"missing_fields":["Net pay"]},"log_type":"warning","short_description":"Required fields could not be extracted","long_description":"One or more fields configured as required could not be extracted from the uploaded document."}]},"vendor_data":null,"metadata":null,"created_at":"2026-08-19T16:41:05.002Z"}},"Declined — suspected manipulation":{"title":"Declined — suspected manipulation","value":{"request_id":"7c1d2e3f-4a5b-4c6d-8e9f-0a1b2c3d4e5f","document_ai":{"status":"Declined","extracted_data":{"employer_name":"Acme Payments Ltd","employee_name":"Sophia Martinez","net_pay":3120.5,"pay_date":"2026-07-31"},"detected_codes":[],"fields":[{"key":"employer_name","name":"Employer name","instruction":"The employer or company issuing the payslip.","type":"text","required":true,"is_full_name":false},{"key":"employee_name","name":"Employee name","instruction":"The full name of the employee as printed on the payslip.","type":"text","required":true,"is_full_name":true},{"key":"net_pay","name":"Net pay","instruction":"The net amount paid to the employee for the period.","type":"number","required":true,"is_full_name":false},{"key":"pay_date","name":"Pay date","instruction":"The payment date shown on the payslip.","type":"date","required":false,"is_full_name":false}],"name_match_score":null,"name_on_document":"Sophia Martinez","warnings":[{"risk":"DOCUMENT_AI_SUSPECTED_MANIPULATION","feature":"DOCUMENT_AI","additional_data":{"detection_method":"known_editor","processed_by_known_editor":"ilovepdf"},"log_type":"error","short_description":"Suspected document manipulation","long_description":"The system detected signs of potential manipulation or editing in the uploaded document."}]},"vendor_data":null,"metadata":null,"created_at":"2026-08-19T16:42:40.771Z"}}},"schema":{"type":"object","properties":{"request_id":{"type":"string","format":"uuid","description":"Identifiant de session persistante lorsque `save_api_request=true` (utilisable avec `GET /v3/session/{sessionId}/decision/`) ; sinon un UUID de corrélation temporaire.","uniqueKey":"request_id","typeLabel":"string\u003cuuid>"},"document_ai":{"type":"object","properties":{"status":{"type":"string","enum":["Approved","Declined","In Review"],"description":"`Approved` lorsqu'aucun avertissement n'aboutit à un refus ou à un examen ; `Declined` lorsqu'au moins un risque correspond à `DECLINE` ; sinon `In Review` lorsqu'au moins un correspond à `REVIEW`. La liste `warnings` en explique la raison.","uniqueKey":"document_ai.status","typeLabel":"enum\u003cstring>"},"extracted_data":{"type":"object","additionalProperties":true,"description":"Une entrée par clé de champ demandée. Les valeurs sont typées selon le `type` de champ — chaînes de caractères pour `text`, nombres pour `number`, chaînes `YYYY-MM-DD` pour `date` — ou `null` lorsque la valeur n'a pas pu être lue.","example":{"employer_name":"Acme Payments Ltd","employee_name":"Sophia Martinez","net_pay":3120.5,"pay_date":"2026-07-31"},"uniqueKey":"document_ai.extracted_data","typeLabel":"object"},"detected_codes":{"type":"array","description":"Codes QR et codes-barres détectés sur chaque page traitée. Vide si aucun n'est trouvé. Un code QR localisé mais indécodable a `parsed_payload: null`.","items":{"type":"object","required":["type","page_number","position","x","y","width","height","page_width","page_height","raw_payload","parsed_payload"],"properties":{"type":{"type":"string","description":"Symbologie détectée, par exemple `QR_CODE`, `CODE_128`, `EAN_13`, `DATA_MATRIX` ou `PDF_417`.","isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].type","typeLabel":"string"},"page_number":{"type":"integer","minimum":1,"description":"Numéro de page (à partir de 1).","isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].page_number","typeLabel":"integer"},"position":{"oneOf":[{"type":"array","description":"Polygone détecté en coordonnées de pixels de la page rendue. `null` lorsqu'aucun emplacement fiable n'est disponible.","items":{"type":"array","minItems":2,"maxItems":2,"items":{"type":"integer","uniqueKey":"document_ai.detected_codes.items.[INDEX].position.oneOf.0.items.[INDEX].items.[INDEX]","typeLabel":"integer"},"uniqueKey":"document_ai.detected_codes.items.[INDEX].position.oneOf.0.items.[INDEX]","typeLabel":"integer[]"},"isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].position.oneOf.0","typeLabel":"integer[][]"},{"type":"null","description":"Polygone détecté en coordonnées de pixels de la page rendue. `null` lorsqu'aucun emplacement fiable n'est disponible.","items":{"type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}},"isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].position.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].position","typeLabel":"integer[][] | null"},"x":{"oneOf":[{"type":"integer","description":"Bord gauche de la boîte englobante en pixels de la page rendue.","isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].x.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Bord gauche de la boîte englobante en pixels de la page rendue.","isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].x.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].x","typeLabel":"integer | null"},"y":{"oneOf":[{"type":"integer","description":"Bord supérieur de la boîte englobante en pixels de la page rendue.","isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].y.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Bord supérieur de la boîte englobante en pixels de la page rendue.","isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].y.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].y","typeLabel":"integer | null"},"width":{"oneOf":[{"type":"integer","description":"Largeur de la boîte englobante en pixels de la page rendue.","isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].width.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Largeur de la boîte englobante en pixels de la page rendue.","isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].width.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].width","typeLabel":"integer | null"},"height":{"oneOf":[{"type":"integer","description":"Hauteur de la boîte englobante en pixels de la page rendue.","isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].height.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Hauteur de la boîte englobante en pixels de la page rendue.","isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].height.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].height","typeLabel":"integer | null"},"page_width":{"type":"integer","description":"Largeur de la page générée en pixels.","isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].page_width","typeLabel":"integer"},"page_height":{"type":"integer","description":"Hauteur de la page générée en pixels.","isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].page_height","typeLabel":"integer"},"raw_payload":{"type":"string","description":"Payload brut du décodeur sous forme de chaîne base64 lorsqu'il est disponible ; sinon chaîne vide.","isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].raw_payload","typeLabel":"string"},"parsed_payload":{"oneOf":[{"description":"Chaîne décodée ou valeur structurée. `null` lorsque le code a été localisé mais n'a pas pu être décodé.","isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].parsed_payload.oneOf.0","typeLabel":"any"},{"description":"Chaîne décodée ou valeur structurée. `null` lorsque le code a été localisé mais n'a pas pu être décodé.","type":"null","isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].parsed_payload.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"document_ai.detected_codes.items.[INDEX].parsed_payload","typeLabel":"any | null"}},"uniqueKey":"document_ai.detected_codes.items.[INDEX]","typeLabel":"object"},"uniqueKey":"document_ai.detected_codes","typeLabel":"object[]"},"fields":{"type":"array","description":"Les définitions de champs normalisées utilisées pour cette extraction, renvoyées en écho (également stockées avec la session lorsque `save_api_request=true`).","items":{"type":"object","properties":{"key":{"type":"string","uniqueKey":"document_ai.fields.items.[INDEX].key","typeLabel":"string"},"name":{"type":"string","uniqueKey":"document_ai.fields.items.[INDEX].name","typeLabel":"string"},"instruction":{"type":"string","uniqueKey":"document_ai.fields.items.[INDEX].instruction","typeLabel":"string"},"type":{"type":"string","enum":["text","number","date"],"uniqueKey":"document_ai.fields.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"required":{"type":"boolean","uniqueKey":"document_ai.fields.items.[INDEX].required","typeLabel":"boolean"},"is_full_name":{"type":"boolean","uniqueKey":"document_ai.fields.items.[INDEX].is_full_name","typeLabel":"boolean"}},"uniqueKey":"document_ai.fields.items.[INDEX]","typeLabel":"object"},"uniqueKey":"document_ai.fields","typeLabel":"object[]"},"name_match_score":{"oneOf":[{"type":"number","minimum":0,"maximum":100,"description":"Similarité approximative (0–100) entre `name_on_document` et le nom attendu de la personne/l'entreprise. Renvoyée dès lors qu'une valeur de nom et un nom attendu existent tous deux — aussi bien en cas de correspondance **qu'en cas** de non-correspondance ; `null` sinon.","example":96,"uniqueKey":"document_ai.name_match_score.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"maximum":100,"description":"Similarité approximative (0–100) entre `name_on_document` et le nom attendu de la personne/l'entreprise. Renvoyée dès lors qu'une valeur de nom et un nom attendu existent tous deux — aussi bien en cas de correspondance **qu'en cas** de non-correspondance ; `null` sinon.","example":96,"uniqueKey":"document_ai.name_match_score.oneOf.1","typeLabel":"null"}],"uniqueKey":"document_ai.name_match_score","typeLabel":"number | null"},"name_on_document":{"oneOf":[{"type":"string","description":"La valeur de nom extraite du document (le champ `is_full_name`, ou le premier champ de texte de type nom) qui a été comparée au nom attendu. `null` lorsqu'aucune valeur de nom n'était disponible.","example":"Sophia Martinez","uniqueKey":"document_ai.name_on_document.oneOf.0","typeLabel":"string"},{"type":"null","description":"La valeur de nom extraite du document (le champ `is_full_name`, ou le premier champ de texte de type nom) qui a été comparée au nom attendu. `null` lorsqu'aucune valeur de nom n'était disponible.","example":"Sophia Martinez","uniqueKey":"document_ai.name_on_document.oneOf.1","typeLabel":"null"}],"uniqueKey":"document_ai.name_on_document","typeLabel":"string | null"},"warnings":{"type":"array","description":"Vide en cas d'approbation sans réserve. Chaque entrée explique un risque détecté ; les entrées avec `log_type: \"error\"` définissent `status` sur `Declined`, les entrées avec `log_type: \"warning\"` le définissent sur `In Review`.","items":{"type":"object","properties":{"risk":{"type":"string","enum":["DOCUMENT_AI_UNREADABLE_DOCUMENT","DOCUMENT_AI_MISSING_REQUIRED_FIELDS","DOCUMENT_AI_SUSPECTED_MANIPULATION","DOCUMENT_AI_NAME_MISMATCH","DOCUMENT_AI_UNSUPPORTED_FILE"],"description":"Code de risque lisible par machine. Chacun est régi par l'option de requête `document_ai_*_action` correspondante.","example":"DOCUMENT_AI_MISSING_REQUIRED_FIELDS","uniqueKey":"document_ai.warnings.items.[INDEX].risk","typeLabel":"enum\u003cstring>"},"feature":{"type":"string","enum":["DOCUMENT_AI"],"description":"Fonctionnalité ayant émis l'avertissement. Toujours `DOCUMENT_AI` sur cet endpoint.","uniqueKey":"document_ai.warnings.items.[INDEX].feature","typeLabel":"enum\u003cstring>"},"additional_data":{"oneOf":[{"type":"object","additionalProperties":true,"description":"Contexte supplémentaire pour le risque : `{\"missing_fields\": [\"Net pay\"]}` pour les champs obligatoires manquants, `{\"name_on_document\", \"score\", \"threshold\"}` pour une discordance de nom, et le résultat d'analyse médico-légale (`detection_method`, détails sur le producteur/l'éditeur) pour une suspicion de manipulation. `null` lorsqu'il n'y a rien à ajouter.","example":{"missing_fields":["Net pay"]},"uniqueKey":"document_ai.warnings.items.[INDEX].additional_data.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":true,"description":"Contexte supplémentaire pour le risque : `{\"missing_fields\": [\"Net pay\"]}` pour les champs obligatoires manquants, `{\"name_on_document\", \"score\", \"threshold\"}` pour une discordance de nom, et le résultat d'analyse médico-légale (`detection_method`, détails sur le producteur/l'éditeur) pour une suspicion de manipulation. `null` lorsqu'il n'y a rien à ajouter.","example":{"missing_fields":["Net pay"]},"uniqueKey":"document_ai.warnings.items.[INDEX].additional_data.oneOf.1","typeLabel":"null"}],"uniqueKey":"document_ai.warnings.items.[INDEX].additional_data","typeLabel":"object | null"},"log_type":{"type":"string","enum":["error","warning","information"],"description":"Gravité dérivée de l'action configurée : `error` (DECLINE), `warning` (REVIEW), `information` (NO_ACTION).","uniqueKey":"document_ai.warnings.items.[INDEX].log_type","typeLabel":"enum\u003cstring>"},"short_description":{"type":"string","description":"Description du risque en une ligne lisible par l'utilisateur.","example":"Required fields could not be extracted","uniqueKey":"document_ai.warnings.items.[INDEX].short_description","typeLabel":"string"},"long_description":{"type":"string","description":"Explication lisible par l'humain, interpolée avec `additional_data` le cas échéant.","uniqueKey":"document_ai.warnings.items.[INDEX].long_description","typeLabel":"string"}},"uniqueKey":"document_ai.warnings.items.[INDEX]","typeLabel":"object"},"uniqueKey":"document_ai.warnings","typeLabel":"object[]"}},"uniqueKey":"document_ai","typeLabel":"object"},"vendor_data":{"oneOf":[{"type":"string","description":"Écho des `vendor_data` que vous avez envoyées, ou `null`.","uniqueKey":"vendor_data.oneOf.0","typeLabel":"string"},{"type":"null","description":"Écho des `vendor_data` que vous avez envoyées, ou `null`.","uniqueKey":"vendor_data.oneOf.1","typeLabel":"null"}],"uniqueKey":"vendor_data","typeLabel":"string | null"},"metadata":{"oneOf":[{"type":"object","additionalProperties":true,"description":"Écho de l'objet `metadata` que vous avez envoyé, ou `null`.","uniqueKey":"metadata.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":true,"description":"Écho de l'objet `metadata` que vous avez envoyé, ou `null`.","uniqueKey":"metadata.oneOf.1","typeLabel":"null"}],"uniqueKey":"metadata","typeLabel":"object | null"},"created_at":{"type":"string","format":"date-time","description":"Moment où la requête a été traitée (UTC, ISO 8601).","uniqueKey":"created_at","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"","typeLabel":"object"},"exampleType":"examples"}},"exampleType":"examples"},"080de0e0-d430-438b-87f9-777e77e91b16":{"description":"Erreur de validation ou de traitement. Les problèmes au niveau des champs renvoient l'enveloppe standard de DRF (un tableau de messages par champ concerné). Les documents chiffrés ou illisibles et les échecs d'extraction renvoient `{\"error\": ...}`.","content":{"application/json":{"examples":{"Missing document":{"title":"Missing document","value":{"document":["No file was submitted."]}},"Invalid fields payload":{"title":"Invalid fields payload","value":{"fields":["fields must be a valid JSON array string."]}},"Duplicate field keys":{"title":"Duplicate field keys","value":{"fields":["Every fields item must have a unique key."]}},"Conflicting expectations":{"title":"Conflicting expectations","value":{"non_field_errors":["Provide either person expected-name fields or expected_company_name, not both."]}},"Invalid metadata":{"title":"Invalid metadata","value":{"metadata":["Metadata must be a JSON object."]}},"Oversized vendor_data":{"title":"Oversized vendor_data","value":{"vendor_data":["vendor_data is too long (maximum 2000 bytes)."]}},"Encrypted PDF":{"title":"Encrypted PDF","value":{"error":"The PDF is encrypted. Please upload a decrypted PDF or a photo instead."}},"Extraction failed":{"title":"Extraction failed","value":{"error":["Error extracting Document AI information"]}}},"schema":{"type":"object","additionalProperties":true,"uniqueKey":"","typeLabel":"object"},"exampleType":"examples"}},"exampleType":"examples"},"2b92f719-3b23-460b-ba22-ecfe5e64521b":{"description":"Permission refusée. Renvoyé lorsque l'en-tête `x-api-key` est manquant, ainsi que lorsque le solde de l'organisation appelante ne permet pas de couvrir l'appel ; une clé incorrecte, révoquée ou expirée renvoie `401`. Une clé manquante renvoie `403` avec `{\"detail\": ...}` ; une clé incorrecte, révoquée ou expirée renvoie `401`. Les crédits insuffisants (ainsi que les organisations facturées par contrat dont la grille tarifaire ne comporte aucune entrée pour l'API Document AI) renvoient `403` avec `{\"error\": ...}` avant tout traitement de document.","content":{"application/json":{"examples":{"Missing or invalid API key":{"title":"Missing or invalid API key","value":{"detail":"You do not have permission to perform this action."}},"Not enough credits":{"title":"Not enough credits","value":{"error":"You don't have enough credits to perform this request. Please top up at https://business.didit.me"}},"Contract rate missing":{"title":"Contract rate missing","value":{"error":"Document AI API is not included in your contract rate card. Contact support@didit.me to enable it."}}},"schema":{"type":"object","properties":{"detail":{"type":"string","uniqueKey":"detail","typeLabel":"string"},"error":{"type":"string","uniqueKey":"error","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"exampleType":"examples"}},"exampleType":"examples"},"a9a5eb64-100e-4b03-8087-3d9182ba18fb":{"description":"Limite de débit dépassée. Les endpoints POST/PATCH/DELETE partagent un budget de 300 requêtes d'écriture par minute par clé API (la création de transactions et l'ingestion d'événements ont un budget distinct de 600). La réponse comporte les en-têtes `X-RateLimit-Limit`, `X-RateLimit-Remaining`, `X-RateLimit-Reset` et `Retry-After`.","content":{"application/json":{"examples":{"Write rate limit exceeded":{"title":"Write rate limit exceeded","value":{"detail":"Write request rate limit exceeded. You can make up to 300 requests per minute."}}},"schema":{"type":"object","properties":{"detail":{"type":"string","uniqueKey":"detail","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"exampleType":"examples"}},"exampleType":"examples"},"a5ec0396-3c56-4c94-a433-bc7d52313e13":{"description":"Un nombre trop important de documents est actuellement en cours de traitement, cet envoi n'a donc pas été traité : rien n'a été stocké et aucune tentative n'a été utilisée. Renvoyez le même fichier après le nombre de secondes indiqué dans `Retry-After`. Effectuez le branchement en fonction de `code`, et non du texte du message.","headers":{"Retry-After":{"description":"Nombre de secondes à attendre avant d'envoyer à nouveau la même requête.","schema":{"type":"integer","example":10}}},"content":{"application/json":{"schema":{"type":"object","required":["detail","code"],"properties":{"detail":{"type":"string","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"code":{"type":"string","enum":["document_processing_busy"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"}},"uniqueKey":"","typeLabel":"object"},"example":{"detail":"We are busy processing documents. Please try again in a moment.","code":"document_processing_busy"},"examples":{"Example":{"title":"Example","value":{"detail":"We are busy processing documents. Please try again in a moment.","code":"document_processing_busy"}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"fd01abc8-f094-4545-915d-6136eba6608c":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key","description":"La clé API de votre application, issue de Développeurs -> Clés API dans la Business Console. La clé principale dispose d'un accès complet. Une clé nommée peut être restreinte : aucun, lecture ou écriture par ressource, limitée à certains workflows ou aux sessions approuvées, à une liste d'adresses IP et à une date d'expiration. 401 signifie que la clé est incorrecte, révoquée ou expirée ; 403 signifie qu'aucune clé n'a été envoyée, que la clé n'a pas accès à cette ressource ou action, ou que la requête provient d'une adresse hors de sa liste d'IP ; 404 sur une route de session signifie que la session est hors des workflows ou des statuts de la clé. Une clé sans accès aux médias reçoit les URL d'images, de vidéos et de PDF à null, et une clé sans accès en écriture aux sessions reçoit les liens et tokens de session à null. Voir https://docs.didit.me/console/api-keys.","scopes":[],"schemeName":"ApiKeyAuth"}}},"servers":{"a9065592-827a-4694-9173-00fef1d85496":{"url":"https://verification.didit.me"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"x-api-key","description":"La clé API de votre application, issue de Développeurs -> Clés API dans la Business Console. La clé principale dispose d'un accès complet. Une clé nommée peut être restreinte : aucun, lecture ou écriture par ressource, limitée à certains workflows ou aux sessions approuvées, à une liste d'adresses IP et à une date d'expiration. 401 signifie que la clé est incorrecte, révoquée ou expirée ; 403 signifie qu'aucune clé n'a été envoyée, que la clé n'a pas accès à cette ressource ou action, ou que la requête provient d'une adresse hors de sa liste d'IP ; 404 sur une route de session signifie que la session est hors des workflows ou des statuts de la clé. Une clé sans accès aux médias reçoit les URL d'images, de vidéos et de PDF à null, et une clé sans accès en écriture aux sessions reçoit les liens et tokens de session à null. Voir https://docs.didit.me/console/api-keys.","scopes":[],"schemeName":"ApiKeyAuth"},"schema":{"title":"x-api-key","type":"string","description":"La clé API de votre application, issue de Développeurs -> Clés API dans la Business Console. La clé principale dispose d'un accès complet. Une clé nommée peut être restreinte : aucun, lecture ou écriture par ressource, limitée à certains workflows ou aux sessions approuvées, à une liste d'adresses IP et à une date d'expiration. 401 signifie que la clé est incorrecte, révoquée ou expirée ; 403 signifie qu'aucune clé n'a été envoyée, que la clé n'a pas accès à cette ressource ou action, ou que la requête provient d'une adresse hors de sa liste d'IP ; 404 sur une route de session signifie que la session est hors des workflows ou des statuts de la clé. Une clé sans accès aux médias reçoit les URL d'images, de vidéos et de PDF à null, et une clé sans accès en écriture aux sessions reçoit les liens et tokens de session à null. Voir https://docs.didit.me/console/api-keys.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"ApiKeyAuth","name":"x-api-key"}],"title":"ApiKeyAuth"}]},"originalFileLocation":"fr/openapi-25.json"},"subdomain":"didit-0f962782","siteName":"Didit Docs","title":"API d'extraction de données de documents personnalisée - Didit Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/standalone-apis/document-ai","matchLevel":1},"es":{"href":"/es/standalone-apis/document-ai","matchLevel":1},"pt-BR":{"href":"/pt-br/standalone-apis/document-ai","matchLevel":1},"ja":{"href":"/ja/standalone-apis/document-ai","matchLevel":1},"de":{"href":"/de/standalone-apis/document-ai","matchLevel":1},"fr":{"href":"/fr/standalone-apis/document-ai","matchLevel":0},"it":{"href":"/it/standalone-apis/document-ai","matchLevel":1},"pt":{"href":"/pt/standalone-apis/document-ai","matchLevel":1},"ca":{"href":"/ca/standalone-apis/document-ai","matchLevel":1},"id":{"href":"/id/standalone-apis/document-ai","matchLevel":1},"ru":{"href":"/ru/standalone-apis/document-ai","matchLevel":1},"ko":{"href":"/ko/standalone-apis/document-ai","matchLevel":1},"zh":{"href":"/zh/standalone-apis/document-ai","matchLevel":1},"ar":{"href":"/ar/standalone-apis/document-ai","matchLevel":1},"hi":{"href":"/hi/standalone-apis/document-ai","matchLevel":1}}},"lastModified":"2026-11-07T17:37:42.104Z","gitLastModified":"2026-11-07T17:24:04.000Z","originalFileLocation":"fr/standalone-apis/document-ai.mdx","locale":"fr"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Didit extrait les champs définis par vous de tout PDF ou image via POST /v3/document-ai/. Contrôle de falsification. $0.20 par document.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Didit Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/didit-0f962782/h7Er2opLBVoQwrdf/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/didit-0f962782/h7Er2opLBVoQwrdf/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/didit-0f962782/h7Er2opLBVoQwrdf/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/didit-0f962782/h7Er2opLBVoQwrdf/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/didit-0f962782/h7Er2opLBVoQwrdf/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/didit-0f962782/h7Er2opLBVoQwrdf/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/didit-0f962782/h7Er2opLBVoQwrdf/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/didit-0f962782/h7Er2opLBVoQwrdf/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/didit-0f962782/h7Er2opLBVoQwrdf/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"API d\u0026#x27;extraction de données de documents personnalisée - Didit Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Didit extrait les champs définis par vous de tout PDF ou image via POST /v3/document-ai/. Contrôle de falsification. $0.20 par document.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Didit Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.didit.me/fr/standalone-apis/document-ai\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://didit-0f962782.mintlify.site/_mintlify/api/og/v2?division=IA+documentaire\u0026amp;title=API+d%27extraction+de+donn%C3%A9es+de+documents+personnalis%C3%A9e\u0026amp;description=Didit+extrait+les+champs+d%C3%A9finis+par+vous+de+tout+PDF+ou+image+via+POST+%2Fv3%2Fdocument-ai%2F.+Contr%C3%B4le+de+falsification.+%240.20+par+document.\u0026amp;theme=f6d5c5eb819d99f700ee852a\u0026amp;signature=cb7272ee620e2320107c74b82d851d4bc9d1c4a68f1fe7efb76d4665fe0b0b64\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"API d\u0026#x27;extraction de données de documents personnalisée - Didit Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Didit extrait les champs définis par vous de tout PDF ou image via POST /v3/document-ai/. Contrôle de falsification. $0.20 par document.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://didit-0f962782.mintlify.site/_mintlify/api/og/v2?division=IA+documentaire\u0026amp;title=API+d%27extraction+de+donn%C3%A9es+de+documents+personnalis%C3%A9e\u0026amp;description=Didit+extrait+les+champs+d%C3%A9finis+par+vous+de+tout+PDF+ou+image+via+POST+%2Fv3%2Fdocument-ai%2F.+Contr%C3%B4le+de+falsification.+%240.20+par+document.\u0026amp;theme=f6d5c5eb819d99f700ee852a\u0026amp;signature=cb7272ee620e2320107c74b82d851d4bc9d1c4a68f1fe7efb76d4665fe0b0b64\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/didit-0f962782/h7Er2opLBVoQwrdf/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Didit Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#2567FF\">\u003cmeta data-mint-head name=\"theme-color\" content=\"#2567FF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.didit.me/fr/standalone-apis/document-ai\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/fr/standalone-apis/document-ai.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"fr\" href=\"https://docs.didit.me/fr/standalone-apis/document-ai\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.didit.me/standalone-apis/document-ai\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"es\" href=\"https://docs.didit.me/es/standalone-apis/document-ai\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pt-BR\" href=\"https://docs.didit.me/pt-br/standalone-apis/document-ai\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ja\" href=\"https://docs.didit.me/ja/standalone-apis/document-ai\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"de\" href=\"https://docs.didit.me/de/standalone-apis/document-ai\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"it\" href=\"https://docs.didit.me/it/standalone-apis/document-ai\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pt\" href=\"https://docs.didit.me/pt/standalone-apis/document-ai\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ca\" href=\"https://docs.didit.me/ca/standalone-apis/document-ai\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"id\" href=\"https://docs.didit.me/id/standalone-apis/document-ai\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ru\" href=\"https://docs.didit.me/ru/standalone-apis/document-ai\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ko\" href=\"https://docs.didit.me/ko/standalone-apis/document-ai\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh\" href=\"https://docs.didit.me/zh/standalone-apis/document-ai\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ar\" href=\"https://docs.didit.me/ar/standalone-apis/document-ai\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"hi\" href=\"https://docs.didit.me/hi/standalone-apis/document-ai\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.didit.me/standalone-apis/document-ai\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://didit.me/#organization\",\"name\":\"Didit\",\"legalName\":\"Didit Protocol\",\"url\":\"https://didit.me\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://didit.me/logos/primary-horizontal-light.png\"},\"sameAs\":[\"https://www.linkedin.com/company/91001155\",\"https://www.youtube.com/@getdidit\",\"https://github.com/didit-protocol\",\"https://x.com/didit\"]},{\"@type\":\"WebSite\",\"@id\":\"https://docs.didit.me#website\",\"name\":\"Didit Docs\",\"url\":\"https://docs.didit.me\",\"publisher\":{\"@id\":\"https://didit.me/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.didit.me/fr/standalone-apis/document-ai#webpage\",\"url\":\"https://docs.didit.me/fr/standalone-apis/document-ai\",\"name\":\"API d'extraction de données de documents personnalisée\",\"description\":\"Didit extrait les champs définis par vous de tout PDF ou image via POST /v3/document-ai/. Contrôle de falsification. $0.20 par document.\",\"dateModified\":\"2026-11-07T17:24:04.000Z\",\"isPartOf\":{\"@id\":\"https://docs.didit.me#website\"},\"breadcrumb\":{\"@id\":\"https://docs.didit.me/fr/standalone-apis/document-ai#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.didit.me/fr/standalone-apis/document-ai#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Didit Docs\",\"item\":\"https://docs.didit.me\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"API d'extraction de données de documents personnalisée\",\"item\":\"https://docs.didit.me/fr/standalone-apis/document-ai\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.didit.me/fr/standalone-apis/document-ai#apireference\",\"headline\":\"API d'extraction de données de documents personnalisée\",\"name\":\"API d'extraction de données de documents personnalisée\",\"description\":\"Didit extrait les champs définis par vous de tout PDF ou image via POST /v3/document-ai/. Contrôle de falsification. $0.20 par document.\",\"url\":\"https://docs.didit.me/fr/standalone-apis/document-ai\",\"mainEntityOfPage\":{\"@id\":\"https://docs.didit.me/fr/standalone-apis/document-ai#webpage\"},\"dateModified\":\"2026-11-07T17:24:04.000Z\",\"keywords\":\"API extraction de données de documents, API Document AI, OCR de documents personnalisé, API justificatif de fonds, extraction de fiche de paie, OCR de relevés bancaires, extraction de documents KYC, détection de falsification de documents, API Didit\",\"publisher\":{\"@id\":\"https://didit.me/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.didit.me#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Didit Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Didit Docs","nav":{"global":null,"languages":[{"language":"en","pages":[{"title":"en","href":"/standalone-apis/document-ai"}]},{"language":"es","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Soporte"},{"icon":"signal","href":"https://status.didit.me","label":"Estado"}],"primary":{"type":"button","label":"Iniciar sesión","href":"https://business.didit.me"}},"pages":[{"title":"es","href":"/es/standalone-apis/document-ai"}]},{"language":"pt-BR","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Suporte"},{"icon":"signal","href":"https://status.didit.me","label":"Status"}],"primary":{"type":"button","label":"Entrar","href":"https://business.didit.me"}},"pages":[{"title":"pt-BR","href":"/pt-br/standalone-apis/document-ai"}]},{"language":"ja","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"サポート"},{"icon":"signal","href":"https://status.didit.me","label":"ステータス"}],"primary":{"type":"button","label":"サインイン","href":"https://business.didit.me"}},"pages":[{"title":"ja","href":"/ja/standalone-apis/document-ai"}]},{"language":"de","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Support"},{"icon":"signal","href":"https://status.didit.me","label":"Status"}],"primary":{"type":"button","label":"Anmelden","href":"https://business.didit.me"}},"pages":[{"title":"de","href":"/de/standalone-apis/document-ai"}]},{"language":"fr","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Assistance"},{"icon":"signal","href":"https://status.didit.me","label":"Statut"}],"primary":{"type":"button","label":"Se connecter","href":"https://business.didit.me"}},"tabs":[{"tab":"Commencer","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/rocket.svg","pages":[{"title":"Commencer","href":"/fr"}]},{"tab":"Intégrer / SDK","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/code.svg","pages":[{"title":"Intégrer / SDK","href":"/fr/integration/sdks"}]},{"tab":"Référence API","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/code.svg","groups":[{"group":"Présentation","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/overview.svg","pages":[{"title":"Référence API Didit : API REST de vérification d'identité","sidebarTitle":"Référence API","href":"/fr/api-reference/overview"},{"title":"API Healthcheck : sonde de disponibilité publique","sidebarTitle":"Healthcheck","openapi":"fr/openapi-healthcheck.json GET /system/healthcheck","href":"/fr/api-reference/healthcheck"},{"title":"API de statut des services Didit : flux public d'état","sidebarTitle":"Statut des services","openapi":"fr/openapi-25.json GET /v3/status/","href":"/fr/api-reference/service-status"},{"title":"Tarifs de vérification bancaire : flux de prix public API","sidebarTitle":"Tarifs vérification bancaire","openapi":"fr/openapi-25.json GET /v3/organization/bank-verification-pricing/","href":"/fr/api-reference/bank-verification-pricing"}]},{"group":"Vérifications des utilisateurs et des entreprises","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/user-verifications.svg","pages":[{"title":"API Sessions de vérification KYC et KYB unifiée","sidebarTitle":"Présentation","href":"/fr/sessions-api/overview"},{"title":"API Create Session : lancer une vérification KYC ou KYB","sidebarTitle":"Créer une session","openapi":"fr/openapi-25.json POST /v3/session/","href":"/fr/sessions-api/create-session"},{"title":"Importer des vérifications depuis un autre fournisseur","openapi":"fr/openapi-25.json POST /v3/session/imports/","href":"/fr/sessions-api/import-verifications"},{"title":"API de récupération de session : décisions KYC et KYB","sidebarTitle":"Récupérer une session","openapi":"fr/openapi-25.json GET /v3/session/{sessionId}/decision/","href":"/fr/sessions-api/retrieve-session"},{"title":"API liste des sessions : filtrer les sessions KYC et KYB","sidebarTitle":"Lister les sessions","openapi":"fr/openapi-25.json GET /v3/sessions/","href":"/fr/sessions-api/list-sessions"},{"title":"Mettre à jour le statut de session : approuver ou refuser","sidebarTitle":"Mettre à jour le statut","openapi":"fr/openapi-25.json PATCH /v3/session/{sessionId}/update-status/","href":"/fr/sessions-api/update-status"},{"title":"Prévisualiser l'e-mail de resoumission","openapi":"fr/openapi-25.json POST /v3/session/{sessionId}/resubmission-preview/","href":"/fr/sessions-api/preview-resubmission"},{"title":"API d'aperçu de l'e-mail de décision : approuvé et refusé","sidebarTitle":"Aperçu de l'e-mail de décision","openapi":"fr/openapi-25.json POST /v3/session/{sessionId}/decision-email-preview/","href":"/fr/sessions-api/preview-decision-email"},{"title":"Mise à jour du statut : approuver ou refuser une étape","sidebarTitle":"Statut d'une étape","openapi":"fr/openapi-25.json PATCH /v3/session/{sessionId}/features/{nodeId}/update-status/","href":"/fr/sessions-api/update-feature-status"},{"title":"API : liste des remplacements, historique des étapes","sidebarTitle":"Lister les remplacements de fonctionnalités","openapi":"fr/openapi-25.json GET /v3/session/{sessionId}/features/overrides/","href":"/fr/sessions-api/list-feature-overrides"},{"title":"API d'annulation de remplacement de fonctionnalité","sidebarTitle":"Annuler le remplacement de fonctionnalité","openapi":"fr/openapi-25.json POST /v3/session/{sessionId}/features/overrides/{overrideId}/cancel/","href":"/fr/sessions-api/cancel-feature-override"},{"title":"API de mise à jour du statut AML : valider ou confirmer","sidebarTitle":"Mettre à jour le statut AML","openapi":"fr/openapi-25.json PATCH /v3/session/{sessionId}/update-aml-hit-status/","href":"/fr/sessions-api/update-aml-hit-status"},{"title":"Mise à jour des données de session : corriger KYC et KYB","sidebarTitle":"Mise à jour des données","href":"/fr/sessions-api/update-data"},{"title":"API de mise à jour du statut AML","sidebarTitle":"Statut du contrôle AML","openapi":"fr/openapi-25.json PATCH /v3/session/{sessionId}/update-aml-status/","href":"/fr/sessions-api/update-aml-status"},{"title":"Mettre à jour les données Document AI via l'API","sidebarTitle":"Mettre à jour les données Document AI","openapi":"fr/openapi-25.json PATCH /v3/document-ai/{sessionId}/documents/{documentUuid}/","href":"/fr/sessions-api/update-document-ai-data"},{"title":"Régénérer une session KYC pour les personnes clés (API)","sidebarTitle":"Régénérer une session KYC","openapi":"fr/openapi-25.json POST /v3/session/{sessionId}/kyb/parties/{partyUuid}/regenerate/","href":"/fr/sessions-api/regenerate-kyb-party"},{"title":"Téléverser des documents KYB via l'API","sidebarTitle":"Téléverser des documents KYB","openapi":"fr/openapi-25.json POST /v3/session/{sessionId}/kyb/documents/","href":"/fr/sessions-api/kyb-upload-documents"},{"title":"API de liste des parties extraites KYB","sidebarTitle":"Liste des parties extraites KYB","openapi":"fr/openapi-25.json GET /v3/session/{sessionId}/kyb/extracted-parties/","href":"/fr/sessions-api/kyb-extracted-parties"},{"title":"Lister les brouillons de personnes clés KYB API","sidebarTitle":"Brouillons de personnes KYB","openapi":"fr/openapi-25.json GET /v3/session/{sessionId}/kyb/parties/drafts/","href":"/fr/sessions-api/kyb-list-party-drafts"},{"title":"KYB : créer un brouillon de personne via l'API","sidebarTitle":"Créer un brouillon KYB","openapi":"fr/openapi-25.json POST /v3/session/{sessionId}/kyb/parties/drafts/","href":"/fr/sessions-api/kyb-create-party-draft"},{"title":"Modifier le brouillon de personne clé KYB (API)","sidebarTitle":"Modifier brouillon KYB","openapi":"fr/openapi-25.json PATCH /v3/session/{sessionId}/kyb/parties/drafts/{draftId}/","href":"/fr/sessions-api/kyb-update-party-draft"},{"title":"Supprimer un brouillon de personne clé KYB (API)","sidebarTitle":"Supprimer brouillon KYB","openapi":"fr/openapi-25.json DELETE /v3/session/{sessionId}/kyb/parties/drafts/{draftId}/","href":"/fr/sessions-api/kyb-delete-party-draft"},{"title":"Soumettre les personnes clés KYB via l'API","sidebarTitle":"Soumettre personnes clés KYB","openapi":"fr/openapi-25.json POST /v3/session/{sessionId}/kyb/parties/submit/","href":"/fr/sessions-api/kyb-submit-parties"},{"title":"Ajouter des images à une session API","sidebarTitle":"Ajouter des images à une session","openapi":"fr/openapi-25.json PATCH /v3/session/{sessionId}/add-images/","href":"/fr/sessions-api/add-images"},{"title":"API de suppression de session : droit à l'oubli RGPD","sidebarTitle":"Supprimer une session","openapi":"fr/openapi-25.json DELETE /v3/session/{sessionId}/delete/","href":"/fr/sessions-api/delete-session"},{"title":"API de génération PDF : rapports de conformité KYC et KYB","sidebarTitle":"Générer un PDF","openapi":"fr/openapi-25.json GET /v3/session/{sessionId}/generate-pdf/","href":"/fr/sessions-api/generate-pdf"},{"title":"API d'export des fichiers de session : un seul ZIP","sidebarTitle":"Exporter les fichiers","openapi":"fr/openapi-25.json POST /v3/session/{sessionId}/files-export/","href":"/fr/sessions-api/export-files"},{"title":"API d'export des fichiers de session : statut et lien","sidebarTitle":"Obtenir l'export des fichiers","openapi":"fr/openapi-25.json GET /v3/session/{sessionId}/files-export/{exportId}/","href":"/fr/sessions-api/get-files-export"},{"group":"Signatures électroniques","pages":[{"title":"API de téléchargement de document signé : PDF signé","sidebarTitle":"Télécharger un document signé","openapi":"fr/openapi-25.json GET /v3/session/{sessionId}/signatures/{nodeId}/documents/{documentId}/file/","href":"/fr/sessions-api/electronic-signature/download-signed-document"},{"title":"Preuve de signature électronique : API et PDF d'audit","sidebarTitle":"Télécharger la preuve de signature","openapi":"fr/openapi-25.json GET /v3/session/{sessionId}/signatures/{nodeId}/evidence/","href":"/fr/sessions-api/electronic-signature/download-evidence"},{"title":"API d'image de signature : PNG de la signature apposée","sidebarTitle":"Télécharger une image de signature","openapi":"fr/openapi-25.json GET /v3/session/{sessionId}/signatures/{nodeId}/fields/{fieldId}/image/","href":"/fr/sessions-api/electronic-signature/download-field-image"},{"title":"API de validation des signatures : revérifier PDF signés","sidebarTitle":"Valider les signatures","openapi":"fr/openapi-25.json POST /v3/session/{sessionId}/signatures/{nodeId}/validate/","href":"/fr/sessions-api/electronic-signature/validate-signatures"}]},{"title":"KYC réutilisable : API de partage de session","sidebarTitle":"Partage de session","href":"/fr/sessions-api/share-session/overview"},{"title":"API de partage de session : générer un token de partage","sidebarTitle":"Partage de session","openapi":"fr/openapi-25.json POST /v3/session/{sessionId}/share/","href":"/fr/sessions-api/share-session/share"},{"title":"API d'import de session partagée : KYC réutilisable","sidebarTitle":"Importer une session partagée","openapi":"fr/openapi-25.json POST /v3/session/import-shared/","href":"/fr/sessions-api/share-session/import"}]},{"group":"Listes","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/lists.svg","pages":[{"title":"API Listes : listes de blocage et d'autorisation","sidebarTitle":"API Listes","href":"/fr/management-api/lists/overview"},{"title":"API Lister les listes de blocage et d'autorisation","sidebarTitle":"Lister les listes","openapi":"fr/openapi-25.json GET /v3/lists/","href":"/fr/management-api/lists/list"},{"title":"Créer une liste via API : liste d'autorisation et personnalisée","sidebarTitle":"Créer une liste","openapi":"fr/openapi-25.json POST /v3/lists/","href":"/fr/management-api/lists/create"},{"title":"Récupérer une liste de conformité : API Didit","sidebarTitle":"Récupérer une liste","openapi":"fr/openapi-25.json GET /v3/lists/{list_uuid}/","href":"/fr/management-api/lists/get"},{"title":"API de mise à jour d'une liste de conformité","sidebarTitle":"Mettre à jour une liste","openapi":"fr/openapi-25.json PATCH /v3/lists/{list_uuid}/","href":"/fr/management-api/lists/update"},{"title":"API de suppression de liste de conformité","sidebarTitle":"Supprimer une liste","openapi":"fr/openapi-25.json DELETE /v3/lists/{list_uuid}/","href":"/fr/management-api/lists/delete"},{"title":"API des entrées de liste : blocage et autorisation","sidebarTitle":"Entrées de liste","openapi":"fr/openapi-25.json GET /v3/lists/{list_uuid}/entries/","href":"/fr/management-api/lists/list-entries"},{"title":"API de création d'entrée : blocage et autorisation","sidebarTitle":"Créer une entrée de liste","openapi":"fr/openapi-25.json POST /v3/lists/{list_uuid}/entries/","href":"/fr/management-api/lists/create-entry"},{"title":"Supprimer une entrée de liste API : débloquer un élément","sidebarTitle":"Supprimer une entrée","openapi":"fr/openapi-25.json DELETE /v3/lists/{list_uuid}/entries/{entry_uuid}/","href":"/fr/management-api/lists/delete-entry"},{"title":"API d'ajout de visage : listes biométriques","sidebarTitle":"Ajouter un visage","openapi":"fr/openapi-25.json POST /v3/lists/{list_uuid}/entries/face-upload/","href":"/fr/management-api/lists/upload-face"}]},{"group":"Liste de blocage","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/lists.svg","pages":[{"title":"API de liste de blocage : lister les éléments bloqués","sidebarTitle":"Éléments bloqués","openapi":"fr/openapi-25.json GET /v3/blocklist/","href":"/fr/management-api/blocklist/list"},{"title":"API liste de blocage : bloquer des éléments de session","sidebarTitle":"Ajouter à la liste de blocage","openapi":"fr/openapi-25.json POST /v3/blocklist/add/","href":"/fr/management-api/blocklist/add"},{"title":"Retirer de la liste de blocage : API de déblocage","sidebarTitle":"Retirer de la liste de blocage","openapi":"fr/openapi-25.json POST /v3/blocklist/remove/","href":"/fr/management-api/blocklist/remove"}]},{"group":"Workflows","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/workflows.svg","pages":[{"title":"API liste des workflows : flux de vérification","sidebarTitle":"Lister les workflows","openapi":"fr/openapi-25.json GET /v3/workflows/","href":"/fr/management-api/workflows/list"},{"title":"API de création de workflow : construire un flux KYC","sidebarTitle":"Créer un workflow","openapi":"fr/openapi-25.json POST /v3/workflows/","href":"/fr/management-api/workflows/create"},{"title":"Configurations des workflows : référence de l'API","sidebarTitle":"Configs des workflows","href":"/fr/management-api/workflows/feature-configs"},{"title":"API Get Workflow : récupérer un workflow KYC","sidebarTitle":"Get Workflow","openapi":"fr/openapi-25.json GET /v3/workflows/{settings_uuid}/","href":"/fr/management-api/workflows/get"},{"title":"Mise à jour de workflow API : modifier le parcours KYC","sidebarTitle":"Mettre à jour le workflow","openapi":"fr/openapi-25.json PATCH /v3/workflows/{settings_uuid}/","href":"/fr/management-api/workflows/update"},{"title":"API de suppression de workflow : supprimer un flux KYC","sidebarTitle":"Supprimer un workflow","openapi":"fr/openapi-25.json DELETE /v3/workflows/{settings_uuid}/","href":"/fr/management-api/workflows/delete"}]},{"group":"Questionnaires","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/task-square.svg","pages":[{"title":"API de liste des questionnaires : formulaires KYC","sidebarTitle":"Lister les questionnaires","openapi":"fr/openapi-25.json GET /v3/questionnaires/","href":"/fr/management-api/questionnaires/list"},{"title":"API de création de questionnaire KYC personnalisé","sidebarTitle":"Créer un questionnaire","openapi":"fr/openapi-25.json POST /v3/questionnaires/","href":"/fr/management-api/questionnaires/create"},{"title":"Récupérer un questionnaire KYC : API Didit","sidebarTitle":"Récupérer un questionnaire","openapi":"fr/openapi-25.json GET /v3/questionnaires/{questionnaire_uuid}/","href":"/fr/management-api/questionnaires/get"},{"title":"Modifier un questionnaire KYC : API de mise à jour","sidebarTitle":"Mettre à jour un questionnaire","openapi":"fr/openapi-25.json PATCH /v3/questionnaires/{questionnaire_uuid}/","href":"/fr/management-api/questionnaires/update"},{"title":"Supprimer un questionnaire via API : formulaire KYC","sidebarTitle":"Supprimer un questionnaire","openapi":"fr/openapi-25.json DELETE /v3/questionnaires/{questionnaire_uuid}/","href":"/fr/management-api/questionnaires/delete"}]},{"group":"Utilisateurs","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/users.svg","pages":[{"title":"API de liste des utilisateurs : entités fournisseur","sidebarTitle":"Liste des utilisateurs","openapi":"fr/openapi-25.json GET /v3/users/","href":"/fr/management-api/users/list"},{"title":"API de création d'utilisateur : entité User fournisseur","sidebarTitle":"Créer un utilisateur","openapi":"fr/openapi-25.json POST /v3/users/create/","href":"/fr/management-api/users/create"},{"title":"API d'import du visage : profil utilisateur fournisseur","sidebarTitle":"Import du visage utilisateur","openapi":"fr/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/vendor-users/by-id/{didit_internal_id}/faces/upload/","href":"/fr/management-api/users/upload-face"},{"title":"API Get User : entité utilisateur fournisseur","sidebarTitle":"Get User","openapi":"fr/openapi-25.json GET /v3/users/{vendor_data}/","href":"/fr/management-api/users/get"},{"title":"API PDF d'historique utilisateur : toutes les sessions","sidebarTitle":"Historique PDF utilisateur","openapi":"fr/openapi-25.json GET /v3/users/{vendor_data}/generate-pdf/","href":"/fr/management-api/users/generate-pdf"},{"title":"API de mise à jour d'utilisateur : entité vendeur","sidebarTitle":"Mettre à jour un utilisateur","openapi":"fr/openapi-25.json PATCH /v3/users/{vendor_data}/","href":"/fr/management-api/users/update"},{"title":"Mise à jour du statut utilisateur : bloquer ou signaler","sidebarTitle":"Statut utilisateur","openapi":"fr/openapi-25.json PATCH /v3/users/{vendor_data}/update-status/","href":"/fr/management-api/users/update-status"},{"title":"API de suppression en lot des utilisateurs (RGPD)","sidebarTitle":"Suppression en lot","openapi":"fr/openapi-25.json POST /v3/users/delete/","href":"/fr/management-api/users/delete"}]},{"group":"Gabarits biométriques","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/liveness.svg","pages":[{"title":"API des gabarits biométriques","sidebarTitle":"Gabarits biométriques","href":"/fr/management-api/biometric-templates/overview"},{"title":"API de liste des gabarits biométriques","sidebarTitle":"Lister les gabarits","openapi":"fr/openapi-25.json GET /v3/biometric-templates/","href":"/fr/management-api/biometric-templates/list"},{"title":"API de comptage des gabarits biométriques","sidebarTitle":"Compter les gabarits","openapi":"fr/openapi-25.json GET /v3/biometric-templates/count/","href":"/fr/management-api/biometric-templates/count"},{"title":"API de récupération d'un gabarit biométrique","sidebarTitle":"Obtenir un gabarit","openapi":"fr/openapi-25.json GET /v3/biometric-templates/{template_uuid}/","href":"/fr/management-api/biometric-templates/get"},{"title":"API de purge du gabarit biométrique","sidebarTitle":"Purger le gabarit","openapi":"fr/openapi-25.json DELETE /v3/biometric-templates/{template_uuid}/","href":"/fr/management-api/biometric-templates/purge"},{"title":"API de purge en masse des gabarits biométriques","sidebarTitle":"Purge en masse","openapi":"fr/openapi-25.json POST /v3/biometric-templates/delete/","href":"/fr/management-api/biometric-templates/batch-purge"}]},{"group":"Entreprises","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/businesses.svg","pages":[{"title":"API de liste des entreprises : entités KYB fournisseurs","sidebarTitle":"Lister les entreprises","openapi":"fr/openapi-25.json GET /v3/businesses/","href":"/fr/management-api/businesses/list"},{"title":"API de création d'entreprise KYB : entité fournisseur","sidebarTitle":"Créer une entreprise","openapi":"fr/openapi-25.json POST /v3/businesses/create/","href":"/fr/management-api/businesses/create"},{"title":"API Récupérer une entreprise : entité KYB","sidebarTitle":"Récupérer une entreprise","openapi":"fr/openapi-25.json GET /v3/businesses/{vendor_data}/","href":"/fr/management-api/businesses/get"},{"title":"API de rapport PDF de vérification d'entreprise (KYB)","sidebarTitle":"Générer le PDF de session KYB","openapi":"fr/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/businesses/{business_session_id}/pdf/","href":"/fr/management-api/businesses/generate-session-pdf"},{"title":"Mettre à jour une entreprise : API KYB fournisseur","sidebarTitle":"Mettre à jour l'entreprise","openapi":"fr/openapi-25.json PATCH /v3/businesses/{vendor_data}/","href":"/fr/management-api/businesses/update"},{"title":"Mise à jour du statut d'entreprise : bloquer ou signaler","sidebarTitle":"Statut de l'entreprise","openapi":"fr/openapi-25.json PATCH /v3/businesses/{vendor_data}/update-status/","href":"/fr/management-api/businesses/update-status"},{"title":"API de suppression d'entreprises en lot : effacement KYB","sidebarTitle":"Supprimer des entreprises en lot","openapi":"fr/openapi-25.json POST /v3/businesses/delete/","href":"/fr/management-api/businesses/delete"}]},{"group":"Surveillance AML continue","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/aml-screening.svg","pages":[{"title":"Activer/désactiver la surveillance AML des utilisateurs","sidebarTitle":"Activer pour les utilisateurs","openapi":"fr/openapi-25.json POST /v3/users/aml-monitoring/","href":"/fr/management-api/aml-monitoring/toggle-users"},{"title":"Activer/désactiver la surveillance AML des entreprises","sidebarTitle":"Entreprises par lot","openapi":"fr/openapi-25.json POST /v3/businesses/aml-monitoring/","href":"/fr/management-api/aml-monitoring/toggle-businesses"},{"title":"Obtenir une tâche de surveillance AML : API","sidebarTitle":"Obtenir la tâche AML","openapi":"fr/openapi-25.json GET /v3/aml-monitoring/jobs/{job_id}/","href":"/fr/management-api/aml-monitoring/get-job"}]},{"group":"Dossiers","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/clipboard-check.svg","pages":[{"title":"API de liste des dossiers","sidebarTitle":"Lister les dossiers","openapi":"fr/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/cases/","href":"/fr/management-api/cases/list"},{"title":"API de création de dossier","sidebarTitle":"Créer un dossier","openapi":"fr/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/","href":"/fr/management-api/cases/create"},{"title":"API Récupérer un dossier","sidebarTitle":"Récupérer un dossier","openapi":"fr/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/","href":"/fr/management-api/cases/get"},{"title":"API de mise à jour d'un dossier","sidebarTitle":"Mettre à jour le dossier","openapi":"fr/openapi-25.json PATCH /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/","href":"/fr/management-api/cases/update"},{"title":"API de suppression de dossier","sidebarTitle":"Supprimer un dossier","openapi":"fr/openapi-25.json DELETE /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/","href":"/fr/management-api/cases/delete"},{"title":"API de résolution de dossier","sidebarTitle":"Résoudre un dossier","openapi":"fr/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/resolve/","href":"/fr/management-api/cases/resolve"},{"title":"API de demande d'informations pour dossier","sidebarTitle":"Demande d'infos (en attente utilisateur)","openapi":"fr/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/request-info/","href":"/fr/management-api/cases/request-info"},{"title":"API de transfert de dossier Didit","sidebarTitle":"Transférer un dossier","openapi":"fr/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/transfer/","href":"/fr/management-api/cases/transfer"},{"title":"API d'impression de dossier en PDF","sidebarTitle":"Imprimer le dossier","openapi":"fr/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/print/","href":"/fr/management-api/cases/print"},{"title":"API de statistiques des dossiers","sidebarTitle":"Statistiques des dossiers","openapi":"fr/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/cases/statistics/","href":"/fr/management-api/cases/statistics"},{"title":"API de mise à jour groupée du statut des dossiers","sidebarTitle":"Mise à jour groupée des dossiers","openapi":"fr/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/bulk/status/","href":"/fr/management-api/cases/bulk-status"},{"title":"API de liste des notes de dossier","sidebarTitle":"Lister les notes de dossier","openapi":"fr/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/notes/","href":"/fr/management-api/cases/list-notes"},{"title":"API de création de note de dossier","sidebarTitle":"Créer une note de dossier","openapi":"fr/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/notes/","href":"/fr/management-api/cases/create-note"}]},{"group":"Modèles de dossiers","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/sliders.svg","pages":[{"title":"Lister les modèles de dossiers API","sidebarTitle":"Lister les modèles de dossiers","openapi":"fr/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/cases/blueprints/","href":"/fr/management-api/case-blueprints/list"},{"title":"API de création de modèle de dossier","sidebarTitle":"Créer un modèle de dossier","openapi":"fr/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/blueprints/","href":"/fr/management-api/case-blueprints/create"},{"title":"API d'installation des modèles de blueprint","sidebarTitle":"Installer les modèles de blueprint","openapi":"fr/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/blueprints/presets/install/","href":"/fr/management-api/case-blueprints/install-presets"}]},{"group":"Réseaux","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/link.svg","pages":[{"title":"API de liste des réseaux de fraude","sidebarTitle":"Lister les réseaux","openapi":"fr/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/","href":"/fr/management-api/networks/list"},{"title":"API de détail d'un réseau de fraude","sidebarTitle":"Détail du réseau","openapi":"fr/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/","href":"/fr/management-api/networks/get"},{"title":"Ajouter un tag à un réseau de fraude (API)","sidebarTitle":"Ajouter un tag réseau","openapi":"fr/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/tags/add/","href":"/fr/management-api/networks/add-tag"},{"title":"Supprimer un tag d'un réseau de fraude : API Didit","sidebarTitle":"Supprimer le tag du réseau","openapi":"fr/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/tags/remove/","href":"/fr/management-api/networks/remove-tag"},{"title":"API de graphe de réseau de fraude","sidebarTitle":"Obtenir le graphe du réseau","openapi":"fr/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/graph/","href":"/fr/management-api/networks/graph"},{"title":"API : lister les membres du réseau de fraude","sidebarTitle":"Lister les membres","openapi":"fr/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/members/","href":"/fr/management-api/networks/members"},{"title":"API de liste des signaux de réseaux de fraude","sidebarTitle":"Lister les signaux réseau","openapi":"fr/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/signals/","href":"/fr/management-api/networks/signals"},{"title":"API de chronologie du réseau de fraude","sidebarTitle":"Obtenir la chronologie du réseau","openapi":"fr/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/timeline/","href":"/fr/management-api/networks/timeline"},{"title":"API de carte des réseaux de fraude","sidebarTitle":"Obtenir la carte du réseau","openapi":"fr/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/map/","href":"/fr/management-api/networks/map"},{"title":"API de consultation de l'appartenance aux réseaux","sidebarTitle":"Appartenance aux réseaux","href":"/fr/management-api/networks/membership-lookup"}]},{"group":"Modèles de rapports","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/task-square.svg","pages":[{"title":"API de liste des modèles de rapport","sidebarTitle":"Lister les modèles de rapport","openapi":"fr/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/report-templates/","href":"/fr/management-api/report-templates/list"},{"title":"API de création de modèle de rapport","sidebarTitle":"Créer un modèle de rapport","openapi":"fr/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/report-templates/","href":"/fr/management-api/report-templates/create"}]},{"group":"Rapports réglementaires","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/search-file.svg","pages":[{"title":"Créer un rapport FIU à partir d'un dossier via API","sidebarTitle":"Créer un rapport depuis un dossier","openapi":"fr/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/regulatory-reports/","href":"/fr/management-api/regulatory-reports/create-for-case"},{"title":"Liste des rapports FIU via l'API","sidebarTitle":"Lister les rapports","openapi":"fr/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/regulatory-reports/","href":"/fr/management-api/regulatory-reports/list"},{"title":"API de validation des rapports FIU","sidebarTitle":"Valider le rapport","openapi":"fr/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/regulatory-reports/{report_uuid}/validate/","href":"/fr/management-api/regulatory-reports/validate"},{"title":"API de finalisation du rapport FIU","sidebarTitle":"Finaliser le rapport","openapi":"fr/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/regulatory-reports/{report_uuid}/finalize/","href":"/fr/management-api/regulatory-reports/finalize"},{"title":"Supprimer un rapport FIU via l'API","sidebarTitle":"Supprimer le rapport","openapi":"fr/openapi-25.json DELETE /v3/organization/{organization_id}/application/{application_id}/regulatory-reports/{report_uuid}/","href":"/fr/management-api/regulatory-reports/delete"},{"title":"API de téléchargement du rapport FIU | Didit","sidebarTitle":"Obtenir l'URL de téléchargement","openapi":"fr/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/regulatory-reports/{report_uuid}/download-url/","href":"/fr/management-api/regulatory-reports/download-url"}]},{"group":"Transactions","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/transactions.svg","pages":[{"title":"API de liste des transactions : surveillance KYT","sidebarTitle":"Liste des transactions","openapi":"fr/openapi-25.json GET /v3/transactions/","href":"/fr/management-api/transactions/list"},{"title":"API de création de transaction : soumission KYT","sidebarTitle":"Créer une transaction","openapi":"fr/openapi-25.json POST /v3/transactions/","href":"/fr/management-api/transactions/create"},{"title":"API de suppression groupée de transactions","sidebarTitle":"Suppression groupée de transactions","openapi":"fr/openapi-25.json DELETE /v3/organization/{organization_id}/application/{application_id}/transactions/delete/","href":"/fr/management-api/transactions/delete"},{"title":"API de consultation de transaction : détail KYT","sidebarTitle":"Obtenir une transaction","openapi":"fr/openapi-25.json GET /v3/transactions/{transaction_id}/","href":"/fr/management-api/transactions/get"},{"title":"API de liste des notes de transaction","sidebarTitle":"Lister les notes de transaction","openapi":"fr/openapi-25.json GET /v3/transactions/{transaction_id}/notes/","href":"/fr/management-api/transactions/list-notes"},{"title":"API de création de note de transaction","sidebarTitle":"Créer une note de transaction","openapi":"fr/openapi-25.json POST /v3/transactions/{transaction_id}/notes/","href":"/fr/management-api/transactions/create-note"},{"title":"API de liste des transactions liées","sidebarTitle":"Transactions liées","openapi":"fr/openapi-25.json GET /v3/transactions/{transaction_id}/related/","href":"/fr/management-api/transactions/list-related"},{"title":"API de rapport PDF des transactions","sidebarTitle":"Générer le rapport PDF d'une transaction","openapi":"fr/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/transactions/{transaction_uuid}/pdf/","href":"/fr/management-api/transactions/generate-pdf"},{"title":"Filtrage des portefeuilles crypto : API AML à la demande","sidebarTitle":"Filtrage de portefeuille","openapi":"fr/openapi-25.json POST /v3/wallet-screening/","href":"/fr/management-api/transactions/screen-wallet"},{"title":"Filtrage des portefeuilles : API de rapport PDF","sidebarTitle":"Rapport PDF du filtrage","openapi":"fr/openapi-25.json POST /v3/wallet-screening/pdf/","href":"/fr/management-api/transactions/screen-wallet-pdf"},{"title":"Token de transaction SDK : API de gestion Didit","sidebarTitle":"Token de transaction SDK","openapi":"fr/openapi-25.json POST /v3/transactions/sdk-token/","href":"/fr/management-api/transactions/sdk-token"},{"title":"Soumettre une transaction depuis un SDK : KYT côté client","sidebarTitle":"Soumettre une transaction (jeton SDK)","openapi":"fr/openapi-25.json POST /v1/transactions/","href":"/fr/management-api/transactions/submit-sdk"},{"title":"Récupérer une transaction via SDK : KYT côté client","sidebarTitle":"Récupérer la transaction (token SDK)","openapi":"fr/openapi-25.json GET /v1/transactions/{transaction_id}/","href":"/fr/management-api/transactions/get-sdk"},{"title":"Lister les règles de surveillance des transactions API","sidebarTitle":"Lister les règles","openapi":"fr/openapi-25.json GET /v3/transactions/rules/","href":"/fr/management-api/transactions/rules-list"},{"title":"Créer une règle de surveillance des transactions API KYT","sidebarTitle":"Créer une règle","openapi":"fr/openapi-25.json POST /v3/transactions/rules/","href":"/fr/management-api/transactions/rules-create"},{"title":"API Obtenir une règle de surveillance des transactions","sidebarTitle":"Obtenir une règle","openapi":"fr/openapi-25.json GET /v3/transactions/rules/{rule_uuid}/","href":"/fr/management-api/transactions/rules-get"},{"title":"Mise à jour d'une règle de surveillance des transactions","sidebarTitle":"Mettre à jour une règle","openapi":"fr/openapi-25.json PATCH /v3/transactions/rules/{rule_uuid}/","href":"/fr/management-api/transactions/rules-update"},{"title":"Supprimer une règle de surveillance des transactions","sidebarTitle":"Supprimer une règle","openapi":"fr/openapi-25.json DELETE /v3/transactions/rules/{rule_uuid}/","href":"/fr/management-api/transactions/rules-delete"},{"title":"Backtest de règles de surveillance des transactions : API","sidebarTitle":"Backtest des règles","openapi":"fr/openapi-25.json POST /v3/transactions/rules/backtest/","href":"/fr/management-api/transactions/rules-backtest"},{"title":"Surveillance des transactions : API et 150+ préréglages","sidebarTitle":"Lister la bibliothèque de règles","openapi":"fr/openapi-25.json GET /v3/transactions/rules/library/","href":"/fr/management-api/transactions/rules-library"},{"title":"Surveillance des transactions : règles prédéfinies (API)","sidebarTitle":"Installer les règles prédéfinies","openapi":"fr/openapi-25.json POST /v3/transactions/rules/install/","href":"/fr/management-api/transactions/rules-install"},{"title":"Désinstaller les règles prédéfinies de surveillance (API)","sidebarTitle":"Désinstaller les règles","openapi":"fr/openapi-25.json DELETE /v3/transactions/rules/install/","href":"/fr/management-api/transactions/rules-uninstall"}]},{"group":"Événements de surveillance","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/transactions.svg","pages":[{"title":"Liste des événements de surveillance (API)","sidebarTitle":"Liste des événements","openapi":"fr/openapi-25.json GET /v3/events/","href":"/fr/management-api/monitoring-events/list"},{"title":"Créer un événement de surveillance (API)","sidebarTitle":"Créer un événement","openapi":"fr/openapi-25.json POST /v3/events/","href":"/fr/management-api/monitoring-events/create"},{"title":"API d'événements de surveillance en lot","sidebarTitle":"Événements de surveillance en lot","openapi":"fr/openapi-25.json POST /v3/events/batch/","href":"/fr/management-api/monitoring-events/create-batch"},{"title":"Générer un token SDK de surveillance via l'API","sidebarTitle":"Générer un token SDK surveillance","openapi":"fr/openapi-25.json POST /v3/events/sdk-token/","href":"/fr/management-api/monitoring-events/sdk-token"},{"title":"API Récupérer un événement de surveillance","sidebarTitle":"Récupérer un événement","openapi":"fr/openapi-25.json GET /v3/events/{event_uuid}/","href":"/fr/management-api/monitoring-events/get"},{"title":"Chronologie des événements par sujet, API Didit","sidebarTitle":"Chronologie par sujet","openapi":"fr/openapi-25.json GET /v3/events/subjects/{vendor_data}/","href":"/fr/management-api/monitoring-events/subject-timeline"},{"title":"Métriques d'enrichissement des événements (API)","sidebarTitle":"Obtenir les métriques d'enrichissement","openapi":"fr/openapi-25.json GET /v3/events/enrichment-metrics/","href":"/fr/management-api/monitoring-events/enrichment-metrics"},{"title":"Supprimer un événement de surveillance (API)","sidebarTitle":"Supprimer un événement","openapi":"fr/openapi-25.json DELETE /v3/events/{event_uuid}/delete/","href":"/fr/management-api/monitoring-events/delete"}]},{"group":"Travel Rule","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/transactions.svg","pages":[{"title":"API des paramètres Travel Rule : profil VASP","sidebarTitle":"Paramètres Travel Rule","openapi":"fr/openapi-25.json GET /v3/travel-rule/settings/","href":"/fr/management-api/travel-rule/get-settings"},{"title":"API de mise à jour des paramètres Travel Rule","sidebarTitle":"Mettre à jour les paramètres Travel Rule","openapi":"fr/openapi-25.json PUT /v3/travel-rule/settings/","href":"/fr/management-api/travel-rule/update-settings"},{"title":"API réseaux Travel Rule : obtenir les réseaux","sidebarTitle":"Obtenir les réseaux Travel Rule","openapi":"fr/openapi-25.json GET /v3/travel-rule/networks/","href":"/fr/management-api/travel-rule/get-networks"},{"title":"API de récupération du questionnaire réseau Travel Rule","sidebarTitle":"Obtenir le questionnaire réseau","openapi":"fr/openapi-25.json GET /v3/travel-rule/networks/questionnaire/","href":"/fr/management-api/travel-rule/get-network-questionnaire"},{"title":"Enregistrer le questionnaire réseau Travel Rule (API)","sidebarTitle":"Enregistrer les réponses au questionnaire","openapi":"fr/openapi-25.json PUT /v3/travel-rule/networks/questionnaire/","href":"/fr/management-api/travel-rule/update-network-questionnaire"},{"title":"Soumettre le questionnaire réseau Travel Rule (API)","sidebarTitle":"Soumettre le questionnaire","openapi":"fr/openapi-25.json POST /v3/travel-rule/networks/questionnaire/submit/","href":"/fr/management-api/travel-rule/submit-network-questionnaire"},{"title":"Demande d'accès au réseau Travel Rule via l'API","sidebarTitle":"Demander un accès Travel Rule","openapi":"fr/openapi-25.json POST /v3/travel-rule/networks/{network}/request/","href":"/fr/management-api/travel-rule/request-network"},{"title":"Confirmer l'e-mail de conformité Travel Rule via l'API","sidebarTitle":"Confirmer l'e-mail de conformité","openapi":"fr/openapi-25.json POST /v3/travel-rule/settings/compliance-email/confirmation/","href":"/fr/management-api/travel-rule/send-compliance-email-confirmation"},{"title":"Liste des transferts Travel Rule (API)","sidebarTitle":"Lister les transferts Travel Rule","openapi":"fr/openapi-25.json GET /v3/travel-rule/transfers/","href":"/fr/management-api/travel-rule/list-transfers"},{"title":"Lister les dépôts Travel Rule non appariés via l'API","sidebarTitle":"Lister les dépôts non appariés","openapi":"fr/openapi-25.json GET /v3/travel-rule/unmatched/","href":"/fr/management-api/travel-rule/list-unmatched-deposits"},{"title":"API Travel Rule : associer un dépôt à un message","sidebarTitle":"Rapprocher un dépôt non associé","openapi":"fr/openapi-25.json POST /v3/travel-rule/unmatched/{transaction_uuid}/match/","href":"/fr/management-api/travel-rule/match-unmatched-deposit"},{"title":"API Travel Rule : actions sur les transferts","sidebarTitle":"Terminer, annuler ou renvoyer un transfert","openapi":"fr/openapi-25.json PATCH /v3/transactions/{transaction_id}/travel-rule/","href":"/fr/management-api/travel-rule/update-transfer"},{"title":"Confirmation de propriété du portefeuille : Travel Rule","sidebarTitle":"Confirmer ou refuser la propriété","openapi":"fr/openapi-25.json POST /v3/transactions/{transaction_id}/travel-rule/ownership/","href":"/fr/management-api/travel-rule/confirm-ownership"},{"title":"API de liste des messages Travel Rule","sidebarTitle":"Lister les messages Travel Rule","openapi":"fr/openapi-25.json GET /v3/transactions/{transaction_id}/travel-rule/messages/","href":"/fr/management-api/travel-rule/list-messages"},{"title":"API d'envoi de message Travel Rule","sidebarTitle":"Envoyer un message Travel Rule","openapi":"fr/openapi-25.json POST /v3/transactions/{transaction_id}/travel-rule/messages/","href":"/fr/management-api/travel-rule/create-message"},{"title":"Enregistrer un transfert entrant Sunrise : Travel Rule","sidebarTitle":"Transfert entrant (sunrise)","openapi":"fr/openapi-25.json POST /v3/travel-rule/inbound/","href":"/fr/management-api/travel-rule/register-inbound"},{"title":"Travel Rule : API de test pour un transfert VASP entrant","sidebarTitle":"Transfert VASP entrant de test","openapi":"fr/openapi-25.json POST /v3/travel-rule/test-vasp/inbound/","href":"/fr/management-api/travel-rule/trigger-test-vasp-inbound"},{"title":"Recherche d'annuaire VASP : API Travel Rule","sidebarTitle":"Rechercher dans l'annuaire VASP","openapi":"fr/openapi-25.json GET /v3/travel-rule/vasps/","href":"/fr/management-api/travel-rule/search-vasps"},{"title":"Récupérer une entrée du répertoire VASP : API Travel Rule","sidebarTitle":"Récupérer une entrée VASP","openapi":"fr/openapi-25.json GET /v3/travel-rule/vasps/{vasp_id}/","href":"/fr/management-api/travel-rule/get-vasp"},{"title":"Décision sur un VASP contrepartie : API Travel Rule","sidebarTitle":"Décision sur un VASP","openapi":"fr/openapi-25.json GET /v3/travel-rule/vasps/{vasp_id}/decision/","href":"/fr/management-api/travel-rule/get-vasp-decision"},{"title":"Définir une décision VASP contrepartie : API Travel Rule","sidebarTitle":"Définir la décision VASP","openapi":"fr/openapi-25.json PUT /v3/travel-rule/vasps/{vasp_id}/decision/","href":"/fr/management-api/travel-rule/set-vasp-decision"},{"title":"Effacer la décision VASP d'une contrepartie : Travel Rule","sidebarTitle":"Effacer une décision VASP","openapi":"fr/openapi-25.json DELETE /v3/travel-rule/vasps/{vasp_id}/decision/","href":"/fr/management-api/travel-rule/clear-vasp-decision"},{"title":"API de filtrage VASP des contreparties : Travel Rule","sidebarTitle":"Filtrage d'un VASP","openapi":"fr/openapi-25.json GET /v3/travel-rule/vasps/{vasp_id}/screening/","href":"/fr/management-api/travel-rule/get-vasp-screening"},{"title":"API de filtrage d'un VASP contrepartie : sanctions","sidebarTitle":"Filtrer un VASP contrepartie","openapi":"fr/openapi-25.json POST /v3/travel-rule/vasps/{vasp_id}/screening/","href":"/fr/management-api/travel-rule/screen-vasp"},{"title":"Lister les questionnaires de diligence VASP — API","sidebarTitle":"Lister les questionnaires de diligence","openapi":"fr/openapi-25.json GET /v3/travel-rule/vasps/{vasp_id}/questionnaires/","href":"/fr/management-api/travel-rule/list-vasp-questionnaires"},{"title":"Envoyer un questionnaire de due diligence VASP via l'API","sidebarTitle":"Envoyer un questionnaire de due diligence à un VASP","openapi":"fr/openapi-25.json POST /v3/travel-rule/vasps/{vasp_id}/questionnaires/","href":"/fr/management-api/travel-rule/send-vasp-questionnaire"},{"title":"Contacts de contreparties - API Travel Rule par e-mail","sidebarTitle":"Contacts de contreparties","openapi":"fr/openapi-25.json GET /v3/travel-rule/counterparty-contacts/","href":"/fr/management-api/travel-rule/list-counterparty-contacts"},{"title":"Travel Rule : ajouter un contact contrepartie API e-mail","sidebarTitle":"Ajouter un contact contrepartie","openapi":"fr/openapi-25.json POST /v3/travel-rule/counterparty-contacts/","href":"/fr/management-api/travel-rule/create-counterparty-contact"},{"title":"Supprimer un contact de contrepartie - API Travel Rule","sidebarTitle":"Supprimer un contact de contrepartie","openapi":"fr/openapi-25.json DELETE /v3/travel-rule/counterparty-contacts/{contact_uuid}/","href":"/fr/management-api/travel-rule/delete-counterparty-contact"},{"title":"Liste des adresses de portefeuille : API Travel Rule","sidebarTitle":"Lister les adresses de portefeuille","openapi":"fr/openapi-25.json GET /v3/travel-rule/wallet-addresses/","href":"/fr/management-api/travel-rule/list-wallet-addresses"},{"title":"API d'enregistrement d'adresse Travel Rule","sidebarTitle":"Enregistrer une adresse de portefeuille","openapi":"fr/openapi-25.json POST /v3/travel-rule/wallet-addresses/","href":"/fr/management-api/travel-rule/create-wallet-address"},{"title":"API d'import d'adresses de portefeuille Travel Rule","sidebarTitle":"Importer des adresses","openapi":"fr/openapi-25.json POST /v3/travel-rule/wallet-addresses/import/","href":"/fr/management-api/travel-rule/import-wallet-addresses"},{"title":"API de mise à jour d'adresse Travel Rule","sidebarTitle":"Mettre à jour le portefeuille","openapi":"fr/openapi-25.json PATCH /v3/travel-rule/wallet-addresses/{entry_uuid}/","href":"/fr/management-api/travel-rule/update-wallet-address"},{"title":"Supprimer une adresse de portefeuille : API Travel Rule","sidebarTitle":"Supprimer une adresse de portefeuille","openapi":"fr/openapi-25.json DELETE /v3/travel-rule/wallet-addresses/{entry_uuid}/","href":"/fr/management-api/travel-rule/delete-wallet-address"},{"title":"API liste des preuves de portefeuille - Travel Rule","sidebarTitle":"Preuves de portefeuille à examiner","openapi":"fr/openapi-25.json GET /v3/travel-rule/wallet-proofs/","href":"/fr/management-api/travel-rule/list-wallet-proofs"},{"title":"Approuver ou rejeter une preuve de portefeuille (API)","sidebarTitle":"Décider d'une preuve de portefeuille","openapi":"fr/openapi-25.json POST /v3/travel-rule/wallet-proofs/{proof_uuid}/decision/","href":"/fr/management-api/travel-rule/decide-wallet-proof"},{"title":"Créer une session widget de contrôle de portefeuille","sidebarTitle":"Créer une session widget portefeuille","openapi":"fr/openapi-25.json POST /v3/travel-rule/widget-session/","href":"/fr/management-api/travel-rule/create-widget-session"},{"title":"API de contexte du widget de propriété de portefeuille","sidebarTitle":"Contexte du widget","openapi":"fr/openapi-25.json GET /v3/travel-rule/widget/{token}/","href":"/fr/management-api/travel-rule/get-widget-context"},{"title":"API de preuve de propriété de portefeuille - Travel Rule","sidebarTitle":"Démarrer une preuve widget","openapi":"fr/openapi-25.json POST /v3/travel-rule/widget/{token}/proofs/","href":"/fr/management-api/travel-rule/create-widget-proof"},{"title":"API Travel Rule : soumettre une preuve de portefeuille","sidebarTitle":"Soumettre la preuve du widget","openapi":"fr/openapi-25.json POST /v3/travel-rule/widget/{token}/proofs/{proof_id}/verify/","href":"/fr/management-api/travel-rule/verify-widget-proof"},{"title":"API de sélection du VASP contrepartie (Travel Rule)","sidebarTitle":"Choisir le VASP contrepartie","openapi":"fr/openapi-25.json POST /v3/travel-rule/widget/{token}/vasps/","href":"/fr/management-api/travel-rule/select-widget-vasp"},{"title":"Recherche VASP Travel Rule : API du sélecteur widget","sidebarTitle":"Rechercher des VASP depuis le widget","openapi":"fr/openapi-25.json GET /v3/travel-rule/widget/{token}/vasps/","href":"/fr/management-api/travel-rule/search-widget-vasps"},{"title":"API informations de retrait par e-mail (Travel Rule)","sidebarTitle":"Obtenir les infos de retrait par e-mail","openapi":"fr/openapi-25.json GET /v3/travel-rule/pickup/{token}/","href":"/fr/management-api/travel-rule/get-pickup"},{"title":"Répondre à la prise en charge par e-mail : Travel Rule","sidebarTitle":"Répondre par e-mail","openapi":"fr/openapi-25.json POST /v3/travel-rule/pickup/{token}/respond/","href":"/fr/management-api/travel-rule/respond-pickup"},{"title":"API de liste des messages de retrait Travel Rule e-mail","sidebarTitle":"Liste des messages de retrait","openapi":"fr/openapi-25.json GET /v3/travel-rule/pickup/{token}/messages/","href":"/fr/management-api/travel-rule/list-pickup-messages"},{"title":"Travel Rule : répondre via l'API Pickup Portal par e-mail","sidebarTitle":"Répondre dans le portail","openapi":"fr/openapi-25.json POST /v3/travel-rule/pickup/{token}/messages/","href":"/fr/management-api/travel-rule/create-pickup-message"},{"title":"Obtenir une invitation Travel Rule gratuite - API Didit","sidebarTitle":"Obtenir une invitation","openapi":"fr/openapi-25.json GET /v3/travel-rule/join/{token}/","href":"/fr/management-api/travel-rule/get-join-invitation"},{"title":"Enregistrer un compte Travel Rule gratuit via l'API","sidebarTitle":"Compte Travel Rule gratuit","openapi":"fr/openapi-25.json POST /v3/travel-rule/join/{token}/","href":"/fr/management-api/travel-rule/register-join"},{"title":"Vérifier un compte Travel Rule gratuit via l'API","sidebarTitle":"Vérifier un compte gratuit","openapi":"fr/openapi-25.json POST /v3/travel-rule/join/{token}/verify/","href":"/fr/management-api/travel-rule/verify-join"},{"title":"Espace de travail Travel Rule gratuit - API Get Workspace","sidebarTitle":"Espace gratuit","openapi":"fr/openapi-25.json GET /v3/travel-rule/workspace/","href":"/fr/management-api/travel-rule/get-workspace"},{"title":"Revendiquer une entrée d'annuaire - API Travel Rule","sidebarTitle":"Revendiquer une entrée","openapi":"fr/openapi-25.json POST /v3/travel-rule/workspace/claim/","href":"/fr/management-api/travel-rule/claim-workspace"},{"title":"Envoyer le code de domaine API - Travel Rule gratuit","sidebarTitle":"Envoyer le code de domaine","openapi":"fr/openapi-25.json POST /v3/travel-rule/workspace/domain/code/","href":"/fr/management-api/travel-rule/send-workspace-domain-code"},{"title":"Confirmer le code de domaine API - Travel Rule gratuit","sidebarTitle":"Confirmer le code de domaine","openapi":"fr/openapi-25.json POST /v3/travel-rule/workspace/domain/confirm/","href":"/fr/management-api/travel-rule/confirm-workspace-domain"},{"title":"API de vérification DNS - Travel Rule, adhésion gratuite","sidebarTitle":"Vérifier le domaine DNS","openapi":"fr/openapi-25.json POST /v3/travel-rule/workspace/domain/dns/","href":"/fr/management-api/travel-rule/verify-workspace-domain-dns"},{"title":"Activer la facturation sortante API - Adhésion gratuite Travel Rule","sidebarTitle":"Activer la facturation sortante","openapi":"fr/openapi-25.json POST /v3/travel-rule/workspace/billing/","href":"/fr/management-api/travel-rule/enable-workspace-billing"}]},{"group":"Opérations sur les sessions","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/play.svg","pages":[{"title":"API de suppression groupée de sessions KYC","sidebarTitle":"Suppression groupée de sessions","openapi":"fr/openapi-25.json POST /v3/sessions/delete/","href":"/fr/management-api/sessions/batch-delete"},{"title":"API de suivi des suppressions de sessions en masse","sidebarTitle":"Suivi des suppressions en masse","openapi":"fr/openapi-25.json GET /v3/sessions/delete/{job_id}/","href":"/fr/management-api/sessions/get-deletion-job"},{"title":"API liste des revues de session : journal d'audit KYC","sidebarTitle":"Liste des revues de session","openapi":"fr/openapi-25.json GET /v3/sessions/{session_id}/reviews/","href":"/fr/management-api/sessions/list-reviews"},{"title":"API de révision de session : création et KYC manuel","sidebarTitle":"Créer une révision de session","openapi":"fr/openapi-25.json POST /v3/sessions/{session_id}/reviews/","href":"/fr/management-api/sessions/create-review"},{"title":"API Liste des événements de session","sidebarTitle":"Événements de session","openapi":"fr/openapi-25.json GET /v3/session/{sessionId}/events/","href":"/fr/management-api/sessions/list-events"},{"title":"Lister les livraisons de webhooks de session API","sidebarTitle":"Lister les livraisons de webhooks de session","openapi":"fr/openapi-25.json GET /v3/session/{sessionId}/webhooks/","href":"/fr/management-api/sessions/list-webhooks"},{"title":"Récupérer la livraison webhook d'une session : API Didit","sidebarTitle":"Livraison webhook de session","openapi":"fr/openapi-25.json GET /v3/session/{sessionId}/webhook/{webhook_uuid}","href":"/fr/management-api/sessions/get-webhook"},{"title":"Renvoyer un webhook de session (API Didit)","sidebarTitle":"Renvoyer un webhook de session","openapi":"fr/openapi-25.json POST /v3/session/{sessionId}/webhook/{webhook_uuid}/resend","href":"/fr/management-api/sessions/resend-webhook"},{"title":"API de l'historique du filtrage AML : liste des contrôles","sidebarTitle":"Historique du filtrage AML","openapi":"fr/openapi-25.json GET /v3/session/{sessionId}/aml-screening-history/","href":"/fr/management-api/sessions/aml-screening-history"},{"title":"Exporter l'historique de filtrage AML en CSV | API Didit","sidebarTitle":"Exporter l'historique AML","openapi":"fr/openapi-25.json GET /v3/session/{sessionId}/aml-screening-history/export/","href":"/fr/management-api/sessions/export-aml-screening-history"}]},{"group":"Personnalisation","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/sliders.svg","pages":[{"title":"Récupérer le branding via l'API de personnalisation","sidebarTitle":"Récupérer le branding","openapi":"fr/openapi-25.json GET /v3/customization/","href":"/fr/management-api/customization/get"},{"title":"API de mise à jour de la marque blanche Didit","sidebarTitle":"Mettre à jour la marque","openapi":"fr/openapi-25.json PATCH /v3/customization/","href":"/fr/management-api/customization/update"}]},{"group":"Webhook","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/link.svg","pages":[{"title":"Liste des destinations de webhook API","sidebarTitle":"Lister les destinations webhook","openapi":"fr/openapi-25.json GET /v3/webhook/destinations/","href":"/fr/management-api/webhook/list-destinations"},{"title":"Créer une destination webhook API","sidebarTitle":"Créer une destination webhook","openapi":"fr/openapi-25.json POST /v3/webhook/destinations/","href":"/fr/management-api/webhook/create-destination"},{"title":"Récupérer une destination webhook : API de gestion Didit","sidebarTitle":"Obtenir une destination webhook","openapi":"fr/openapi-25.json GET /v3/webhook/destinations/{destination_uuid}/","href":"/fr/management-api/webhook/get-destination"},{"title":"Mettre à jour une destination webhook : API","sidebarTitle":"Mettre à jour la destination webhook","openapi":"fr/openapi-25.json PATCH /v3/webhook/destinations/{destination_uuid}/","href":"/fr/management-api/webhook/update-destination"},{"title":"API de suppression de destination webhook","sidebarTitle":"Supprimer une destination webhook","openapi":"fr/openapi-25.json DELETE /v3/webhook/destinations/{destination_uuid}/","href":"/fr/management-api/webhook/delete-destination"},{"title":"Obtenir la configuration des webhooks via l'API","sidebarTitle":"Configuration des webhooks","openapi":"fr/openapi-25.json GET /v3/webhook/","href":"/fr/management-api/webhook/get-config"},{"title":"Mise à jour de la configuration webhook API","sidebarTitle":"Configuration webhook","openapi":"fr/openapi-25.json PATCH /v3/webhook/","href":"/fr/management-api/webhook/update-config"},{"title":"Statistiques des destinations de webhook (API)","sidebarTitle":"Statistiques des destinations","openapi":"fr/openapi-25.json GET /v3/webhook/destinations/{destination_uuid}/analytics/","href":"/fr/management-api/webhook/destination-analytics"},{"title":"API : lister les livraisons de webhooks","sidebarTitle":"Livraisons de webhooks","openapi":"fr/openapi-25.json GET /v3/webhook/destinations/{destination_uuid}/deliveries/","href":"/fr/management-api/webhook/list-deliveries"},{"title":"Obtenir une livraison de webhook (API)","sidebarTitle":"Livraison de webhook","openapi":"fr/openapi-25.json GET /v3/webhook/destinations/{destination_uuid}/deliveries/{delivery_uuid}/","href":"/fr/management-api/webhook/get-delivery"},{"title":"Renvoi de livraison webhook : API Didit","sidebarTitle":"Renvoyer une livraison","openapi":"fr/openapi-25.json POST /v3/webhook/destinations/{destination_uuid}/deliveries/{delivery_uuid}/resend/","href":"/fr/management-api/webhook/resend-delivery"}]},{"group":"Facturation","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/billing.svg","pages":[{"title":"API Solde de crédits : facturation KYC","sidebarTitle":"Solde de crédits","openapi":"fr/openapi-25.json GET /v3/billing/balance/","href":"/fr/management-api/billing/balance"},{"title":"API de recharge de crédits","sidebarTitle":"Recharge de crédits","openapi":"fr/openapi-25.json POST /v3/billing/top-up/","href":"/fr/management-api/billing/top-up"}]},{"group":"Analyses","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/overview.svg","pages":[{"title":"API d'analytics des vérifications d'application","sidebarTitle":"Obtenir les analytics","openapi":"fr/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/analytics/","href":"/fr/management-api/analytics/get"},{"title":"Vérifications du jour par heure : API Didit","sidebarTitle":"Vérifications du jour par heure","openapi":"fr/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/analytics/today/","href":"/fr/management-api/analytics/today-by-hour"}]},{"group":"Présentation de l'API de gestion","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/info.svg","pages":[{"title":"API de gestion Didit v3 : workflows et facturation","sidebarTitle":"API de gestion","href":"/fr/sessions-api/management-api"}]},{"group":"API d'authentification (programmatique)","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/key.svg","pages":[{"title":"API d'authentification : inscription programmatique","sidebarTitle":"Créer un compte","openapi":"fr/openapi-auth.json POST /programmatic/register/","href":"/fr/auth-api/register"},{"title":"API de vérification de l'e-mail : obtenir clés API Didit","sidebarTitle":"Vérifier l'e-mail","openapi":"fr/openapi-auth.json POST /programmatic/verify-email/","href":"/fr/auth-api/verify-email"},{"title":"API de connexion programmatique : jetons d'accès headless","sidebarTitle":"Connexion","openapi":"fr/openapi-auth.json POST /programmatic/login/","href":"/fr/auth-api/login"},{"title":"Obtenir les identifiants API : client_id et api_key","sidebarTitle":"Obtenir les identifiants","openapi":"fr/openapi-auth.json GET /organizations/me/{org_id}/applications/{app_id}/","href":"/fr/auth-api/get-credentials"},{"title":"API de création d'application : apps programmatiques","sidebarTitle":"Créer une application","openapi":"fr/openapi-auth.json POST /organizations/me/{org_id}/applications/","href":"/fr/auth-api/create-application"},{"title":"API de mise à jour d'application : gérer les apps clients","sidebarTitle":"Mettre à jour l'application","openapi":"fr/openapi-auth.json PATCH /organizations/me/{org_id}/applications/{app_id}/","href":"/fr/auth-api/update-application"}]},{"group":"Identité et documents","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/id-scan.svg","pages":[{"title":"API de vérification d'identité : OCR et authenticité","sidebarTitle":"API de vérification d'identité","openapi":"fr/openapi-25.json POST /v3/id-verification/","href":"/fr/standalone-apis/id-verification"},{"title":"API de justificatif de domicile : vérification POA et OCR","sidebarTitle":"API justificatif de domicile","openapi":"fr/openapi-25.json POST /v3/poa/","href":"/fr/standalone-apis/proof-of-address"},{"title":"API de validation d'adresse : vérifier et normaliser","sidebarTitle":"Validation d'adresse","openapi":"fr/openapi-25.json POST /v3/address-validation/","href":"/fr/standalone-apis/address-validation"}]},{"group":"Portefeuilles d'identité numérique","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/id-scan.svg","pages":[{"title":"API de vérification par portefeuille d'identité numérique","sidebarTitle":"API portefeuilles ID numériques","href":"/fr/standalone-apis/digital-id-wallets"},{"title":"Catalogue des API de portefeuilles d'identité numérique","sidebarTitle":"Portefeuilles ID numériques","openapi":"fr/openapi-25.json GET /v3/id-verification/wallets/","href":"/fr/standalone-apis/digital-id-wallet-catalog"},{"group":"Démarrer la vérification","pages":[{"title":"API de vérification BankID Suède","sidebarTitle":"BankID Suède","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/bankid-se/","href":"/fr/api-reference/digital-id-wallets/bankid-se"},{"title":"API de vérification Finnish Trust Network","sidebarTitle":"Finnish Trust Network","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/ftn/","href":"/fr/api-reference/digital-id-wallets/ftn"},{"title":"API de vérification d'identité Google Wallet ID","sidebarTitle":"Google Wallet ID","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/google-wallet/","href":"/fr/api-reference/digital-id-wallets/google-wallet"},{"title":"API de vérification MitID personnel","sidebarTitle":"MitID personnel","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/mitid/","href":"/fr/api-reference/digital-id-wallets/mitid"},{"title":"API de vérification Mobile-ID","sidebarTitle":"Mobile-ID","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/mobile-id/","href":"/fr/api-reference/digital-id-wallets/mobile-id"},{"title":"API de vérification Smart-ID","sidebarTitle":"Smart-ID","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/smart-id/","href":"/fr/api-reference/digital-id-wallets/smart-id"},{"title":"API iDIN : vérification d'identité complète","sidebarTitle":"iDIN identification complète","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/idin/","href":"/fr/api-reference/digital-id-wallets/idin"},{"title":"API de vérification Auðkenni","sidebarTitle":"Auðkenni","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/audkenni/","href":"/fr/api-reference/digital-id-wallets/audkenni"},{"title":"API de vérification Bank iD","sidebarTitle":"Bank iD","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/bankid-cz/","href":"/fr/api-reference/digital-id-wallets/bankid-cz"},{"title":"API de vérification BankID Norvège","sidebarTitle":"BankID Norvège","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/bankid-no/","href":"/fr/api-reference/digital-id-wallets/bankid-no"},{"title":"API Buypass ID : vérification d'identité","sidebarTitle":"Buypass ID","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/buypass/","href":"/fr/api-reference/digital-id-wallets/buypass"},{"title":"API de vérification ConnectID","sidebarTitle":"ConnectID","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/connectid/","href":"/fr/api-reference/digital-id-wallets/connectid"},{"title":"API de vérification Diia","sidebarTitle":"Diia","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/diia/","href":"/fr/api-reference/digital-id-wallets/diia"},{"title":"API de vérification EUDI Wallet","sidebarTitle":"EUDI Wallet","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/eudi/","href":"/fr/api-reference/digital-id-wallets/eudi"},{"title":"API de vérification par carte d'identité estonienne","sidebarTitle":"Carte d'identité estonienne","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/idcard-ee/","href":"/fr/api-reference/digital-id-wallets/idcard-ee"},{"title":"API de vérification FranceConnect","sidebarTitle":"FranceConnect","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/franceconnect/","href":"/fr/api-reference/digital-id-wallets/franceconnect"},{"title":"API de vérification Freja eID","sidebarTitle":"Freja eID","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/frejaid/","href":"/fr/api-reference/digital-id-wallets/frejaid"},{"title":"API de vérification GOV.UK Wallet","sidebarTitle":"GOV.UK Wallet","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/govuk-wallet/","href":"/fr/api-reference/digital-id-wallets/govuk-wallet"},{"title":"API de vérification MojeID","sidebarTitle":"MojeID","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/mojeid/","href":"/fr/api-reference/digital-id-wallets/mojeid"},{"title":"API de vérification OneID","sidebarTitle":"OneID","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/oneid/","href":"/fr/api-reference/digital-id-wallets/oneid"},{"title":"API de vérification Personalausweis Profile 2","sidebarTitle":"Personalausweis Profile 2","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/personalausweis/","href":"/fr/api-reference/digital-id-wallets/personalausweis"},{"title":"API de vérification UAE PASS","sidebarTitle":"UAE PASS","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/uae-pass/","href":"/fr/api-reference/digital-id-wallets/uae-pass"},{"title":"API de vérification Vipps Plus","sidebarTitle":"Vipps Plus","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/vipps/","href":"/fr/api-reference/digital-id-wallets/vipps"},{"title":"API de vérification eParaksts mobile","sidebarTitle":"eParaksts mobile","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/eparaksts-mobile/","href":"/fr/api-reference/digital-id-wallets/eparaksts-mobile"},{"title":"API de vérification gov.br","sidebarTitle":"gov.br","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/govbr/","href":"/fr/api-reference/digital-id-wallets/govbr"},{"title":"API de vérification itsme","sidebarTitle":"itsme","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/itsme/","href":"/fr/api-reference/digital-id-wallets/itsme"}]},{"title":"Résultat de vérification du portefeuille ID numérique","sidebarTitle":"Résultat du portefeuille","openapi":"fr/openapi-25.json GET /v3/id-verification/wallets/verifications/{request_id}/","href":"/fr/standalone-apis/digital-id-wallet-result"},{"title":"Soumettre une réponse de portefeuille Digital Credentials","sidebarTitle":"Soumettre la réponse wallet","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/verifications/{request_id}/response/","href":"/fr/standalone-apis/digital-id-wallet-response"},{"title":"Interroger l'authentification Smart-ID et Mobile-ID","sidebarTitle":"Interroger la vérification du portefeuille","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/verifications/{request_id}/poll/","href":"/fr/standalone-apis/digital-id-wallet-poll"},{"title":"Annuler la vérification du portefeuille d'identité numérique","sidebarTitle":"Annuler la vérification du portefeuille","description":"Annulez une vérification de portefeuille d'identité numérique en attente avec Didit.","openapi":"fr/openapi-25.json POST /v3/id-verification/wallets/verifications/{request_id}/cancel/","href":"/fr/standalone-apis/digital-id-wallet-cancel"}]},{"group":"IA documentaire","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/document-ai.svg","pages":[{"title":"API d'extraction de données de documents personnalisée","sidebarTitle":"API Document AI","openapi":"fr/openapi-25.json POST /v3/document-ai/","href":"/fr/standalone-apis/document-ai"}]},{"group":"API de validation en base de données","pages":[{"title":"Validation en base de données : API de correspondance ID","sidebarTitle":"API Validation en base de données","description":"Didit : validez l'identité via 100+ sources nationales et mondiales (POST /v3/database-validation/). Correspondance 1x1 et 2x2. Paiement à l'appel.","openapi":"fr/openapi-25.json POST /v3/database-validation/","href":"/fr/standalone-apis/database-validation"}]},{"group":"Validation en base de données","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/driver-2.svg","pages":[{"group":"🇦🇷 Argentine","pages":[{"title":"Argentine - API de vérification DNI : Data Match","sidebarTitle":"Argentine - DNI (RENAPER, sans selfie)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/argentina/renaper-data"},{"title":"Vérification DNI (RENAPER) Argentine - API Didit","sidebarTitle":"Argentine - DNI (RENAPER)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/argentina/renaper"},{"title":"Validation en base de données Argentine (AFIP) : API Citoyens","sidebarTitle":"Argentine – Citoyens (AFIP)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/argentina/citizens"},{"title":"Vérification bureau de crédit Argentine : API ID Match","sidebarTitle":"Bureau de crédit Argentine","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/argentina/credit-bureau"}]},{"group":"🇦🇺 Australie","pages":[{"title":"Vérification d'acte de naissance Australie - API DVS","sidebarTitle":"Australie - DVS - Acte de naissance","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/australia/birth-certificate"},{"title":"Vérification de la carte Centrelink (Australie) - API DVS","sidebarTitle":"Australie - DVS - Carte Centrelink","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/australia/centrelink-card"},{"title":"Validation en base de données Australie ImmiCard (DVS)","sidebarTitle":"Australie - DVS - ImmiCard","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/australia/immicard"},{"title":"Vérification de document de voyage Australie - API DVS","sidebarTitle":"Australie - DVS - Document de voyage","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/australia/travel-document"},{"title":"Certificat de changement de nom Australie : API DVS","sidebarTitle":"Australie - Certificat de changement de nom","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/australia/change-of-name-certificate"},{"title":"Validation Australie : certificat de citoyenneté DVS","sidebarTitle":"Australie - DVS Certificat de citoyenneté","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/australia/citizenship-certificate"},{"title":"Vérification de l'acte de mariage australien – API DVS","sidebarTitle":"Australie - Acte de mariage","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/australia/marriage-certificate"},{"title":"Vérification bureau de crédit Australie : API ID Match","sidebarTitle":"Credit Bureau Australie","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/australia/credit-bureau"},{"title":"Vérification de décès Australie (BDM) : API temps réel","sidebarTitle":"Décès Australie (BDM)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/australia/death-check"},{"title":"Vérification registre électoral australien : API ID Match","sidebarTitle":"Liste électorale australienne","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/australia/electoral-roll"},{"title":"Vérification superannuation et paie Australie (API)","sidebarTitle":"Australie : superannuation et paie","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/australia/superannuation-payroll"},{"title":"VEVO Australie : API de validation en base de données","sidebarTitle":"VEVO Australie","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/australia/vevo"},{"title":"Vérification du permis de conduire australien - API DVS","sidebarTitle":"DVS - Permis australien","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/australia/driver-licence"},{"title":"Carte Medicare Australie : vérification DVS (API)","sidebarTitle":"DVS - Carte Medicare Australie","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/australia/medicare-card"},{"title":"Validation DVS du passeport australien | Didit","sidebarTitle":"DVS - Passeport Australie","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/australia/passport"},{"title":"Validation en base de données : visa Australie (DVS)","sidebarTitle":"DVS - Australie Visa","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/australia/visa"}]},{"title":"Bureau de crédit autrichien : API de correspondance","sidebarTitle":"Bureau de crédit Autriche","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/austria/credit-bureau"},{"title":"Bolivie : API de vérification CI en temps réel","sidebarTitle":"Bolivie - Vérification CI","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/bolivia/cedula"},{"group":"🇧🇷 Brésil","pages":[{"title":"API de vérification Unico IDCloud Brésil (CPF + selfie)","sidebarTitle":"BRA - Unico IDCloud (CPF + selfie)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/brazil/unico-idcloud"},{"title":"CNH Brésil : QR code, correspondance faciale (Datavalid)","sidebarTitle":"Brésil - CNH QR code (Datavalid)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/brazil/cnh-facial-qrcode"},{"title":"CPF Brésil : ID Match Datavalid, correspondance faciale","sidebarTitle":"Brésil - CPF + visage (Datavalid)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/brazil/cpf-facial"},{"title":"Vérification CPF Brésil : API de statut en temps réel","sidebarTitle":"Brésil - Statut CPF","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/brazil/cpf"},{"title":"Brésil - Associés et dirigeants (QSA) API","sidebarTitle":"Brésil - Associés et dirigeants (QSA)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/brazil/company-directors"},{"title":"CNPJ Brésil : API de consultation du registre","sidebarTitle":"Brésil - Registre des sociétés (CNPJ)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/brazil/company-registry"},{"title":"Contrôle de décès CPF (Brésil) - API de vérification","sidebarTitle":"Brésil - Contrôle de décès (CPF)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/brazil/death-check"},{"title":"Casier judiciaire fédéral Brésil : vérification API","sidebarTitle":"Brésil - Casier judiciaire fédéral","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/brazil/antecedentes-criminais-pf"},{"title":"API de validation en base de données Brésil (résidentiel)","sidebarTitle":"Brésil résidentiel","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/brazil/residential"},{"title":"Vérification CPF/CNPJ au Brésil : API Didit","sidebarTitle":"Immatriculation fiscale Brésil (CPF/CNPJ)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/brazil/tax-registration"}]},{"title":"Vérification ID nationale cambodgienne : API","sidebarTitle":"Cambodge - ID nationale","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/cambodia/national-id"},{"group":"🇨🇦 Canada","pages":[{"title":"API de vérification Canada Credit Bureau (FINTRAC)","sidebarTitle":"Canada Credit Bureau (FINTRAC)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/canada/credit-bureau-fintrac"},{"title":"Canada Credit Bureau 2 (hors FINTRAC) : correspondance ID","sidebarTitle":"Canada Credit Bureau 2 (hors FINTRAC)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/canada/credit-bureau-2-non-fintrac"},{"title":"API Canada résidentiel : correspondance d'identité","sidebarTitle":"Canada résidentiel","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/canada/residential"}]},{"title":"Vérification RUT Chili : API de validation en temps réel","sidebarTitle":"Chili - Vérification RUT","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/chile/rut"},{"group":"🇨🇳 Chine","pages":[{"title":"Vérification de carte bancaire en Chine : API temps réel","sidebarTitle":"Carte bancaire chinoise","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/china/bank-card"},{"title":"API de vérification d'identité nationale chinoise","sidebarTitle":"ID nationale chinoise","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/china/national-id"},{"title":"API de vérification de passeport chinois en temps réel","sidebarTitle":"Passeport chinois","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/china/passport-verification"},{"title":"API de vérification du téléphone en Chine","sidebarTitle":"Chine Téléphone","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/china/phone"}]},{"group":"🇨🇴 Colombie","pages":[{"title":"Colombie - Vérification de cédula : API de consultation d'identité","sidebarTitle":"Colombie - Vérification cédula","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/colombia/cedula"},{"title":"Colombie - API de statut d'étranger Migración Colombia","sidebarTitle":"Colombie - Statut Migración Colombia","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/colombia/migracion"}]},{"title":"Vérification de cédula Costa Rica : API Data Match","sidebarTitle":"Costa Rica - Cédula","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/costa-rica/cedula"},{"group":"🇩🇰 Danemark","pages":[{"title":"Validation en base de données Danemark Consumer 2","sidebarTitle":"Danemark Consumer 2","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/denmark/consumer-2"},{"title":"Vérification identifiant national danois : API Data Match","sidebarTitle":"Identifiant national danois","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/denmark/national-id"}]},{"title":"Vérification de cédule République dominicaine - API","sidebarTitle":"Cédula République dominicaine","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/dominican-republic/cedula"},{"title":"Vérification de cédula Équateur - API en temps réel","sidebarTitle":"Équateur - Cédula","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/ecuador/cedula"},{"title":"Vérification DUI El Salvador : API de consultation","sidebarTitle":"El Salvador - DUI","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/el-salvador/dui"},{"group":"🇫🇮 Finlande","pages":[{"title":"Validation en base de données Finlande Consumer 2 : API","sidebarTitle":"Finlande Consumer 2","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/finland/consumer-2"},{"title":"Identité finlandaise : API de correspondance des données","sidebarTitle":"Identité nationale finlandaise","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/finland/national-id"}]},{"group":"🇫🇷 France","pages":[{"title":"API de vérification du téléphone France en temps réel","sidebarTitle":"France Téléphone","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/france/phone"},{"title":"Validation en base de données France : API résidentielle","sidebarTitle":"France résidentiel","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/france/residential"},{"title":"Vérification utilitaire France : API en temps réel","sidebarTitle":"Utility France","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/france/utility"}]},{"group":"🇩🇪 Allemagne","pages":[{"title":"API de vérification Credit Bureau Allemagne : Data Match","sidebarTitle":"Credit Bureau Allemagne","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/germany/credit-bureau"},{"title":"API de vérification du téléphone Allemagne (Phone 2)","sidebarTitle":"Allemagne Téléphone 2","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/germany/phone-2"}]},{"group":"🌐 Mondial","pages":[{"title":"Validation en base de données Global : Core Intelligence","sidebarTitle":"Global - Core Intelligence Service","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/global/intelligence-service"},{"title":"Enrichissement d'identité mondial - API de vérification","sidebarTitle":"Enrichissement mondial","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/global/identity-enrichment"},{"title":"Vérification Sim Swap mondiale : API Telco Match","sidebarTitle":"Sim Swap mondial","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/global/swap"}]},{"group":"🇬🇹 Guatemala","pages":[{"title":"Guatemala DPI correspondance faciale (RENAP) : ID Match","sidebarTitle":"Guatemala - DPI + visage (RENAP)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/guatemala/dpi-facial"},{"title":"Vérification DPI Guatemala : API en temps réel","sidebarTitle":"Guatemala - Vérification DPI","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/guatemala/dpi"}]},{"title":"Vérification DNI Honduras : API de recherche temps réel","sidebarTitle":"Honduras - Vérification DNI","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/honduras/dni"},{"group":"🇮🇳 Inde","pages":[{"title":"Vérification Aadhaar (UIDAI) Inde : API de validation","sidebarTitle":"Aadhaar (UIDAI) Inde","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/india/aadhaar"},{"title":"Vérification du permis de conduire indien (RTO) API","sidebarTitle":"Permis de conduire Inde (RTO)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/india/drivers-licence"},{"title":"API EPIC Inde (inscription électorale, ECI)","sidebarTitle":"EPIC Inde (ECI)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/india/epic-voter-s-registration"},{"title":"PAN Inde (Permanent Account Number) (ITD) - API","sidebarTitle":"PAN Inde (ITD)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/india/pan-permanent-account-number"}]},{"title":"Vérification carte d'identité résidentielle Indonésie","sidebarTitle":"Carte d'identité résidentielle (Indonésie)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/indonesia/residential-identity-card"},{"group":"🇮🇹 Italie","pages":[{"title":"API Bureau de crédit Italie : Correspondance d'en-tête","sidebarTitle":"Bureau de crédit Italie","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/italy/credit-bureau"},{"title":"API de vérification résidentielle Italie : identité","sidebarTitle":"Italie résidentielle","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/italy/residential"}]},{"title":"Vérification carte d'identité nationale Kenya : API","sidebarTitle":"Carte d'identité kényane","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/kenya/national-id"},{"title":"Vérification carte d'identité nationale Malaisie : API","sidebarTitle":"ID nationale Malaisie","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/malaysia/national-id"},{"group":"🇲🇽 Mexique","pages":[{"title":"Vérification CURP Mexique : API en temps réel","sidebarTitle":"Mexique - Vérification CURP","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/mexico/curp"},{"title":"Mexique - API de vérification de la validité de l'INE","sidebarTitle":"Mexique - Validité de la carte INE","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/mexico/ine-vigencia"}]},{"title":"Vérification résidentielle aux Pays-Bas : API ID Match","sidebarTitle":"Pays-Bas résidentiel","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/netherlands/residential"},{"group":"🇳🇿 Nouvelle-Zélande","pages":[{"title":"Validation en base de données DIA : naissances NZ","sidebarTitle":"DIA - Naissances NZ","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/new-zealand/births"},{"title":"Vérification de la citoyenneté néo-zélandaise (DIA) - API","sidebarTitle":"DIA - Citoyenneté néo-zélandaise","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/new-zealand/citizenship"},{"title":"Vérification de passeport néo-zélandais (DIA) - API","sidebarTitle":"DIA - Passeport néo-zélandais","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/new-zealand/passport"},{"title":"API de vérification de décès en Nouvelle-Zélande (BDM)","sidebarTitle":"Décès NZ (BDM)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/new-zealand/death-check"},{"title":"Vérification permis de conduire Nouvelle-Zélande (NZTA)","sidebarTitle":"Permis de conduire NZ (NZTA)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/new-zealand/drivers-licence"}]},{"group":"🇳🇬 Nigeria","pages":[{"title":"API de vérification du numéro BVN du Nigeria","sidebarTitle":"Numéro BVN du Nigeria","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/nigeria/bank-verification-number"},{"title":"Vérification du permis de conduire nigérian (FRSC)","sidebarTitle":"Permis de conduire (FRSC)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/nigeria/drivers-license"},{"title":"Passeport international du Nigeria (NIS) API : ID Match","sidebarTitle":"Passeport du Nigeria (NIS)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/nigeria/passport"},{"title":"Vérification de l'identité nationale NIMC au Nigeria","sidebarTitle":"NIMC (Nigeria)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/nigeria/national-id"},{"title":"Vérification NIMC Nigeria : API ID nationale et selfie","sidebarTitle":"ID nationale Nigeria + selfie (NIMC)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/nigeria/national-id-facial"}]},{"title":"Vérification résidentielle Norvège : API Identity Match","sidebarTitle":"Norvège résidentielle","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/norway/residential"},{"group":"🇵🇦 Panama","pages":[{"title":"Validation Cédula Panama et correspondance faciale API","sidebarTitle":"Panama - Cédula (SIB Plus)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/panama/sib-plus"},{"title":"Cédula du Panama : API de correspondance faciale (SIB)","sidebarTitle":"Panama - Cédula (SIB)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/panama/sib"}]},{"title":"Vérification CI Paraguay : API de recherche en temps réel","sidebarTitle":"Paraguay - Vérification CI","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/paraguay/cedula"},{"group":"🇵🇪 Pérou","pages":[{"title":"Vérification DNI Pérou : API en temps réel","sidebarTitle":"Pérou - Vérification DNI","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/peru/dni"},{"title":"Validation SUNAT au Pérou : API d'inscription fiscale","sidebarTitle":"Pérou : inscription fiscale (SUNAT)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/peru/tax-registration"}]},{"title":"Validation Philippines en base de données : résidence (phl_residential)","sidebarTitle":"Philippines Résidentiel","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/philippines/residential"},{"group":"🇸🇬 Singapour","pages":[{"title":"API Credit Bureau Singapour : vérification ID Match","sidebarTitle":"Credit Bureau Singapour","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/singapore/credit-bureau"},{"title":"API de vérification Singapour : recherche d'identité","sidebarTitle":"Singapour : services publics","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/singapore/utility"}]},{"group":"🇿🇦 Afrique du Sud","pages":[{"title":"Afrique du Sud - vérification du titulaire de compte","sidebarTitle":"Afrique du Sud - Titulaire de compte bancaire","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/south-africa/bank-account-holder"},{"title":"Afrique du Sud - Recherche des dirigeants d'entreprise","sidebarTitle":"Afrique du Sud - Dirigeants d'entreprise","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/south-africa/company-directors"},{"title":"Registre des sociétés Afrique du Sud - API de recherche","sidebarTitle":"Afrique du Sud - Registre des sociétés","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/south-africa/company-registry"},{"title":"Afrique du Sud - API de contactabilité : ID Match","sidebarTitle":"Afrique du Sud - Contactabilité","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/south-africa/contactability"},{"title":"Afrique du Sud - API de criblage criminel par visage","sidebarTitle":"Afrique du Sud - Criblage criminel par visage","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/south-africa/criminal-face-screening"},{"title":"API DHA Fingerprint Match Afrique du Sud : ID Match","sidebarTitle":"Afrique du Sud - DHA Fingerprint Match","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/south-africa/dha-fingerprint-match"},{"title":"Vérification DHA Afrique du Sud : récupération photo","sidebarTitle":"Afrique du Sud - Photo DHA","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/south-africa/dha-photo"},{"title":"Vérification du permis de conduire Afrique du Sud - API","sidebarTitle":"Afrique du Sud - Permis de conduire","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/south-africa/drivers-license"},{"title":"API de filtrage anti-fraude pour l'Afrique du Sud","sidebarTitle":"Afrique du Sud - Prévention de la fraude","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/south-africa/fraud-prevention"},{"title":"Recherche des mandats d'administrateur en Afrique du Sud","sidebarTitle":"Afrique du Sud - Mandats d'administrateur","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/south-africa/person-directorships"},{"title":"Afrique du Sud : API de vérification de dossier réfugié","sidebarTitle":"Afrique du Sud - Réfugié","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/south-africa/refugee"},{"title":"Vérification de propriété de véhicule en Afrique du Sud","sidebarTitle":"Afrique du Sud - Propriété de véhicules","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/south-africa/vehicle-ownership"},{"title":"API de vérification de l'ID nationale sud-africaine (DHA)","sidebarTitle":"Afrique du Sud : ID nationale (DHA)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/south-africa/national-id"}]},{"title":"Vérification DNI/NIE en Espagne : recherche en temps réel","sidebarTitle":"Espagne - DNI/NIE","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/spain/dni"},{"group":"🇸🇪 Suède","pages":[{"title":"Vérification d'identité suédoise : API de correspondance","sidebarTitle":"ID nationale suédoise","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/sweden/national-id"},{"title":"Vérification du téléphone en Suède : API en temps réel","sidebarTitle":"Suède Téléphone","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/sweden/phone"}]},{"title":"API de vérification Switzerland Credit Bureau","sidebarTitle":"Switzerland Credit Bureau","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/switzerland/credit-bureau"},{"title":"Vérification de carte d'identité thaïlandaise : API Didit","sidebarTitle":"Carte d'identité thaïlandaise","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/thailand/national-id"},{"group":"🇬🇧 Royaume-Uni","pages":[{"title":"Bureau de crédit du Royaume-Uni : API de vérification","sidebarTitle":"Bureau de crédit (Royaume-Uni)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/united-kingdom/credit-bureau"},{"title":"API de vérification financière au Royaume-Uni","sidebarTitle":"Royaume-Uni : services financiers","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/united-kingdom/financial-services"},{"title":"Vérification du téléphone Royaume-Uni 2 : correspondance","sidebarTitle":"Royaume-Uni Téléphone 2","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/united-kingdom/phone-2"},{"title":"API de vérification résidentielle Royaume-Uni","sidebarTitle":"Royaume-Uni résidentiel","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/united-kingdom/residential"}]},{"group":"🇺🇸 États-Unis","pages":[{"title":"API de vérification auprès du bureau de crédit américain","sidebarTitle":"États-Unis - Bureau de crédit","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/united-states/credit-bureau"},{"title":"Vérification de décès aux États-Unis (SSDMF) : API","sidebarTitle":"États-Unis - Vérification de décès (SSDMF)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/united-states/death-check"},{"title":"API de vérification financière aux États-Unis","sidebarTitle":"États-Unis - Services financiers","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/united-states/financial-services"},{"title":"Vérification du téléphone États-Unis 2 : API Data Match","sidebarTitle":"États-Unis - Téléphone 2","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/united-states/phone-2"},{"title":"API de vérification résidentielle aux États-Unis","sidebarTitle":"États-Unis - Résidentiel","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/united-states/residential"}]},{"title":"Vérification CI Uruguay : API de recherche en temps réel","sidebarTitle":"Uruguay - Vérification CI","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/uruguay/cedula"},{"title":"Vérification cédula Venezuela : correspondance d'identité","sidebarTitle":"Venezuela - Vérification cédula","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/venezuela/cedula"},{"title":"Vérification NRC Zambie (registre fiscal) API","sidebarTitle":"NRC Zambie (registre fiscal)","api":"POST /v3/database-validation/","href":"/fr/api-reference/database-validation/zambia/national-id"}]},{"group":"Biométrie et visage","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/liveness.svg","pages":[{"title":"Détection du vivant passive : API et deepfakes","sidebarTitle":"Vivant passif","openapi":"fr/openapi-25.json POST /v3/passive-liveness/","href":"/fr/standalone-apis/passive-liveness"},{"title":"API Correspondance faciale : comparaison 1:1","sidebarTitle":"Correspondance faciale","openapi":"fr/openapi-25.json POST /v3/face-match/","href":"/fr/standalone-apis/face-match"},{"title":"API de recherche faciale 1:N : déduplication et fraude","sidebarTitle":"Recherche faciale","openapi":"fr/openapi-25.json POST /v3/face-search/","href":"/fr/standalone-apis/face-search"},{"title":"API d'estimation de l'âge par selfie pour développeurs","sidebarTitle":"API d'estimation de l'âge","openapi":"fr/openapi-25.json POST /v3/age-estimation/","href":"/fr/standalone-apis/age-estimation"}]},{"group":"Conformité et risque","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/aml-screening.svg","pages":[{"title":"Filtrage AML API : sanctions, PEP, listes de surveillance","sidebarTitle":"API de filtrage AML","openapi":"fr/openapi-25.json POST /v3/aml/","href":"/fr/standalone-apis/aml-screening"},{"title":"API de fraîcheur des données AML","sidebarTitle":"Fraîcheur des données AML","openapi":"fr/openapi-25.json GET /v3/aml/dataset-freshness/","href":"/fr/standalone-apis/aml-dataset-freshness"},{"title":"API de détection de fraude","openapi":"fr/openapi-25.json POST /v3/fraud/checks/","href":"/fr/standalone-apis/fraud-check"},{"title":"Planifier une vérification antifraude","openapi":"fr/openapi-25.json POST /v3/fraud/checks/plan/","href":"/fr/standalone-apis/fraud-check-plan"},{"title":"Récupérer un contrôle antifraude","openapi":"fr/openapi-25.json GET /v3/fraud/checks/{check_id}/","href":"/fr/standalone-apis/fraud-check-result"}]},{"group":"Analyse de l'appareil et de l'IP","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/ip-analysis.svg","pages":[{"title":"API de risque IP : géolocalisation, VPN et datacenter","sidebarTitle":"API Risque IP","openapi":"fr/openapi-25.json POST /v3/ip/risk/","href":"/fr/standalone-apis/ip-risk"}]},{"group":"Registre KYB","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/businesses.svg","pages":[{"title":"API registre KYB : recherche et sélection d'entreprises","sidebarTitle":"Présentation","href":"/fr/standalone-apis/kyb-registry"},{"title":"API de recherche KYB dans le registre des sociétés","sidebarTitle":"Recherche registre KYB","openapi":"fr/openapi-25.json POST /v3/kyb/search/","href":"/fr/standalone-apis/kyb-registry-search"},{"title":"API de sélection du registre KYB : profil d'entreprise","sidebarTitle":"Sélection du registre KYB","openapi":"fr/openapi-25.json POST /v3/kyb/select/","href":"/fr/standalone-apis/kyb-registry-select"},{"title":"API des actionnaires KYB du registre","sidebarTitle":"Actionnaires KYB","openapi":"fr/openapi-25.json POST /v3/kyb/shareholders/","href":"/fr/standalone-apis/kyb-registry-shareholders"},{"title":"API UBO KYB : bénéficiaires effectifs ultimes","sidebarTitle":"UBO du registre KYB","openapi":"fr/openapi-25.json POST /v3/kyb/ubo/","href":"/fr/standalone-apis/kyb-registry-ubo"}]},{"group":"Vérification de l'e-mail","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/sms-tracking.svg","pages":[{"title":"API de vérification d'e-mail : OTP et scoring de risque","sidebarTitle":"Présentation","href":"/fr/standalone-apis/email-verification"},{"title":"API d'envoi de code OTP par e-mail : Vérification e-mail","sidebarTitle":"Envoi du code e-mail","openapi":"fr/openapi-25.json POST /v3/email/send/","href":"/fr/standalone-apis/email-send"},{"title":"Vérification de l'e-mail : API de contrôle du code OTP","sidebarTitle":"Contrôler le code e-mail","openapi":"fr/openapi-25.json POST /v3/email/check/","href":"/fr/standalone-apis/email-check"},{"title":"API Email Risk : Délivrabilité et signaux de fuite","sidebarTitle":"API Email Risk","openapi":"fr/openapi-25.json POST /v3/email/risk/","href":"/fr/standalone-apis/email-risk"}]},{"group":"Vérification du téléphone","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/phone-verification.svg","pages":[{"title":"Vérification du téléphone : API, OTP SMS et risque","sidebarTitle":"Vérification du téléphone","href":"/fr/standalone-apis/phone-verification"},{"title":"Vérification du téléphone : API d'envoi de code SMS","sidebarTitle":"Envoyer un code SMS","openapi":"fr/openapi-25.json POST /v3/phone/send/","href":"/fr/standalone-apis/phone-send"},{"title":"API de vérification de code SMS : valider un OTP","sidebarTitle":"Vérifier le code SMS","openapi":"fr/openapi-25.json POST /v3/phone/check/","href":"/fr/standalone-apis/phone-check"},{"title":"API Risque téléphonique : opérateur et signaux de fraude","sidebarTitle":"API Risque téléphone","openapi":"fr/openapi-25.json POST /v3/phone/risk/","href":"/fr/standalone-apis/phone-risk"}]},{"group":"Vérification bancaire","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/billing.svg","pages":[{"title":"API de vérification de compte bancaire pour versements","sidebarTitle":"API de vérification de compte","openapi":"fr/openapi-25.json POST /v3/bank/account-check/","href":"/fr/standalone-apis/bank-account-check"}]}]},{"tab":"Vérification des utilisateurs","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/user-verifications.svg","pages":[{"title":"Vérification des utilisateurs","href":"/fr/core-technology/liveness/overview"}]},{"tab":"Vérification d'entreprise","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/business-verifications.svg","pages":[{"title":"Vérification d'entreprise","href":"/fr/business-verification/overview"}]},{"tab":"Surveillance des transactions","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/transactions.svg","pages":[{"title":"Surveillance des transactions","href":"/fr/transaction-monitoring/overview"}]},{"tab":"Journal des modifications","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/calendar.svg","pages":[{"title":"Journal des modifications","href":"/fr/changelog"}]}],"global":{"anchors":[{"anchor":"Référence API","icon":"code","href":"/fr/api-reference/overview"},{"anchor":"Console entreprise","icon":"gauge","href":"https://business.didit.me"},{"anchor":"Spécification OpenAPI","icon":"file-code","href":"https://docs.didit.me/fr/openapi-25.json"},{"anchor":"Prompt d'intégration","icon":"wand-magic-sparkles","href":"/fr/integration/integration-prompt"},{"anchor":"Serveur MCP","icon":"plug","href":"/fr/integration/mcp/overview"},{"anchor":"Agent Skills","icon":"robot","href":"https://github.com/didit-protocol/skills"}]}},{"language":"it","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Supporto"},{"icon":"signal","href":"https://status.didit.me","label":"Stato"}],"primary":{"type":"button","label":"Accedi","href":"https://business.didit.me"}},"pages":[{"title":"it","href":"/it/standalone-apis/document-ai"}]},{"language":"pt","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Suporte"},{"icon":"signal","href":"https://status.didit.me","label":"Estado"}],"primary":{"type":"button","label":"Iniciar sessão","href":"https://business.didit.me"}},"pages":[{"title":"pt","href":"/pt/standalone-apis/document-ai"}]},{"language":"ca","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Suport"},{"icon":"signal","href":"https://status.didit.me","label":"Estat"}],"primary":{"type":"button","label":"Inicia la sessió","href":"https://business.didit.me"}},"pages":[{"title":"ca","href":"/ca/standalone-apis/document-ai"}]},{"language":"id","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Dukungan"},{"icon":"signal","href":"https://status.didit.me","label":"Status"}],"primary":{"type":"button","label":"Masuk","href":"https://business.didit.me"}},"pages":[{"title":"id","href":"/id/standalone-apis/document-ai"}]},{"language":"ru","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Поддержка"},{"icon":"signal","href":"https://status.didit.me","label":"Статус"}],"primary":{"type":"button","label":"Вход","href":"https://business.didit.me"}},"pages":[{"title":"ru","href":"/ru/standalone-apis/document-ai"}]},{"language":"ko","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"지원"},{"icon":"signal","href":"https://status.didit.me","label":"상태"}],"primary":{"type":"button","label":"로그인","href":"https://business.didit.me"}},"pages":[{"title":"ko","href":"/ko/standalone-apis/document-ai"}]},{"language":"zh","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"支持"},{"icon":"signal","href":"https://status.didit.me","label":"状态"}],"primary":{"type":"button","label":"登录","href":"https://business.didit.me"}},"pages":[{"title":"zh","href":"/zh/standalone-apis/document-ai"}]},{"language":"ar","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"الدعم"},{"icon":"signal","href":"https://status.didit.me","label":"الحالة"}],"primary":{"type":"button","label":"تسجيل الدخول","href":"https://business.didit.me"}},"pages":[{"title":"ar","href":"/ar/standalone-apis/document-ai"}]},{"language":"hi","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"सहायता"},{"icon":"signal","href":"https://status.didit.me","label":"स्थिति"}],"primary":{"type":"button","label":"साइन इन करें","href":"https://business.didit.me"}},"pages":[{"title":"hi","href":"/hi/standalone-apis/document-ai"}]}]},"basePath":"","title":"API d'extraction de données de documents personnalisée - Didit Docs","buildId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","deploymentId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CBsVopKK.js","utils-DZAk68jJ.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-D32AYZrP.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-D_A5_cny.js","snippetPresets-xNRfS9th.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-BIB25-tq.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CydJ4w4j.js","shallow-CYPBeQSG.js","getApiPlaygroundDisplay-A5xJVBOu.js","CodeSnippet-BVRTgi3m.js","CodeSnippets-DjD6BSlt.js","Page-Dr40SSJq.js","getPastedJson-D4V4JyrR.js","icon-uhcnG22T.js","MethodPill-CM-ZQdGH.js","DuplicateIcon-B_WnOiNf.js","createIcon-CJsb8utt.js","DynamicMarkdown-D-2HDKEp.js","SectionHeading-KP5xmMgQ.js","axios-vUo_bRtp.js","Markdown-D_k0dg6k.js","clsx-DK3K4Z1S.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-DE3EVdvd.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-fN9H9n9g.js"]}