{
  "version": 1,
  "method": "GET",
  "path": "/api/county/search",
  "parameters": {
    "q": "Optional words matched against question, SKU, state and topic; all words must match; maximum 200 characters.",
    "state": "Optional lowercase two-letter state code.",
    "topic": "Optional exact topic from response facets.",
    "source_vintage": "Optional year from response facets. This is the dataset URL vintage, not necessarily the observation year.",
    "price_minor": "Optional 100, 500 or 1000 US cents.",
    "limit": "1 through 100; default 24.",
    "offset": "Nonnegative integer; default 0.",
    "county_fips": "Optional five-digit current county FIPS from locations.json. Results include only kits with verified county-record coverage. It selects statewide packages containing that county, not a county-only ZIP.",
    "sort": "question (default), state, price_asc or price_desc; stable SKU tie break."
  },
  "examples": [
    "/api/county/search?q=housing&state=ca&price_minor=100&limit=10",
    "/api/county/search?q=workers&state=az&price_minor=1000",
    "/api/county/search?county_fips=06065&price_minor=500&sort=price_asc"
  ],
  "pagination": "Use next_offset until null. Apply the same filters on every page.",
  "checkout": "Follow order_contract. Present checkout_url to the buyer for payment authorization. Never treat a search result as authorization to pay.",
  "delivery": "After payment, retrieve the ZIP through the order contract and verify its SHA256 against archive_sha256.",
  "location_catalog": "/services/public-data/county-kits/locations.json",
  "zip_area_lookup": {
    "index": "/services/public-data/county-kits/zcta-counties.json",
    "vintage": 2020,
    "scope": "Local lookup of all intersecting 2020 counties. Not an address, current USPS ZIP or ZIP-level data estimate. Select a current county explicitly. Some legacy county codes are not in the 2024 catalog."
  }
}
