Service / document.ocr

Document OCR

Extract normalized text from a scanned document.

01 / Outcome

What this service does

Returns inline when the bounded wait completes; otherwise continues under the same invocation.

Best for

Scanned PDFs and page images that need normalized text and line confidence.

Returns

Normalized text, page lines, confidence, output digest, and sealed receipt evidence.

02 / Price

One clear Ausca price.

The catalog defines the range. Live preparation or the payment challenge returns binding terms.

Ausca price

$0.25

Fixed price for one admitted call.

Read the service SKILL.md

Exact terms

Model
fixed
Minimum
25 USD-minor
Maximum
25 USD-minor

The live preparation or payment challenge is binding. This page never invents a price.

03 / Contract

Pinned before execution.

These values are generated from the active, digest-verified catalog revision.

Status
Active
Offer
document.ocr
Revision
ocr-fixed-r5
Execution
Bounded
Input artifact
Up to 10 MiB
Bounded wait
90 seconds
Result retention
24 hours
Inline result
Up to 64 KiB
Receipt evidence
Required at success
Revision digest
sha256:dcd533646010339d70c90646ae590fbbfed3f802015e6cdf90bc2760be0f9314
Input schema digest
sha256:aa86a0fc7e01438f3f99dc35550f4c3d710795e4302e489de32eae7e403ffd5d
Output schema digest
sha256:7678d31cee0749330afeb1d5d42e098bf23b304172edfc57bda06f6679157fea

04 / Invoke

Use the entry point that fits.

Start with SKILL.md for agents, HTTP + x402 for HTTP integrations, or MCP for generated tools.

SKILL.md Recommended for agents

Start from the exact versioned instructions for this service. The skill describes the capability, inputs, payment boundary, retry identity, and evidence without requiring an agent to scrape this page.

Fetch the skill sh
curl --fail --silent --show-error https://ausca.com/skills/document-ocr/SKILL.md

Exact identity: ausca/document-ocr@0.2.0, digest sha256:479419cfa0c86797d1c601cd358cbfa1a4871b598d2939d8fc133527a8d5599a.

HTTP + x402 HTTP client

Send the exact invocation envelope without payment material to discover live binding terms. Use a supported x402 client for the authorized retry; do not paste a sample signature.

Unsigned discovery sh
curl --request POST https://ausca.com/v1/invocations \
  --header 'Content-Type: application/json' \
  --data @ausca-document-ocr-request.json
ausca-document-ocr-request.json json
{
  "canonicalizer_version": "runx.receipt.c14n.v1",
  "idempotency_key": "ausca-document-ocr-example-0001",
  "input": {
    "artifact": {
      "artifact_ref": "runx:artifact:sha256:1111111111111111111111111111111111111111111111111111111111111111",
      "content_digest": "sha256:2222222222222222222222222222222222222222222222222222222222222222",
      "media_type": "application/pdf"
    }
  },
  "input_schema_digest": "sha256:aa86a0fc7e01438f3f99dc35550f4c3d710795e4302e489de32eae7e403ffd5d",
  "offer_id": "document.ocr",
  "offer_revision": "ocr-fixed-r5",
  "offer_revision_digest": "sha256:dcd533646010339d70c90646ae590fbbfed3f802015e6cdf90bc2760be0f9314",
  "output_schema_digest": "sha256:7678d31cee0749330afeb1d5d42e098bf23b304172edfc57bda06f6679157fea"
}

Expected first response: 402 with matching x402 v2 PAYMENT-REQUIRED header and body. A valid paid retry returns the admitted or replayed invocation.

MCP Discovery and control

MCP projects the same Ausca contract. Paid invocation is disabled by default and must be enabled deliberately by a compatible host. MCP does not carry x402 HTTP headers.

