Skip to content

Verify

List Verify Jobs
GET/api/alpha/verify
Create Verify Job
POST/api/alpha/verify
Get Verify Job
GET/api/alpha/verify/{job_id}
Cancel Verify Job
POST/api/alpha/verify/{job_id}/cancel
Get Verify Job Details
GET/api/alpha/verify/{job_id}/details
ModelsExpand Collapse
VerifyListResponse object { id, configuration, document_input_type, 9 more }

Response for a Verify job.

id: string

Unique identifier

configuration: object { target_pages, tier }

Verify configuration used for this job

target_pages: optional string

Comma-separated page numbers or ranges to analyze (1-based). Omit to analyze all pages. Ignored for non-PDF inputs.

tier: optional "agentic" or "fast"

Verify tier: ‘fast’ runs only the quick deterministic forensic checks (metadata, content integrity, container structure, pixel statistics); ‘agentic’ (default) runs the full pipeline including the learned detectors and the semantic review pass.

One of the following:
"agentic"
"fast"
document_input_type: "file_id" or "parse_job_id" or "url"

Type of the document input (FILE)

One of the following:
"file_id"
"parse_job_id"
"url"
file_input: string

ID of the input file

project_id: string

Project this job belongs to

status: "CANCELLED" or "COMPLETED" or "FAILED" or 2 more

Current job status: PENDING, RUNNING, COMPLETED, FAILED, or CANCELLED

One of the following:
"CANCELLED"
"COMPLETED"
"FAILED"
"PENDING"
"RUNNING"
user_id: string

User who created this job

created_at: optional string

Creation datetime

formatdate-time
error_message: optional string

Error message if job failed

result: optional object { detector_version, overall_score, verdict, 9 more }

Result of a Verify (doctored-document) analysis.

Raw per-signal detail (evidence list, per-family sub-scores, raw regions, forensic heatmaps) is available separately via the job’s details endpoint.

detector_version: string

Version of the detector that produced the result

overall_score: number

Overall doctoring likelihood (0 to 1)

maximum1
minimum0
verdict: "AUTHENTIC" or "DOCTORED" or "LIKELY_DOCTORED" or 2 more

Overall verdict for the document

One of the following:
"AUTHENTIC"
"DOCTORED"
"LIKELY_DOCTORED"
"NO_STRONG_SIGNAL"
"SUSPICIOUS"
composite_scores: optional object { ai_generated, document_coherence, document_metadata, 3 more }

Composite scores, each answering one question about the document

ai_generated: optional object { applicable, score }

Was this content synthesized by a generative model?

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
document_coherence: optional object { applicable, score }

Does the document’s content agree with itself (checksums, arithmetic, machine-readable zones)?

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
document_metadata: optional object { applicable, score }

Does the file’s provenance / toolchain history look suspicious? Advisory: individually weak workflow-hygiene signals

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
known_fraud: optional object { applicable, score }

Has this asset (or its template) been seen in fraud before?

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
manually_edited: optional object { applicable, score }

Was this document altered after creation (splice, retype, redact, inpaint)?

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
recapture: optional object { applicable, score }

Was the document captured through a channel that destroys forensic evidence (photo of a screen, print-then-rescan)?

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
confidence: optional number

Confidence in the verdict (0 to 1): how firmly the detected signals support the verdict bucket, independent of the doctoring likelihood itself

maximum1
minimum0
error: optional string

Error detail when the analysis could not complete

page_count: optional number

Number of analysed pages (1 for images/docx)

minimum1
page_dimensions: optional array of object { height, page, width }

Rendered pixel size per page, so region bboxes can be scaled onto the page

height: number

Rendered page height in pixels

page: number

0-based page index (0 for standalone images)

width: number

Rendered page width in pixels

reasoning: optional string

Explanation of the verdict

suspect_regions: optional array of object { bbox, explanation, kind, 5 more }

Regions that led to the suspected fraud, ranked most-suspect first, each with an explanation of what makes it suspect

bbox: array of number

Region bounding box as [x, y, w, h] in page-render pixels

explanation: string

Human-readable explanation of what makes this region suspect

kind: string

Kind of anomaly detected in this region

page: number

0-based page index (0 for standalone images)

score: number

Suspicion score for this region (0 to 1)

maximum1
minimum0
source: string

Detector that flagged this region

primary: optional boolean

Whether this region is part of the small set of decisive evidence behind the verdict — the boxes a reviewer should look at first

review: optional string

Automated reviewer verdict for this region (confirmed, dismissed, unsure, or empty). A dismissed region can still be surfaced when it is the only place to look; this label says how to read it

