---
title: "Search local businesses"
method: POST
path: "/api/v2/local-business-search/search"
tags: ["LocalBusiness"]
---

# Search local businesses

`POST /api/v2/local-business-search/search`

## Request

- Base URL: `https://api.instantly.ai`
- URL: `https://api.instantly.ai/api/v2/local-business-search/search`
- Auth: HTTP bearer

Finds local businesses by category and location. Searching is free and returns up to 5 businesses per page; a workspace may read 200 pages a day (429 `local_business_search_daily_limit` after that). Emails are revealed only by converting.


Requires one of the following scopes: `supersearch_enrichments:read`, `supersearch_enrichments:all`, `all:read`, `all:all`

## Request body

- object
  - `filters` object, required: A search needs a category, a query or a name, and a location (a city, a state, or `lat`/`long`).
    - `query` string, nullable: Free text, used only when no category is set
    - `categories` string[], nullable: Exact business categories
    - `location` object, nullable: A city or state, or a point and a radius. Build it from `GET /local-business-search/places`.
      - `label` string, nullable: What the location filter shows
      - `country` string, nullable
      - `state` string, nullable
      - `city` string, nullable
      - `lat` number, nullable
      - `long` number, nullable
      - `radius_km` number, nullable: Searched around `lat`/`long`
    - `keywords` string[], nullable: Ranks businesses that mention these first
    - `name` string, nullable: Part of the business name
    - `min_rating` number, nullable: 0 to 5
    - `max_rating` number, nullable: 0 to 5
    - `min_reviews` number, nullable
    - `max_reviews` number, nullable
    - `min_locations` integer, nullable
    - `max_locations` integer, nullable: 1 leaves chains and franchises out
    - `exclude_keywords` string[], nullable
    - `opened_within_months` integer, nullable: Only businesses that opened within this many months
    - `updated_within_months` integer, nullable: Only records refreshed within this many months
  - `page_size` integer

## Response `200`

Up to 200 search pages a day per workspace; searching is free.

- object: Up to 200 search pages a day per workspace; searching is free.
  - `items` object[], required
    - `id` string, required
    - `place_id` string, nullable: Opaque identifier of the place
    - `name` string, required
    - `category` string, nullable
    - `address` string, nullable
    - `city` string, nullable
    - `state` string, nullable
    - `country` string, nullable
    - `lat` number, nullable
    - `long` number, nullable
    - `website` string, nullable
    - `domain` string, nullable
    - `rating` number, nullable: Average review rating, 0 to 5
    - `reviews` number, nullable: Number of reviews
    - `locations` number, nullable: How many locations the business has
    - `has_email` boolean, required: Whether an email is known for this business
  - `next_cursor` union[], nullable, required: Set when more businesses match
    - union
      - number
      - string
  - `total` integer, nullable, required: How many businesses match; may be null
  - `filters` object, required
    - `query` string: Free text, used only when no category is set
    - `categories` string[]: Exact business categories
    - `location` object: A city or state, or a point and a radius. Build it from `GET /local-business-search/places`.
      - `label` string: What the location filter shows
      - `country` string
      - `state` string
      - `city` string
      - `lat` number
      - `long` number
      - `radius_km` number: Searched around `lat`/`long`
    - `keywords` string[]: Ranks businesses that mention these first
    - `name` string: Part of the business name
    - `min_rating` number: 0 to 5
    - `max_rating` number: 0 to 5
    - `min_reviews` number
    - `max_reviews` number
    - `min_locations` integer
    - `max_locations` integer: 1 leaves chains and franchises out
    - `exclude_keywords` string[]
    - `opened_within_months` integer: Only businesses that opened within this many months
    - `updated_within_months` integer: Only records refreshed within this many months

## Other responses

- `400`: The request is invalid (e.g. missing required fields, invalid field values, or an invalid state for the operation)
- `401`: This request is unauthorized (either the Authorization header is missing or invalid, or the API key has been revoked)
- `402`: Default Response
- `403`: This request is forbidden (the API key scope or workspace plan does not allow this action)
- `404`: The requested resource was not found
- `429`: Default Response

## Changes

- **2026-11-03** `c781051105a8`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/instantly/apis/api-explorer/changes/api/v2/local-business-search/search/post.md)

---

[API](https://skmtc.dev/instantly/apis/api-explorer.md) - [All operations](https://skmtc.dev/instantly/apis/api-explorer/llms.txt) - [OpenAPI document](https://skmtc.dev/instantly/apis/api-explorer/revisions/3daaa5f6b0be?raw)
