DOCUMENT

Reclassify a document's type and re-extract

Manually override a document's type when classification failed or mis-classified, and trigger re-extraction with the corrected type. Validates the target type, blocks multi-form documents, records provenance, and re-extracts. Ops-only in Phase 1. Pass force=true to re-run extraction on the type the document ALREADY has — the way to move a document off the older extraction system once its doctype is on the new flow.

post/internal/api/document/{document_id}/reclassify

Request

  • Base URL
    https://api.signalshq.io (the document declares no server; this is the origin it was published from)
  • Auth
    OAuth 2
    Password
    Token URL: /auth/login

Path parameters

document_idstring uuid required

Document ID to reclassify

Request body

client_idstring uuid required

Client ID for the document

new_type_idstring uuid required

Target supported document type ID (from GET /types).

reason_code'MISCLASSIFIED' | 'WAS_UNCLASSIFIED' | 'WRONG_VARIANT' | 'CONVERT_TO_NEW_EXTRACTION' | 'OTHER' required

User-supplied reason for a RECLASSIFY (tenant_client_document_type_change_audit.reason_code).

reason_notestring nullable

Optional free-text note.

forceboolean

Re-apply the type and re-extract even when new_type_id is the type the document ALREADY has. Without this a same-type reclassify is a no-op, which is what blocks converting a document that was extracted by the older system but is already on the correct identifier: the conversion needs the extraction re-run, not a type change. Destructive by design — it supersedes the current review and its extracted attributes, then re-extracts on whichever flow the type is configured for. Rejected when extraction is disabled for the type (nothing to re-run) or the document is a split container.

Response

Successful Response

document_idstring uuid required

Document ID

new_type_idstring uuid required

The newly assigned document type ID

reextraction_triggeredboolean required

Whether a re-extraction job was enqueued.

extraction_job_idstring uuid nullable

Re-extraction job ID for polling (if triggered).

messagestring required

Human-readable outcome.

Changes

No recorded changes to this operation across all 1 revision of this API.