---
title: "Facebook Marketplace Location Search API"
method: GET
path: "/v1/facebook/marketplace-location-search"
tags: ["Facebook Marketplace"]
---

# Facebook Marketplace Location Search API

`GET /v1/facebook/marketplace-location-search`

## Request

- Base URL: `https://api.captapi.com`
- URL: `https://api.captapi.com/v1/facebook/marketplace-location-search`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-API-Key`

Disambiguate city names into Marketplace hubs — id + lat/lng.

Resolve a city/place query into Facebook Marketplace location hubs with id (Facebook city_page.id — same value marketplace-search listings expose as cityPageId), slug, city/state, and coordinates when available. marketplace-search already accepts a city string with no lat/lng required — use this endpoint when the name is ambiguous (Austin TX vs Austin MN vs Austin IN) or you need id/coordinates before searching. Bare ambiguous cities (Austin, Portland, Springfield) resolve from a local table in typically under 1s; every other query geocodes globally (typically under 2s) instead of a ~28s Facebook hub scrape. id resolves instantly for ~60 major US metros from a baked directory verified against live listing cityPageId values; smaller cities and non-US places return idResolved:false. marketplace-search still accepts those names — it geocodes a US town and snaps to the nearest baked metro rather than guessing a vanity slug. Envelope timings{path,hubMs,hubCount,geocodeMs,totalMs} including on 504/404. Flat 2 credits.

Docs: https://captapi.com/apis/facebook-marketplace-location-search

## Query parameters

- `q` string, required
- `limit` integer
- `cache` boolean

## Response `200`

Success. The data object for this endpoint.

- object
  - `success` unknown, required
  - `data` object, required
    - `query` string: Echo of the q parameter you sent.
    - `totalReturned` integer: Number of location candidates in this response.
    - `locations` object[]
      - `id` string, nullable: Id of this locations item.
      - `idResolved` boolean: true when id is present and joinable to listing.cityPageId. false rows are still valid marketplace-search location names — search snaps US towns to the nearest metro.
      - `slug` string: Marketplace hub path slug (e.g. austin, austin-minnesota, izmir).
      - `name` string: Name of this locations item.
      - `city` string: City name from the query / hub / geocode.
      - `state` string: US state abbreviation when known.
      - `latitude` number: Hub latitude when known (included by default — no details flag).
      - `longitude` number: Hub longitude when known.

## Other responses

- `400`: Bad request: wrong platform URL, unknown endpoint, or an invalid parameter value. Not billed.
- `401`: Missing, invalid or revoked API key. Not billed.
- `402`: Not enough credits for this request. Not billed.
- `404`: The resource does not exist or is not public. Not billed.
- `422`: A required parameter is missing or has the wrong type. Not billed.
- `429`: Rate limit reached. Wait for Retry-After seconds. Not billed.
- `502`: The platform could not be reached or returned nothing usable. Retryable, not billed. 503 and 504 use the same envelope.

## Changes

- **2026-10-19** `c9b9ac5ff1bd`: 1 breaking, 1 warning, 1 info
  - the response property `data/locations/items/id` became nullable for the status `200`
  - removed the optional property `data/locations/items/cityPageId` from the response with the `200` status
  - added the optional property `data/locations/items/idResolved` to the response with the `200` status

[Operation history](https://skmtc.dev/captapi/apis/captapi-api/changes/v1/facebook/marketplace-location-search/get.md)

---

[API](https://skmtc.dev/captapi/apis/captapi-api.md) · [All operations](https://skmtc.dev/captapi/apis/captapi-api/llms.txt) · [OpenAPI document](https://skmtc.dev/captapi/apis/captapi-api/revisions/c9b9ac5ff1bd?raw)
