Documents

Fetch an archived document version

Returns the exact content and annotations the document held at a given version, which is what lets a run that cited a version read what it read.

get/v1/projects/{project_id}/documents/{document_id}/versions/{version}

Request

  • Base URL: https://api.naturali.ai
  • URL: https://api.naturali.ai/v1/projects/{project_id}/documents/{document_id}/versions/{version}
  • Auth: one of:
    • HTTP bearer
    • OAuth 2 (authorization code, authorization URL https://api.naturali.ai/authorize, token URL https://api.naturali.ai/token, scopes: mcp:access)

Path parameters

document_idstring required
versioninteger required

Response

Archived document version

idstring

Public ID of the archived version

document_idstring

Public ID of the document this version belongs to

versioninteger

The archived version number

configobject

The document's versioned surface as it stood at this version: its content, title, path, metadata, tags and chunk configuration. A full snapshot rather than a diff, because what a restore has to reproduce is what a run read — which is a read by version, and a diff chain would have to be replayed to answer it.

A withdrawal is archived as a version too, carrying withdrawn: true and no content. Restoring one is refused; restore the version before it.

Deliberately open rather than a fixed schema: an archive written by an earlier release of the runtime reflects the document surface of its own time, so it may carry fields the current API no longer documents.

labelstring nullable

Optional human tag for this version, e.g. pre-correction. Set from the version_label of the write that archived it, or generated for a restore or a withdrawal.

created_by_principal_type'user' | 'api_key' | 'agent' | 'automation' | 'approval' | 'system'

What kind of principal acted. user and api_key are authenticated callers, and the id is the user's (user_…) or the key's own (key_…), so a record names which key acted rather than its owner. agent is an agent writing under its own identity (agent_…). automation is the task engine acting on a dispatch outcome and approval an approval resolution; neither carries an id. system is the platform itself, with an id naming the mechanism (retention_sweep, zero_retention).

created_by_principal_idstring nullable

Public id of that principal: the user (user_…), or for API key auth the key itself (key_…), so the record names which key acted.

created_atstring date-time

Example response

{
  "id": "doc_ver_V1StGXR8Z5jdHi6B",
  "document_id": "doc_V1StGXR8Z5jdHi6B",
  "version": 1,
  "label": "pre-correction",
  "created_by_principal_type": "user",
  "created_by_principal_id": "user_V1StGXR8Z5jdHi6B"
}

Changes

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