# OCR Text Extractor

> OCR Text Extractor is a paid API for AI agents from ocr.underscoredone.com, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-13).

Extracts plain text from an image supplied as a public URL or base64-encoded data using optical character recognition.

## Facts

- Endpoint: POST https://ocr.underscoredone.com/read
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-13
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/ocr-text-extractor-66deaa74
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_9TWafuFOTaEOpHDJmFtwG

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability ocr-text-extractor-66deaa74 -d '<json body>'
```

Example prompt: Can you read the text out of this image for me? Here's the URL: https://example.com/receipt.jpg — it's in English.

## When to prefer this

Use this endpoint when you need to extract text from an image file — whether it's a screenshot, scanned document, photo of a sign, or receipt — and you have either a public URL or base64-encoded image data. It is a straightforward, pay-per-call OCR service ideal for agents that need on-demand text extraction without a subscription or complex setup.

## Known failure modes

- Image URL is not publicly accessible or returns a non-image response
- base64 data is malformed or corrupted, causing a decode error
- image contains no readable text, returning empty or minimal output
- unsupported language requested (only 'eng' is currently supported)
- image resolution too low for accurate text recognition
- payment not included or insufficient, returning 402 Payment Required

## How this service works

Send a picture, either as a public web address or as base64-encoded image data, and get back the plain text found inside it.

## Output

Returns the plain text content found within the submitted image, extracted via OCR. The response contains the recognized characters and words as a string of text.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "lang": {
   "type": "string",
   "description": "The language of the text in the image. Only 'eng' (English) is supported at the moment."
  },
  "image_url": {
   "type": "string",
   "description": "A public web address pointing to the image file. Leave this out if you are sending the image as base64 text instead."
  },
  "image_base64": {
   "type": "string",
   "description": "The image encoded as base64 text. Leave this out if you are sending a web address instead."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "lang": "eng",
  "text": "TOTAL 24.50\nTHANK YOU",
  "source": "image_url",
  "confidence": 91.4,
  "word_count": 4,
  "api_version": "1.0.0"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/ocr-text-extractor-66deaa74/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from ocr.underscoredone.com](https://www.zero.xyz/host/ocr.underscoredone.com/llms.txt)
