Developers: the free machine API
Every verdict on Filter Verdicts is also published as structured data, generated from the same source files as the pages themselves. The API is read-only, needs no key, and is free for humans and machines alike. If you build shopping agents, compliance tools, or research assistants, this is the surface to read — it will not drift from the pages, because both are built from one data file.
Endpoints (v1)
| Endpoint | What it returns |
|---|---|
GET /api/v1/catalog.json | Every published verdict: identifiers, per-standard claim statuses, publication and last-checked dates, page and record URLs, correction references. |
GET /api/v1/verdicts/{slug}.json | One verdict in full: certifications with their published qualifiers, fit notes, capacity, rated life, any dated price, the verdict text, sources, verbatim supporting evidence, and the registry query log where one was run. Example: everydrop-edr4rxd1. |
GET /api/v1/changes.json | The changes feed: dated corrections (the same record published on the method page) and publication entries for new verdicts. |
/llms.txt | A concise machine-readable map of the site, its API, and its evidence statuses. |
Schemas
- catalog-v1.schema.json — the catalog document.
- verdict-v1.schema.json — a single verdict record.
- evidence-bundle-v1.schema.json — the proof-bundle format now served by the paid endpoint below (testnet).
Evidence statuses
A page here never states a certification more strongly than its evidence. Every claim in the API carries one of these statuses (evidence ontology v2):
Status Meaning live_certifier_listingThe claim was found in the certifier's own live registry listing. system_only_recordA certifier record names the certification system, but not this cartridge or replacement element. manufacturer_statementThe claim rests on the manufacturer's own document or statement, not a certifier listing. third_party_reproductionThe claim rests on a third-party reproduction of a certification document. not_located_after_bounded_searchThe claim was not found in the certifier's registry after a bounded search resolving holder, system, and element identifiers; the query log is published with the verdict. source_unavailableThe primary source for the claim could not be retrieved or checked.
How the underlying check is run — and how a cartridge can be listed under one standard and absent under another — is described on the method page. Registry checks match under the system and replacement-element codes, not the trade name alone.
Free / paid boundary
The facts are free, permanently: verdicts, the catalog, per-verdict records, and the changes feed cost nothing and carry no key, quota, or payment wall. Paid machine access, when it exists, will sell computation and proof artifacts built on completed checks — precomputed evidence bundles with identifier chains, query logs, and content hashes — never the basic facts a person or agent needs to avoid a counterfeit cartridge, and never a different conclusion.
Paid machine access — evidence bundles (x402, TESTNET, live)
The first paid product is the precomputed evidence bundle: for one completed certification check, the canonical facts, the resolved identifier chain (holder → system → replacement elements → trade names), the sources with retrieval dates, the bounded registry query log where one was run, the correction revision the snapshot incorporates, and a SHA-256 content hash over the facts — the proof artifact behind a verdict, in one document. It is a transformation of the free verdict record; it contains no fact that is not already free, and buying it never changes a conclusion.
Endpoint Terms GET /api/v1/proofs/{snapshot_id}0.05 USDC — TESTNET ONLY. x402 v2, exact scheme, network eip155:84532 (Base Sepolia), asset 0x036CbD53842c5426634e7929541eC2318f3dCF7e (test USDC), facilitated by PayAI. Testnet tokens have no monetary value; this endpoint exists to prove the payment lane end to end. Mainnet payments are not accepted anywhere on this site.
Current snapshot IDs (a snapshot is immutable; a re-check publishes a new ID):
Verdict snapshot_id everydrop-edr4rxd1 d230db8a89f3c9f709ea5a04a7b79d912c1ed8f361d5ccfe1a1cf69d42089824ge-xwfe 07f39cd482d33e5c370569dfb120d2382fe31692e56f52e11e88f05e5d12984esamsung-haf-qin cc8097946b41fe6a5b85534a08e0d0e59b864afeadd861beee718bc7fee26ea5lg-lt1000p 7bdbb76319f69d11391d62405ab1d23b4183d5b24343318747fa85168a871464mist-edr1rxd1-equivalent 2fbc28a048fa399826b5d40470ebdbc672e4294fa3e8c7db822849fe2a009fca
An unpaid request answers 402 with the payment requirements; a settled payment answers 200 with the bundle and a PAYMENT-RESPONSE header. One authorization can settle at most once: replays return the same bundle without a second settlement, and an indeterminate settlement is reconciled, never re-charged. The service is also listed in the x402 services manifest. Dates inside a bundle are derived only from the underlying research record (stated check dates and the publication date) — a bundle is byte-for-byte reproducible from the public data files.
Status
Free API: live (v1, this page). Paid access (x402): live on testnet (Base Sepolia; see above). No mainnet payment is accepted anywhere on this site. A mainnet launch, if it happens, will be announced on this page and in the changes feed first.
Corrections
When a page is wrong, the fix is recorded with its date on the method page and in the changes feed; corrected records carry the correction in their corrections field. Questions and corrections: see the corrections contact on the method page.
Base URL for all endpoints above: https://filterverdicts.com