- Erste Schritte
- Beispiele mit dem Document Understanding™ Cloud-API v1
- Ausführen von API-Aufrufen
- Autorisieren Sie mithilfe einer externen Anwendung und rufen Sie die verfügbaren Ressourcen ab
- Verwenden der Erkennungs-APIs
- Verwenden Sie die Digitalisierungs-APIs
- Ein Klassifizierungsergebnis validieren
- Validierung eines Extraktionsergebnisses
- Erstellen Sie Artefakte für die Extraktionsvalidierung
- Verwenden Sie den Data Service zum Löschen von Dokumenten
- Lizenzierung
- Fehlersuche und ‑behebung
Erstellen Sie Extraktionsvalidierungsartefakte in Document Understanding mithilfe der Artefakt-APIs und lassen Sie dann Ihre Anwendung eine App-Aufgabe für die menschliche Validierung erstellen.
Diese Funktion befindet sich in der Vorschau.
Verwenden Sie die Artefakt-APIs, um Extraktionsvalidierungsartefakte vorzubereiten, die in Orchestrator-Speicher-Buckets gespeichert sind. Die Artefakte werden dann von Ihrer Anwendung verwendet, um eine App-Aufgabe für die Validierung durch Menschen zu erstellen – so wird die Artefakterstellung von der Aufgabenverwaltung entkoppelt und Sie können steuern, wann, wo und mit welcher Benutzeroberfläche die Aufgabe erstellt wird.
Diese Funktion ist in der Automation Cloud – Öffentlicher Sektor nicht verfügbar, da die App-Erstellung dort nicht unterstützt wird.
Workflow-Übersicht
- Digitalisieren Sie das Dokument.
- Daten aus dem Dokument extrahieren.
- Rufen Sie die Projekttaxonomie ab.
- Starten Sie die Artefakterstellung.
- Abfragen, bis die Inhaltsvalidierungsdaten bereit sind.
- Erstellen Sie eine App-Aufgabe im Action Center mithilfe der Daten zur Inhaltsvalidierung.
- Schließen Sie die Validierung in der Validierungsstation ab.
- Rufen Sie das validierte Extraktionsergebnis ab.
Voraussetzungen
- Ein Document Understanding-Projekt mit einem konfigurierten Extraktionsmodell.
- Der
documentIdund derextractionResultaus einem vorherigen Extraktionsaufruf. Um diese zu erhalten, folgen Sie dem Leitfaden zum Verwenden der Digitalisierungs-APIs , um das Dokument zu digitalisieren und eindocumentIdzu erhalten. Folgen Sie dann dem Leitfaden zum Verwenden des Extraktionsdiensts, um die Extraktion auszuführen und dasextractionResultzu erhalten. - Ein Speicher-Bucket und Verzeichnispfad, auf den über Ihren Mandanten zugegriffen werden kann.
- Eine App zum Hosten der Validierungsaufgabe. Sie können die App programmgesteuert bereitstellen, indem Sie den Apps API
deployUnifiedPackage-Endpunkt verwenden.
Erforderliche OAuth-Scopes
Ihre externe Anwendung muss folgende Scopes enthalten. Anweisungen zum Einrichten einer externen Anwendung finden Sie unter Authentifizierung und Autorisierung.
| API call | Erforderlicher Scope |
|---|---|
| Rufen Sie die Projekttaxonomie ab | Du.Digitization.Api, Du.Extraction.Api, Du.Classification.Api, oder Du.Validation.Api |
| Validierungsendpunkte (Artefakterstellung, Abfrage, Ergebnis) | Du.Validation.Api |
Rufen Sie die Projekttaxonomie ab
Rufen Sie die Taxonomie- für Ihr Document Understanding-Projekt ab. Übergeben Sie diese Taxonomie, wenn Sie mit der Erstellung der Extraktionsvalidierungsartefakte beginnen.
curl -X 'GET' \
'https://{AutomationCloudURL}/<Organization_Name>/<Tenant_Name>/du_/api/framework/projects/<Project_ID>/taxonomy?api-version=2' \
-H 'accept: application/json' \
-H 'Authorization: Bearer <token>'
curl -X 'GET' \
'https://{AutomationCloudURL}/<Organization_Name>/<Tenant_Name>/du_/api/framework/projects/<Project_ID>/taxonomy?api-version=2' \
-H 'accept: application/json' \
-H 'Authorization: Bearer <token>'
Antwort:
{
"documentTaxonomy": {
"dataContractVersion": "1.2",
"documentTypes": [
{
"documentTypeId": "0b1fde93-997d-f011-b481-000d3a207936",
"group": "",
"category": "",
"name": "invoices",
"optionalUniqueIdentifier": "",
"typeField": {
"fieldId": "invoices.DocumentType",
"fieldName": "Document Type"
},
"fields": [
{
"fieldId": "invoices.invoice-no",
"fieldName": "Invoice Number",
"isMultiValue": false,
"type": "Text",
"components": [],
"setValues": [],
"metadata": [],
"ruleSet": null,
"defaultValue": null,
"dataSource": null
}
]
}
],
"groups": [],
"supportedLanguages": ["en"],
"reportAsExceptionSettings": null
}
}
{
"documentTaxonomy": {
"dataContractVersion": "1.2",
"documentTypes": [
{
"documentTypeId": "0b1fde93-997d-f011-b481-000d3a207936",
"group": "",
"category": "",
"name": "invoices",
"optionalUniqueIdentifier": "",
"typeField": {
"fieldId": "invoices.DocumentType",
"fieldName": "Document Type"
},
"fields": [
{
"fieldId": "invoices.invoice-no",
"fieldName": "Invoice Number",
"isMultiValue": false,
"type": "Text",
"components": [],
"setValues": [],
"metadata": [],
"ruleSet": null,
"defaultValue": null,
"dataSource": null
}
]
}
],
"groups": [],
"supportedLanguages": ["en"],
"reportAsExceptionSettings": null
}
}
Alternative Möglichkeiten zum Abrufen der Taxonomie
Sie können die Taxonomie auch mithilfe vorhandener Erkennungsendpunkte abrufen:
GET /projects/{projectId}/extractors/{extractorId}– gibt die Taxonomie für einen bestimmten Extraktor zurück.GET /projects/{projectId}/tags/{tag}/document-types/{documentTypeId}– gibt die Taxonomie für einen bestimmten Dokumenttyp nach Tag zurück. Die Tag-basierte Filterung wird für klassische Document Understanding-Projekte nicht unterstützt.
Wenn Sie eine Taxonomie übergeben, die auf einen bestimmten Extraktor oder Dokumenttyp festgelegt ist, ist die Funktion Dokumenttyp ändern für den Operator während der Validierung in der Validierungsstation nicht verfügbar.
Der Hauptendpunkt der Taxonomie unterstützt auch die Abfrageparameter projectVersion und tag. Beachten Sie Folgendes bei der Verwendung:
- Moderne Projekte: Ohne
tag-Filterung kann dieselbedocumentTypeIdmehrmals angezeigt werden, wenn mehrere Extraktoren aus verschiedenen Bereitstellungen auf demselben Dokumenttyp basieren. Verwenden Sie den Parametertag, um Ergebnisse auf eine bestimmte Bereitstellung zu beschränken und Duplikate zu vermeiden. - Klassische Projekte: Tag-Filterung wird nicht unterstützt. Wenn mehrere Extraktoren für denselben Dokumenttyp vorhanden sind, verwenden Sie stattdessen den extraktorspezifischen Endpunkt (
/projects/{projectId}/extractors/{extractorId}), um Mehrdeutigkeit zu vermeiden.
Starten Sie die Erstellung von Extraktionsvalidierungsartefakten
Senden Sie eine POST-Anforderung, um mit der Erstellung von Extraktionsvalidierungsartefakten zu beginnen. Übergeben Sie das vollständige documentTaxonomy -Objekt, das im vorherigen Aufruf abgerufen wurde.
documentTaxonomy ist erforderlich. storageBucketName und folderName sind optional. Wenn Sie folderName nicht angeben, wird standardmäßig der Ordner Shared verwendet.
Speicher-Bucket-Ordner innerhalb Ihres persönlichen Arbeitsbereichs werden nicht unterstützt.
curl -X 'POST' \
'https://{AutomationCloudURL}/<Organization_Name>/<Tenant_Name>/du_/api/framework/extraction-validation/artifacts/start?api-version=2' \
-H 'accept: application/json' \
-H 'Authorization: Bearer <token>' \
-H 'Content-Type: application/json' \
-d '{
"documentId": "25a03e48-cfe8-ed11-9f75-000d3a4964af",
"extractionResult": {
"documentId": "25a03e48-cfe8-ed11-9f75-000d3a4964af",
"resultsVersion": 0,
"resultsDocument": {
"documentTypeId": "0b1fde93-997d-f011-b481-000d3a207936",
"documentTypeName": "invoices",
"fields": [
{
"fieldId": "invoices.invoice-no",
"fieldName": "Invoice Number",
"type": "Text",
"isMissing": false,
"dataSource": "Automatic",
"values": [
{
"value": "181038",
"confidence": 0.98,
"operatorConfirmed": false
}
]
}
]
}
},
"documentTaxonomy": {
"dataContractVersion": "1.2",
"documentTypes": [
{
"documentTypeId": "0b1fde93-997d-f011-b481-000d3a207936",
"name": "invoices",
"fields": [
{
"fieldId": "invoices.invoice-no",
"fieldName": "Invoice Number",
"type": "Text"
}
]
}
],
"groups": [],
"supportedLanguages": ["en"],
"reportAsExceptionSettings": null
},
"storageBucketName": "du_storage_bucket",
"storageBucketDirectoryPath": "du_storage_bucket"
}'
curl -X 'POST' \
'https://{AutomationCloudURL}/<Organization_Name>/<Tenant_Name>/du_/api/framework/extraction-validation/artifacts/start?api-version=2' \
-H 'accept: application/json' \
-H 'Authorization: Bearer <token>' \
-H 'Content-Type: application/json' \
-d '{
"documentId": "25a03e48-cfe8-ed11-9f75-000d3a4964af",
"extractionResult": {
"documentId": "25a03e48-cfe8-ed11-9f75-000d3a4964af",
"resultsVersion": 0,
"resultsDocument": {
"documentTypeId": "0b1fde93-997d-f011-b481-000d3a207936",
"documentTypeName": "invoices",
"fields": [
{
"fieldId": "invoices.invoice-no",
"fieldName": "Invoice Number",
"type": "Text",
"isMissing": false,
"dataSource": "Automatic",
"values": [
{
"value": "181038",
"confidence": 0.98,
"operatorConfirmed": false
}
]
}
]
}
},
"documentTaxonomy": {
"dataContractVersion": "1.2",
"documentTypes": [
{
"documentTypeId": "0b1fde93-997d-f011-b481-000d3a207936",
"name": "invoices",
"fields": [
{
"fieldId": "invoices.invoice-no",
"fieldName": "Invoice Number",
"type": "Text"
}
]
}
],
"groups": [],
"supportedLanguages": ["en"],
"reportAsExceptionSettings": null
},
"storageBucketName": "du_storage_bucket",
"storageBucketDirectoryPath": "du_storage_bucket"
}'
Antwort – stellt die operationId und URLs für die nächsten beiden Aufrufe bereit:
{
"operationId": "7c320dfc-a1b2-4c3d-8e9f-000d3a4964af",
"artifactsUrl": "https://{AutomationCloudURL}/<Organization_Name>/<Tenant_Name>/du_/api/framework/extraction-validation/artifacts/content-validation-data/7c320dfc-a1b2-4c3d-8e9f-000d3a4964af?api-version=2",
"resultUrl": "https://{AutomationCloudURL}/<Organization_Name>/<Tenant_Name>/du_/api/framework/extraction-validation/artifacts/validation-result/7c320dfc-a1b2-4c3d-8e9f-000d3a4964af?api-version=2"
}
{
"operationId": "7c320dfc-a1b2-4c3d-8e9f-000d3a4964af",
"artifactsUrl": "https://{AutomationCloudURL}/<Organization_Name>/<Tenant_Name>/du_/api/framework/extraction-validation/artifacts/content-validation-data/7c320dfc-a1b2-4c3d-8e9f-000d3a4964af?api-version=2",
"resultUrl": "https://{AutomationCloudURL}/<Organization_Name>/<Tenant_Name>/du_/api/framework/extraction-validation/artifacts/validation-result/7c320dfc-a1b2-4c3d-8e9f-000d3a4964af?api-version=2"
}
Abfragen zur Bereitschaft des Artefakts
Senden Sie GET-Anforderungen an den artifactsUrl, der beim Start der Artefakterstellung zurückgegeben wurde, bis der Status Succeeded oder Failed ist.
curl -X 'GET' \
'https://{AutomationCloudURL}/<Organization_Name>/<Tenant_Name>/du_/api/framework/extraction-validation/artifacts/content-validation-data/<operationId>?api-version=2' \
-H 'accept: application/json' \
-H 'Authorization: Bearer <token>'
curl -X 'GET' \
'https://{AutomationCloudURL}/<Organization_Name>/<Tenant_Name>/du_/api/framework/extraction-validation/artifacts/content-validation-data/<operationId>?api-version=2' \
-H 'accept: application/json' \
-H 'Authorization: Bearer <token>'
Die Antwort gibt einen von vier Status zurück:
| Status | Bedeutung |
|---|---|
NotStarted | Der Auftrag befindet sich in der Warteschlange, wird aber noch nicht verarbeitet. |
Running | Vorbereitung des Artefakts wird ausgeführt. |
Succeeded | Artefakte sind bereit. Fahren Sie mit dem Erstellen der App-Aufgabe fort (Phase 6). |
Failed | Fehler bei der Vorbereitung des Artefakts. Weitere Informationen finden Sie unter error.code. |
Antwort, wenn Artefakte bereit sind:
{
"contentValidationData": {
"bucketName": "du_storage_bucket",
"bucketId": 261151,
"folderId": 810789,
"folderKey": "4c6ff0e2-0a05-4ce1-9508-7102b977bd58",
"documentId": "25a03e48-cfe8-ed11-9f75-000d3a4964af",
"encodedDocumentPath": "du_storage_bucket/7c320dfc-.../encoded.zip",
"textPath": "du_storage_bucket/7c320dfc-.../text.zip",
"documentObjectModelPath": "du_storage_bucket/7c320dfc-.../dom.zip",
"taxonomyPath": "du_storage_bucket/7c320dfc-.../taxonomy.zip",
"automaticExtractionResultsPath": "du_storage_bucket/7c320dfc-.../input_results.zip",
"validatedExtractionResultsPath": "du_storage_bucket/7c320dfc-.../output_results.zip",
"customizationInfoPath": "du_storage_bucket/7c320dfc-.../customization_info.zip"
},
"status": "Succeeded",
"createdAt": "2026-04-28T10:00:00Z",
"lastUpdatedAt": "2026-04-28T10:00:05Z"
}
{
"contentValidationData": {
"bucketName": "du_storage_bucket",
"bucketId": 261151,
"folderId": 810789,
"folderKey": "4c6ff0e2-0a05-4ce1-9508-7102b977bd58",
"documentId": "25a03e48-cfe8-ed11-9f75-000d3a4964af",
"encodedDocumentPath": "du_storage_bucket/7c320dfc-.../encoded.zip",
"textPath": "du_storage_bucket/7c320dfc-.../text.zip",
"documentObjectModelPath": "du_storage_bucket/7c320dfc-.../dom.zip",
"taxonomyPath": "du_storage_bucket/7c320dfc-.../taxonomy.zip",
"automaticExtractionResultsPath": "du_storage_bucket/7c320dfc-.../input_results.zip",
"validatedExtractionResultsPath": "du_storage_bucket/7c320dfc-.../output_results.zip",
"customizationInfoPath": "du_storage_bucket/7c320dfc-.../customization_info.zip"
},
"status": "Succeeded",
"createdAt": "2026-04-28T10:00:00Z",
"lastUpdatedAt": "2026-04-28T10:00:05Z"
}
Das contentValidationData -Objekt enthält die Pfade des Orchestrator-Speicher-Buckets, die zum Öffnen des Dokuments in der Validierungsstation erforderlich sind. Validation Station verwendet den kompakten Modus für App-Aufgaben-Flows; Der klassische Modus ist für diesen Flow nicht verfügbar.
Antwort während der Verarbeitung:
{
"status": "Running",
"createdAt": "2026-04-28T10:00:00Z",
"lastUpdatedAt": "2026-04-28T10:00:02Z"
}
{
"status": "Running",
"createdAt": "2026-04-28T10:00:00Z",
"lastUpdatedAt": "2026-04-28T10:00:02Z"
}
Rufen Sie das validierte Extraktionsergebnis ab
Rufen Sie diesen Endpunkt auf, nachdem der menschliche Operator die Validierung in der Validierungsstation abgeschlossen hat (Schritte 6–7). Senden Sie eine GET-Anforderung an den resultUrl, der beim Start der Artefakterstellung zurückgegeben wird.
curl -X 'GET' \
'https://{AutomationCloudURL}/<Organization_Name>/<Tenant_Name>/du_/api/framework/extraction-validation/artifacts/validation-result/<operationId>?api-version=2' \
-H 'accept: application/json' \
-H 'Authorization: Bearer <token>'
curl -X 'GET' \
'https://{AutomationCloudURL}/<Organization_Name>/<Tenant_Name>/du_/api/framework/extraction-validation/artifacts/validation-result/<operationId>?api-version=2' \
-H 'accept: application/json' \
-H 'Authorization: Bearer <token>'
Wenn die Action Center-Aufgabe noch nicht abgeschlossen ist (Phasen 6–7 noch nicht abgeschlossen), gibt der Endpunkt 200 mit einem leeren Ergebnis zurück:
{
"result": {}
}
{
"result": {}
}
Antwort, wenn die Validierung abgeschlossen ist:
{
"result": {
"validatedExtractionResults": {
"documentId": "25a03e48-cfe8-ed11-9f75-000d3a4964af",
"resultsVersion": 1,
"resultsDocument": {
"documentTypeId": "0b1fde93-997d-f011-b481-000d3a207936",
"documentTypeName": "invoices",
"fields": [
{
"fieldId": "invoices.invoice-no",
"fieldName": "Invoice Number",
"type": "Text",
"isMissing": false,
"dataSource": "Automatic",
"values": [
{
"value": "181038",
"confidence": 1,
"operatorConfirmed": true
}
],
"operatorConfirmed": true
}
]
}
}
}
}
{
"result": {
"validatedExtractionResults": {
"documentId": "25a03e48-cfe8-ed11-9f75-000d3a4964af",
"resultsVersion": 1,
"resultsDocument": {
"documentTypeId": "0b1fde93-997d-f011-b481-000d3a207936",
"documentTypeName": "invoices",
"fields": [
{
"fieldId": "invoices.invoice-no",
"fieldName": "Invoice Number",
"type": "Text",
"isMissing": false,
"dataSource": "Automatic",
"values": [
{
"value": "181038",
"confidence": 1,
"operatorConfirmed": true
}
],
"operatorConfirmed": true
}
]
}
}
}
}
Ergebnis
Eine 200 -Antwort, die validatedExtractionResults enthält, bestätigt, dass die Extraktionsvalidierung abgeschlossen ist. Das Flag operatorConfirmed: true auf jedem Feld gibt an, dass das Ergebnis validiert wurde.
- Workflow-Übersicht
- Voraussetzungen
- Erforderliche OAuth-Scopes
- Rufen Sie die Projekttaxonomie ab
- Alternative Möglichkeiten zum Abrufen der Taxonomie
- Starten Sie die Erstellung von Extraktionsvalidierungsartefakten
- Abfragen zur Bereitschaft des Artefakts
- Rufen Sie das validierte Extraktionsergebnis ab
- Ergebnis