Skip to content

ArcGIS REST JS is a lightweight, open source JavaScript library for working with the ArcGIS REST APIs in client-side web apps and server-side Node.js environments. It provides wrapper classes for accessing ArcGIS services to build mapping and spatial analysis applications. Common tasks include querying data, geocoding, routing, and managing portal content.

ArcGIS REST JS does not render maps or visual elements. It is designed to be flexible and works in both browser (client side) and server side JavaScript environments, as well as across different module systems. The library is distributed as native ES modules, CommonJS modules, and UMD modules.

Capabilities

ArcGIS REST JS provides a lightweight, modular design for accessing ArcGIS REST API service endpoints. Its capabilities include:

Packages

ArcGIS REST JS divides functionality into separate packages. This structure helps reduce application size by including only the functionality an application needs. All packages have a peer dependency on @esri/arcgis-rest-request that handles authentication.

PackageDescription
@esri/arcgis-rest-requestCore package for request and response handling, authentication, and error processing. Required for all other packages.
@esri/arcgis-rest-feature-serviceProvides functions to query and edit features in hosted feature layers.
@esri/arcgis-rest-geocodingA geocoding wrapper for ArcGIS REST JS.
@esri/arcgis-rest-routingA routing and directions wrapper for ArcGIS REST JS.
@esri/arcgis-rest-demographicsAccesses the ArcGIS GeoEnrichment service.
@esri/arcgis-rest-elevationAccesses the ArcGIS Elevation service.
@esri/arcgis-rest-placesAccesses the ArcGIS Places service.
@esri/arcgis-rest-portalAccesses and manages users, groups, and content in an ArcGIS Portal.
@esri/arcgis-rest-developer-credentialsManages API keys and OAuth 2.0 application credentials.
@esri/arcgis-rest-basemap-sessionsHelpers for starting and managing basemap sessions in ArcGIS REST JS.

More resources

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.