Geo Leads
Trimmed map-plotting payload — lat/lon + minimum columns for pin rendering.
Powers the Map View page (docs/product/prds/MAP_VIEW_FL_MVP.md). Same filter contract as GET /leads so the shared filter chip-bar wires into both pages identically (Rule 12 — one filter contract, three interfaces).
Requires latitude IS NOT NULL — records without geocoded coordinates are summarized in the response's no_coords_total so the map footer can show "X entities not shown — no coordinates" without a second call.
No pagination: returns the full filter scope in one shot (capped at GEO_LEADS_CAP per services.leads_query). Coordinates are rounded to 5 decimals (~1m precision) to shave ~10% off the wire size without visible map degradation.
Cached privately for 60s. The URL — including the filters JSON — is the cache key, so same-scope re-navigations within a minute (tab refresh, state switch back) hit the browser cache instead of re- transferring the full payload. Filter changes naturally bust by producing a different URL.
Request
- Base URL: https://app.goodleads.club (the document declares no server; this is the origin it was published from)
- URL: https://app.goodleads.club/api/v1/leads/geo
- Auth: API key in header X-API-Key
Query parameters
JSON-encoded filter array
Include records the Contact Intelligence brain marked enrichment_strategy='hold'. Default False — sellable inventory only, matching Browse.
Include existing businesses with a new filing: companies opening a location here, local owners who formed their company in another state, businesses back in business, established businesses under a new entity, moved, or with a new trade name. Default False — Just started only (a brand-new business), matching every file sold as new businesses. Naming a filing_kind in filters implies it.
Deprecated alias of include_existing (kept one release so saved links resolve).
Viewport bbox as 'west,south,east,north' (lon,lat lon,lat). When set, restricts pins to lat/lon inside the rectangle. Map View sends the current viewport on every moveend/zoomend; agents fetching whole-state payloads should omit it.
Compute no_coords_total (count of matching leads without coordinates). Constant per filter scope — the Map View passes false on viewport-only refreshes to skip the COUNT; the response then has no_coords_total=null.
Response
Successful Response
Changes
No recorded changes to this operation across all 1 revision of this API.