Developer reference · REST API
Document Verification API
Programmatic forensic analysis of diplomas, transcripts, certificates, government IDs, and professional credentials. GDPR-compliant, EU-hosted, SDKs for Python and Node.js.
What it does
One POST request with a document returns a structured forensic analysis: per-pattern confidence scores across typography, seals, watermarks, metadata, compression artifacts, and AI-generation fingerprints. Average response time is 10–30 seconds. Both “standard” (faster, GPT-5.3-powered) and “deep” (Claude-powered, higher accuracy) verification tiers are available.
Quick start — curl
curl -X POST https://verify.turingcerts.com/v1/verify \
-H "Authorization: Bearer $TURING_VERIFY_API_KEY" \
-F "file=@/path/to/diploma.pdf" \
-F "depth=standard"Python SDK
Install: pip install turing-verify
from turing_verify import Client
client = Client(api_key=os.environ["TURING_VERIFY_API_KEY"])
with open("diploma.pdf", "rb") as fh:
result = client.verify(file=fh, depth="standard")
print(result.overall_confidence) # 0.0 — 1.0
print(result.verdict) # "authentic" | "suspicious" | "fraudulent"
for pattern in result.patterns:
print(pattern.name, pattern.score, pattern.note)Node.js SDK
Install: npm install @turing-space/verify
import { TuringVerify } from "@turing-space/verify";
import fs from "node:fs";
const client = new TuringVerify({ apiKey: process.env.TURING_VERIFY_API_KEY });
const result = await client.verify({
file: fs.createReadStream("diploma.pdf"),
depth: "standard",
});
console.log(result.verdict, result.overallConfidence);Response shape
Each response contains an overall verdict (authentic · suspicious · fraudulent), an overall confidence score in [0, 1], and an array of 50 pattern results — each with a name, numeric score, and short human-readable note explaining what the pattern found. The response is stable across versions; we add fields additively and version breaking changes via a new endpoint.
Rate limits & pricing
- Free tier: 3 verifications / month — no card required.
- Personal (EUR 9/mo): 15 verifications / month, deep verification included.
- Pro (EUR 29/mo): 150 verifications / month, batch upload, KYC add-ons.
- Business (EUR 99/mo): 500 verifications / month, full API access, team management, priority support.
- Enterprise: custom volume, dedicated inference, bespoke SLAs.
Compliance posture
- GDPR-compliant; inference runs on EU-resident infrastructure (Amsterdam).
- Documents processed in memory — not persisted unless the caller opts in.
- DPA and sub-processor register published at verify.turingcerts.com/trust.
- User data rights (access, export, rectification, erasure) at /data-rights.
MCP server (Claude Desktop, Cursor, ChatGPT Agents)
Turing Verify also ships an MCP (Model Context Protocol) server, so AI agents can call the verification API directly as a tool. One-click connect for Claude Desktop, Cursor, Claude.ai, OpenAI Agents, Windsurf, and Zed.
Get an API key
Create a free account, issue an API token, and start verifying documents in the next five minutes.
Go to developer console