What are web maps?

A web map is a JSON object that contains the settings for a map A map is a collection of layers that are displayed in 2D. It is typically composed of a basemap layer and data layers. Learn more . It it typically stored in ArcGIS Platform ArcGIS Location Platform, formerly known as ArcGIS Platform, is a Platform as a Service (PaaS) product that gives developers access to location services, APIs, and tools to build mapping and spatial analysis applications. It is subscription-based and requires an ArcGIS Location Platform account. Learn more where it can be accessed by a number of different applications. Web maps are defined by the Web Map Specification and contain configuration settings for the map extent, basemap, layers, layer styles, pop-ups and more.

An example web map on ArcGIS Online ArcGIS Online is a GIS mapping, analytics, data hosting, and content management software as a service (SaaS) product. It includes applications, tools, APIs, and location services for users and developers. It is subscription-based and requires an ArcGIS Online account. Learn more is Parks and Open Space, Trails, and Trailheads in Santa Monica.

Why use web maps?

Web maps can be created in ArcGIS Online ArcGIS Online is a GIS mapping, analytics, data hosting, and content management software as a service (SaaS) product. It includes applications, tools, APIs, and location services for users and developers. It is subscription-based and requires an ArcGIS Online account. Learn more and ArcGIS Pro ArcGIS Pro is a professional desktop GIS application that can explore, visualize, analyze, and manage 2D and 3D data. Learn more , and displayed in many other applications such as Navigator, Field Maps, Storymaps, Esri’s configurable apps, and apps built with the ArcGIS APIs and SDKs. When an application loads a web map, it automatically loads previously saved configuration settings, making it easy to develop applications and share 2D maps across the ArcGIS platform ArcGIS Location Platform, formerly known as ArcGIS Platform, is a Platform as a Service (PaaS) product that gives developers access to location services, APIs, and tools to build mapping and spatial analysis applications. It is subscription-based and requires an ArcGIS Location Platform account. Learn more .

For example, a web map created and stylized to use pop-ups in ArcGIS Online can be consumed by a REST API request, and then displayed on a web page with the ArcGIS API for JavaScript or imported into ArcGIS Pro.

The Web Map Specification

The Esri Web Map Specification is a JSON specification that defines the structure and contents of a web map for sharing, creating, editing, visualizing, and consuming web maps across the entire ArcGIS Platform.

As JSON files, web maps can be hosted on an ArcGIS Server and consumed with the REST API. Technically, web maps are Content Items stored in ArcGIS Platform, ArcGIS Online, or ArcGIS Enterprise.

Every web map has a unique item ID, and may be made public or restricted to certain groups and users.

For example, the Santa Monica web map is public and has the unique ID: 6712da5c872c44deaf24499e6f6c2d2b.

You can view this web map in JSON format by making a REST API Content Item operation request with the following URL:

https://www.arcgis.com/sharing/rest/content/items/6712da5c872c44deaf24499e6f6c2d2b/data

The truncated JSON response for this REST call is below.