synthetic_score: optional number

Likelihood (0 to 1) that the document is wholly generated or fabricated rather than a capture of a real document. Null for jobs completed before this score was introduced

maximum1
minimum0
tampering_score: optional number

Likelihood (0 to 1) that a real captured document was locally edited — a genuine capture with regions altered after the fact. Null for jobs completed before this score was introduced

maximum1
minimum0
transaction_id: optional string

Idempotency key

updated_at: optional string

Update datetime

formatdate-time
VerifyCreateResponse object { id, configuration, document_input_type, 9 more }

Response for a Verify job.

id: string

Unique identifier

configuration: object { target_pages, tier }

Verify configuration used for this job

target_pages: optional string

Comma-separated page numbers or ranges to analyze (1-based). Omit to analyze all pages. Ignored for non-PDF inputs.

tier: optional "agentic" or "fast"

Verify tier: ‘fast’ runs only the quick deterministic forensic checks (metadata, content integrity, container structure, pixel statistics); ‘agentic’ (default) runs the full pipeline including the learned detectors and the semantic review pass.

One of the following:
"agentic"
"fast"
document_input_type: "file_id" or "parse_job_id" or "url"

Type of the document input (FILE)

One of the following:
"file_id"
"parse_job_id"
"url"
file_input: string

ID of the input file

project_id: string

Project this job belongs to

status: "CANCELLED" or "COMPLETED" or "FAILED" or 2 more

Current job status: PENDING, RUNNING, COMPLETED, FAILED, or CANCELLED

One of the following:
"CANCELLED"
"COMPLETED"
"FAILED"
"PENDING"
"RUNNING"
user_id: string

User who created this job

created_at: optional string

Creation datetime

formatdate-time
error_message: optional string

Error message if job failed

result: optional object { detector_version, overall_score, verdict, 9 more }

Result of a Verify (doctored-document) analysis.

Raw per-signal detail (evidence list, per-family sub-scores, raw regions, forensic heatmaps) is available separately via the job’s details endpoint.

detector_version: string

Version of the detector that produced the result

overall_score: number

Overall doctoring likelihood (0 to 1)

maximum1
minimum0
verdict: "AUTHENTIC" or "DOCTORED" or "LIKELY_DOCTORED" or 2 more

Overall verdict for the document

One of the following:
"AUTHENTIC"
"DOCTORED"
"LIKELY_DOCTORED"
"NO_STRONG_SIGNAL"
"SUSPICIOUS"
composite_scores: optional object { ai_generated, document_coherence, document_metadata, 3 more }

Composite scores, each answering one question about the document

ai_generated: optional object { applicable, score }

Was this content synthesized by a generative model?

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
document_coherence: optional object { applicable, score }

Does the document’s content agree with itself (checksums, arithmetic, machine-readable zones)?

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
document_metadata: optional object { applicable, score }

Does the file’s provenance / toolchain history look suspicious? Advisory: individually weak workflow-hygiene signals

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
known_fraud: optional object { applicable, score }

Has this asset (or its template) been seen in fraud before?

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
manually_edited: optional object { applicable, score }

Was this document altered after creation (splice, retype, redact, inpaint)?

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
recapture: optional object { applicable, score }

Was the document captured through a channel that destroys forensic evidence (photo of a screen, print-then-rescan)?

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
confidence: optional number

Confidence in the verdict (0 to 1): how firmly the detected signals support the verdict bucket, independent of the doctoring likelihood itself

maximum1
minimum0
error: optional string

Error detail when the analysis could not complete

page_count: optional number

Number of analysed pages (1 for images/docx)

minimum1
page_dimensions: optional array of object { height, page, width }

Rendered pixel size per page, so region bboxes can be scaled onto the page

height: number

Rendered page height in pixels

page: number

0-based page index (0 for standalone images)

width: number

Rendered page width in pixels

reasoning: optional string

Explanation of the verdict

suspect_regions: optional array of object { bbox, explanation, kind, 5 more }

Regions that led to the suspected fraud, ranked most-suspect first, each with an explanation of what makes it suspect

bbox: array of number

Region bounding box as [x, y, w, h] in page-render pixels

explanation: string

Human-readable explanation of what makes this region suspect

kind: string

Kind of anomaly detected in this region

page: number

0-based page index (0 for standalone images)

score: number

Suspicion score for this region (0 to 1)

maximum1
minimum0
source: string

Detector that flagged this region

primary: optional boolean

Whether this region is part of the small set of decisive evidence behind the verdict — the boxes a reviewer should look at first

