Skip to content

Create Extract Review

client.Extract.Review.New(ctx, jobID, params) (*ExtractReview, error)
POST/api/v2/extract/{job_id}/review

Beta: answers 403 until extract review is enabled for the caller and their organization.

Turn review on for an extract job.

Fields read below confidence_threshold, and required fields left empty, are flagged for a person to check. Every setting has a default, so the body can be left out. A job still running can be named: it waits for review once it completes. A job that failed or was cancelled without a review, or that cannot be reviewed, answers 409 with code: job_not_reviewable; a field in fields_in_scope the job’s schema does not have answers 400.

Answers 201 with the new review, or 200 with the job’s existing review, whose settings stay as they are.

ParametersExpand Collapse
jobID string
params ExtractReviewNewParams
OrganizationID param.Field[string]Optional

Query param

formatuuid
ProjectID param.Field[string]Optional

Query param

formatuuid
ConfidenceThreshold param.Field[float64]Optional

Body param: Fields read below this confidence are flagged.

maximum1
minimum0
FieldsInScope param.Field[[]string]Optional

Body param: JSON Pointers of the fields the threshold applies to; empty means all.

RequiredFields param.Field[[]string]Optional

Body param: JSON Pointers of fields flagged when empty; defaults to the schema’s required.

ReturnsExpand Collapse
type ExtractReview struct{…}

An extract job’s review: its settings, flags, field actions and decision, with the result as read and as reviewed.

ID string

Unique identifier of the review.

ConfidenceThreshold float64

Fields read below this confidence are flagged.

CreatedAt Time

When review was turned on.

formatdate-time
DecidedAt Time

When it was approved or rejected.

formatdate-time
DecidedBy string

ID of the user who approved or rejected it.

DecidedReason string

Why it was rejected.

FieldActions map[string, ExtractReviewFieldAction]

The latest action per field, keyed by JSON Pointer.

Action string

confirm, correct or clear.

One of the following:
const ExtractReviewFieldActionActionClear ExtractReviewFieldActionAction = "clear"
const ExtractReviewFieldActionActionConfirm ExtractReviewFieldActionAction = "confirm"
const ExtractReviewFieldActionActionCorrect ExtractReviewFieldActionAction = "correct"
ActorID string

ID of the user who acted.

At Time

When they acted.

formatdate-time
Value anyOptional

The corrected value, for correct.

FieldsInScope []string

JSON Pointers of the fields the threshold applies to; empty means all.

Flags []ExtractReviewFlag

Fields the review asks a person to check.

Handled bool

Whether someone confirmed, corrected or cleared it.

Path string

JSON Pointer of the field.

Reason string

below_threshold, or required_empty for a required field left empty.

One of the following:
const ExtractReviewFlagReasonBelowThreshold ExtractReviewFlagReason = "below_threshold"
const ExtractReviewFlagReasonRequiredEmpty ExtractReviewFlagReason = "required_empty"
Cell ExtractReviewFlagCellOptional

Where in a list the least confident value is.

Row int64

Index of the row, from 0.

Column stringOptional

Property of the row, when rows are objects.

Confidence float64Optional

The field’s confidence; for a list, its least confident value.

JobID string

The extract job reviewed.

OpenFlags []string

JSON Pointers of flagged fields nobody checked.

OriginalResult map[string, any]

The result as the model read it.

RequiredFields []string

JSON Pointers of fields flagged when empty.

RetainUntil Time

When the job and its document may be deleted.

formatdate-time
ReviewedResult map[string, any]

The result with the field actions.

Revision int64

Bumped by every change; actions name the one they saw.

SourceFileID string

The file the job read, or the file behind the parse job it read; null for a URL.

Status ExtractReviewStatus

pending until approved or rejected.

One of the following:
const ExtractReviewStatusApproved ExtractReviewStatus = "approved"
const ExtractReviewStatusPending ExtractReviewStatus = "pending"
const ExtractReviewStatusRejected ExtractReviewStatus = "rejected"
UpdatedAt Time

