ArcGIS REST JS is an open-source, compact, and easy-to-use wrapper around the ArcGIS REST APIs that simplifies working with these services in any TypeScript or JavaScript application. Learn how to integrate ArcGIS services such as routing, geocoding, demographic and feature layers into your Node.js and browser applications. We’ll also show how to use ArcGIS REST JS to manage your organization’s content, users, and groups.
Most of the slides are made available at Esri Events > Proceedings.
Related session: Building Web Apps with Open Source Mapping APIs
Below are links to video recorings, slides, and demo code for ArcGIS REST JS technical sessions from previous Esri Developer and Technology Summits:
- Scripting & Automating Developer Credentials & Data Services with ArcGIS REST JS (2025)
- Using ArcGIS REST JS to Build Apps with ArcGIS Location Platform Services (2025)
- Scripting and Automating Your Organization with ArcGIS REST JS (2024)
- Working with the ArcGIS REST JS (2023)
- Working with the ArcGIS REST JS (2022)
- ArcGIS REST JS: Working with Users, Groups, Items, and Features (2021)
Resources: Session details | Slides | Repository
| Demo title | Demo video | Source code |
|---|---|---|
| Manage API key rotation | Demo (10:13) | api-key-rotation |
| Query API keys expiring in the next 31 days | Demo (17:45) | api-keys-by-expiration |
| Audit OAuth apps | Demo (20:52) | audit-oauth-apps |
| Create new feature service | Demo (25:59) | create-feature-service |
| Add data to a feature service | Demo (30:54) | edit-feature-service |
| Batch geocoding | Demo (35:18) | batch-geocode |
Resources: Session details | Slides | Repository
| Demo title | Demo video | Source code |
|---|---|---|
| Geocoding address autocomplete (no map) | Demo (8:14) | address-autocomplete |
| Elevation service & profile within ArcGIS Maps SDK for JavaScript | Demo (14:35) | elevation |
| Places service + Leaflet | Demo (19:07) | place-browser |
| Routing service (simple routes) + Leaflet | Demo (26:06) | routing/index.html |
| Routing service (closest facility) + Leaflet | Demo (30:44) | routing/closest-facility.html |
| Query feature layers (mapless) | Demo (35:07) | feature-service |
| Demographics services + MapLibre GL JS | Demo (42:04) | demographics |
Resources: Session details | Slides | Repository
| Demo title | Demo video | Source code |
|---|---|---|
| Browser OAuth | Demo (11:44) | basic-browser-oauth |
| Advanced server-side OAuth | Demo (17:32) | advanced-server-oauth |
| Batch geocode | Demo (28:13) | batch-geocode |
| Protect items to be deleted | Demo (35:27) | protect-web-map |
Resources: Session details | Slides | Repositories (multiple, below)
| Demo title | Demo video | Source code |
|---|---|---|
| Advanced server-side OAuth | Demo (7:51) | express-oauth-advanced |
| Node JS CLI Item Management | Demo (20:55) | node-cli-item-management |
| Suggest locations | Demo (26:33) | react-geocoder |
| Spatial analysis (async/jobs) | Demo (30:37) | job |
| Places service | Demo (35:06) | n/a |
Resources: Session details (n/a) | Slides | Repositories
| Demo title | Demo video | Source code |
|---|---|---|
| Browser OAuth 2 | Demo (23:21) | oauth2-browser |
Resources: Session details (n/a) | Slides | Repositories (multiple, below)
| Demo title | Demo video | Source code |
|---|---|---|
| Browser OAuth 2 | Demo (25:20) | oauth2-browser |
| Combine ArcGIS REST JS with the JS SDK | Demo 28:43 | Files in Gist |
| Organization cleaner | Demo (38:46) | org-cleaner |
| Server side OAuth 2 | Demo (42:39) | express |