SchemaSure Legacy V1 evaluation API
The Legacy V1 evaluation API API from SchemaSure — 1 operation(s) for legacy v1 evaluation api.
The Legacy V1 evaluation API API from SchemaSure — 1 operation(s) for legacy v1 evaluation api.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/schemasure:schemasure-legacy-v1-evaluation-api-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: SchemaSure — structured extraction Legacy V1 evaluation API
version: 0.2.0
summary: Turn messy text, HTML, or document images into guaranteed schema-valid JSON, or pay nothing. SchemaSure V2 is the primary production API.
description: Pay-per-call APIs that extract strict, JSON-Schema-valid typed JSON from unstructured text, HTML, or document images.
contact:
name: SchemaSure
url: https://schemasure.com
servers:
- url: https://schemasure.com
tags:
- name: Legacy V1 evaluation API
paths:
/extract:
post:
operationId: extract_to_schema_v1
tags:
- Legacy V1 evaluation API
deprecated: true
summary: Legacy V1 endpoint with a limited free evaluation allowance
description: Use this legacy endpoint only to try SchemaSure free (3 limited calls per client) or maintain an existing V1 integration. New production agents should use /v2/extract.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ExtractRequest'
example:
input: 'Invoice #A-1042 — Acme Corp. Total due: $1,299.00 USD on 2026-08-01.'
schema:
type: object
additionalProperties: false
required:
- invoiceNumber
- total
- currency
- dueDate
properties:
invoiceNumber:
type: string
total:
type: number
currency:
type: string
enum:
- USD
- EUR
- GBP
dueDate:
type: string
format: date
responses:
'200':
description: Schema-valid extraction. Paid responses include X-PAYMENT-RESPONSE.
headers:
X-Request-ID:
description: Correlation identifier to include when contacting support.
schema:
type: string
format: uuid
X-PAYMENT-RESPONSE:
description: Base64-encoded x402 settlement receipt.
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/ExtractSuccess'
example:
data:
invoiceNumber: A-1042
total: 1299
currency: USD
dueDate: '2026-08-01'
meta:
repairs: 0
latencyMs: 640
validated: true
'400':
description: Bad request, unsupported input, invalid JSON Schema, or decoded input too large; fix before retrying. Not settled.
headers:
X-Request-ID:
description: Correlation identifier to include when contacting support.
schema:
type: string
format: uuid
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'402':
description: Legacy V1 payment required or invalid. The response body contains the V1 accepts quote.
headers:
X-Request-ID:
description: Correlation identifier to include when contacting support.
schema:
type: string
format: uuid
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'413':
description: Encoded HTTP request body is too large; reduce it before retrying. Not settled.
headers:
X-Request-ID:
description: Correlation identifier to include when contacting support.
schema:
type: string
format: uuid
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'422':
description: Could not produce schema-valid output; change the input/schema or use a fallback. Not settled.
headers:
X-Request-ID:
description: Correlation identifier to include when contacting support.
schema:
type: string
format: uuid
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'429':
description: Rate limited. Wait for Retry-After before retrying. Not settled.
headers:
X-Request-ID:
description: Correlation identifier to include when contacting support.
schema:
type: string
format: uuid
Retry-After:
description: Seconds until a retry is allowed.
schema:
type: integer
minimum: 1
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'500':
description: Unexpected server error. Retry once with backoff, then report X-Request-ID. Not settled.
headers:
X-Request-ID:
description: Correlation identifier to include when contacting support.
schema:
type: string
format: uuid
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'502':
description: Inference or payment upstream unavailable. Retry with bounded exponential backoff. Not settled.
headers:
X-Request-ID:
description: Correlation identifier to include when contacting support.
schema:
type: string
format: uuid
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'504':
description: Extraction timed out. Retry with bounded exponential backoff. Not settled.
headers:
X-Request-ID:
description: Correlation identifier to include when contacting support.
schema:
type: string
format: uuid
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
components:
schemas:
ExtractSuccess:
type: object
required:
- data
- meta
properties:
data:
description: Extracted value; guaranteed to validate against the request `schema`.
meta:
type: object
required:
- repairs
- latencyMs
- validated
properties:
repairs:
type: integer
latencyMs:
type: integer
validated:
const: true
deterministicFields:
type: array
items:
type: string
Error:
type: object
required:
- error
properties:
error:
type: object
required:
- code
- message
properties:
code:
type: string
enum:
- BAD_REQUEST
- INVALID_SCHEMA
- INPUT_TOO_LARGE
- UNSUPPORTED_INPUT_TYPE
- FETCH_BLOCKED
- EXTRACTION_FAILED
- VALIDATION_FAILED
- ABSTAINED
- UPSTREAM_LLM_ERROR
- TIMEOUT
- RATE_LIMITED
- PAYMENT_REQUIRED
- PAYMENT_INVALID
- PAYMENT_UPSTREAM
- INTERNAL
message:
type: string
details: {}
ExtractRequest:
type: object
additionalProperties: false
required:
- input
- schema
properties:
input:
type: string
minLength: 1
description: Raw unstructured content to extract from (plain text or HTML).
inputType:
type: string
enum:
- text
- html
- auto
default: auto
description: 'How to interpret `input`: plain text, HTML, or auto-detect (default).'
schema:
type: object
description: JSON Schema (draft 2020-12) that the returned `data` is guaranteed to satisfy.
options:
type: object
additionalProperties: false
properties:
maxRepairs:
type: integer
minimum: 0
maximum: 5
description: Max validate->re-prompt repair iterations.
strict:
type: boolean
default: true
description: Drop fields not present in the schema.
deterministic:
type: boolean
default: true
description: Enable deterministic pre-extraction hints.
externalDocs:
description: SchemaSure agent integration guide
url: https://schemasure.com/llms.txt
x-payment:
protocol: x402
version: 2
primary: true
scheme: exact
network: eip155:8453
asset: USDC
assetAddress: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
priceUsd: 0.01
chargeModel: charge-only-on-success
alwaysPaid: true
resource: https://schemasure.com/v2/extract
resources:
- kind: text
resource: https://schemasure.com/v2/extract
priceUsd: 0.01
- kind: image
resource: https://schemasure.com/v2/extract-image
priceUsd: 0.03
x-provenance:
method: harvested
publisher: SchemaSure
source: https://schemasure.com/openapi.json
note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
stamped by stamp-openapi-provenance.py (roadmap#793)