# Toolsmith Local Business Search

> Toolsmith Local Business Search is a paid API for AI agents from toolsmith-api.dassad10.workers.dev, paid per call via x402, $0.02/call, status unknown (last checked 2026-09-15).

Search for local businesses and places by category or name keyword using OpenStreetMap data, returning contact details, hours, and coordinates

## Facts

- Endpoint: GET https://toolsmith-api.dassad10.workers.dev/t/local/search
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/toolsmith-local-business-search-945979c7
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_LXeVAkFRU1aFLTJSU5UIt

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability toolsmith-local-business-search-945979c7
```

Example prompt: Find me pharmacies within 2 kilometers of downtown Austin, Texas — I need their names, addresses, phone numbers, and opening hours.

## When to prefer this

Use this endpoint when an agent needs to discover local businesses or service providers by category (e.g. pharmacies, restaurants, plumbers) or by name keyword within a geographic area, and requires structured contact and hours data sourced from OpenStreetMap without needing an API key. Prefer over Google Places or Yelp integrations when avoiding proprietary API keys or when OpenStreetMap coverage is sufficient.

## Known failure modes

- Missing required 'what' parameter returns an error
- City name that cannot be geocoded returns no results or an error
- No businesses found for the given category/location combination returns an empty results array
- Radius outside 200–20000m range is rejected with a validation error
- Ambiguous city name may resolve to the wrong location

## How this service works

Find local businesses and places by category and location: pharmacies, restaurants, hotels, plumbers, lawyers, gyms and 40+ more categories, or any name keyword. Pass what= plus city= (geocoded automatically) or lat=&lon= with a radius. Returns name, category, address, phone, website, opening hours and coordinates from OpenStreetMap. JSON response. $0.02 USDC per call, pay via x402, no API key.

## Output

A JSON array of matching businesses from OpenStreetMap, each containing name, category, full address, phone number, website URL, opening hours, and geographic coordinates (latitude/longitude).

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "what"
     ],
     "properties": {
      "lat": {
       "type": "number",
       "description": "Latitude, alternative to city"
      },
      "lon": {
       "type": "number",
       "description": "Longitude, alternative to city"
      },
      "city": {
       "type": "string",
       "description": "City or place name, geocoded automatically"
      },
      "what": {
       "type": "string",
       "description": "Business category (pharmacy, plumber, hotel...) or name keyword"
      },
      "radius": {
       "type": "integer",
       "maximum": 20000,
       "minimum": 200,
       "description": "Search radius in meters, default 5000"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "count": 12,
  "places": [
   {
    "lat": 30.26,
    "lon": -97.74,
    "name": "Central Pharmacy",
    "phone": "+1-512-...",
    "address": "512 Main St, Austin",
    "category": "pharmacy",
    "openingHours": "Mo-Fr 08:00-18:00"
   }
  ]
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/toolsmith-local-business-search-945979c7/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from toolsmith-api.dassad10.workers.dev](https://www.zero.xyz/host/toolsmith-api.dassad10.workers.dev/llms.txt)
