{
  "name": "Seller Compliance Change Ledger API",
  "operator": "OpenYuri (independent practice, not a registered company)",
  "canonical": "https://sitenet-seller-ledger.pages.dev/",
  "generated_at": "2026-10-20T14:59:30.577Z",
  "license": "Open data. Attribution: OpenYuri — Seller Compliance Change Ledger. Source documents belong to their publishers.",
  "cors": "*",
  "totals": {
    "entries": 114,
    "agencies": 6,
    "agencies_with_entries": 5,
    "new_last_7_days": 114,
    "updated_last_7_days": 0,
    "by_agency": {
      "ITA": 95,
      "FDA": 10,
      "CPSC": 3,
      "CBP": 3,
      "USTR": 3
    },
    "by_label": {
      "Trade remedies": 95,
      "Food, drugs & labelling": 10,
      "Product safety": 3,
      "Customs & imports": 3,
      "Tariffs & trade policy": 3
    },
    "published_range": {
      "earliest": "2026-09-21",
      "latest": "2026-10-20"
    },
    "last_run": {
      "run_at": "2026-10-20T13:03:29.188Z",
      "window_days": 30,
      "scanned": 217,
      "matched": 114,
      "records_appended": 114,
      "failed_sources": 0
    }
  },
  "fields": [
    "id",
    "first_seen",
    "last_seen",
    "published_at",
    "agency",
    "type",
    "title",
    "abstract",
    "url",
    "citation",
    "status",
    "source_id",
    "source_label",
    "last_event",
    "observed_at"
  ],
  "endpoints": [
    {
      "path": "latest.json",
      "url": "api/latest.json",
      "returns": "latest 50 entries by published_at"
    },
    {
      "path": "new.json",
      "url": "api/new.json",
      "returns": "entries first seen or changed in the last 7 days"
    },
    {
      "path": "updated.json",
      "url": "api/updated.json",
      "returns": "entries whose published text changed in the last 7 days"
    },
    {
      "path": "by-agency/cpsc.json",
      "url": "api/by-agency/cpsc.json",
      "returns": "CPSC entries",
      "entries": 3
    },
    {
      "path": "by-agency/cbp.json",
      "url": "api/by-agency/cbp.json",
      "returns": "CBP entries",
      "entries": 3
    },
    {
      "path": "by-agency/ftc.json",
      "url": "api/by-agency/ftc.json",
      "returns": "FTC entries",
      "entries": 0
    },
    {
      "path": "by-agency/fda.json",
      "url": "api/by-agency/fda.json",
      "returns": "FDA entries",
      "entries": 10
    },
    {
      "path": "by-agency/ustr.json",
      "url": "api/by-agency/ustr.json",
      "returns": "USTR entries",
      "entries": 3
    },
    {
      "path": "by-agency/ita.json",
      "url": "api/by-agency/ita.json",
      "returns": "ITA entries",
      "entries": 95
    },
    {
      "path": "by-category/safety.json",
      "url": "api/by-category/safety.json",
      "returns": "safety entries (CPSC)",
      "entries": 3
    },
    {
      "path": "by-category/customs.json",
      "url": "api/by-category/customs.json",
      "returns": "customs entries (CBP)",
      "entries": 3
    },
    {
      "path": "by-category/trade.json",
      "url": "api/by-category/trade.json",
      "returns": "trade entries (USTR+ITA)",
      "entries": 98
    },
    {
      "path": "by-category/food.json",
      "url": "api/by-category/food.json",
      "returns": "food entries (FDA)",
      "entries": 10
    },
    {
      "path": "by-category/ads.json",
      "url": "api/by-category/ads.json",
      "returns": "ads entries (FTC)",
      "entries": 0
    },
    {
      "path": "ledger.json",
      "url": "ledger.json",
      "returns": "full current view"
    },
    {
      "path": "feed.xml",
      "url": "feed.xml",
      "returns": "RSS of material changes"
    }
  ],
  "note": "Static read-only API. No key, no rate limit, no tracking. The proposed $99/mo tier covers server-side filters, cursors and alert delivery, not access to this view.",
  "citation": "OpenYuri — <entry title>, <source URL> (published <date>; first seen <first_seen>)."
}
