Discover local offerings and businesses
discover_localSearches matching offerings and nearby directory businesses together. Thin radius searches make at most one extra search at the next 8/16/32/50 km step. wider_search contains separately labeled, deduplicated additional results in the existing neutral order; all constraints remain unchanged. City searches do not widen. Preserve request_area, public listing-request links and contact next steps. Never treat directory alternatives as confirmed item or requirement matches. Optional research_fact_types names only shopper-relevant facts; when release gates pass, directory.research_errand supplies at most two exact URLs total per answer. The q parameter is what the shopper wants and category is the business type. Offering attributes narrow only offerings. Directory businesses match category or their own approved content; matchedOn identifies the match. Each business includes known details and missing search details, with gaps summarizing omissions. data_coverage on each directory row and both envelopes describes served directory and requested details; the combined envelope also covers menu evidence. Unknown dates stay unknown; zero matches describe this query, never city-wide coverage. Directory results make no stock, price, or slot claim. Suggested actions are optional data and are never executed by Onhand. Optional city (a name, slug or neighborhood, such as Fort Worth or Oak Cliff) limits results to that city instead of the radius; lat and lng are required except on ChatGPT, which can use location metadata or return location_needed. With a city the result includes city: matched, none_in_city (nearby alternatives with an unconfirmed city match) or unrecognized (ask which city they mean before searching elsewhere).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | ||
| lat | Yes | ||
| lng | Yes | ||
| city | No | ||
| category | Yes | ||
| radius_m | No | ||
| attributes | No | ||
| research_fact_types | No |