Skip to main content
GET
Get one document row

Authorizations

Authorization
string
header
required

API key for authentication. Format: gcai_xxxxxxxxx

Create API keys in the GC AI app under Settings → API.

Path Parameters

id
string<uuid>
required

The vault ID

documentId
string<uuid>
required

The document_id of a row from GET /vaults/{id}/documents.

Query Parameters

include_deleted
enum<string>

When true, also return soft-deleted documents and the copies GC AI removed as duplicates. Reading deleted documents needs the same rights as deleting them, so this requires the editor or owner role plus the organization-level permission to manage vaults. Defaults to false.

Available options:
true,
false
Example:

"true"

Response

The document row

document_id
string<uuid>
required

Stable identifier for this row. Use it with GET, DELETE, and POST .../restore on this path. One upload can hold several documents (GC AI splits a bundled PDF into the agreements inside it), and each of those is its own row with its own document_id. A document stored before GC AI split bundled uploads carries its file_id here.

file_id
string<uuid>
required

The upload this row came from: the id returned by POST /vaults/{id}/documents and the id GET /files/{id} takes. Rows that share a file_id came from one upload.

name
string
required

The name shown in the vault: the document title when the vault has named this row, and the upload filename otherwise.

Example:

"Acme MSA (2024)"

file_name
string
required

Filename of the upload, unchanged.

Example:

"acme-msa-2024.pdf"

source_name
string | null
required

The vault source this document arrived through, such as the connected folder name. Null for a source with no name.

source_provider
string | null
required

The source type, such as manual_upload, google_drive, or sharepoint.

Example:

"manual_upload"

extracted_at
string | null
required

ISO 8601 timestamp of the most recent value written to this row, or null before the first value lands.

is_extraction_active
boolean
required

True while a scan of this document is queued or running, so some cells may still be empty or change. Poll the row until it is false.

deleted_at
string | null
required

ISO 8601 timestamp of the soft delete, or null for a live row. Only rows requested with include_deleted=true can carry a value.

removed_as_duplicate_at
string | null
required

ISO 8601 timestamp when GC AI removed this row as a copy of another document in the vault, or null. include_deleted=true also returns these copies, so this field says why a row with a null deleted_at is in that list.

values
object
required

One entry per column of the vault, keyed by the column field_key. Every row of a vault carries the same keys, so the response reads as a table. Read the keys, labels, and types from GET /vaults/{id}/columns.

Last modified on September 25, 2026