Suggest an extraction schema
Suggest an extraction JSON Schema from a tenant-owned succeeded parse result.
Optional hint is capped at 500 characters. Definitive failures return
schema_suggestion_failed.
Authorization
bearerAuth Existing Eigenpal API key presented as a bearer token.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Suggest an extraction JSON Schema from a tenant-owned succeeded parse job.
Optional hint is caller guidance capped at 500 characters.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/suggest-schema" \ -H "Authorization: Bearer $OPENPARSER_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "parse_job_id": "string" }'{ "name": "string", "schema": { "property1": null, "property2": null }}{ "error": { "code": "malformed_request", "message": "multipart field `request` is not valid JSON", "request_id": "req_01h2example", "retryable": false }}{ "error": { "code": "unauthorized", "message": "invalid API key", "request_id": "req_01h2example", "retryable": false }}{ "error": { "code": "forbidden", "message": "API key lacks required scope", "request_id": "req_01h2example", "retryable": false }}{ "error": { "code": "job_not_found", "message": "job not found", "request_id": "req_01h2example", "retryable": false }}{ "error": { "code": "unsupported_ocr_model", "message": "unknown OCR model registry name", "request_id": "req_01h2example", "retryable": false, "details": { "ocr_model": "paddleocr-vl-9.9" } }}{ "error": { "code": "rate_limited", "message": "request rate limit exceeded", "request_id": "req_01h2example", "retryable": true }}{ "error": { "code": "source_upload_failed", "message": "source upload failed", "request_id": "req_01h2example", "retryable": true }}{ "error": { "code": "provider_indeterminate", "message": "job outcome indeterminate", "request_id": "req_01h2example", "retryable": true }}Extract structured data from multiple documents POST
Admit up to 100 file-backed extract child jobs in one durable batch. Every item uses `file_index` or `file_id`; `parse_job_id` reuse is single-extract-only and is not accepted in batch. Partial child failures are preserved. Parent status derivation follows `JobStatus`; billing is evaluated per child.
List jobs GET
Tenant-scoped chronological list of top-level OCR jobs (batch children are omitted). Returns lightweight summaries only — full results remain on `GET /jobs/{id}`. Cursor pagination is stable newest-first with an `id` tie-break. Optional `status` and `operation` filters are validated strictly; unknown values return `400`.