{"openapi":"3.1.0","info":{"title":"CF Enforcement Check","version":"2.0.0","description":"Pay-per-call lookup over federal enforcement actions, regulatory notices, SEC filings and court records collected by CourtPulse, read from D1 and refreshed nightly.","x-guidance":"Call GET /v1/health first (free) to confirm a dataset is loaded. GET /.well-known/x402 carries the exact x402 v2 payment requirements. A bare unpaid GET to /v1/check or /v1/report returns 402 before the query is validated, even with a missing or malformed org/cik. This booth ships v2-only: every response is the CF Soft envelope shape (service/version/verdict/confidence/basis/counts/records/sources/limits/as_of, plus booth-specific `stats` and `leads`) — there is no legacy shape and no ?v= parameter. `verdict` is this booth's own words: records_found or no_records. See docs/ENVELOPE.md.","contact":{"email":"info@cfaisolutions.com"}},"servers":[{"url":"https://cf-enforcement-check.cf-exclusion-check.workers.dev"}],"paths":{"/v1/check":{"get":{"summary":"Any enforcement record naming this organization? (brief).","parameters":[{"name":"org","in":"query","schema":{"type":"string"},"description":"Organization name, e.g. \"Agridime\" or \"Agridime, LLC\". Required unless cik is given."},{"name":"cik","in":"query","schema":{"type":"string"},"description":"Optional SEC Central Index Key. The only identifier-grade match available."},{"name":"state","in":"query","schema":{"type":"string"},"description":"Optional two-letter US state code. Filters to court records with a matching court; drops everything else."}],"x-payment-info":{"protocols":["x402"],"price":{"mode":"fixed","currency":"USD","amount":0.05}},"responses":{"200":{"description":"The CF Soft envelope. See x-guidance / docs/ENVELOPE.md."},"402":{"description":"Payment required. See the `payment-required` header."},"405":{"description":"Only GET is served on this path."},"503":{"description":"No dataset imported yet, or the import is still running. Never charged."}}}},"/v1/report":{"get":{"summary":"Full report: every matching record in full, plus a per-month/case-type breakdown.","parameters":[{"name":"org","in":"query","schema":{"type":"string"},"description":"Organization name, e.g. \"Agridime\" or \"Agridime, LLC\". Required unless cik is given."},{"name":"cik","in":"query","schema":{"type":"string"},"description":"Optional SEC Central Index Key. The only identifier-grade match available."},{"name":"state","in":"query","schema":{"type":"string"},"description":"Optional two-letter US state code. Filters to court records with a matching court; drops everything else."}],"x-payment-info":{"protocols":["x402"],"price":{"mode":"fixed","currency":"USD","amount":0.5}},"responses":{"200":{"description":"The CF Soft envelope. See x-guidance / docs/ENVELOPE.md."},"402":{"description":"Payment required. See the `payment-required` header."},"405":{"description":"Only GET is served on this path."},"503":{"description":"No dataset imported yet, or the import is still running. Never charged."}}}},"/v1/health":{"get":{"summary":"Dataset size, age and import state. Free.","responses":{"200":{"description":"Health status."},"503":{"description":"No dataset loaded."}}}},"/.well-known/x402":{"get":{"summary":"x402 v2 discovery document. Free.","responses":{"200":{"description":"Discovery document."}}}}}}