naftiko: 1.0.0-alpha2 info: label: UiPath Intelligent Document Processing description: End-to-end workflow for intelligent document processing combining Document Understanding for OCR and data extraction with Orchestrator for automation orchestration. Used by document processing teams and RPA developers building invoice, contract, and form automation workflows. tags: - UiPath - Document Understanding - Intelligent Document Processing - OCR - Data Extraction - Machine Learning created: '2026-05-03' modified: '2026-05-06' binds: - namespace: env keys: UIPATH_BEARER_TOKEN: UIPATH_BEARER_TOKEN capability: consumes: - type: http namespace: document-understanding baseUri: https://cloud.uipath.com/{organizationName}/{tenantName}/du_/api/framework description: UiPath Document Understanding API for processing and extracting data from documents. authentication: type: bearer token: '{{UIPATH_BEARER_TOKEN}}' resources: - name: projects path: /projects description: Manage document understanding projects operations: - name: list-projects method: GET description: List all document understanding projects inputParameters: - name: api-version in: query type: string required: false description: API version outputRawFormat: json outputParameters: - name: result type: object value: $. - name: list-extractors method: GET description: List available extractors for a project inputParameters: - name: projectId in: path type: string required: true description: Project identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: list-classifiers method: GET description: List available classifiers for a project inputParameters: - name: projectId in: path type: string required: true description: Project identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: digitization path: /projects/{projectId}/digitization/start description: Document digitization (OCR) operations: - name: digitize-document method: POST description: Start document digitization (OCR processing) inputParameters: - name: projectId in: path type: string required: true description: Project identifier outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: documentUrl: '{{tools.documentUrl}}' - name: classification path: /projects/{projectId}/classification/start description: Document classification operations: - name: classify-document method: POST description: Start asynchronous document classification inputParameters: - name: projectId in: path type: string required: true description: Project identifier outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: documentUrl: '{{tools.documentUrl}}' - name: get-classification-result method: GET description: Get the result of a classification request inputParameters: - name: projectId in: path type: string required: true description: Project identifier - name: requestId in: path type: string required: true description: Classification request identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: extraction path: /projects/{projectId}/extraction/start description: Document data extraction operations: - name: extract-document method: POST description: Start asynchronous document data extraction inputParameters: - name: projectId in: path type: string required: true description: Project identifier outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: documentUrl: '{{tools.documentUrl}}' extractorId: '{{tools.extractorId}}' - name: get-extraction-result method: GET description: Get the result of a data extraction request inputParameters: - name: projectId in: path type: string required: true description: Project identifier - name: requestId in: path type: string required: true description: Extraction request identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - type: http namespace: orchestrator baseUri: https://cloud.uipath.com/{organizationName}/{tenantName}/orchestrator_ description: UiPath Orchestrator API for managing automation robots, jobs, queues, and assets. authentication: type: bearer token: '{{UIPATH_BEARER_TOKEN}}' resources: - name: jobs path: /odata/Jobs description: Manage automation job execution operations: - name: list-jobs method: GET description: List automation jobs with filtering inputParameters: - name: $top in: query type: integer required: false description: Maximum number of records to return - name: $skip in: query type: integer required: false description: Number of records to skip - name: $filter in: query type: string required: false description: OData filter expression outputRawFormat: json outputParameters: - name: result type: object value: $. - name: get-job method: GET description: Get a specific job by key inputParameters: - name: key in: path type: integer required: true description: Job identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: start-jobs method: POST description: Start one or more automation jobs outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: startInfo: '{{tools.startInfo}}' - name: stop-job method: POST description: Stop a running automation job outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: jobId: '{{tools.jobId}}' - name: processes path: /odata/Processes description: Manage automation processes operations: - name: list-processes method: GET description: List deployed automation processes inputParameters: - name: $top in: query type: integer required: false description: Maximum number of records outputRawFormat: json outputParameters: - name: result type: object value: $. - name: queues path: /odata/QueueDefinitions description: Manage transaction queues operations: - name: list-queues method: GET description: List all queue definitions outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-queue method: POST description: Create a new queue definition outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: Name: '{{tools.queueName}}' - name: queue-items path: /odata/QueueItems description: Manage queue transaction items operations: - name: list-queue-items method: GET description: List queue transaction items inputParameters: - name: $filter in: query type: string required: false description: OData filter expression outputRawFormat: json outputParameters: - name: result type: object value: $. - name: add-queue-item method: POST description: Add a new item to a queue outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: itemData: '{{tools.itemData}}' - name: assets path: /odata/Assets description: Manage shared assets like credentials and values operations: - name: list-assets method: GET description: List all shared assets outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-asset method: POST description: Create a new shared asset outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: Name: '{{tools.assetName}}' ValueType: '{{tools.valueType}}' - name: get-asset method: GET description: Get a specific asset by key inputParameters: - name: key in: path type: integer required: true description: Asset identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: update-asset method: PUT description: Update an existing asset inputParameters: - name: key in: path type: integer required: true description: Asset identifier outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: Value: '{{tools.value}}' - name: delete-asset method: DELETE description: Delete an asset inputParameters: - name: key in: path type: integer required: true description: Asset identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: robots path: /odata/Robots description: Manage automation robots operations: - name: list-robots method: GET description: List all registered robots outputRawFormat: json outputParameters: - name: result type: object value: $. - name: alerts path: /odata/Alerts description: Retrieve system and automation alerts operations: - name: list-alerts method: GET description: List system alerts and notifications inputParameters: - name: $filter in: query type: string required: false description: OData filter expression outputRawFormat: json outputParameters: - name: result type: object value: $. - name: webhooks path: /odata/Webhooks description: Manage webhook subscriptions operations: - name: list-webhooks method: GET description: List all webhook subscriptions outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-webhook method: POST description: Create a new webhook subscription outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: Url: '{{tools.webhookUrl}}' EventTypes: '{{tools.eventTypes}}' - name: delete-webhook method: DELETE description: Delete a webhook subscription inputParameters: - name: key in: path type: integer required: true description: Webhook identifier outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest port: 8081 namespace: idp-api description: Unified REST API for intelligent document processing using UiPath Document Understanding and Orchestrator. resources: - path: /v1/projects name: projects description: Document understanding projects operations: - method: GET name: list-projects description: List document understanding projects call: document-understanding.list-projects outputParameters: - type: object mapping: $. - path: /v1/documents/digitize name: digitization description: Document OCR digitization operations: - method: POST name: digitize-document description: OCR digitize a document call: document-understanding.digitize-document with: documentUrl: rest.documentUrl projectId: rest.projectId outputParameters: - type: object mapping: $. - path: /v1/documents/classify name: classification description: Document classification operations: - method: POST name: classify-document description: Classify a document type call: document-understanding.classify-document with: documentUrl: rest.documentUrl projectId: rest.projectId outputParameters: - type: object mapping: $. - path: /v1/documents/extract name: extraction description: Document data extraction operations: - method: POST name: extract-document description: Extract structured data from document call: document-understanding.extract-document with: documentUrl: rest.documentUrl projectId: rest.projectId extractorId: rest.extractorId outputParameters: - type: object mapping: $. - path: /v1/extraction-results/{requestId} name: extraction-results description: Extraction result retrieval operations: - method: GET name: get-extraction-result description: Get document extraction results call: document-understanding.get-extraction-result with: requestId: rest.requestId projectId: rest.projectId outputParameters: - type: object mapping: $. - path: /v1/jobs name: jobs description: Automation jobs for document processing operations: - method: GET name: list-jobs description: List document processing jobs call: orchestrator.list-jobs outputParameters: - type: object mapping: $. - type: mcp port: 9081 namespace: idp-mcp transport: http description: MCP server for AI-assisted intelligent document processing using UiPath Document Understanding. tools: - name: list-du-projects description: List available Document Understanding projects hints: readOnly: true openWorld: true call: document-understanding.list-projects outputParameters: - type: object mapping: $. - name: digitize-document description: Digitize a document using OCR to extract text content hints: readOnly: false destructive: false idempotent: false call: document-understanding.digitize-document with: documentUrl: tools.documentUrl projectId: tools.projectId outputParameters: - type: object mapping: $. - name: classify-document description: Classify a document to identify its type (invoice, contract, form, etc.) hints: readOnly: false destructive: false idempotent: true call: document-understanding.classify-document with: documentUrl: tools.documentUrl projectId: tools.projectId outputParameters: - type: object mapping: $. - name: extract-document-data description: Extract structured data fields from a document using an ML extractor hints: readOnly: false destructive: false idempotent: true call: document-understanding.extract-document with: documentUrl: tools.documentUrl projectId: tools.projectId extractorId: tools.extractorId outputParameters: - type: object mapping: $. - name: get-extraction-result description: Retrieve the results of an asynchronous data extraction request hints: readOnly: true openWorld: true call: document-understanding.get-extraction-result with: requestId: tools.requestId projectId: tools.projectId outputParameters: - type: object mapping: $. - name: list-extractors description: List available ML extractors for a Document Understanding project hints: readOnly: true openWorld: true call: document-understanding.list-extractors outputParameters: - type: object mapping: $. - name: orchestrator-list-jobs description: List Orchestrator automation jobs for document processing workflows hints: readOnly: true openWorld: true call: orchestrator.list-jobs outputParameters: - type: object mapping: $.