--- title: New normalized 'locations' property in job results description: The Jobs Search endpoint now returns a normalized locations array for each job with structured geographic data including coordinates, administrative divisions, and country codes based on the GeoNames database. url: https://theirstack.com/en/product-updates/2025-08-08-locations-property --- The [Jobs Search endpoint](/en/docs/api-reference/jobs/search_jobs_v1) now returns a `locations` property for each job. It's an array of Location objects with comprehensive geographic data based on the GeoNames database. Each location object includes: **Core Location Information:** - `id` – ID of the location in GeoNames. - `name` – The name of the location. If it's a city, it will be the city name; if it's a country, it will be the country name; if it's a region, it will be the region name, etc (e.g., "New York City", "Germany") - `type` – The type of location (e.g., "city", "country", "region") - `feature_code` – GeoNames feature code (e.g., "PPL" for populated place, "ADM1" for first-order administrative division, "PCLI" for country...). Check all the possible feature codes [here](https://www.geonames.org/export/codes.html). - `feature_class` – GeoNames feature class (e.g., "P" for cities or towns, "A" for countries, states, regions...). Each one of the possible feature classes is each one of the sections in [here](https://www.geonames.org/export/codes.html). **Geographic Coordinates:** - `latitude` – Geographic latitude coordinate for precise mapping - `longitude` – Geographic longitude coordinate for precise mapping **Administrative Divisions:** - `admin1_name` – First-level administrative division name (e.g., "California", "New York") - `admin1_code` – First-level administrative division code (e.g., "CA", "NY") - `admin1_id` – GeoNames ID for the first-level administrative division - `admin2_name` – Second-level administrative division name (e.g., county or district) - `admin2_code` – Second-level administrative division code - `admin3_code` – Third-level administrative division code - `admin4_code` – Fourth-level administrative division code **Country and Continent:** - `country_code` – ISO 3166-1 alpha-2 country code (e.g., "US", "DE") - `country_id` – GeoNames ID for the country - `continent` – Continent code (e.g., "NA", "EU", "AS") Here's an example location object: ``` [ { "admin1_code": "NY", "admin1_id": "5128638", "admin1_name": "New York", "continent": "NA", "continent_id": "6255149", "country_code": "US", "country_id": "6252001", "feature_class": "P", "feature_code": "PPL", "id": "5128581", "latitude": 40.71427, "longitude": -74.00597, "name": "New York City" } ] ``` We've built a location parsing system that works like a universal translator for addresses. It doesn't just standardize formats—it also adds missing geographic coordinates and validates addresses to create a complete location profile for every job posting. This turns scattered location fragments into precise, searchable geographic data. See our [location normalization docs](/en/docs/data/job/data-workflow#cleaning--standardization)