curl -X PATCH 'https://verification.didit.me/v3/document-ai/11111111-2222-3333-4444-555555555555/documents/44444444-5555-6666-7777-888888888888/' \
-H 'x-api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"extracted_data": {"invoice_number": "INV-2026-0042"}, "status": "Approved"}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.sessions.update_document_ai_data(
"11111111-2222-3333-4444-555555555555",
"44444444-5555-6666-7777-888888888888",
extracted_data={"invoice_number": "INV-2026-0042"},
status="Approved",
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.sessions.updateDocumentAiData(
"11111111-2222-3333-4444-555555555555",
"44444444-5555-6666-7777-888888888888",
{
extracted_data: { invoice_number: "INV-2026-0042" },
status: "Approved",
},
);
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.Sessions.UpdateDocumentAiData(ctx, "11111111-2222-3333-4444-555555555555", "44444444-5555-6666-7777-888888888888", didit.SessionsUpdateDocumentAiDataParams{
ExtractedData: didit.Some(map[string]any{"invoice_number": "INV-2026-0042"}),
Status: didit.Some(didit.SessionsUpdateDocumentAiDataParamsStatus("Approved")),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import java.util.Map;
import me.didit.Didit;
import me.didit.types.SessionsUpdateDocumentAiDataParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.sessions().updateDocumentAiData("11111111-2222-3333-4444-555555555555", "44444444-5555-6666-7777-888888888888", SessionsUpdateDocumentAiDataParams.builder()
.extractedData(Map.of("invoice_number", "INV-2026-0042"))
.status(SessionsUpdateDocumentAiDataParams.Status.of("Approved"))
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->sessions->updateDocumentAiData('11111111-2222-3333-4444-555555555555', '44444444-5555-6666-7777-888888888888', [
'extracted_data' => ['invoice_number' => 'INV-2026-0042'],
'status' => 'Approved',
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.sessions.update_document_ai_data(
"11111111-2222-3333-4444-555555555555",
"44444444-5555-6666-7777-888888888888",
extracted_data: { invoice_number: "INV-2026-0042" },
status: "Approved"
)
puts result.to_husing System;
using System.Collections.Generic;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.Sessions.UpdateDocumentAiDataAsync("11111111-2222-3333-4444-555555555555", "44444444-5555-6666-7777-888888888888", new SessionsUpdateDocumentAiDataParams
{
ExtractedData = new Dictionary<string, object> { ["invoice_number"] = "INV-2026-0042" },
Status = new SessionsUpdateDocumentAiDataParamsStatus("Approved"),
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"uuid": "44444444-5555-6666-7777-888888888888",
"document_key": "invoice",
"original_filename": "invoice-2026-09.pdf",
"file_url": "document_ai/11111111-2222-3333-4444-555555555555-66666666-7777-8888-9999-000000000000.pdf",
"status": "Approved",
"extracted_data": {
"invoice_number": "INV-2026-0042",
"total_amount": 1250,
"issue_date": "2026-09-01"
}
}दस्तावेज़ AI डेटा अपडेट करें API
KYC या KYB सत्यापन सत्र में, Didit के दस्तावेज़ AI से निकाले गए फ़ील्ड सुधारें या उस दस्तावेज़ की समीक्षा स्थिति सेट करें।
curl -X PATCH 'https://verification.didit.me/v3/document-ai/11111111-2222-3333-4444-555555555555/documents/44444444-5555-6666-7777-888888888888/' \
-H 'x-api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"extracted_data": {"invoice_number": "INV-2026-0042"}, "status": "Approved"}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.sessions.update_document_ai_data(
"11111111-2222-3333-4444-555555555555",
"44444444-5555-6666-7777-888888888888",
extracted_data={"invoice_number": "INV-2026-0042"},
status="Approved",
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.sessions.updateDocumentAiData(
"11111111-2222-3333-4444-555555555555",
"44444444-5555-6666-7777-888888888888",
{
extracted_data: { invoice_number: "INV-2026-0042" },
status: "Approved",
},
);
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.Sessions.UpdateDocumentAiData(ctx, "11111111-2222-3333-4444-555555555555", "44444444-5555-6666-7777-888888888888", didit.SessionsUpdateDocumentAiDataParams{
ExtractedData: didit.Some(map[string]any{"invoice_number": "INV-2026-0042"}),
Status: didit.Some(didit.SessionsUpdateDocumentAiDataParamsStatus("Approved")),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import java.util.Map;
import me.didit.Didit;
import me.didit.types.SessionsUpdateDocumentAiDataParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.sessions().updateDocumentAiData("11111111-2222-3333-4444-555555555555", "44444444-5555-6666-7777-888888888888", SessionsUpdateDocumentAiDataParams.builder()
.extractedData(Map.of("invoice_number", "INV-2026-0042"))
.status(SessionsUpdateDocumentAiDataParams.Status.of("Approved"))
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->sessions->updateDocumentAiData('11111111-2222-3333-4444-555555555555', '44444444-5555-6666-7777-888888888888', [
'extracted_data' => ['invoice_number' => 'INV-2026-0042'],
'status' => 'Approved',
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.sessions.update_document_ai_data(
"11111111-2222-3333-4444-555555555555",
"44444444-5555-6666-7777-888888888888",
extracted_data: { invoice_number: "INV-2026-0042" },
status: "Approved"
)
puts result.to_husing System;
using System.Collections.Generic;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.Sessions.UpdateDocumentAiDataAsync("11111111-2222-3333-4444-555555555555", "44444444-5555-6666-7777-888888888888", new SessionsUpdateDocumentAiDataParams
{
ExtractedData = new Dictionary<string, object> { ["invoice_number"] = "INV-2026-0042" },
Status = new SessionsUpdateDocumentAiDataParamsStatus("Approved"),
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"uuid": "44444444-5555-6666-7777-888888888888",
"document_key": "invoice",
"original_filename": "invoice-2026-09.pdf",
"file_url": "document_ai/11111111-2222-3333-4444-555555555555-66666666-7777-8888-9999-000000000000.pdf",
"status": "Approved",
"extracted_data": {
"invoice_number": "INV-2026-0042",
"total_amount": 1250,
"issue_date": "2026-09-01"
}
}प्राधिकरण
आपकी एप्लिकेशन की API कुंजी, Business Console में Developers -> API keys से। प्राथमिक कुंजी के पास पूर्ण एक्सेस होता है। एक नामित कुंजी को स्कोप किया जा सकता है: प्रति संसाधन none, read या write, कुछ वर्कफ़्लो या स्वीकृत सत्रों तक सीमित, IP पतों की सूची तक सीमित, और समाप्ति तिथि तक सीमित। 401 का अर्थ है कि कुंजी गलत है, निरस्त कर दी गई है या उसकी समय-सीमा समाप्त हो गई है; 403 का अर्थ है कि कोई कुंजी नहीं भेजी गई थी, कुंजी के पास इस संसाधन या कार्रवाई का एक्सेस नहीं है, या अनुरोध उसकी IP सूची से बाहर के पते से आया था; सत्र रूट पर 404 का अर्थ है कि सत्र कुंजी के वर्कफ़्लो या स्थितियों से बाहर है। मीडिया एक्सेस के बिना एक कुंजी को छवि, वीडियो और PDF URL null के रूप में प्राप्त होते हैं, और सत्र write के बिना एक कुंजी को सत्र लिंक और token null के रूप में प्राप्त होते हैं। देखें https://docs.didit.me/console/api-keys।
पथ पैरामीटर
सत्यापन सत्र का UUID (POST /v3/session/ द्वारा लौटाया गया session_id)। उपयोगकर्ता सत्यापन (KYC) और व्यवसाय सत्यापन (KYB) दोनों सत्र ID स्वीकार करता है: सर्वर दोनों सत्र प्रकारों में ID को रिज़ॉल्व करता है। यह एक सही प्रारूप वाला UUID होना चाहिए; गलत प्रारूप वाला मान रूट से मेल नहीं खाता है और एक HTML 404 लौटाता है।
"11111111-2222-3333-4444-555555555555"
Document AI दस्तावेज़ का UUID (GET /v3/session/{sessionId}/decision/ में document_ai_documents[].items[].uuid)। यह पाथ के सत्र से संबंधित होना चाहिए।
"44444444-5555-6666-7777-888888888888"
बॉडी
फ़ील्ड कुंजियाँ (दस्तावेज़ के लिए आपके द्वारा कॉन्फ़िगर की गई कुंजियाँ) और उनके सही किए गए मान। एक JSON ऑब्जेक्ट होना चाहिए; संग्रहीत डेटा में कुंजी दर कुंजी मर्ज किया जाता है। null भेजने के बजाय इसे छोड़ दें, जिससे 400 वापस आता है।
{ "invoice_number": "INV-2026-0042" }
दस्तावेज़ की नई समीक्षा स्थिति।
Approved, Declined, In Review, Not Finished "Approved"
प्रतिक्रिया
दस्तावेज़ अपडेट किया गया। मर्ज के बाद दस्तावेज़ लौटाता है।
दस्तावेज़ पहचानकर्ता।
कॉन्फ़िगर किया गया दस्तावेज़ जिससे यह अपलोड संबंधित है।
फ़ाइल नाम जिसके साथ दस्तावेज़ अपलोड किया गया था।
अपलोड की गई फ़ाइल का स्टोरेज पाथ। यह कोई डाउनलोड लिंक नहीं है: फ़ाइल डाउनलोड करने के लिए सत्र निर्णय से प्री-साइन्ड file_url पढ़ें।
दस्तावेज़ की समीक्षा स्थिति।
Not Finished, Approved, Declined, In Review, Resub Requested मर्ज के बाद सभी निकाले गए फ़ील्ड, जिन्हें फ़ील्ड कुंजी द्वारा व्यवस्थित किया गया है।