---
title: "Document processing (asynchronous)"
method: POST
path: "/documents/process"
tags: ["Documents"]
---

# Document processing (asynchronous)

`POST /documents/process`

Creates an asynchronous ingestion job with embedding generation.

## Request body

- DocumentProcessRequest
  - `files` union[]
    - union
      - string
      - object
        - `file_path` string
        - `enable_ocr` boolean
  - `directories` string[]
  - `d_app_id` string, required
  - `project_id` string, required
  - `chunk_size` integer
  - `chunk_overlap` integer
  - `enable_ocr` boolean
  - `batch_processing` boolean
  - `duplicate_strategy` 'skip' | 'update' | 'add' | 'sync'
  - `force_update` boolean

## Response `202`

Job created successfully

- JobAccepted
  - `job_id` string
  - `status` 'queued' | 'processing' | 'completed' | 'failed'
  - `message` string
  - `status_url` string
  - `created_at` string, date-time

## Other responses

- `400` — Invalid request
- `500` — Internal server error

---

[API](https://skmtc.net/j-aic/apis/ib-link-apis.md) · [All operations](https://skmtc.net/j-aic/apis/ib-link-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/j-aic/ib-link-apis/versions/27f7c6c98b23/schema)
