compact, modular JavaScript wrappers for the ArcGIS REST API
Clone or download
Latest commit fdae3b6 Nov 19, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
.vscode fix(request): ensure falsy request parameters are passed through Mar 3, 2018
demos v1.14.0 Nov 14, 2018
docs missed a few Nov 14, 2018
notes fixed spelling Oct 23, 2018
packages Merge pull request #396 from COV-GIS/fix-crud-param-names Nov 19, 2018
support revert move to unfetch Nov 14, 2018
.gitignore fix(🔍): allow node.js clients to access streams Oct 29, 2018
.prettierignore chore(prettier): ignore package.json and package-lock.json Dec 22, 2017
.travis.yml chore(ci): only build the master branch & PRs Oct 9, 2018 v1.14.0 Nov 14, 2018 add license, update urls (#57) Sep 29, 2017 chore(👀): watch raw source for changes and recompile Oct 15, 2018
LICENSE add license, update urls (#57) Sep 29, 2017 chore(👀): watch raw source for changes and recompile Oct 15, 2018
jasmine.json feat(request): allow passing custom fetch function Sep 13, 2017
karma.conf.js chore(security): bump devDependencies to resolve security vulnerability Apr 30, 2018
lerna.json v1.14.0 Nov 14, 2018
package-lock.json refactor(decodeValues): short circut out of decoding values if there … Nov 19, 2018
package.json v1.14.0 Nov 14, 2018
tsconfig.json baseline item CRUD methods Nov 6, 2017
tslint.json feat: by default fetch metadata and make query response readable Nov 12, 2018
umd-base-profile.js less is more Jul 31, 2018
umd-production-profile.js chore(umd): make umd filenames more terse May 14, 2018

npm version build status Coverage Status apache 2.0 licensed


compact, modular JavaScript wrappers for the ArcGIS REST API that run in Node.js and modern browsers.

Table of Contents


import { request } from '@esri/arcgis-rest-request';

const url = "";

    .then(response => {
        console.log(response) // WebMap JSON

API Reference

The documentation is published at (source code here).


You can install dependencies (and bootstrap lerna) by cloning the repository and running:

npm install

Afterward, for a list of all available commands run npm run.

Some useful commands include:

  • npm test runs all the tests and confirms the API is functioning as expected.
  • There is also a Debug Node Tests configuration in the .vscode/launch.json which will run the Node tests in the VS Code debugger.
  • npm run docs:serve will run the documentation site locally at http://localhost:3000
  • npm run build will created UMD bundles for all the packages
  • npm run dev -- <esm|node|umd> <glob> will re-run the specified build type anytime the source code changes. Example: npm run dev -- umd @esri/*


Frequently Asked Questions


If something isn't working the way you expected, please take a look at previously logged issues first. Have you found a new bug? Want to request a new feature? We'd love to hear from you.

If you're looking for help you can also post issues on GIS Stackexchange.


For transparency into the release cycle and in striving to maintain backward compatibility, @esri/arcgis-rest-js is maintained under Semantic Versioning guidelines and will adhere to these rules whenever possible.

For more information on SemVer, please visit


Esri welcomes contributions from anyone and everyone. Please see our guidelines for contributing.


Copyright © 2018 Esri

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

A copy of the license is available in the repository's LICENSE file.