What it does
An AI OCR model reads every page of an uploaded file and turns it into text that fileAI classifies and extracts from. You pick the model per upload, or rely on your project default, and read the page text back withGET /v1/files/{fileId}/ocr.
When to use it
- You receive documents in Japanese, Chinese or Thai and need a model built for that language instead of the English default.
- You need the raw text of each page, for example to index it for search or run your own parsing next to fileAI’s extraction.
- You want every new file in a project read by a different model, without changing each upload request.
How it works
1
fileAI picks the model
If the upload request includes
ocrModel, fileAI uses that model for the file. Otherwise it uses your project default.2
The model reads each page
The text it finds is what fileAI classifies and extracts from.
3
You read the text
GET /v1/files/{fileId}/ocr returns the text of each page, using a fileId from the upload’s files[].Try it
Read the page text of a processed file:Understand the result
Response (200)
The response is plain text per page only. It has no layout, bounding boxes or coordinates.
fileId that is blank or not found in your project returns 422 with Invalid fileId.
Next steps
Uploads
Where to send
ocrModel and the other upload fields.Supported file types
The files each model can read.
Extract with AI Schemas
Turn the text into structured fields.
Reference
How the model is chosen
- If the upload request includes
ocrModel, fileAI uses that model for the file. - Otherwise fileAI uses your project default. Unless your project is configured otherwise, that is
Beethoven_ENG_GP25.2. To change it, see File intelligence.
ocrModel is accepted on every upload route: POST /v1/files/upload, /files/upload/batch (per file or in defaults), /files/upload/multipart and /files/upload/multipart/batch. Send the model name exactly as listed below.
Available models
Experimental model
Capybara (Experimental) is available only to projects set up for it, in organizations where it is enabled. A per-upload ocrModel must match the project’s setup, or the request returns 422:
- In a project not set up for it,
capybarais rejected. - In a project set up for it, any other model is rejected. Omit
ocrModelto use the project setting.
Retired models
Models that are no longer offered return422 when you send them, on uploads and on PATCH /v1/project/setting:
Beethoven_ENG_GP3, Beethoven_ENG_O5.1 to O5.5, Beethoven_ENG_G5.0 and G5.2 to G5.4, Beethoven_TH_O5.0, Beethoven_JP_O5.1, Beethoven_JP_O5.2 and Beethoven_JP_G5.1 to G5.3. A name that was never a model returns 422 with Invalid ocr model.
Override the model for one upload
Change the project default
The project default model is set in the app or withPATCH /v1/project/setting. See File intelligence. New defaults apply to files processed after the change.