endpoint
OCR
POST /api/v1/ocr
Recognize text in scanned PDFs. 20 languages. Optionally produce a searchable-PDF output.
credits: 5returns: application/json — or application/pdf when searchablePdf=true
OCR is the single most expensive op — price reflects real compute.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| file | multipart file | required | Source PDF. |
| languages | string (query) | optional | Comma-separated ISO codes.default: eng |
| dpi | integer (query) | optional | Rasterization DPI before OCR.default: 200 |
| positions | boolean (query) | optional | Return per-word bounding boxes. |
| searchablePdf | boolean (query) | optional | Output a text-layer-embedded PDF. |
Examples
curl
curl -X POST "https://api.snappdf.au/api/v1/ocr?languages=eng,spa&dpi=300" \
-H "Authorization: Bearer $SNAPPDF_API_KEY" \
-F "file=@scan.pdf"JavaScript
const r = await snap.pdf.ocr({ file: bytes, languages: ['eng', 'spa'], dpi: 300 });Python
r = snap.pdf.ocr(file=bytes, languages=["eng", "spa"], dpi=300)PHP
$r = $snap->pdf->ocr(file: $bytes, languages: ['eng', 'spa'], dpi: 300);Ruby
r = snap.pdf.ocr(file: bytes, languages: ['eng', 'spa'], dpi: 300)Go
r, _ := client.OCR(ctx, &snappdf.OcrInput{File: bytes, Languages: []string{"eng", "spa"}, DPI: 300})