---
title: "Find the location ids around anchor places"
method: GET
path: "/v1/lookups/areas"
tags: ["Search"]
---

# Find the location ids around anchor places

`GET /v1/lookups/areas`

## Request

- Base URL: `https://api.recruitmcp.com`
- URL: `https://api.recruitmcp.com/v1/lookups/areas`
- Auth: one of:
  - HTTP bearer
  - OAuth 2 (authorization code, authorization URL `https://recruitmcp.com/oauth/authorize`, token URL `https://recruitmcp.com/oauth/token`, scopes: `sourcing:read`)

Free. Anchor places and radius_km become at most 12 location ids. Under 20 km only the anchor city is used. At 20 km or more, major cities within radius_km of an anchor are included when coordinates are known. geo_ids is that set. The search index has no radius: pass geo_ids as the location filter of a people search.

Scope: `sourcing:read`.

## Query parameters

- `anchors` string[], required
- `radius_km` integer
- `limit` integer
- `cursor` string

## Headers

- `RecruitMCP-Version` '2026-10-13'
- `RecruitMCP-Customer` string

## Response `200`

geo_ids to put in a filter.

- Area
  - `geo_ids` string[], required
  - `entries` Location[]
    - `geo_id` string, required
    - `title` string, required
    - `is_area` boolean
  - `next_cursor` string, nullable, required
  - `has_more` boolean, required
  - `note` string: Which anchors and cities became geo_ids. The search index has no radius, so geo_ids is the whole location filter. Under 20 km only the anchor city is used. At 20 km or more, major cities near the anchors are added, at most 12 geo ids. Says so when no place matched.
  - `hint` string: Set when an anchor has no city id. The country is not copied into geo_ids.
  - `fallback` 'country': country when the only match was a country.
  - `cost` object
    - `credits` integer, required: Credits charged by this call. Always 0: area lookups are free.

## Other responses

- `400`: `invalid_request` (do not retry): A field is missing or has a value this endpoint does not accept. `unsupported_version` (do not retry): RecruitMCP-Version is not a supported version.
- `401`: `unauthorized` (do not retry): Missing bearer API key.
- `402`: `free_tier_limit` (do not retry): This workspace has used its free upstream allowance.
- `403`: `forbidden` (do not retry): This customer is disabled. `insufficient_scope` (do not retry): This key does not include the scope this endpoint requires.
- `429`: `rate_limited` (retry): Per-key rate limit exceeded. `upstream_busy` (retry): The profile source is busy. Retry after the delay.
- `502`: `upstream_busy` (retry): The profile source is busy. Retry shortly. `upstream_error` (retry): The profile source returned a response that could not be used. Retry later.
- `503`: `upstream_busy` (retry): The profile source is paused.

## Changes

- **2026-10-20** `ad27b35513a6`: 7 warning
  - added the new `approval_forced` enum value to the `error/code` response property for the response status `400`
  - added the new `approval_forced` enum value to the `error/code` response property for the response status `401`
  - added the new `approval_forced` enum value to the `error/code` response property for the response status `402`
  - added the new `approval_forced` enum value to the `error/code` response property for the response status `403`
  - …3 more

[Operation history](https://skmtc.dev/recruitmcp/apis/recruitmcp-api/changes/v1/lookups/areas/get.md)

---

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