> **For coding agents and LLMs:** This is one Social Fetch marketing page (markdown export). For API orientation start with [`/llms.txt`](https://www.socialfetch.dev/llms.txt); for auth and crawl rules use [`/agents.txt`](https://www.socialfetch.dev/agents.txt); for every operation use [`/llms-endpoints.txt`](https://www.socialfetch.dev/llms-endpoints.txt).

## This page

- **On-site (HTML):** <https://www.socialfetch.dev/platforms/instagram/v2-instagram-locations-search>
- **Markdown (.mdx) URL:** <https://www.socialfetch.dev/platforms/instagram/v2-instagram-locations-search.mdx>

---

# Instagram location search API

Find Instagram places by name and get the location ids that open their details and tagged posts, with names and coordinates in structured JSON.

`GET /v2/instagram/locations/search` takes a required `query` string, such as `times square` or a business name, and returns the places Instagram's own location search matches, in Instagram's ranking, in the shared Social Fetch envelope (`meta.version` is `v2`). Read `data.locations`: each place has `id`, `name`, `lat`, `lng`, `address`, `city`, `category`, `description`, `imageUrl`, `facebookPlacesId` and `url`, always present and `null` when Instagram doesn't say. `address`, `city` and `facebookPlacesId` are filled for many places; `category`, `description` and `imageUrl` are `null` here: `GET /v2/instagram/locations/{locationId}` has them.

Each `id` is a location id: pass it to `GET /v2/instagram/locations/{locationId}` for the place and to `GET /v2/instagram/locations/{locationId}/media` for the posts and Reels tagged there. One search is one set of up to about 30 places with no next page, so refine the query to narrow the results. Matching is loose: a query with no real match can still return loosely related places, so check each `name`. One search costs one request; bill from `meta.creditsCharged`.

## Request

- **Endpoint:** `GET /v2/instagram/locations/search`
- **Credits:** 1 credit
Failed requests are free
- **Input:** by query
- **Full reference:** [docs](https://www.socialfetch.dev/docs/api/v2/instagram/locations/search/get)
- **Platform page:** [/platforms/instagram](https://www.socialfetch.dev/platforms/instagram)

## FAQ

### How do I find an Instagram location id via API?

Call `GET /v2/instagram/locations/search` with your Social Fetch API key (`x-api-key`) and a required `query`. Each item in `data.locations` has an `id`, a `name` and coordinates; pass the `id` to `GET /v2/instagram/locations/{locationId}` or its `/media`. A post's `location.id` is the same id. See the API docs for parameters and examples.

### How much does the Instagram location search API cost?

Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged — that field is the billing source of truth.

### Does the search page through more results?

No. One search returns one set of up to about 30 places in Instagram's ranking, and there is no `cursor`. Add detail to the query, such as a city, to reach a place that isn't in the set.

### Why does a nonsense query still return places?

Instagram matches place names loosely, so a query with no real match can still return loosely related places. Check each result's `name` and coordinates before you use its `id`.

### What do I get for each place?

The id, name, latitude and longitude, a street address or city when Instagram has one, the Facebook Places id and the public page URL. For the category, description and picture use `GET /v2/instagram/locations/{locationId}`.
