Place Details
Use /v1/place to expand one or more Pelias gid values into full feature documents. This is the best way to refresh stale metadata, enrich stored IDs, or join autocomplete selections with authoritative attributes.
Query parameters
Section titled “Query parameters”| Name | Required | Description |
|---|---|---|
ids | Yes | Comma separated list of Pelias global identifiers. Each value must use the source:layer:id format (for example openstreetmap:venue:way/5013364). |
categories | No | Set to any value to include category metadata in the response. |
Working with identifiers
Section titled “Working with identifiers”- Pass multiple
gidvalues in a single request to batch lookups (for exampleids=wof:locality:101750367,openaddresses:address:us/ny/city_of_new_york:123). - Persist the returned
properties.source,properties.source_id, andgeometryso you can reconcile records when datasets refresh. - Call
/placeafter search or autocomplete to obtain category arrays, hierarchy data, and provider-specific metadata (properties.addendum).
Sample request
Section titled “Sample request”curl -s -G 'https://api-na.geobridge.io/v1/place' \ -H 'Accept: application/json' \ -H "X-API-Key: ${GEOBRIDGE_API_KEY}" \ --data-urlencode 'ids=openstreetmap:venue:way/5013364'const apiKey = process.env.GEOBRIDGE_API_KEY;const params = new URLSearchParams({ ids: 'openstreetmap:venue:way/5013364',});const url = `https://api-na.geobridge.io/v1/place?${params.toString()}`;
const response = await fetch(url, { headers: { Accept: 'application/json', 'X-API-Key': apiKey, }, signal: AbortSignal.timeout(10000),});
if (!response.ok) { throw new Error(`Place lookup failed: ${response.status} ${response.statusText}`);}
const payload = await response.json();console.log(payload.features[0]?.properties?.label);import osimport requests
api_key = os.environ["GEOBRIDGE_API_KEY"]
resp = requests.get( "https://api-na.geobridge.io/v1/place", headers={ "Accept": "application/json", "X-API-Key": api_key, }, params={"ids": "openstreetmap:venue:way/5013364"}, timeout=10,)resp.raise_for_status()
data = resp.json()features = data.get("features", [])if features: props = features[0].get("properties", {}) print(props.get("label"), props.get("categories"))Response structure
Section titled “Response structure”The response is a GeoJSON FeatureCollection where each feature corresponds to one requested gid. Categories are omitted unless you set the categories parameter. Additional metadata appears inside properties.addendum using provider-specific keys.
Error handling
Section titled “Error handling”- Invalid identifier formats or missing
idsparameters returnHTTP 400. - Unknown
gidvalues yieldHTTP 404with an empty feature list. - Treat
HTTP 5xxresponses as transient and retryable.