Learn how to access the GeoEnrichment service.
The GeoEnrichment service provides global demographic data for 170 countries and regions. To get globally available information, you use the Key
data collection, which returns information for the total population, total households, average household size, and total population for males and females for a study area.
In this tutorial, you use ArcGIS REST JS to access the GeoEnrichment service and display global data for Eastern Europe.
Prerequisites
An ArcGIS Location Platform or ArcGIS Online account.
Steps
Get the starter app
Select a type of authentication below and follow the steps to create a new application.
Set up authentication
Create developer credentials in your portal for the type of authentication you selected.
Set developer credentials
Use the API key or OAuth developer credentials so your application can access location services.
Make the request
You can copy and paste the code below, following the steps to make a request to the GeoEnrichment service.
-
Reference the
arcgis-rest-request
andarcgis-rest-demographics
libraries either through CDN, ES Modules, or Node JS. -
Define the parameters needed for the request. To return global data, set the
data
parameter toCollections ["
.Key Global Facts"] -
Call the Geoenrichment service and handle the results.
<script>
/* when including ArcGIS REST JS all exports are available
from the same arcgisRest global */
/* Use for API key authentication */
const accessToken = "YOUR_ACCESS_TOKEN";
const authentication = arcgisRest.ApiKeyManager.fromKey(accessToken);
// or
/* Use for user authentication */
// const authentication = await arcgisRest.ArcGISIdentityManager.beginOAuth2({
// clientId: "YOUR_CLIENT_ID", // Your client ID from OAuth credentials
// redirectUri: "YOUR_REDIRECT_URL", // The redirect URL registered in your OAuth credentials
// portal: "https://www.arcgis.com/sharing/rest" // Your portal URL
// })
arcgisRest
.queryDemographicData({
studyAreas: [{ geometry: { x: 0.1278, y: 51.5074 } }], // London
dataCollections: ["KeyGlobalFacts"],
authentication: authentication
})
.then((response) => {
console.log("Demographics:", response);
document.getElementById("result").textContent = JSON.stringify(response, null, 2);
});
</script>
Run the app
Run the app.
The result should look similar to this.What's next?
Learn how to use additional ArcGIS location services in these tutorials: