docs / endpoint

GET /v1/locations

Look up Google Ads geotarget IDs by name — country, state/region, city, or neighborhood.

Credits: Free -- uncharged and unmetered. Timeout: 10s

Parameters

NameTypeRequiredDefaultDescription
q string required Name to search for. Required, min 2 chars. Common names match many places worldwide -- narrow multi-match names with a region or country word, e.g. "austin texas" instead of just "austin".
limit integer optional 10 Optional, default 10. 1-100.

Request

→ requestGET /v1/locations
GET /v1/locations?q=austin+texas HTTP/1.1
Authorization: Bearer sof_live_your_key_here

Response

Wrapped in the standard envelope -- id, object, created_at, elapsed_ms, cache, credits -- documented once on The Contract. The body below is a real envelope with this endpoint's data shape; values vary per request, and a marks an array cut short for display.

← response200
{
  "id": "loca_6demj3npa52efjg6xr4qvkyk",
  "request_id": "req_loohnlonobbf7mobehoijbawma",
  "object": "location_list",
  "created_at": "2026-08-09T07:22:54Z",
  "elapsed_ms": 180,
  "cache": "miss",
  "credits": {
    "charged": 0,
    "balance": 9857
  },
  "data": {
    "locations": [
      {
        "id": 1026201,
        "name": "Austin,Texas,United States",
        "type": "city",
        "country": "US",
        "parent_id": 21176
      },
      {
        "id": 9198393,
        "name": "Central Austin,Texas,United States",
        "type": "neighborhood",
        "country": "US",
        "parent_id": 21176
      },
      {
        "id": 9060225,
        "name": "Downtown Austin,Texas,United States",
        "type": "neighborhood",
        "country": "US",
        "parent_id": 21176
      },
      {
        "id": 9198961,
        "name": "East Austin,Texas,United States",
        "type": "neighborhood",
        "country": "US",
        "parent_id": 21176
      },
      {
        "id": 9194496,
        "name": "Old West Austin,Texas,United States",
        "type": "neighborhood",
        "country": "US",
        "parent_id": 21176
      },
      {
        "id": 9197266,
        "name": "South Austin,Texas,United States",
        "type": "neighborhood",
        "country": "US",
        "parent_id": 21176
      }
    ]
  }
}

Response fields

What each field in data (above) means.

FieldDescription
data.locations Matching geotargets, ranked by relevance (exact match, then prefix, then substring), up to limit.
data.locations[].id Google Ads geotarget ID -- pass this as the location param on any other endpoint.
data.locations[].name Canonical name, comma-separated from most to least specific, e.g. "Austin,Texas,United States".
data.locations[].type Geotarget type, e.g. "country", "state", "region", "city", "neighborhood".
data.locations[].country ISO country code this geotarget belongs to.
data.locations[].parent_id Geotarget ID of the immediate parent (e.g. a city's state), or null for a top-level geotarget.