{
"operationalLayers": [
{
"id": "Boundary_1356",
"layerType": "ArcGISFeatureLayer",
"url": "https://services3.arcgis.com/GVgbJbqm8hXASVYi/arcgis/rest/services/Boundary/FeatureServer/0",
"visibility": true,
"opacity": 1,
"title": "Boundary",
"itemId": "30cf3b4c11c5408d87f255ba4e9aa611",
"disablePopup": true
},
{
"id": "Parks_and_Open_Space_2992",
"layerType": "ArcGISFeatureLayer",
"url": "https://services3.arcgis.com/GVgbJbqm8hXASVYi/arcgis/rest/services/Parks_and_Open_Space/FeatureServer/0",
"visibility": true,
"opacity": 0.51,
"title": "Parks and Open Space",
"itemId": "f2ea5d874dad427294641d2d45097c0e",
"layerDefinition": {
"drawingInfo": {
"renderer": {
"visualVariables": [
{
"type": "sizeInfo",
"target": "outline",
"expression": "view.scale",
"valueExpression": "$view.scale",
"stops": [
{
"size": 1.5,
"value": 9501
},
/* ... */
]
}
],
"type": "uniqueValue",
"field1": "TYPE",
"uniqueValueInfos": [
{
"value": "Local Park",
"symbol": {
"color": [
158,
85,
156,
255
],
"outline": {
"color": [
153,
153,
153,
128
],
"width": 0.75,
"type": "esriSLS",
"style": "esriSLSSolid"
},
"type": "esriSFS",
"style": "esriSFSSolid"
},
"label": "Local Park"
},
/* ... */
]
}
},
"minScale": 4622325,
"maxScale": 0
},
"popupInfo": {
"title": "Parks_and_Open_Space",
"fieldInfos": [
{
"fieldName": "FID",
"label": "FID",
"isEditable": false,
"tooltip": "",
"visible": true,
"format": {
"places": 0,
"digitSeparator": true
},
"stringFieldOption": "textbox"
},
/* ... */
],
"description": null,
"showAttachments": true,
"mediaInfos": []
}
},
{
"id": "Trails_7558",
"layerType": "ArcGISFeatureLayer",
"url": "https://services3.arcgis.com/GVgbJbqm8hXASVYi/arcgis/rest/services/Trails/FeatureServer/0",
"visibility": true,
"opacity": 1,
"title": "Trails",
"layerDefinition": {
"drawingInfo": {
"renderer": {
"type": "uniqueValue",
"field1": "USE_BIKE",
"uniqueValueInfos": [
{
"value": "Yes",
"symbol": {
"color": [
26,
26,
26,
255
],
"width": 0.9,
"type": "esriSLS",
"style": "esriSLSDot"
},
"label": "Bikes"
},
{
"value": "No",
"symbol": {
"color": [
230,
0,
0,
255
],
"width": 0.9,
"type": "esriSLS",
"style": "esriSLSDot"
},
"label": "No Bikes"
}
]
}
}
},
"popupInfo": {
"title": "Trails_0",
"fieldInfos": [
{
"fieldName": "OBJECTID",
"label": "OBJECTID",
"isEditable": true,
"tooltip": "",
"visible": false,
"format": {
"places": 0,
"digitSeparator": true
},
"stringFieldOption": "textbox"
},
/* ... */
],
"description": null,
"showAttachments": true,
"mediaInfos": []
}
},
{
"id": "Trailheads_8053",
"layerType": "ArcGISFeatureLayer",
"url": "https://services3.arcgis.com/GVgbJbqm8hXASVYi/arcgis/rest/services/Trailheads/FeatureServer/0",
"visibility": true,
"opacity": 1,
"title": "Trailheads",
"layerDefinition": {
"drawingInfo": {
"renderer": {
"type": "simple",
"symbol": {
"angle": 0,
"xoffset": 0,
"yoffset": 0,
"type": "esriPMS",
"url": "http://static.arcgis.com/images/Symbols/NPS/npsPictograph_0231b.png",
"imageData": "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",
"contentType": "image/png",
"width": 10.5,
"height": 10.5
}
}
}
},
"popupInfo": {
"title": "Trailheads",
"fieldInfos": [
{
"fieldName": "OBJECTID",
"label": "OBJECTID",
"isEditable": true,
"tooltip": "",
"visible": false,
"format": {
"places": 0,
"digitSeparator": true
},
"stringFieldOption": "textbox"
},
/* ... */
],
"description": null,
"showAttachments": true,
"mediaInfos": []
}
}
],
"baseMap": {
"baseMapLayers": [
{
"id": "VectorTile_1818",
"type": "VectorTileLayer",
"layerType": "VectorTileLayer",
"title": "World Topographic Map",
"styleUrl": "https://www.arcgis.com/sharing/rest/content/items/86d5ed4b6dc741de9dad5f0fbe09ae95/resources/styles/root.json",
"itemId": "86d5ed4b6dc741de9dad5f0fbe09ae95",
"visibility": true,
"opacity": 1
}
],
"title": "World Topographic Map"
},
"spatialReference": {
"wkid": 102100
},
"authoringApp": "WebMapViewer",
"authoringAppVersion": "7.3",
"version": "2.15",
"applicationProperties": {
"viewing": {
"routing": {
"enabled": true
},
"basemapGallery": {
"enabled": true
},
"measure": {
"enabled": true
}
}
}
}

Creating a web map

While you can create web maps with your favorite text editor, Esri provides many tools to quickly create web maps.

ArcGIS Online

The easiest way to author a web map is to use ArcGIS Online’s Map Viewer application.

You can refer to the ArcGIS Online documentation or the create a web map ArcGIS tutorial to get started.

ArcGIS Pro

ArcGIS Pro supports authoring and sharing web maps. Refer to the author a web map topic in the ArcGIS Pro help.

ArcGIS API for JavaScript

See the Save a web map sample. Authoring web maps with the ArcGIS API for JavaScript is planned for a future release.

ArcGIS Maps SDKs for Native Apps

The Native Maps SDKs allow you to create and share web maps. Refer to the documentation of each individual SDK to get started.

Create and save a web map in Kotlin, Swift, .NET, Qt, and Flutter.

Displaying a web map

All ArcGIS APIs and SDKs can display web maps. Because they all share a common reference with the Web Map Specification, the map will render the same on all devices.

ArcGIS API for JavaScript

Refer to the display a web map tutorial for a short walk-through on how to display a web map with the ArcGIS API for JavaScript.

ArcGIS Maps SDKs for Native Apps

All Native Maps SDKs have the capability to render a web map. Refer to the ArcGIS tutorials for a short walk-through on how to display a web map in your selected API.

Display a web map in Kotlin, Swift, .NET, Qt, or Flutter.

ArcGIS Configurable apps

You can also display web maps using app templates and builders in ArcGIS Online.

To create an application, see the tutorial to create a map in ArcGIS Online.

Alternatively, browse through all available configurable apps.