Add fact-checking to any Zap.
The Lenz app for Zapier adds a verification step to any Zap — before the send, before the publish, before the row is written. One trigger, four actions, and a sourced verdict with score and citations comes back as mapped fields you can branch on. No HTTP configuration. Just your API key.
What you can do with the app
Any Zap that generates or moves content has a natural insertion point for verification.
- Check AI-drafted copy before the Zap sends it — use the verdict to route to publish, revise, or a human.
- Screen claims pulled out of documents, form submissions, or scraped pages before they reach a downstream system.
- Assess a batch of claims cheaply, then escalate only the uncertain ones to the full pipeline.
- Start a Zap when a verification finishes, and fan the result out to Slack, a sheet, or a review queue.
What the app returns
One trigger and four actions. Each returns its own structured shape, and every field maps directly into later steps.
Trigger & actions OVERVIEW
| Step | Returns |
|---|---|
| New Verification Completed trigger · polling |
Fires once a claim submitted with this API key finishes. verification_id, claim, verdict, confidence, lenz_score, key_finding, executive_summary, created_at. |
| Verify a Claim ~90s median |
The full pipeline — framing, research, debate, panel review, conclusion. Fields detailed below. Needs a webhook secret on the key (see below). |
| Assess (Fast) ~5–10s |
status (ok | ambiguous | no_claim) and claims[], one entry per claim found in the text, each with claim, verdict, confidence, passed, verification_url. No score, summary, or sources. |
| Extract Claims free |
Pulls the verifiable claims out of a block of text and checks nothing: claim (the primary one), identified_claims, candidate_claims, domain, key_entities, presumed_intent. |
| Ask Follow-Up | answer — a reply grounded in the research behind a completed Verify a Claim result. Pick a recent verification from the dropdown, or map a verification_id from an earlier step. |
Clicking Test in the Zap editor returns example output so you can map fields without spending credits on a claim you don’t care about. A turned-on Zap checks the input you actually give it.
Verify a Claim output fields JSON
{
"status": "completed", // completed | needs_input | failed
"passed": true, // true for True and Mostly True
"verdict": "True", // True | Mostly True | Mixed | Mostly False | False
"lenz_score": 9, // integer 1–10
"confidence": "high", // how much the panel agreed
"key_finding": "...", // one sentence — the short form for Slack/email
"executive_summary": "...", // the longer write-up
"sources": [...], // each with title and url
"verification_id": "ab12cd34", // look the check up later via the API
"task_id": "2f8b2e2b..." // the pipeline run
}
Branch on status first — only completed carries a verdict. needs_input means the claim was ambiguous or held several sub-claims and arrives with a reason and a message; failed arrives with an error. Then passed is the ready-made boolean for approve/escalate, with verdict and lenz_score if you want a finer threshold. Keep verification_id — Ask Follow-Up needs it, and it pulls the full reasoning trace from the API later.
How the Verify step waits
The full pipeline takes about 90 seconds, which is longer than a Zap step is allowed to block.
So Verify a Claim doesn’t block. It hands Lenz a Zapier-managed callback URL, Zapier parks the Zap as waiting, and the step resumes when Lenz posts back — at which point the app fetches the finished result and hands your Zap the fields above. Assess (Fast) is a plain synchronous step: it returns in seconds, well inside the step timeout.
Because the callback is a signed webhook, Verify a Claim needs a webhook secret on your API key — a one-time click under API key settings → Webhooks → Generate webhook secret. Assess, Extract Claims, and Ask Follow-Up work without one. If the secret is missing, the app says so when you test the step rather than failing silently on the first live run.
Getting started
Three steps from zero to a working fact-check step.
- Get a free API key → — no credit card required.
- Generate a webhook secret on that key, once, if you plan to use Verify a Claim.
- Add a Lenz step to a Zap and paste the
lenz_…key. The connection is labelled with your plan, so you can tell two keys apart.
The app lives in Zapier’s app directory — no manual install. View the Lenz app on Zapier ↗
The same key works across every surface — Zapier, n8n, the MCP server, the SDKs, and the REST API. Quota is per key, not per integration.
Other ways to connect Lenz
- n8n node → — live on n8n.io today, with the same structured verdict, score, and citations.
- MCP server → — add Lenz to Claude Desktop, Claude Code, Cursor, or ChatGPT. Point your AI assistant at
lenz.io/mcpwith a Bearer header and your key. - All integrations → — the CLI, and the REST API with typed Python and TypeScript SDKs.
Resources
Verify AI output before your Zap sends it.
Self-serve from day one. Free tier, no card required.