Skip to main content
POST
Python

Body

Input to V2ExtractOperationWorkflow.

Provide the markdown as an inline markdown string, as a multipart file part named markdown (for large inputs — the gateway stages the upload internally), or via a public markdown_url. Exactly one source must be supplied.

schema
Schema · object
required

JSON Schema describing the fields to extract. The schema must be an object type with a properties map of field names to their types and descriptions.

Example:
markdown
string | null

Markdown string to extract from, or a multipart FILE part carrying the markdown (large inputs — uploads are staged by the gateway). Can come from any source — LandingAI parse output, a third-party parser, or hand-authored text. When the markdown was produced by POST /v2/parse, it ends with a <!-- doc_id=<id> --> comment that the service reads automatically and echoes as metadata.doc_id.

markdown_url
string | null

URL to fetch the markdown from. Must be a public http(s) URL; private/loopback IPs are rejected at submit time.

model
string | null

The version of the model to use for extraction. Use extract-latest to use the latest version.

options
V2ExtractOptions · object | null

Extraction options (strict). Omit for defaults.

output_save_url
string | null

URL to save the result to — e.g. a presigned S3 PUT URL. Async jobs only. When set, the finished result is delivered (HTTP PUT) to this URL and the completed job reports output_url instead of an inline result. Must be a public http(s) URL; private/loopback IPs are rejected at submit time. A presigned URL must stay valid until the job COMPLETES, not just past submit — an already-expired presign, or one with less than 15 minutes of validity remaining (the default floor; the 422 names the exact window required), is rejected at submit. Sign with credentials that outlive the expected job duration: a URL signed with temporary (assumed-role/session) credentials dies when that session expires, regardless of the URL's stated expiry.

service_tier
enum<string> | null

Async service tier. priority runs in the fast lane at the sync billing rate; absent → standard.

Available options:
standard,
priority

Response

Job created

job_id
string

The unique identifier for this v2-extract job. Format: extract-<26-character Crockford base32 ULID> ([0-9a-hjkmnp-tv-z]{26} tail). Opaque, server-minted, and stable for the life of the job — the same id is returned on the sync response, the async 202, and every poll. Treat it as opaque; older id formats remain accepted indefinitely and are never re-issued.

status
enum<string>
Available options:
pending,
processing,
completed,
failed
created_at
string | null