---
title: "Propose"
method: POST
path: "/workspaces/{wid}/runs/{rid}/continuation-candidates"
tags: ["records"]
---

# Propose

`POST /workspaces/{wid}/runs/{rid}/continuation-candidates`

## 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}/runs/{rid}/continuation-candidates`
- Auth: none declared

## Path parameters

- `wid` string, uuid, required
- `rid` string, uuid, required

## Request body

- ContinuationRequest
  - `target` RecordRef, required
    - `artifact_id` string, uuid, required
    - `record_id` string, required
  - `identity_fields` string[], required
  - `cursor` string, nullable
  - `limit` integer

## Response `200`

Successful Response

- ContinuationPage
  - `run_id` string, uuid, required
  - `inputs_current` boolean, required
  - `scope` 'same_document_records'
  - `proposer_version` 'continuation-candidates-v1'
  - `target` RecordItem, required
    - `artifact_id` string, uuid, required
    - `document_id` string, uuid, required
    - `filename` string, required
    - `record` Record, required
      - `id` string, required
      - `scope` 'document' | 'record' | 'line_item'
      - `page_ids` string[], required
      - `cells` Cell[], required (unresolved $ref)
    - `pages` Page[], required
      - `id` string, required
      - `document_id` string, required
      - `generation` string, required
      - `page_number` integer, required
      - `render_hash` string, required
      - `width` integer, required
      - `height` integer, required
    - `locations` LocatedEvidence[], required
      - `record_id` string, required
      - `field_id` string, required
      - `evidence_index` integer, required
      - `location` Location, required
        - `page_id` string, required
        - `status` 'candidate' | 'page_only' | 'ambiguous', required
        - `box` Box, required
          - `x0` number, required
          - `y0` number, required
          - `x1` number, required
          - `y1` number, required
        - `method` string, required
        - `reason` string, nullable
        - `source_page` Page
          - `id` string, required
          - `document_id` string, required
          - `generation` string, required
          - `page_number` integer, required
          - `render_hash` string, required
          - `width` integer, required
          - `height` integer, required
        - `quote_sha256` string, nullable
  - `identity_fields` string[], required
  - `candidates` ContinuationCandidate[], required
    - `id` string, uuid, required
    - `record` RecordItem, required
      - `artifact_id` string, uuid, required
      - `document_id` string, uuid, required
      - `filename` string, required
      - `record` Record, required
        - `id` string, required
        - `scope` 'document' | 'record' | 'line_item'
        - `page_ids` string[], required
        - `cells` Cell[], required (unresolved $ref)
      - `pages` Page[], required
        - `id` string, required
        - `document_id` string, required
        - `generation` string, required
        - `page_number` integer, required
        - `render_hash` string, required
        - `width` integer, required
        - `height` integer, required
      - `locations` LocatedEvidence[], required
        - `record_id` string, required
        - `field_id` string, required
        - `evidence_index` integer, required
        - `location` Location, required
          - `page_id` string, required
          - `status` 'candidate' | 'page_only' | 'ambiguous', required
          - `box` Box, required
            - `x0` number, required
            - `y0` number, required
            - `x1` number, required
            - `y1` number, required
          - `method` string, required
          - `reason` string, nullable
          - `source_page` Page
            - `id` string, required
            - `document_id` string, required
            - `generation` string, required
            - `page_number` integer, required
            - `render_hash` string, required
            - `width` integer, required
            - `height` integer, required
          - `quote_sha256` string, nullable
    - `decision` ContinuationDecision, required
      - `kind` 'continuation_candidate' | 'duplicate_candidate' | 'conflict_candidate' | 'identity_mismatch' | 'scope_mismatch' | 'incompatible_source' | 'insufficient_evidence', required
      - `requires_confirmation` true
      - `identity_complete` boolean
      - `adjacent_pages` boolean
      - `same_window` boolean
      - `complementary_fields` string[]
      - `conflicting_fields` string[]
      - `observations` ObservationPair[]
        - `field_id` string, required
        - `left` Cell, required (unresolved $ref)
        - `right` Cell, required (unresolved $ref)
        - `relation` 'equal' | 'conflict' | 'complementary' | 'unresolved' | 'inapplicable', required
      - `warnings` string[]
  - `excluded_counts` object, required
  - `scanned_count` integer, required
  - `scanned_all_source_records` boolean, required
  - `next_cursor` string, nullable, 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)
