A business by its name
find_businessThe business the user NAMED, by name matching only: case, punctuation, possessives and articles are
ignored, the words may come in any order, a part of the name is enough («Bern’s» finds «Bern’s Steak
House»), up to two typos per word, and Cyrillic is transliterated. No meaning, no ranking: found is
ordered by exactness, then — with a location — inside the radius first and nearer first. Several
places with one name all come back with their addresses; without a location and across cities the
answer asks which place. found: [] means the business is NOT in this catalogue; then
nearby_in_same_niche lists up to five cards of the trade the name suggests, every one marked
not_the_requested_business: true — never present them as the business asked for.
The best matches carry task_card (≤ 2.5 KB): time for needed_by (else hours_today), up to 5 items
under query, terms, deliver_to, and next {promise[], candidate[], action}. intent (book / order /
quote / info) chooses the action. The full menu is get_card.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | the business name as the user said it | |
| query | No | the thing under the task («red roses», «ribeye»): picks the ≤ 5 items on the card | |
| intent | No | what the user means to do with this business | |
| location | No | a postcode, a city or "lat,lng" — orders the matches by nearness and bounds the nearby list | |
| needed_by | No | when: «sunday», «tomorrow 19:00», «now», «tomorrow after 15:00» — read on the business’s own clock, three ways (on_day / open_at / slot_after) | |
| deliver_to | No | where it must be brought (a postcode is best): the card says confirmed / refuted / unknown | |
| radius_miles | No | Default 25. |