Developing with web maps
The ArcGIS.com map viewer allows you to quickly and easily create and share web maps that tell interesting stories about your data. They may explain where people are buying homes, sea surface temperature is changing, or elephants migrate in the summer. These maps share information, not just data.
Often, a web map displays a map service with operational data (such as available stands of timber) on top of a map service with reference information (such as imagery or a shaded relief map). Sometimes a reference map service that contains boundaries or labels is placed on top of the other layers to create a map sandwich: two reference layers with the meat, or operational data, in between.
Customizing a basic web map
Once you've created a basic web map with the ArcGIS.com map viewer, you can further customize the appearance of the map by defining an extent, reordering and renaming layers, setting transparency for layers, and changing the rendering of features you've added. You can also configure pop-up windows to display formatted text, images, charts, and more. For example, you might create a map like the one below with several layers of data for San Diego, California, including restaurants, neighborhoods, and trolley lines.
Using templates
You may also want to create a web application using your map with your own look and functionality that you can deploy on your organization's web server. The website includes customizable templates that make it easy to create a web-mapping application. They include common map elements like a legend and scale bar and more advanced functionality like editing. For example, you could use the Chrome Legend template with the San Diego neighborhood map.

You can begin with minor changes like modifying colors and fonts or adding an additional widget. As your comfort level with JavaScript, CSS, and HTML increases, you can make additional modifications to the application.
Access the templates from the ArcGIS.com map viewer Share window or from the Web Application Templates group. Use the preview option to see how your map looks in the various templates. Spend some time exploring the templates and note that the templates offer various bits of functionality, such as legends, scale bars, editing and identify tools, and different layouts and color schemes.
Once you have found a template you like, either publish the application or download the template ZIP file. Some of the templates let you configure the application to create a customized look and feel. The configurable templates have a Configurable icon
on the template thumbnail. Download the template if you want to configure the web application and deploy it to your organization's web server; otherwise, publishing is a convenient option becauseEsri hosts your application for you . See Sharing maps for more information.
Using URL parameters
A web map created with the ArcGIS.com map viewer uses JavaScript Object Notation (JSON) to define the contents. The contents can be composed of operational and basemap layers, along with tasks. These layers correspond to ArcGIS services, OGC web services, or KML. If you want, you can build your map using URL parameters.
For example, here's a URL that opens the neighborhood San Diego map to a specific extent:
http://www.arcgis.com/home/webmap/viewer.html?webmap=1966ef409a344d089b001df85332608f¢er=-117.168611,32.723333&level=16
The URL always begins with the following:
http://www.arcgis.com/home/webmap/viewer.html?
The URL also includes one or more of the parameters listed below. To include more than one parameter, use an ampersand (&) to separate the parameters.
For example:
http://www.arcgis.com/home/webmap/viewer.html?center=20,45&level=4
Define the basemap used in the viewer.
Set basemapUrl= to the map service. If a basemap is not defined, the default basemap will be the world topographic basemap. For example,
http://www.arcgis.com/home/webmap/viewer.html?
basemapUrl=http://services.arcgisonline.com/ArcGIS/rest/services/World_Physical_Map/MapServer
Define the operational layers that overlay the basemap.
Use either webmap= or url=.
The webmap parameter accepts the item ID of a saved web map. For example:
http://www.arcgis.com/home/webmap/viewer.html?webmap=2def3f0c7be74f05af33ac87b8d03ef2
The url parameter accepts a single service URL. For example:
http://www.arcgis.com/home/webmap/viewer.html?
url=http://services.arcgisonline.com/ArcGIS/rest/services/Demographics/USA_Daytime_Population/MapServer
Center the map at a particular location.
Set center= using geographic coordinates (x,y) or projected coordinates (x,y,WKID).
Geographic coordinates
http://www.arcgis.com/home/webmap/viewer.html?center=20,45
Projected coordinates
http://www.arcgis.com/home/webmap/viewer.html?center=500000,5500000,102100
Define the extent of the map.
Use extent= to define the extent of the map. The extent parameter accepts geographic coordinates (GCS) as MinX,MinY,MaxX,MaxY or projected coordinates (PCS) as MinX,MinY,MaxX,MaxY,WKID.
Geographic coordinates
http://www.arcgis.com/home/webmap/viewer.html?extent=-117.20,34.055,-117.19,34.06
Projected coordinates
http://www.arcgis.com/home/webmap/viewer.html?extent=-13079253.954115,3959110.38566837,-12918205.318785,4086639.70193162,102113
Define the scale level of the map viewer.
Use the center parameter and level=. The level parameter accepts the level ID of the cache scale as listed in the REST service endpoint. The cache scale level can be determined using the information on the map service's REST endpoint. The resolution is inversely related to the scale.
Geographic coordinates
http://www.arcgis.com/home/webmap/viewer.html?center=20,45&level=4
Projected coordinates
http://www.arcgis.com/home/webmap/viewer.html?center=500000,5500000,102100&level=4
Developing with ArcGIS web APIs
For a fully customized mapping experience, you can build exactly what you need with one of the web APIs—JavaScript, Flex, and Silverlight/WPF. The Web API resource centers include many samples, a community forum, and documentation geared toward beginning programmers. With the APIs, you can customize the templates to perform queries, run geoprocessing operations, select and highlight map locations, and much more. The APIs also contain several out-of-the-box widgets that you can include in the application to add functionality. These include a basemap picker, similar to the one in the ArcGIS.com map viewer; map components (legend, scale bar, and overview map); a time slider for visualizing temporal changes; and an editor widget that allows users to edit GIS data in the map.