Pipelines
Create a saved extraction pipeline
Persist a tenant-scoped extraction configuration (OCR model, LLM model, schema,
repair/grounding/reasoning). Validated with the same admission gates as extract.
Playground tokens and ocr:full keys are both accepted.
Authorization
bearerAuth AuthorizationBearer <token>
Existing Eigenpal API key presented as a bearer token.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Create a tenant-scoped saved extraction configuration.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/pipelines" \ -H "Authorization: Bearer $OPENPARSER_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "name": "string", "ocr_model": "string", "llm_model": "string", "schema": { "property1": null, "property2": null } }'{ "id": "string", "name": "string", "slug": "string", "version": 1, "ocr_model": "string", "ocr_options": { "property1": null, "property2": null }, "llm_model": "openai/gpt-6-luna", "llm_options": { "reasoning_effort": "auto" }, "schema": { "property1": null, "property2": null }, "repair_attempts": 0, "grounding": "none", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z"}{ "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": "pipeline_name_conflict", "message": "pipeline name already exists", "request_id": "req_01h2example", "retryable": false, "details": { "field": "name" } }}{ "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 }}