---
title: "Read"
method: GET
path: "/workspaces/{wid}/batches/{bid}/preparation"
tags: ["preparation"]
---

# Read

`GET /workspaces/{wid}/batches/{bid}/preparation`

## Request

- Base URL: `https://app.linerecon.com` (the document declares no server; this is the origin it was published from)
- URL: `https://app.linerecon.com/workspaces/{wid}/batches/{bid}/preparation`
- Auth: none declared

## Path parameters

- `wid` string, uuid, required
- `bid` string, uuid, required

## Response `200`

Successful Response

- PreparationView
  - `comparison_scope` ComparisonScopeSummary
    - `version_id` string, uuid, required
    - `version` integer, required
    - `field_ids` string[], required
    - `rules` object, required
    - `plan_scope` PlanScope
      - `status` 'not_recorded' | 'unknown' | 'limited' | 'sampled', required
      - `observed_count` integer, required
      - `included_count` integer, required
      - `excluded_count` integer, required
      - `unselected_labels` ScopeLabel[], required
        - `id` string, required
        - `label` string, required
        - `document_id` string, nullable
        - `page_id` string, required
      - `notes` string[], required
      - `analyzed_pages` integer, required
      - `total_pages` integer, nullable
  - `observed_fields` SchemaField[], required
    - `id` string, uuid, required
    - `name` string, required
    - `description` string, required
    - `type` 'text' | 'identifier' | 'number' | 'money' | 'date', required
    - `scope` 'document' | 'record' | 'line_item'
    - `comparison_enabled` boolean
  - `observed_fields_current` boolean, required
  - `observed_input_fingerprint` string, nullable, required
  - `workflow_stage` 'intake' | 'plan' | 'processing' | 'review'
  - `processing_run` RunView
    - `id` string, uuid, required
    - `batch_id` string, uuid, required
    - `purpose` 'discover' | 'reconcile' | 'rematch', required
    - `status` 'queued' | 'running' | 'paused' | 'cancelling' | 'cancelled' | 'completed' | 'failed', required
    - `pause_reason` string, nullable, required
    - `estimated_credits` string, required
    - `charged_credits` string, required
    - `pending_credits` string, required
    - `pricing_version` string, required
    - `steps` StepView[], required
      - `id` string, uuid, required
      - `ordinal` integer, required
      - `operation` string, required
      - `status` 'pending' | 'running' | 'completed' | 'failed' | 'cancelled', required
      - `result` object, nullable, required
      - `document_name` string, nullable
      - `first_page` integer, nullable
      - `last_page` integer, nullable
      - `no_model_call` boolean, nullable
      - `failure` string, nullable
    - `retry_of` string, uuid, nullable
    - `resource_profile_id` 'compact-v1' | 'standard-v1', nullable
    - `resource_failure` 'input_limit' | 'output_limit', nullable
    - `standard_retry_available` boolean
  - `comparison_version_id` string, uuid, nullable
  - `batch_id` string, uuid, required
  - `state` 'uploading' | 'ready' | 'analyzing' | 'draft' | 'confirmed' | 'failed', required
  - `input_fingerprint` string, required
  - `analyzed_pages` AnalyzedPage[], required
    - `id` string, uuid, required
    - `document_id` string, uuid, required
    - `page_number` integer, required
  - `total_pages` integer, required
  - `unrepresented_document_ids` string[], required
  - `run` RunView, required
    - `id` string, uuid, required
    - `batch_id` string, uuid, required
    - `purpose` 'discover' | 'reconcile' | 'rematch', required
    - `status` 'queued' | 'running' | 'paused' | 'cancelling' | 'cancelled' | 'completed' | 'failed', required
    - `pause_reason` string, nullable, required
    - `estimated_credits` string, required
    - `charged_credits` string, required
    - `pending_credits` string, required
    - `pricing_version` string, required
    - `steps` StepView[], required
      - `id` string, uuid, required
      - `ordinal` integer, required
      - `operation` string, required
      - `status` 'pending' | 'running' | 'completed' | 'failed' | 'cancelled', required
      - `result` object, nullable, required
      - `document_name` string, nullable
      - `first_page` integer, nullable
      - `last_page` integer, nullable
      - `no_model_call` boolean, nullable
      - `failure` string, nullable
    - `retry_of` string, uuid, nullable
    - `resource_profile_id` 'compact-v1' | 'standard-v1', nullable
    - `resource_failure` 'input_limit' | 'output_limit', nullable
    - `standard_retry_available` boolean
  - `spent_credits` string, required
  - `draft` Draft, required (unresolved $ref)
  - `draft_current` boolean
  - `supplement_scope` SupplementScope: Files added after the plan was confirmed that no processing has read yet, rejected or failed ones included (listed, never confirmed or processed). While `confirmation_required`, processing them is refused until the scope is confirmed (or the plan changed and confirmed again); reusing the plan never accepts them implicitly.
    - `added_document_ids` string[], required
    - `confirmation_required` boolean, required

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
- `409`: Conflict
- `413`: Content Too Large
- `422`: Unprocessable Content
- `429`: Too Many Requests
- `503`: Service Unavailable

---

[API](https://skmtc.dev/linerecon/apis/linerecon-api.md) · [All operations](https://skmtc.dev/linerecon/apis/linerecon-api/llms.txt) · [OpenAPI document](https://skmtc.dev/linerecon/apis/linerecon-api/revisions/0650f53a4249?raw)