review: optional string

Automated reviewer verdict for this region (confirmed, dismissed, unsure, or empty). A dismissed region can still be surfaced when it is the only place to look; this label says how to read it

synthetic_score: optional number

Likelihood (0 to 1) that the document is wholly generated or fabricated rather than a capture of a real document. Null for jobs completed before this score was introduced

maximum1
minimum0
tampering_score: optional number

Likelihood (0 to 1) that a real captured document was locally edited — a genuine capture with regions altered after the fact. Null for jobs completed before this score was introduced

maximum1
minimum0
transaction_id: optional string

Idempotency key

updated_at: optional string

Update datetime

formatdate-time
VerifyGetResponse object { id, configuration, document_input_type, 9 more }

Response for a Verify job.

id: string

Unique identifier

configuration: object { target_pages, tier }

Verify configuration used for this job

target_pages: optional string

Comma-separated page numbers or ranges to analyze (1-based). Omit to analyze all pages. Ignored for non-PDF inputs.

tier: optional "agentic" or "fast"

Verify tier: ‘fast’ runs only the quick deterministic forensic checks (metadata, content integrity, container structure, pixel statistics); ‘agentic’ (default) runs the full pipeline including the learned detectors and the semantic review pass.

One of the following:
"agentic"
"fast"
document_input_type: "file_id" or "parse_job_id" or "url"

Type of the document input (FILE)

One of the following:
"file_id"
"parse_job_id"
"url"
file_input: string

ID of the input file

project_id: string

Project this job belongs to

status: "CANCELLED" or "COMPLETED" or "FAILED" or 2 more

Current job status: PENDING, RUNNING, COMPLETED, FAILED, or CANCELLED

One of the following:
"CANCELLED"
"COMPLETED"
"FAILED"
"PENDING"
"RUNNING"
user_id: string

User who created this job

created_at: optional string

Creation datetime

formatdate-time
error_message: optional string

Error message if job failed

result: optional object { detector_version, overall_score, verdict, 9 more }

Result of a Verify (doctored-document) analysis.

Raw per-signal detail (evidence list, per-family sub-scores, raw regions, forensic heatmaps) is available separately via the job’s details endpoint.

detector_version: string

Version of the detector that produced the result

overall_score: number

Overall doctoring likelihood (0 to 1)

maximum1
minimum0
verdict: "AUTHENTIC" or "DOCTORED" or "LIKELY_DOCTORED" or 2 more

Overall verdict for the document

One of the following:
"AUTHENTIC"
"DOCTORED"
"LIKELY_DOCTORED"
"NO_STRONG_SIGNAL"
"SUSPICIOUS"
composite_scores: optional object { ai_generated, document_coherence, document_metadata, 3 more }

Composite scores, each answering one question about the document

ai_generated: optional object { applicable, score }

Was this content synthesized by a generative model?

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
document_coherence: optional object { applicable, score }

Does the document’s content agree with itself (checksums, arithmetic, machine-readable zones)?

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
document_metadata: optional object { applicable, score }

Does the file’s provenance / toolchain history look suspicious? Advisory: individually weak workflow-hygiene signals

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
known_fraud: optional object { applicable, score }

Has this asset (or its template) been seen in fraud before?

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
manually_edited: optional object { applicable, score }

Was this document altered after creation (splice, retype, redact, inpaint)?

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
recapture: optional object { applicable, score }

Was the document captured through a channel that destroys forensic evidence (photo of a screen, print-then-rescan)?

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
confidence: optional number

Confidence in the verdict (0 to 1): how firmly the detected signals support the verdict bucket, independent of the doctoring likelihood itself

maximum1
minimum0
error: optional string

Error detail when the analysis could not complete

page_count: optional number

Number of analysed pages (1 for images/docx)

minimum1
page_dimensions: optional array of object { height, page, width }

Rendered pixel size per page, so region bboxes can be scaled onto the page

height: number

Rendered page height in pixels

page: number

0-based page index (0 for standalone images)

width: number

Rendered page width in pixels

reasoning: optional string

Explanation of the verdict

suspect_regions: optional array of object { bbox, explanation, kind, 5 more }

Regions that led to the suspected fraud, ranked most-suspect first, each with an explanation of what makes it suspect

bbox: array of number

Region bounding box as [x, y, w, h] in page-render pixels

explanation: string

Human-readable explanation of what makes this region suspect

kind: string

Kind of anomaly detected in this region

page: number

0-based page index (0 for standalone images)

score: number

Suspicion score for this region (0 to 1)

