ArcGIS REST JS is designed to:
- Simplify making requests to ArcGIS location services and ArcGIS Enterprise services to perform operations such as data queries, geocoding, routing, demographic queries, content management, and administration tasks.
- Make it easier to implement and support different authentication patterns.
- Be usable in a wide variety of scenarios out-of-the-box, including via a CDN, in NodeJS and popular module bundlers like: webpack, Rollup, and Parcel.
- Have a minimal size footprint, including being easy to tree-shake to reduce size.
- Have consistant, reliable ways to process and handle errors.
- Work in modern browsers and Node JS.
ArcGIS REST JS divides functionality into the following packages:
@esri/arcgis-rest-request: Core package containing request/response processing, authentication helpers and error handling.
@esri/arcgis-rest-feature-service: Provides functions to query and edit features in hosted feature layers.
@esri/arcgis-rest-geocoding: A geocoding wrapper for ArcGIS REST JS.
@esri/arcgis-rest-routing: A routing and directions wrapper for ArcGIS REST JS.
@esri/arcgis-rest-demographics: To access the GeoEnrichment service.
@esri/arcgis-rest-portal: To access and manage users, group and content an ArcGIS Portal.