Skip to main content
Extract is asynchronous: POST /v1/extract returns a request, and this object is the result on that request once it completes (and the data returned directly on a ?wait call that finishes in time).
An unreadable or encrypted document:
When you send template: "auto", we pick the schema type for you and tell you which one we picked:
If nothing in your workspace fits the document, you get unmatched instead. We do not guess, and we do not fill:

Attributes

enum
required
Outcome of the read. One of:
  • extracted — the fields are in fields.
  • unreadable — a legal file we will not stand behind. Not billed.
  • unmatched — template: "auto" only. The document was readable, but no schema type in your workspace fits it. Nothing was filled.
object
required
The document that was read.
string
The schema type id (sch_…) the call pointed at, when one was used — or the one we matched, if you sent auto. Omitted for a fully inline schema, and when result is unmatched.
object
How we chose the schema type. Present only when you sent template: "auto".
object
The extracted values, shaped by your schema. Present only when result is extracted. A field that wasn’t found is omitted here (and listed in missing), never guessed.
string[]
Declared fields the model could not fill from the document. Present only when result is extracted.
timestamp
When the read completed. Present only when result is extracted.
See the Extract guide for schemas and examples, or Requests for the wait/poll/webhook lifecycle this result is delivered through.