maximum1
minimum0
source: string

Detector that flagged this region

primary: optional boolean

Whether this region is part of the small set of decisive evidence behind the verdict — the boxes a reviewer should look at first

review: optional string

Automated reviewer verdict for this region (confirmed, dismissed, unsure, or empty). A dismissed region can still be surfaced when it is the only place to look; this label says how to read it

synthetic_score: optional number

Likelihood (0 to 1) that the document is wholly generated or fabricated rather than a capture of a real document. Null for jobs completed before this score was introduced

maximum1
minimum0
tampering_score: optional number

Likelihood (0 to 1) that a real captured document was locally edited — a genuine capture with regions altered after the fact. Null for jobs completed before this score was introduced

maximum1
minimum0
transaction_id: optional string

Idempotency key

updated_at: optional string

Update datetime

formatdate-time
VerifyCancelResponse object { id, configuration, document_input_type, 9 more }

Response for a Verify job.

id: string

Unique identifier

configuration: object { target_pages, tier }

Verify configuration used for this job

target_pages: optional string

Comma-separated page numbers or ranges to analyze (1-based). Omit to analyze all pages. Ignored for non-PDF inputs.

tier: optional "agentic" or "fast"

Verify tier: ‘fast’ runs only the quick deterministic forensic checks (metadata, content integrity, container structure, pixel statistics); ‘agentic’ (default) runs the full pipeline including the learned detectors and the semantic review pass.

One of the following:
"agentic"
"fast"
document_input_type: "file_id" or "parse_job_id" or "url"

Type of the document input (FILE)

One of the following:
"file_id"
"parse_job_id"
"url"
file_input: string

ID of the input file

project_id: string

Project this job belongs to

status: "CANCELLED" or "COMPLETED" or "FAILED" or 2 more

Current job status: PENDING, RUNNING, COMPLETED, FAILED, or CANCELLED

One of the following:
"CANCELLED"
"COMPLETED"
"FAILED"
"PENDING"
"RUNNING"
user_id: string

User who created this job

created_at: optional string

Creation datetime

formatdate-time
error_message: optional string

Error message if job failed

result: optional object { detector_version, overall_score, verdict, 9 more }

Result of a Verify (doctored-document) analysis.

Raw per-signal detail (evidence list, per-family sub-scores, raw regions, forensic heatmaps) is available separately via the job’s details endpoint.

detector_version: string

Version of the detector that produced the result

overall_score: number

Overall doctoring likelihood (0 to 1)

maximum1
minimum0
verdict: "AUTHENTIC" or "DOCTORED" or "LIKELY_DOCTORED" or 2 more

Overall verdict for the document

One of the following:
"AUTHENTIC"
"DOCTORED"
"LIKELY_DOCTORED"
"NO_STRONG_SIGNAL"
"SUSPICIOUS"
composite_scores: optional object { ai_generated, document_coherence, document_metadata, 3 more }

Composite scores, each answering one question about the document

ai_generated: optional object { applicable, score }

Was this content synthesized by a generative model?

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
document_coherence: optional object { applicable, score }

Does the document’s content agree with itself (checksums, arithmetic, machine-readable zones)?

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
document_metadata: optional object { applicable, score }

Does the file’s provenance / toolchain history look suspicious? Advisory: individually weak workflow-hygiene signals

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
known_fraud: optional object { applicable, score }

Has this asset (or its template) been seen in fraud before?

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
manually_edited: optional object { applicable, score }

Was this document altered after creation (splice, retype, redact, inpaint)?

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
recapture: optional object { applicable, score }

Was the document captured through a channel that destroys forensic evidence (photo of a screen, print-then-rescan)?

applicable: optional boolean

Whether the checks feeding this composite ran on this document. When false the document was not checked for this — not cleared of it

score: optional number

Score (0 to 1); null when the composite was not applicable

maximum1
minimum0
confidence: optional number

Confidence in the verdict (0 to 1): how firmly the detected signals support the verdict bucket, independent of the doctoring likelihood itself

maximum1
minimum0
error: optional string

Error detail when the analysis could not complete

page_count: optional number

Number of analysed pages (1 for images/docx)

minimum1
page_dimensions: optional array of object { height, page, width }

Rendered pixel size per page, so region bboxes can be scaled onto the page

height: number

Rendered page height in pixels

page: number

0-based page index (0 for standalone images)

width: number

Rendered page width in pixels

reasoning: optional string

Explanation of the verdict

suspect_regions: optional array of object { bbox, explanation, kind, 5 more }

