arcgis-rest-js icon indicating copy to clipboard operation
arcgis-rest-js copied to clipboard

compact, modular JavaScript wrappers for the ArcGIS REST API

npm version gzip bundle size Coverage Status apache 2.0 licensed

@esri/arcgis-rest-js

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

Table of Contents

  • Example
  • API Reference
  • Instructions
  • Packages
  • FAQ
  • Issues
  • Versioning
  • Contributing
  • Code of Conduct
  • CHANGELOG
  • License

Example

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

const url =
  "https://www.arcgis.com/sharing/rest/content/items/6e03e8c26aad4b9c92a87c1063ddb0e3/data";

request(url).then((response) => {
  console.log(response); // WebMap JSON
});

API Reference

The documentation is published at http://esri.github.io/arcgis-rest-js/ (source code here).

Instructions

You can install dependencies by cloning the repository and running:

npm install

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

For all packages

  • npm run build - builds all distributions of every package with ultra, inside each package builds are done in parallel with npm-run-all. Output is errors only.
  • npm run build:esm, npm run build:cjs, npm run build:bundled - as as the above but only one of our target distributions.
  • npm run dev:esm, npm run dev:cjs, npm run dev:bundled - runs the appropriate watch command in all packages.

For a specific package

  • npm run build -w @esri/arcgis-rest-request - run all builds in a specific workspace
  • npm run dev -w @esri/arcgis-rest-request - run all dev commands in a specific workspace
  • npm run build:esm -w @esri/arcgis-rest-request - run the esm build in a specific workspace
  • npm run dev:esm -w @esri/arcgis-rest-request - run the esm dev command in a specific workspace
  • npm run build:cjs -w @esri/arcgis-rest-request - run the common js build in a specific workspace
  • npm run dev:cjs -w @esri/arcgis-rest-request - run the common js dev command in a specific workspace
  • npm run build:bundled -w @esri/arcgis-rest-request - run the rollup build in a specific workspace
  • npm run dev:bundled -w @esri/arcgis-rest-request - run the rollup dev command in a specific workspace

Packages

  • @esri/arcgis-rest-request - Core module implementing basic request code, shared TypeScript types and common utilities.
  • @esri/arcgis-rest-portal - Methods for working with ArcGIS Online/Enterprise content and users.
  • @esri/arcgis-rest-feature-service - Functions for querying, editing, and administering hosted feature layers and feature services.
  • @esri/arcgis-rest-geocoding - Geocoding wrapper for @esri/arcgis-rest-js
  • @esri/arcgis-rest-routing - Routing and directions wrapper for @esri/arcgis-rest-js.

Issues

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 Stack Overflow with the esri-oss tag.

Versioning

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 http://semver.org/.

Contributing

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

License

Copyright © 2017-2022 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

http://www.apache.org/licenses/LICENSE-2.0

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.