{"uid":"cap_mXHcxdVWx4rQv5yXHGNkN","slug":"claim-check-cdfa4dcb","name":"Claim Check","description":"Grounded verification and extraction for AI agents: fact-check a claim against a source with verbatim quotes, or turn invoices, receipts, job posts and any text into typed JSON. Pay per call over x402, no API key. Daily model quota published at /health.","url":"https://claim-check.agent-utils.workers.dev/v1/claim-check","method":"POST","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"type":{"type":"string","const":"http"},"method":{"enum":["POST"],"type":"string"},"queryParams":{"type":"object","required":["claim"],"properties":{"claim":{"type":"string","maxLength":2000,"description":"The statement to verify"},"source":{"type":"string","maxLength":200000,"description":"Source text (use this or sourceUrl)"},"sourceUrl":{"type":"string","description":"Public http(s) URL; its readable text becomes the source (max 2 MB page)"}}}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"claim":{"type":"string"},"model":{"type":"string"},"quotes":{"type":"array","items":{"type":"string"},"description":"Verbatim excerpts verified to appear in the source"},"modelMs":{"type":"integer"},"verdict":{"enum":["supported","contradicted","not_found","unclear"],"type":"string"},"sourceUrl":{"type":["string","null"]},"confidence":{"type":"number","maximum":1,"minimum":0},"explanation":{"type":"string"},"sourceChars":{"type":"integer"},"droppedQuotes":{"type":"integer","description":"Model quotes discarded because they were not found verbatim in the source"},"groundedQuotes":{"type":"integer"}}}}}}},"responseSchema":{"type":"json","example":{"claim":"The Eiffel Tower is 330 metres tall.","model":"@cf/meta/llama-3.3-70b-instruct-fp8-fast","quotes":["The tower is 330 metres (1,083 ft) tall"],"modelMs":1800,"verdict":"supported","sourceUrl":"https://en.wikipedia.org/wiki/Eiffel_Tower","confidence":0.95,"explanation":"The source states the tower's height as 330 metres.","sourceChars":24000,"droppedQuotes":0,"groundedQuotes":1}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.05","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.05/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.05","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.05","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_dT1C7w19yPzHGgZq1KJ9B","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.05","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Fact-checks a claim against a source document or URL with verbatim quote grounding, returning a verdict, confidence score, and supporting excerpts.","exampleAgentPrompt":"Can you fact-check the claim 'The Eiffel Tower is 330 metres tall' against https://en.wikipedia.org/wiki/Eiffel_Tower and give me the verdict, confidence, and any verbatim quotes from the page that support or contradict it?","exampleUseCases":[{"title":"Verifying AI-generated facts against sources","prompt":"I have an AI-written paragraph that says 'GPT-4 was released in March 2023' — can you check that claim against https://en.wikipedia.org/wiki/GPT-4 and tell me if it's supported, contradicted, or not found, along with any exact quotes?"},{"title":"Auditing invoice line items","prompt":"Here's the text of an invoice — can you verify whether it actually contains a line item for 'consulting services at $150/hr' and pull out the exact quote if it does?"},{"title":"Checking job posting requirements","prompt":"I want to know if this job posting actually says candidates need 5 years of Python experience — here's the full text, please verify that claim and give me a supported/contradicted/not-found verdict with the relevant quote."}],"resultDescription":"A JSON object containing: the original claim, a verdict (supported/contradicted/not_found/unclear), a confidence score between 0 and 1, an array of verbatim quotes from the source that ground the verdict, a plain-language explanation, the source URL if provided, character count of the source, count of grounded vs dropped quotes, and the model name used.","failureModes":["Source URL is unreachable or returns non-200 — fetch fails and an error is returned","Source text exceeds 200,000 characters — truncated or rejected","Claim is ambiguous — verdict returned as 'unclear' with low confidence","Model quota exhausted for the day — 402 or quota error from /health endpoint","Verbatim quotes hallucinated by model are discarded (droppedQuotes > 0), reducing grounded evidence","Payment not included or invalid — x402 payment required error"],"whenToPreferThis":"Choose this endpoint when you need grounded, quote-backed fact verification rather than open-ended LLM opinion — it discards any model-generated quote not found verbatim in the source, making results auditable. Prefer it over generic LLM calls when you need a structured verdict enum and confidence score for downstream logic, or when you need to extract typed structured data from invoices, receipts, or job postings without building a custom extraction prompt. It is particularly valuable when source provenance and citation traceability matter.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-15T18:34:24.133Z","isFirstParty":false}