For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
  • Getting Started
    • Introduction
    • How Verifa Works
    • Quickstart
    • Choosing an Integration Method
  • Use Cases
    • KYC Onboarding
    • Age Verification
    • AML Compliance
    • Fraud Prevention
    • Marketplace Trust & Safety
  • Core Concepts
    • Overview
    • Sessions
    • Verifications & Checks
    • Workflows
    • Identities
    • Cases
    • Screening & Reports
    • Lists
  • Integration Guides
    • Overview
    • JavaScript SDK
    • Web Capture Flow
    • API-Only Integration
    • Mobile SDK
    • Webhooks Guide
    • MCP Server
    • Migrating from Persona
  • API Details
    • Overview
    • Authentication
    • Pagination
    • Rate Limiting
    • Versioning
    • Errors
    • Webhooks
    • Idempotency
    • Key Inflection
    • Data Access
    • Data Retention
  • Tutorials
    • Creating Your First Verification Session
    • Creating a Workflow
    • Receiving Webhooks & Validating Signatures
    • Handling Webhook Events
    • Custom Document Types & AI Extraction
  • Best Practices
    • Testing
    • Preventing Duplicates
    • Fraud Signals
    • Changelog
  • API Reference
      • GETList session documents
      • POSTUpload a document to a session
      • GETDownload a document
      • GETList documents
      • POSTUpload a standalone document
      • GETGet document metadata
      • DELRedact a document
      • PATCHUpdate document metadata
      • GETDownload a document via signed URL
      • GETPreview a document page as JPEG
      • GETList document extractions
      • GETList document checks
      • POSTTrigger document classification
      • POSTTrigger document extraction
      • POSTRun verification checks on a document
      • POSTCompare two documents
      • POSTBulk classify documents
      • POSTBulk extract documents
      • POSTBulk verify documents
      • GETList document fingerprints
      • POSTCreate a document fingerprint
      • DELDelete a document fingerprint
      • POSTFlag a document as compromised
      • POSTCompare a document to a verified identity
      • POSTRun AI-powered document insights
API ReferenceDocuments

Run AI-powered document insights

POST
https://devapi.withverifa.com/api/v1/documents/:document_id/insights
POST
/api/v1/documents/:document_id/insights
$curl -X POST https://devapi.withverifa.com/api/v1/documents/document_id/insights \
> -H "X-API-Key: <apiKey>" \
> -H "Content-Type: application/json" \
> -d '{}'
1{
2 "id": "ext_9f8b7c6d5a4e3f21",
3 "document_id": "doc_1234567890abcdef",
4 "extraction_type": "insights",
5 "status": "completed",
6 "created_at": "2024-01-15T09:30:00Z",
7 "extracted_fields": {
8 "authenticity_assessment": "Document appears genuine with no signs of tampering.",
9 "content_consistency": "All fields are consistent with expected document format.",
10 "type_specific_insights": {
11 "passport_number_valid": true,
12 "expiry_date": "2030-12-31",
13 "issuing_country": "USA"
14 }
15 },
16 "confidence_scores": {
17 "authenticity_assessment": 0.98,
18 "content_consistency": 0.95,
19 "passport_number_valid": 0.99,
20 "expiry_date": 0.97,
21 "issuing_country": 0.96
22 },
23 "reference_document_id": null,
24 "comparison_results": null
25}

Runs LLM-powered insights analysis on a document and persists the result as a DocumentExtraction with extraction_type: "insights". Returns authenticity assessment, content consistency, and type-specific insights.

Required scope: documents:write

Was this page helpful?
Previous

List document types

Next
Built with

Authentication

X-API-Keystring

Organization API key. Keys are prefixed with vk_live_ (production) or vk_sandbox_ (sandbox).

Path parameters

document_idstringRequired

Document ID (doc_*).

Headers

Verifa-VersiondateOptional

API version date string (e.g. 2026-02-01). If omitted, the version pinned to your API key is used.

Key-InflectionenumOptionalDefaults to snake

Response key casing. Defaults to snake.

Allowed values:
Idempotency-KeystringOptional<=255 characters

Unique key for idempotent requests. Cached for 24 hours. Sending the same key with different parameters returns 422.

Response

Insights extraction.
idstring
Extraction record ID.
document_idstring
Parent document ID.
extraction_typestring

Type of extraction performed (e.g. ocr, barcode, mrz).

statusenum
Allowed values:
created_atdatetime
extracted_fieldsmap from strings to any

Key-value map of extracted data fields.

confidence_scoresmap from strings to doubles

Per-field confidence scores (0-1).

reference_document_idstring or null
Reference document used for comparison, if any.
comparison_resultsmap from strings to any or null

Field-by-field comparison results when comparing two documents.

Errors

401
Unauthorized Error
404
Not Found Error
500
Internal Server Error