Find answers and key resources for successfully building apps with Leaflet and ArcGIS.
General
This guide is for:
- New developers interested in building mapping applications using ArcGIS and Leaflet.
- ArcGIS developers who want to use an open-source library like Leaflet to display maps in web applications.
- Leaflet developers who want to integrate ArcGIS services in their applications.
Use MapLibre GL JS together with the Esri Leaflet plugin to display ArcGIS basemap styles, access data, and perform location search.
To access other ArcGIS Location Services, such as the ArcGIS Routing, Places, Elevation, and GeoEnrichment services, use ArcGIS REST JS. You can display the results from the services in a Leaflet application.
Yes! version 2.x of Esri Leaflet is compatible with Leaflet version 1.x.
If you'd like to continue building applications that target Leaflet 0.7.x, please use Esri Leaflet 1.x.
Most modern browsers and versions of Node.js are supported. Go to Browser support to see the specific browser versions.
You can find the official community at Esri Community.
In general, Esri Leaflet is a smaller and lighter-weight library for accessing ArcGIS services.
You may want to use Esri Leaflet if you:
- Are already using Leaflet.
- Have an existing application and you want to integrate ArcGIS services.
- Still want to leverage non-ArcGIS services or data.
- Want to leverage Leaflet plugins.
You may want to use ArcGIS Maps SDK for JavaScript if you:
- Need tighter integration with ArcGIS.
- Need to work with web maps.
- Need to access and display all layer types.
- Need Web GL support.
- Need to work in non-Mercator/WGS 84 projections.
No. To work with web maps, you should use the ArcGIS Maps SDK for JavaScript.
Feel free to ask questions in the Esri Community.
To contribute, create an issue and pull request in the Esri Leaflet GitHub repository.
ArcGIS services
ArcGIS services are software that support an ArcGIS REST API and provides geospatial functionality or data. ArcGIS provides many types of services, such as location services, data services and spatial analysis services.
The ArcGIS Basemap Styles service does not support 3D basemaps. Your options are:
- Get an ArcGIS Online subscription.
- Find an ArcGIS scene layer.
- Use ArcGIS Maps SDK for JavaScript or ArcGIS Maps SDKs for Native Apps to load the scene layers.
- If you are using ArcGIS Location Platform and want to display 3D basemaps, contact Esri.
Esri Leaflet has built in functionality to access the following ArcGIS services:
- ArcGIS Basemap Styles service
- ArcGIS Static Basemap Tiles service
- ArcGIS Geocoding service
- Vector tile service
- Map tile service
- Map service
- Feature service
You can also access other services such as the ArcGIS Routing service or ArcGIS GeoEnrichment service by using L.esri.request or ArcGIS REST JS. To see examples of how to use ArcGIS REST JS, go to Routing and Data enrichment.
You need either an ArcGIS Location Platform account or ArcGIS Online account to access ArcGIS Location Services. This will give you the ability to access the portal, create developer credentials, and manage your data.
You can not use an ArcGIS Enterprise account to access ArcGIS Location Services.
The table below shows the account types you can use to access each service:
ArcGIS Location Services
Yes, you need to provide an API key or implement another type of authentication to access ArcGIS Location Services.
ArcGIS Enterprise services
For services that are private, yes, you need to provide authentication to access ArcGIS Enterprise services. You typically implement OAuth 2.0 to do so. Public services do not require authentication.
To learn more about the different types of authentication, go to Types of authentication.
To learn more about ArcGIS Location Services and capabilities, go to the Mapping and location services guide.
To learn more about ArcGIS Enterprise services and capabilities, go to the REST API documentation.
Data services
Data services are services created dynamically to securely store, manage, and provide access to your data in portal. Some of the types of services that can be created are:
- Feature services
- Vector tile services
- Map tile services
- Image services
Data services are typically created by importing data with the data management tools. A unique URL for the service is assigned by the system when it is created.
The type of data service you use depends on the product you have, the format of your existing data, storage and output data format requirements, the size and complexity of the data, and the service functionality required.
Below is an overview of the main services and the data type each supports.
| Data service | Data type | Data output | Use cases |
|---|---|---|---|
| Feature service | Feature (geometry and/or attributes) | JSON, PBF, GeoJSON | Display, visualization, editing, updating, accessing geometry, accessing attributes |
| Vector tile service | Vector tile | PBF | Display, styling, accessing attributes |
| Map tile service | Map tile | PNG32 | Display |
| Image service | Static and dynamic tiles | JPEG, PNG, LERC | Display, visualization, anlaysis, mosaicking images |
Yes, Esri offers data hosting through ArcGIS Location Platform, ArcGIS Online and ArcGIS Enterprise (Portal for ArcGIS) that allow you to securely store, manage, and access your geographic data as hosted data services.
ArcGIS Location Platform and ArcGIS Online allow you to publish your data as hosted layers, which are hosted and managed by Esri's cloud infrastructure. This includes hosted feature layers, vector tile layers, and map tile layers.
With ArcGIS Enterprise, you can host data services in your own portal's infrastructure and managed database. This gives you more control but requires maintaining your own servers.
You can import and host many different types of geographic data as data services. The main requirement is that the incoming data has geometry coordinates and/or attributes (fields). The main storage formats are features, vector tiles, and map tiles. Some common file types include CSV, XLS, GeoJSON, Shapefile, and File Geodatabase files.
To learn more about supported data types, go to Portal and data services > Data services.
Esri Leaflet plugin supports many different data services, such as feature services, vector tile services, and map tile services. The plugin has built-in classes to access the services and load the data into a Leaflet map.
An access token is required for private data services.
No, your data is your data. You retain complete ownership of your content.
Service usage and billing
- ArcGIS Online: As an organization administrator, use the ArcGIS portal to generate reports on basemap usage.
- ArcGIS Location Platform: Use your ArcGIS Location Platform dashboard to view basemap session and tile usage. To learn more, see Basemap usage .
The cost to access ArcGIS location services depends on the type of ArcGIS account you have and the service operation you use.
-
If you have an ArcGIS Location Platform account, you are billed in US dollars. To determine the cost of accessing different services, go to Pricing. A free tier of access is available for some services.
-
If you have an ArcGIS Online account, you are billed in credits. To determine the cost of accessing different services, go to Understanding credits.
If you have ArcGIS Enterprise, there is no cost for accessing your own ArcGIS services.
To find the Esri Terms of Use, go to Terms of use.