Regions that led to the suspected fraud, ranked most-suspect first, each with an explanation of what makes it suspect

bbox: array of number

Region bounding box as [x, y, w, h] in page-render pixels

explanation: string

Human-readable explanation of what makes this region suspect

kind: string

Kind of anomaly detected in this region

page: number

0-based page index (0 for standalone images)

score: number

Suspicion score for this region (0 to 1)

maximum1
minimum0
source: string

Detector that flagged this region

primary: optional boolean

Whether this region is part of the small set of decisive evidence behind the verdict — the boxes a reviewer should look at first

review: optional string

Automated reviewer verdict for this region (confirmed, dismissed, unsure, or empty). A dismissed region can still be surfaced when it is the only place to look; this label says how to read it

synthetic_score: optional number

Likelihood (0 to 1) that the document is wholly generated or fabricated rather than a capture of a real document. Null for jobs completed before this score was introduced

maximum1
minimum0
tampering_score: optional number

Likelihood (0 to 1) that a real captured document was locally edited — a genuine capture with regions altered after the fact. Null for jobs completed before this score was introduced

maximum1
minimum0
transaction_id: optional string

Idempotency key

updated_at: optional string

Update datetime

formatdate-time
VerifyGetDetailsResponse object { job_id, degraded_tools, evidence, 4 more }

Raw per-signal detail for a completed Verify job.

Forensic drill-down behind the simplified result: the full evidence list, per-family sub-scores, raw localized regions, and heatmap overlays.

job_id: string

ID of the Verify job

degraded_tools: optional array of object { tool, reason }

Checks that could not run on this job (with the reason). A check listed here produced no findings because it could not run, not because the document is clean

tool: string

Name of the check

reason: optional string

Why the check could not run

evidence: optional array of object { code, detail, family, 4 more }

Evidence items produced by detection tools

code: string

Machine-readable evidence code

detail: string

Human-readable evidence detail

family: string

Signal family (e.g. metadata, splicing, compression)

score: number

Evidence strength score

tool: string

Tool that produced this evidence

hard: optional boolean

Whether this is hard (conclusive) evidence

metadata_tool: optional map[unknown]

Raw values from the tool behind this finding; the shape varies by tool

heatmaps: optional array of object { expires_at, kind, page, 2 more }

Per-page forensic heatmap overlays as presigned image URLs

expires_at: string

The time at which the presigned URL expires

formatdate-time
kind: string

Producing signal, e.g. double_compression, ela, noise

page: number

0-based page index (0 for standalone images)

url: string

Presigned URL to the heatmap PNG (page overlay)

score: optional number

Producing tool’s max score (for ranking)

page_dimensions: optional array of object { height, page, width }

Rendered pixel size per page, so region bboxes can be scaled onto the page

height: number

Rendered page height in pixels

page: number

0-based page index (0 for standalone images)

width: number

Rendered page width in pixels

regions: optional array of object { bbox, detail, kind, 6 more }

Suspicious regions localized on rendered pages

bbox: array of number

Region bounding box as [x, y, w, h] in page-render pixels

detail: string

Human-readable detail about the region

kind: string

Kind of anomaly detected in this region

page: number

0-based page index (0 for standalone images)

score: number

Region-level doctoring likelihood score

source: string

Detector/tool that produced this region

primary: optional boolean

Whether this region is part of the small set of decisive evidence behind the verdict — the boxes a reviewer should look at first

review: optional string

Review status/verdict for this region

review_note: optional string

Free-form review note for this region

sub_scores: optional map[number]

Per-family scores (metadata, ai_generation, splicing, copy_move, compression, noise, coherence, pdf_structure)

Note for AI agents: this documentation is built for programmatic access. - Overview of all docs: https://developers.llamaindex.ai/llms.txt - Any page is available as raw Markdown by appending index.md to its URL — e.g. https://developers.llamaindex.ai/llamaparse/parse/getting_started/index.md - Agent-friendly REST search APIs live under https://developers.llamaindex.ai/api/ — search (BM25 full-text), grep (regex), read (fetch a page), and list (browse the doc tree). See https://developers.llamaindex.ai/llms.txt for parameters. - A hosted documentation MCP server is available at https://developers.llamaindex.ai/mcp. If you support MCP, you can ask the user to install it for browsing these docs directly (an alternative to the REST API). Setup: https://developers.llamaindex.ai/for-agents/mcp/ - Other LlamaIndex tooling for agents — the LlamaParse Platform MCP server, agent skills and plugins, and the n8n node — is mapped at https://developers.llamaindex.ai/for-agents/