{"id":"legal-cite-verifier","title":"Legal citation and quotation verifier (US case law)","description":"Extracts US reporter citations from a brief (U.S., S. Ct., L. Ed., F., F.2d, F.3d, F.4th, F. Supp., state and regional reporters) and checks each against Harvard's Caselaw Access Project and, when the operator has configured a token, the CourtListener Citation Lookup API. Reports FOUND, MISMATCH (case name, year or circuit differs), NOT_FOUND, AMBIGUOUS, or UNCHECKED with the reason, and never marks an unchecked citation FOUND. Quotations are searched in the cited opinion with deterministic matching and every normalization is listed. Statutes, id., supra and Westlaw/Lexis cites are reported as UNCHECKABLE_TYPE. Without a CourtListener token the result is partial for volumes outside CAP (roughly pre-2019). The optional proposition check is off by default and can only point at a verified passage. Not legal advice.","roi":"A fabricated or misquoted authority in a filing can bring sanctions and a disciplinary referral; this gives a signed per-citation record with source hashes to attach to a pre-filing check.","audience":"legal-ip","channels":["x402","mcp","rapidapi","apify"],"endpoint":{"method":"POST","url":"https://agents.writerslogic.com/api/v1/legal-cite-verifier","path":"/api/v1/legal-cite-verifier","contentType":"application/json"},"price":{"amount":"1.50","currency":"USDC","network":"base","perCall":true,"failedCallsCharged":false},"inputSchema":{"type":"object","additionalProperties":false,"properties":{"text":{"type":"string","minLength":1,"maxLength":64000,"description":"Brief or memo text. Citations and their case names, court and year are extracted from it."},"citations":{"type":"array","maxItems":60,"items":{"type":"string","minLength":3,"maxLength":300},"description":"Citations to check instead of, or in addition to, text."},"quotes":{"type":"array","maxItems":40,"description":"Quotations to find verbatim in the cited opinion.","items":{"type":"object","additionalProperties":false,"required":["citation","quote"],"properties":{"citation":{"type":"string","minLength":3,"maxLength":300,"description":"Reporter citation the quote is attributed to."},"quote":{"type":"string","minLength":12,"maxLength":4000}}}},"check_propositions":{"type":"boolean","description":"Default false. Runs one optional model call that may only point at a verified passage."},"propositions":{"type":"array","maxItems":10,"items":{"type":"object","additionalProperties":false,"required":["citation","proposition"],"properties":{"citation":{"type":"string","minLength":3,"maxLength":300},"proposition":{"type":"string","minLength":10,"maxLength":600}}}},"max_citations":{"type":"integer","minimum":1,"maximum":40,"description":"Distinct reporter citations to check. Default 40."}}},"resultSchema":{"type":"object","properties":{"verdict":{"type":"string","enum":["ISSUES_FOUND","INCOMPLETE","ALL_CHECKABLE_VERIFIED","NO_CITATIONS_FOUND"]},"confidence":{"type":"string","enum":["high","medium","low"]},"risk":{"type":"object","description":"flagged_citations (NOT_FOUND or MISMATCH), flagged_quotes, inconclusive_items."},"next_step":{"type":"string"},"summary":{"type":"string"},"counts":{"type":"object","description":"Citation and quote counts by status."},"citations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"raw":{"type":"string"},"normalized":{"type":"string"},"status":{"type":"string","enum":["FOUND","MISMATCH","NOT_FOUND","REPORTER_UNKNOWN","AMBIGUOUS","UNCHECKABLE_TYPE","UNCHECKED"]},"reason":{"type":"string"},"method":{"type":"string"},"case_name_stated":{"anyOf":[{"type":"string"},{"type":"null"}]},"case_name_found":{"anyOf":[{"type":"string"},{"type":"null"}]},"case_name_match":{"type":"string","enum":["MATCH","MISMATCH","NOT_STATED","NOT_CHECKED"]},"year_stated":{"anyOf":[{"type":"integer"},{"type":"null"}]},"decision_date":{"anyOf":[{"type":"string"},{"type":"null"}]},"year_match":{"type":"string","enum":["MATCH","MISMATCH","NOT_STATED","NOT_CHECKED"]},"court_stated":{"anyOf":[{"type":"string"},{"type":"null"}]},"court_found":{"anyOf":[{"type":"string"},{"type":"null"}]},"court_match":{"type":"string","enum":["MATCH","MISMATCH","NOT_STATED","NOT_CHECKED"]},"cluster_id":{"anyOf":[{"type":"integer"},{"type":"null"}]},"source_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"source_sha256":{"anyOf":[{"type":"string"},{"type":"null"}]},"source_sha256_basis":{"type":"string","description":"Which source the hash covers: cap_case_record, cap_volume_index, courtlistener_citation_lookup_response or the redirect-target URL text."},"containing_case":{"type":"object","description":"For NOT_FOUND: the decision whose page range contains the cited page."},"mismatches":{"type":"array","items":{"type":"string"}},"offset":{"type":"object"}}}},"quotes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"citation":{"type":"string"},"quote":{"type":"string"},"status":{"type":"string","enum":["EXACT","NORMALIZED_MATCH","NOT_FOUND_IN_OPINION","TEXT_UNAVAILABLE"]},"offsets":{"type":"object","description":"start and end in the NFC opinion text (offset_basis)."},"excerpt":{"type":"string"},"normalization_applied":{"type":"array","items":{"type":"object","description":"step, applied_to (quote|opinion|both), count. Opinion counts cover the matched span only."}},"checked_against":{"type":"object","description":"case_name, source_url, source_sha256, opinion_text_sha256."},"reason":{"type":"string"}}}},"propositions":{"type":"array","items":{"type":"object","description":"verdict SUPPORTED_BY_PASSAGE (with passage_span, verified verbatim) or NEEDS_HUMAN."}},"unicode":{"type":"object","description":"Hidden or lookalike characters found in the input (unicode-safety rules)."},"evidence":{"type":"array","items":{"type":"object","description":"url, sha256, bytes, role of each source consulted."}},"warnings":{"type":"array","items":{"type":"string"}},"manifest":{"type":"object","description":"Version, input hash, data access mode (authenticated|public|public_fallback), token state, llm state, timing."},"limitations":{"type":"array","items":{"type":"string"}}}},"outputSchema":{"type":"object","properties":{"data":{"type":"object","properties":{"verdict":{"type":"string","enum":["ISSUES_FOUND","INCOMPLETE","ALL_CHECKABLE_VERIFIED","NO_CITATIONS_FOUND"]},"confidence":{"type":"string","enum":["high","medium","low"]},"risk":{"type":"object","description":"flagged_citations (NOT_FOUND or MISMATCH), flagged_quotes, inconclusive_items."},"next_step":{"type":"string"},"summary":{"type":"string"},"counts":{"type":"object","description":"Citation and quote counts by status."},"citations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"raw":{"type":"string"},"normalized":{"type":"string"},"status":{"type":"string","enum":["FOUND","MISMATCH","NOT_FOUND","REPORTER_UNKNOWN","AMBIGUOUS","UNCHECKABLE_TYPE","UNCHECKED"]},"reason":{"type":"string"},"method":{"type":"string"},"case_name_stated":{"anyOf":[{"type":"string"},{"type":"null"}]},"case_name_found":{"anyOf":[{"type":"string"},{"type":"null"}]},"case_name_match":{"type":"string","enum":["MATCH","MISMATCH","NOT_STATED","NOT_CHECKED"]},"year_stated":{"anyOf":[{"type":"integer"},{"type":"null"}]},"decision_date":{"anyOf":[{"type":"string"},{"type":"null"}]},"year_match":{"type":"string","enum":["MATCH","MISMATCH","NOT_STATED","NOT_CHECKED"]},"court_stated":{"anyOf":[{"type":"string"},{"type":"null"}]},"court_found":{"anyOf":[{"type":"string"},{"type":"null"}]},"court_match":{"type":"string","enum":["MATCH","MISMATCH","NOT_STATED","NOT_CHECKED"]},"cluster_id":{"anyOf":[{"type":"integer"},{"type":"null"}]},"source_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"source_sha256":{"anyOf":[{"type":"string"},{"type":"null"}]},"source_sha256_basis":{"type":"string","description":"Which source the hash covers: cap_case_record, cap_volume_index, courtlistener_citation_lookup_response or the redirect-target URL text."},"containing_case":{"type":"object","description":"For NOT_FOUND: the decision whose page range contains the cited page."},"mismatches":{"type":"array","items":{"type":"string"}},"offset":{"type":"object"}}}},"quotes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"citation":{"type":"string"},"quote":{"type":"string"},"status":{"type":"string","enum":["EXACT","NORMALIZED_MATCH","NOT_FOUND_IN_OPINION","TEXT_UNAVAILABLE"]},"offsets":{"type":"object","description":"start and end in the NFC opinion text (offset_basis)."},"excerpt":{"type":"string"},"normalization_applied":{"type":"array","items":{"type":"object","description":"step, applied_to (quote|opinion|both), count. Opinion counts cover the matched span only."}},"checked_against":{"type":"object","description":"case_name, source_url, source_sha256, opinion_text_sha256."},"reason":{"type":"string"}}}},"propositions":{"type":"array","items":{"type":"object","description":"verdict SUPPORTED_BY_PASSAGE (with passage_span, verified verbatim) or NEEDS_HUMAN."}},"unicode":{"type":"object","description":"Hidden or lookalike characters found in the input (unicode-safety rules)."},"evidence":{"type":"array","items":{"type":"object","description":"url, sha256, bytes, role of each source consulted."}},"warnings":{"type":"array","items":{"type":"string"}},"manifest":{"type":"object","description":"Version, input hash, data access mode (authenticated|public|public_fallback), token state, llm state, timing."},"limitations":{"type":"array","items":{"type":"string"}}}},"_provenance":{"type":"object","description":"C2PA-aligned manifest and W3C VC 2.0 (eddsa-jcs-2022) issued by the hub DID; verify at POST /api/v1/verify-provenance"}},"required":["data","_provenance"]},"example":{"text":"Plaintiff's position follows from Brown v. Board of Education, 347 U.S. 483, 495 (1954) (\"Separate educational facilities are inherently unequal.\"). Defendant's liability under the Montreal Convention is established by Varghese v. China Southern Airlines Co., Ltd., 925 F.3d 1339 (11th Cir. 2019).","quotes":[{"citation":"347 U.S. 483","quote":"Separate educational facilities are inherently unequal."}]},"openapiOperation":{"operationId":"legal_cite_verifier","summary":"Legal citation and quotation verifier (US case law)","description":"Extracts US reporter citations from a brief (U.S., S. Ct., L. Ed., F., F.2d, F.3d, F.4th, F. Supp., state and regional reporters) and checks each against Harvard's Caselaw Access Project and, when the operator has configured a token, the CourtListener Citation Lookup API. Reports FOUND, MISMATCH (case name, year or circuit differs), NOT_FOUND, AMBIGUOUS, or UNCHECKED with the reason, and never marks an unchecked citation FOUND. Quotations are searched in the cited opinion with deterministic matching and every normalization is listed. Statutes, id., supra and Westlaw/Lexis cites are reported as UNCHECKABLE_TYPE. Without a CourtListener token the result is partial for volumes outside CAP (roughly pre-2019). The optional proposition check is off by default and can only point at a verified passage. Not legal advice.\n\nPrice: 1.50 USDC on Base (x402).","x-x402-price-usdc":"1.50","x-x402-amount":"1500000","x-payment-info":{"protocols":["x402"],"price":{"mode":"fixed","currency":"USD","amount":"1.50"}},"x-audience":"legal-ip","x-sample-url":"https://agents.writerslogic.com/api/v1/samples/legal-cite-verifier","security":[{"x402":[]},{"apiKey":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"text":{"type":"string","minLength":1,"maxLength":64000,"description":"Brief or memo text. Citations and their case names, court and year are extracted from it."},"citations":{"type":"array","maxItems":60,"items":{"type":"string","minLength":3,"maxLength":300},"description":"Citations to check instead of, or in addition to, text."},"quotes":{"type":"array","maxItems":40,"description":"Quotations to find verbatim in the cited opinion.","items":{"type":"object","additionalProperties":false,"required":["citation","quote"],"properties":{"citation":{"type":"string","minLength":3,"maxLength":300,"description":"Reporter citation the quote is attributed to."},"quote":{"type":"string","minLength":12,"maxLength":4000}}}},"check_propositions":{"type":"boolean","description":"Default false. Runs one optional model call that may only point at a verified passage."},"propositions":{"type":"array","maxItems":10,"items":{"type":"object","additionalProperties":false,"required":["citation","proposition"],"properties":{"citation":{"type":"string","minLength":3,"maxLength":300},"proposition":{"type":"string","minLength":10,"maxLength":600}}}},"max_citations":{"type":"integer","minimum":1,"maximum":40,"description":"Distinct reporter citations to check. Default 40."}}},"example":{"text":"Plaintiff's position follows from Brown v. Board of Education, 347 U.S. 483, 495 (1954) (\"Separate educational facilities are inherently unequal.\"). Defendant's liability under the Montreal Convention is established by Varghese v. China Southern Airlines Co., Ltd., 925 F.3d 1339 (11th Cir. 2019).","quotes":[{"citation":"347 U.S. 483","quote":"Separate educational facilities are inherently unequal."}]}}}},"responses":{"200":{"description":"Paid result with provenance","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"verdict":{"type":"string","enum":["ISSUES_FOUND","INCOMPLETE","ALL_CHECKABLE_VERIFIED","NO_CITATIONS_FOUND"]},"confidence":{"type":"string","enum":["high","medium","low"]},"risk":{"type":"object","description":"flagged_citations (NOT_FOUND or MISMATCH), flagged_quotes, inconclusive_items."},"next_step":{"type":"string"},"summary":{"type":"string"},"counts":{"type":"object","description":"Citation and quote counts by status."},"citations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"raw":{"type":"string"},"normalized":{"type":"string"},"status":{"type":"string","enum":["FOUND","MISMATCH","NOT_FOUND","REPORTER_UNKNOWN","AMBIGUOUS","UNCHECKABLE_TYPE","UNCHECKED"]},"reason":{"type":"string"},"method":{"type":"string"},"case_name_stated":{"anyOf":[{"type":"string"},{"type":"null"}]},"case_name_found":{"anyOf":[{"type":"string"},{"type":"null"}]},"case_name_match":{"type":"string","enum":["MATCH","MISMATCH","NOT_STATED","NOT_CHECKED"]},"year_stated":{"anyOf":[{"type":"integer"},{"type":"null"}]},"decision_date":{"anyOf":[{"type":"string"},{"type":"null"}]},"year_match":{"type":"string","enum":["MATCH","MISMATCH","NOT_STATED","NOT_CHECKED"]},"court_stated":{"anyOf":[{"type":"string"},{"type":"null"}]},"court_found":{"anyOf":[{"type":"string"},{"type":"null"}]},"court_match":{"type":"string","enum":["MATCH","MISMATCH","NOT_STATED","NOT_CHECKED"]},"cluster_id":{"anyOf":[{"type":"integer"},{"type":"null"}]},"source_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"source_sha256":{"anyOf":[{"type":"string"},{"type":"null"}]},"source_sha256_basis":{"type":"string","description":"Which source the hash covers: cap_case_record, cap_volume_index, courtlistener_citation_lookup_response or the redirect-target URL text."},"containing_case":{"type":"object","description":"For NOT_FOUND: the decision whose page range contains the cited page."},"mismatches":{"type":"array","items":{"type":"string"}},"offset":{"type":"object"}}}},"quotes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"citation":{"type":"string"},"quote":{"type":"string"},"status":{"type":"string","enum":["EXACT","NORMALIZED_MATCH","NOT_FOUND_IN_OPINION","TEXT_UNAVAILABLE"]},"offsets":{"type":"object","description":"start and end in the NFC opinion text (offset_basis)."},"excerpt":{"type":"string"},"normalization_applied":{"type":"array","items":{"type":"object","description":"step, applied_to (quote|opinion|both), count. Opinion counts cover the matched span only."}},"checked_against":{"type":"object","description":"case_name, source_url, source_sha256, opinion_text_sha256."},"reason":{"type":"string"}}}},"propositions":{"type":"array","items":{"type":"object","description":"verdict SUPPORTED_BY_PASSAGE (with passage_span, verified verbatim) or NEEDS_HUMAN."}},"unicode":{"type":"object","description":"Hidden or lookalike characters found in the input (unicode-safety rules)."},"evidence":{"type":"array","items":{"type":"object","description":"url, sha256, bytes, role of each source consulted."}},"warnings":{"type":"array","items":{"type":"string"}},"manifest":{"type":"object","description":"Version, input hash, data access mode (authenticated|public|public_fallback), token state, llm state, timing."},"limitations":{"type":"array","items":{"type":"string"}}}},"_provenance":{"type":"object","description":"C2PA-aligned manifest and W3C VC 2.0 (eddsa-jcs-2022) issued by the hub DID; verify at POST /api/v1/verify-provenance"}},"required":["data","_provenance"]}}}},"400":{"description":"Invalid request (no payment consumed)","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"code":{"type":"string"}}}}}},"401":{"description":"Invalid X-API-KEY","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"code":{"type":"string"}}}}}},"402":{"description":"Payment required or invalid","content":{"application/json":{"schema":{"type":"object","description":"x402 v2 PaymentRequired (also base64 in the PAYMENT-REQUIRED header)","properties":{"x402Version":{"type":"integer"},"error":{"type":"string"},"code":{"type":"string"},"resource":{"type":"object"},"accepts":{"type":"array","items":{"type":"object"}},"extensions":{"type":"object"}}}}}},"502":{"description":"Upstream failure; the payment is released or not settled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"code":{"type":"string"}}}}}}}},"links":{"docs":"https://agents.writerslogic.com/docs/legal-cite-verifier/","docsJson":"https://agents.writerslogic.com/docs/legal-cite-verifier.json","sample":"https://agents.writerslogic.com/api/v1/samples/legal-cite-verifier","openapi":"https://agents.writerslogic.com/openapi.json","catalog":"https://agents.writerslogic.com/api/v1/catalog","verifyProvenance":"https://agents.writerslogic.com/api/v1/verify-provenance","index":"https://agents.writerslogic.com/docs/index.json"}}