When the review last changed.

formatdate-time

Create Extract Review

package main

import (
  "context"
  "fmt"

  "github.com/run-llama/llama-parse-go"
  "github.com/run-llama/llama-parse-go/option"
)

func main() {
  client := llamacloud.NewClient(
    option.WithAPIKey("My API Key"),
  )
  extractReview, err := client.Extract.Review.New(
    context.TODO(),
    "job_id",
    llamacloud.ExtractReviewNewParams{

    },
  )
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", extractReview.ID)
}
{
  "id": "id",
  "confidence_threshold": 0,
  "created_at": "2019-12-27T18:11:19.117Z",
  "decided_at": "2019-12-27T18:11:19.117Z",
  "decided_by": "decided_by",
  "decided_reason": "decided_reason",
  "field_actions": {
    "foo": {
      "action": "clear",
      "actor_id": "actor_id",
      "at": "2019-12-27T18:11:19.117Z",
      "value": {}
    }
  },
  "fields_in_scope": [
    "string"
  ],
  "flags": [
    {
      "handled": true,
      "path": "path",
      "reason": "below_threshold",
      "cell": {
        "row": 0,
        "column": "column"
      },
      "confidence": 0
    }
  ],
  "job_id": "job_id",
  "open_flags": [
    "string"
  ],
  "original_result": {
    "foo": "bar"
  },
  "required_fields": [
    "string"
  ],
  "retain_until": "2019-12-27T18:11:19.117Z",
  "reviewed_result": {
    "foo": "bar"
  },
  "revision": 0,
  "source_file_id": "source_file_id",
  "status": "approved",
  "updated_at": "2019-12-27T18:11:19.117Z"
}
Returns Examples
{
  "id": "id",
  "confidence_threshold": 0,
  "created_at": "2019-12-27T18:11:19.117Z",
  "decided_at": "2019-12-27T18:11:19.117Z",
  "decided_by": "decided_by",
  "decided_reason": "decided_reason",
  "field_actions": {
    "foo": {
      "action": "clear",
      "actor_id": "actor_id",
      "at": "2019-12-27T18:11:19.117Z",
      "value": {}
    }
  },
  "fields_in_scope": [
    "string"
  ],
  "flags": [
    {
      "handled": true,
      "path": "path",
      "reason": "below_threshold",
      "cell": {
        "row": 0,
        "column": "column"
      },
      "confidence": 0
    }
  ],
  "job_id": "job_id",
  "open_flags": [
    "string"
  ],
  "original_result": {
    "foo": "bar"
  },
  "required_fields": [
    "string"
  ],
  "retain_until": "2019-12-27T18:11:19.117Z",
  "reviewed_result": {
    "foo": "bar"
  },
  "revision": 0,
  "source_file_id": "source_file_id",
  "status": "approved",
  "updated_at": "2019-12-27T18:11:19.117Z"
}
Note for AI agents: this documentation is built for programmatic access. - Overview of all docs: https://developers.llamaindex.ai/llms.txt - Any page is available as raw Markdown by appending index.md to its URL — e.g. https://developers.llamaindex.ai/llamaparse/parse/getting_started/index.md - Agent-friendly REST search APIs live under https://developers.llamaindex.ai/api/ — search (BM25 full-text), grep (regex), read (fetch a page), and list (browse the doc tree). See https://developers.llamaindex.ai/llms.txt for parameters. - A hosted documentation MCP server is available at https://developers.llamaindex.ai/mcp. If you support MCP, you can ask the user to install it for browsing these docs directly (an alternative to the REST API). Setup: https://developers.llamaindex.ai/for-agents/mcp/ - Other LlamaIndex tooling for agents — the LlamaParse Platform MCP server, agent skills and plugins, and the n8n node — is mapped at https://developers.llamaindex.ai/for-agents/