{"uid":"cap_cDp6ptLblXiQkIjs2d8J_","slug":"attestpage-verify-quotes-and-citations-on-live-web-pages-8b29a1a1","name":"AttestPage: Verify Quotes and Citations on Live Web Pages","description":"Signed evidence about web pages, for AI agents. Ask whether a quote appears on a page or check every citation in an answer at once, fetch a page and learn…","url":"https://vehcdj664efetfrsolne5umanq.srv.us/v1/verify/document?utm_source=zero.xyz","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"part":{"type":"integer","minimum":0,"description":"0-based part to check, default 0; call POST /v1/verify/document/preview first to see how many parts there are."},"match":{"enum":["exact","fuzzy","passages"],"type":"string","description":"For every pair: exact; fuzzy (default), which also accepts small differences; or passages, for a paraphrased claim: the 3 passages that share most of its words, scored, as evidence for you to judge (not a verdict). With \"passages\", each sentence that carries a link is a claim."},"format":{"enum":["markdown","text","html"],"type":"string","description":"markdown (default), text (only bare URLs and [n] references are links) or html (<a href> links, <blockquote> and <q> quotes; other tags are dropped)."},"document":{"type":"string","description":"The answer or report as written, 1 character to 60000 bytes (UTF-8). Its quotes and their links are found by fixed rules (extractor doc-v1)."},"min_words":{"type":"integer","maximum":20,"minimum":1,"description":"A quoted span with fewer words is skipped as too_short (default 4)."},"part_size":{"type":"integer","maximum":10,"minimum":1,"description":"Pairs per part, default 10. A free trial call takes at most the size in extensions.trial.info.max_batch_items of the 402 offer."},"threshold":{"type":"number","maximum":1,"minimum":0.5,"description":"Fuzzy similarity needed, default 0.9."},"case_sensitive":{"type":"boolean","description":"Default false; must be false with match \"passages\"."}}},"responseSchema":{"type":"json","example":{"part":0,"tier":"paid","pages":[],"parts":1,"receipt":"eyJ…","results":[{"end":478,"url":"https://www.who.int/health-topics/air-pollution","page":0,"pair":0,"match":"fuzzy","quote":"Air pollution kills an estimated seven million people every year","score":0.96,"start":412,"context":"…","doc_end":74,"doc_start":10,"final_url":"https://www.who.int/health-topics/air-pollution","http_status":200,"occurrences":1,"content_kind":"real"},{"end":234,"url":"https://www.iana.org/help/example-domains","page":1,"pair":1,"match":"exact","quote":"These domains may be used as illustrative examples in documents","score":1,"start":171,"context":"…","doc_end":200,"doc_start":137,"final_url":"https://www.iana.org/help/example-domains","http_status":200,"occurrences":1,"content_kind":"real"}],"summary":{"none":0,"exact":1,"fuzzy":1,"failed":0},"extractor":"doc-v1","pairs_total":2,"document_sha256":"…"}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.1","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.1/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.1","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.1","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_wLXERrYMlo4b0u4_ZeKft","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.1","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Verifies whether quoted text from a document actually appears on the cited live web pages, returning scored match evidence with context.","exampleAgentPrompt":"Check every quote and citation in this report I wrote — use fuzzy matching with a 0.9 threshold — and tell me which ones actually appear on their linked web pages: [paste document here].","exampleUseCases":[{"title":"AI answer hallucination audit","prompt":"I just got a long answer from an AI assistant with several quotes and links. Can you verify all the citations using fuzzy matching to see which quotes actually appear on their source pages?"},{"title":"Research report citation check","prompt":"Before I publish this research summary, please verify all the quoted passages against their cited URLs — use exact matching and tell me which ones pass and which ones fail."},{"title":"Journalistic source verification","prompt":"I've written a news article with 5 quotes each linked to a source. Can you check whether each quote actually appears on the linked page, using passages mode so I can judge the evidence myself?"}],"resultDescription":"Returns a JSON object with per-pair results including: match type (exact/fuzzy/passages), similarity score (0–1), character offsets in both the document and the source page, surrounding context snippet, HTTP status of the fetched page, occurrence count, and content kind. Also includes a summary of how many pairs matched exactly, fuzzily, or failed, plus a cryptographic receipt for signed attestation.","failureModes":["Page is behind a paywall or login — returns non-200 HTTP status","URL redirects to a different page than cited — final_url differs from url","Quote is too short (below min_words) — result marked as too_short","Similarity below threshold — result marked as no_match","Page fails to load or times out — result marked as failed","Document exceeds 60000 bytes — request rejected","Rate limiting or payment failure — 402 response"],"whenToPreferThis":"Use this endpoint when you need cryptographically signed, per-citation evidence that quoted text genuinely appears on a live web page — ideal for auditing AI-generated content for hallucinations, verifying journalistic sources, or fact-checking research documents. Prefer it over manual spot-checking when a document has multiple citations to verify at once, or when downstream users need a verifiable receipt of the check.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-17T12:40:27.700Z","isFirstParty":false,"canonicalSlug":"attestpage-verify-quotes-and-citations-on-live-web-pages-52246b69"}