---
title: "Re-run extraction on an existing document"
method: POST
path: "/v1/documents/{id}/re-extract"
tags: ["Documents"]
---

# Re-run extraction on an existing document

`POST /v1/documents/{id}/re-extract`

## Request

- Base URL: `https://api.talonic.com`
- URL: `https://api.talonic.com/v1/documents/{id}/re-extract`
- Auth: HTTP bearer

Resets the document's extraction state (clearing `raw_extraction`,
`resolved_data`, and `processing_log`) and re-runs the full
extraction pipeline on the same document row. Does not create a
duplicate record.

Returns immediately with `status: "processing"`; poll
`GET /v1/documents/{id}` until status transitions to `completed`
or `error`.

## Path parameters

- `id` string, uuid, required

## Response `200`

Re-extraction started.

- object
  - `id` string, uuid, required
  - `status` 'processing', required
  - `message` string, required
  - `links` object, required
    - `self` string
    - `document` string

## Other responses

- `401`: Missing or invalid API key.
- `403`: The API key does not have the required scope.
- `404`: The requested resource was not found.
- `429`: Daily rate limit exceeded.

---

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