How it works
From upload to answer
your file ──▶ read the text ──▶ extract fields (optional) ──▶ answer
digital text now, only if you sent a
OCR for scans JSON Schema
- You upload a file to
POST /v1/convertwith your API key. You choose the output format (json,markdownorhtml) and, optionally, a JSON Schema. - DocSlice reads the document. A PDF with real text is read immediately. A scanned PDF or an image goes through OCR, and the answer says so with
ocr_applied: true. - Fields are extracted if you passed a schema (with
format=json): the AI layer fills the object you described. The answer reportsschema_applied: true. - You get the answer: the content in
data, the number ofpages, and the flags above.
Synchronous and asynchronous
By default the request waits and the answer comes back in the same response (mode=sync). For long documents, batches or when you do not want to hold a connection open, send mode=async: DocSlice answers at once with a job_id, works in the background, and you either poll GET /v1/jobs/{job_id} or receive a webhook when the job ends.
How pages are counted
Your quota is counted in pages, per calendar month (UTC). Every page of a converted document counts, including scanned pages read with OCR. When the quota is used up, new requests are refused with 402 until the first day of the next month. You can always see what you have used with GET /v1/usage and in the dashboard.
What is deleted, and when
| What | When it is deleted |
|---|---|
| The uploaded file | Immediately after it has been processed |
| The result of a background job | 24 hours after the job finishes (the job record stays, the content does not) |
| Usage metadata (file name, pages, time), never the content | After 12 months |
| Your account data | Immediately, when you delete your account (backups within 30 days) |
Documents are processed in Frankfurt, Germany, and are never used to train models. Read more in Privacy and data retention.