Free API access for investigative journalists
Checking whether a leaked PDF has been tampered with is a core part of document journalism.
Documents you submit run in a fully isolated environment. They are downloaded, analyzed, and discarded — only metadata (file size, timestamps, tool names, verdict) is retained. Your checks are never visible in public statistics. We do not require story disclosure and will never proactively reveal who uses the program.
Why we run this program
Document forensics is a public good — quota limits should not be a barrier
Independent forensic analysis of leaked documents is critical to press freedom. Many of the most consequential investigations of the past decade — from offshore-leak networks to corporate fraud and government corruption — turned on whether a contract or financial statement could be shown to be authentic or tampered with.
A paid API quota is a poor fit for journalists working on stories that may break unpredictably. The press program removes that barrier: approved applicants get the equivalent of our Growth plan at no cost, with full source-protection guarantees baked in.
What journalists check
- Bank statements in financial-crime investigations
- Contracts in corruption and procurement reporting
- Pay stubs and salary slips in labour-rights stories
- Certificates and diplomas in credential-fraud reporting
- Government filings and official letters
- Invoices and procurement records in public-money trails
What this looks like
Three patterns journalists encounter most often
Three real fraud mechanics we catch at the structural PDF layer.
A signed contract with modifications after the signing date
A counterparty quietly edits clauses in a leaked agreement after both parties signed. The structural layer reveals modifications post-dating the digital signature — the only finding that reaches "certain" confidence.
A bank statement edited in Excel before being re-exported as PDF
A figure on a leaked statement is changed to obscure the real flow of funds. The producer field shows a desktop tool instead of the bank’s internal generator; the cross-reference chain shows incremental updates.
A government certificate fabricated from a template
A diploma, asylum decision, or licence appears authentic visually but the metadata trail tells a different story — wrong producer, missing institutional fingerprints, fonts assembled in a way real issuers never produce.
How the program runs
Source protection
Documents stay isolated. Sources stay yours.
A practical breakdown of what we keep, what we discard, and what we will never disclose.
What we never store
Discarded after each analysis
- Full document content — text, images, embedded files
- Document text extracted via OCR
- Source URLs that contain identifying tokens
- Records linking your API key to specific stories
Documents live in memory only for the duration of the analysis.
What we keep (metadata only)
Required to run the service
- File size, page count, structural metrics
- Tool fingerprints (producer/creator strings)
- Creation and modification timestamps
- Verdict and named structural findings
What HTPBE? checks
Detection capabilities
Deterministic structural signals. No probabilistic scores, no model training.
Date mismatches
Creation and modification timestamps that contradict the claimed issue date — the simplest forensic signal of post-issuance edits.
Removed or invalidated signatures
Digital signatures that were stripped or broken after signing. Reaches "certain" confidence — the strongest evidence the file was modified after execution.
Incremental update chains
Multiple cross-reference tables indicating the file was edited and re-saved. Genuine institutional documents are typically linearised on first save.
Tool fingerprints
Producer and creator strings that reveal which software actually wrote the file — Excel-edited bank statements, Word-fabricated pay stubs, online-converter signatures.
Share with engineering
Wire this into your intake pipeline in under a day
Two API calls — one POST to submit the PDF, one GET to retrieve the verdict. Forward this page to your engineering team; the full API reference, quotas, and copy-paste examples in cURL, JavaScript, Python, PHP, Go, and Ruby are one click away.
Press program
Apply for free access
Approved applicants receive a dedicated API key equivalent to our Growth plan. No payment, no time limit, no story disclosure. Manual review only — typically 1–3 business days.
Free for pressEditorial
$0
350 checks/month — Growth-tier equivalent
For investigative reporters and editorial teams at registered newsrooms. Reviewed annually; no quota pressure.
Free for pressFact-checking
$0
350 checks/month — Growth-tier equivalent
For NGOs and teams whose primary mission is fact-checking public claims, government documents, or leaked materials.
Free for pressPress freedom
$0
Custom limits available
For NGOs supporting journalists in authoritarian environments or documenting human rights violations using leaked records.
Need higher limits for a multi-reporter newsroom? — mention it in the application.
Manual review — no automated signups. We do not ask which story you are working on.
FAQ
Frequently asked questions
Is this really free, no strings attached?
What counts as investigative journalism?
Are my documents kept confidential?
I’m a freelance journalist with no staff affiliation. Can I still apply?
Can a whole newsroom apply, or is it per person?
Apply for free access
Approved applicants get the equivalent of our Growth plan at no cost — 350 checks/month, full source-protection, no time limit.
Manual review only. Typically 1–3 business days.
We do not ask which story you are working on.