Schema first
Field names, types, descriptions, and requirements travel with the extraction request.
Structured extraction, without a rigid template
Routeser accepts supported document images and PDFs, applies the fields you define, and returns structured results through an asynchronous API built for production workflows.
Free plan: 20 page credits each month, no card required.
// Presigned regional upload, job creation, bounded wait.
const { result } = await client.extractFile({
file,
idempotencyKey: "invoice-2048",
input: {
fileName: "invoice.pdf",
mediaType: "application/pdf",
sizeBytes: file.size
},
schema: {
version: "1",
fields: [
{ name: "invoice_number", type: "string" },
{ name: "vendor_name", type: "string" },
{ name: "total_due", type: "number" }
]
}
});
{
"invoice_number": "INV-2048",
"vendor_name": "Northwind Office Supply",
"invoice_date": "2026-06-18",
"total_due": 1248.5
}
A smaller integration surface
Describe the fields your system needs, submit a supported image, and poll the job or receive a webhook. Routeser keeps model providers behind an adapter while your application integrates with one stable contract.
Document bytes upload directly to regional object storage after tenant authentication. They do not pass through the Cloudflare Worker.
Field names, types, descriptions, and requirements travel with the extraction request.
Create a job quickly, then use bounded polling or a signed webhook for the terminal result.
Idempotency, per-job budgets, regional job state, retention, and deletion are designed into the workflow.
How it works
Use cases
Invoice numbers, vendors, dates, purchase-order references, and totals for accounts payable.
See invoice fieldsMerchant, transaction, date, total, and payment fields for expense reconciliation.
See receipt fieldsLabels, typed values, dates, and visible checkbox states from recurring operational forms.
See form fieldsSecurity posture
Deployed safeguards, described exactly as they run today. No borrowed badges.
No account needed
Our public demos reveal stored example results. They never upload a file or call a model.
Questions, answered plainly
Native JPEG, PNG, and WebP images plus PDF documents. Enabled media types can vary by deployment, so integrations should also follow the API's admission response.
No. Each marketing demo uses one synthetic sample and a stored result. Production extraction requires a tenant-authenticated account.
No. Routeser creates asynchronous jobs. Clients poll with a bounded waiter or configure a signed webhook.
Next step
Open the console to define a schema and evaluate Routeser with an authenticated workspace.