ausca_invoke_offer json
{
  "jsonrpc": "2.0",
  "id": "document-ocr-example",
  "method": "tools/call",
  "params": {
    "name": "ausca_invoke_offer",
    "arguments": {
      "canonicalizer_version": "runx.receipt.c14n.v1",
      "idempotency_key": "ausca-document-ocr-example-0001",
      "input": {
        "artifact": {
          "artifact_ref": "runx:artifact:sha256:1111111111111111111111111111111111111111111111111111111111111111",
          "content_digest": "sha256:2222222222222222222222222222222222222222222222222222222222222222",
          "media_type": "application/pdf"
        }
      },
      "input_schema_digest": "sha256:aa86a0fc7e01438f3f99dc35550f4c3d710795e4302e489de32eae7e403ffd5d",
      "offer_id": "document.ocr",
      "offer_revision": "ocr-fixed-r5",
      "offer_revision_digest": "sha256:dcd533646010339d70c90646ae590fbbfed3f802015e6cdf90bc2760be0f9314",
      "output_schema_digest": "sha256:7678d31cee0749330afeb1d5d42e098bf23b304172edfc57bda06f6679157fea"
    }
  }
}

Expected response: the generated invocation result shape. Use ausca_get_invocation for authoritative state and the receipt reference.

05 / Lifecycle

One purchase identity to terminal state.

A connection can end while durable work continues. Read back the invocation; do not create a second purchase.

  1. 01 payment terms
  2. 02 admitted
  3. 03 running
  4. 04 terminal

A 202 response means the invocation was admitted, not that execution failed to finish inline. Read the same invocation until it reaches a terminal state.

Cancellation is a bounded request and can lose a race with completion. Results remain available for 24 hours. Retry uncertain purchases with the same idempotency key.

06 / Contract examples

A complete request, from authority.

Replace the example artifact commitment and idempotency key. Keep the same key when retrying an uncertain purchase.

Invocation request json
{
  "canonicalizer_version": "runx.receipt.c14n.v1",
  "idempotency_key": "ausca-document-ocr-example-0001",
  "input": {
    "artifact": {
      "artifact_ref": "runx:artifact:sha256:1111111111111111111111111111111111111111111111111111111111111111",
      "content_digest": "sha256:2222222222222222222222222222222222222222222222222222222222222222",
      "media_type": "application/pdf"
    }
  },
  "input_schema_digest": "sha256:aa86a0fc7e01438f3f99dc35550f4c3d710795e4302e489de32eae7e403ffd5d",
  "offer_id": "document.ocr",
  "offer_revision": "ocr-fixed-r5",
  "offer_revision_digest": "sha256:dcd533646010339d70c90646ae590fbbfed3f802015e6cdf90bc2760be0f9314",
  "output_schema_digest": "sha256:7678d31cee0749330afeb1d5d42e098bf23b304172edfc57bda06f6679157fea"
}
Result shape json
{
  "delivery": {
    "kind": "inline",
    "output": {
      "lines": [
        {
          "confidence": 0.99,
          "page": 1,
          "text": "scan me"
        }
      ],
      "schema": "ausca.document_ocr.output.v1",
      "source_digest": "sha256:2222222222222222222222222222222222222222222222222222222222222222",
      "text": "scan me"
    }
  },
  "output_digest": "sha256:3333333333333333333333333333333333333333333333333333333333333333",
  "schema": "ausca.aws_documents.execution.v1"
}

Recommended agent entry

ausca/document-ocr@0.2.0

Extract normalized text from one immutable document through Ausca's fixed-price document OCR service.

Read the exact SKILL.md
Digest-bound skill reference text
SKILL.md: https://ausca.com/skills/document-ocr/SKILL.md
Service: https://ausca.com/services/document-ocr
Offer: document.ocr
Revision: sha256:dcd533646010339d70c90646ae590fbbfed3f802015e6cdf90bc2760be0f9314
Input schema: https://ausca.com/schemas/offers/text-extract.input.schema.json
Output schema: https://ausca.com/schemas/offers/text-extract.output.schema.json
Endpoint: POST https://ausca.com/v1/invocations
Pricing: fixed; resolve binding terms from live preparation or payment challenge.

Executed through an Ausca-owned document capability behind the governed provider boundary.