Frequently Asked Questions

Getting started

How do I get started building apps with the ArcGIS API for JavaScript?

Refer to the Get started guide topic to learn how to install and set up the API. There are a variety of resources for coming up to speed on building apps with the API. For example:

What are some helpful resources for learning JavaScript?

There are many great, free resources out there for learning JavaScript. Some of our favorites are Codecademy, Free Code Camp, and MDN JavaScript tutorials.

Can I use the ArcGIS API for JavaScript with frameworks (e.g. React, Angular) and build tools?

Yes, you can use ES modules to easily integrate the ArcGIS API for JavaScript with frameworks and build tools.

Should I use AMD or ES modules?

The API is available as AMD and ES modules. To decide what's best for you, see the Introduction to tooling guide page.

Am I allowed to modify the ArcGIS API for JavaScript?

No. The code for the ArcGIS API for JavaScript cannot be modified. See the terms of use for more information.

Working in 3D

What is the best way to come up to speed on building 3D web apps?

For learning about 3D basics in the 4.x API, check out the Fundamentals for Building 3D Web Apps Developer Summit technical session video. It provides an overview of the 3D platform, core concepts, key API functionality, data and more. To learn more about 3D visualization, check out these guide pages. There are also several 10 minute, step-by-step coding tutorials and samples: Display a scene tutorial and SceneView samples.

Does 3D run on the browser on my phone?

Yes, the 4.x API works with 3D scenes in the browser on your phone without a plugin. All you need is a URL to your app to interact with your data in 3D. Here’s a helpful video on building progressive web applications with the 4.x API. And here is a blog discussing an interesting example of 3D web mapping on mobile devices. The Hardware Requirements page has more information as well as a list of supported mobile devices.

Where can I learn about using BIM?

There are multiple resources related to using BIM, or Building Information Modeling, data with the 4.x API including videos, blog posts and samples. Here are two DevSummit technical session videos: Create 3D Planning Web Apps using BIM and Editing Capabilities and Roadmap for BIM-GIS Interoperability. There is also blog post that discusses Common Patterns for BIM and GIS Integration. The blog covers drivers for integration, patterns for data interchange and more. There are also several API samples.

Where can I learn about and find data for 3D web apps?

Working in 3D, you can incorporate real-world elements with your content such as variations in terrain and realistic rendering of trees, buildings, and subsurface geology. Learn about the different types of scene layers for displaying and analyzing 3D data with the 4.x API. You can also browse for ready-made example 3D scenes in the ArcGIS Living Atlas. There is a Practical Guide for Building a 3D Web App from 2D data technical session video where you learn about building sophisticated 3D apps that leverage modern browser technology to render your 2D features with 3D symbology.

Versioning and change management

What is the planned release schedule for future 4.x releases?

We release four times a year. Version 4.22 is planned for winter 2021, and version 4.23 is planned for spring 2022.

How are breaking changes managed?

Before upgrading to a newer version of the API, we recommend thoroughly reviewing the latest breaking changes section of the release notes. Please refer to the Breaking changes guide topic for a complete list of breaking changes across all releases of the 4x API. Here are our general guidelines for introducing breaking changes:

  • Major breaking changes are phased in over three or more releases. An example of this was the switch to WebGL-only rendering. The first release offers the functionality as opt-in. In the second release the functionality is on by default with an opt-out option. Then after the third release the functionality is removed.
  • Minor breaking changes, such as a property that was renamed, is phased in over two or more releases. The first release provides a console message and documentation update. After two or more releases the functionality is removed.

While we follow these guidelines as much as possible, there are infrequent circumstances when we will introduce changes without prior notice. For example, breaking changes related to browser security updates. Another example could be changes required in order to introduce a new feature: in this scenario we will weigh delaying the release of the feature against the downside of introducing a breaking change without notice.

What does the beta tag mean?

Production releases of the ArcGIS API for JavaScript sometimes have one or more capabilities that are released with a beta label. If you try out a feature in beta and it meets your app's requirements, you can use it in your app. Here is what the beta label means:

  • We are interested in gathering feedback with respect to ease of use of the API and whether the functionality adequately meets developer use-cases.
  • In some cases, aspects of the capability haven't been implemented yet, for example it might not support all layer types yet. In those cases, limitations will be noted in the API reference.
  • Beta functionality is tested but still provisional. API, behavior and end-user experience might change based on feedback or an improved design.
  • Configuration for some beta capabilities may not be saved to web maps and web scenes.
  • If you later decide to upgrade your application to a new API version, there might be code changes required in order for the capability to continue to work properly (due to # 3 above).
  • Esri's standard policies for beta software can be found at

ArcGIS Enterprise support

Which versions of ArcGIS Enterprise does 4.x work with?

The ArcGIS API for JavaScript 4.x works with supported versions of ArcGIS Enterprise - see the Product Life Cycle support page. Note that for example, ArcGIS 10.3 was retired on December 1, 2020. Non-supported versions might still work to different degrees, but are not being tested (or supported) with the API.

Migrating from 3.x

What is the status of ArcGIS API 3.x for JavaScript?

We are continuing to release version 3.x with bug fixes only (essentially maintenance mode). See the Product Life Cycle support page for more information.

Our premier web mapping API, version 4.x, offers optimized performance and an extensive suite of capabilities far beyond what 3.x provides with a few exceptions. Developers should use version 4.x for all new web apps and evaluate whether it makes sense to migrate existing 3.x-based applications to 4.x based on app requirements and strategy.

What is the best process to migrate from version 3.x to version 4.x?

There have been significant changes to the object model in order to enable higher productivity and effectiveness. Due to these major changes in the API, the cleanest approach is to re-write apps from scratch when building with the 4.x API. For more information, see Migrating from 3.x to 4.21 or the functionality matrix.

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