Layers make up the primary content of applications you will build with ArcGIS. Layers can be based on services exposed via the ArcGIS REST API, GeoJSON, CSV or other files available on disk or over a network. Layers can also be created in the application itself - for example, by graphics that store arbitrary user input.
Layers are logical collections of geographic data that can be used to create maps and applications, and can be broadly categorized as feature layers or tile layers. Feature layers can store geographic features (points, lines, polygons), edit or update attributes, and synchronize with offline databases. Tile layers are pre-generated and are composed of cached tiles stored on a server. Good examples of tile layers are the ArcGIS Online tile and vector tile basemaps. Scene Layers can be thought of as Tile Layers that cache features, including 3D objects like buildings, for rapid display in 3D applications.
Core ArcGIS Layer types
ArcGIS Online and ArcGIS Enterprise have support for many types of layers that support common use cases such as editing, offline synchronization, and basemap usage. Learning to work with these types of layers is key to creating applications with ArcGIS. This table summarizes some of these core layer types and their common use cases.
|Layer Type||REST API Service||Hosted In||Cached ||Use Cases|
|ArcGIS Online ||ArcGIS Enterprise|
|Feature Layer||Feature Service||Querying, rendering, and editing, vector geographic information.|
|Tile Layer||Map Service||Basemaps and other complex datasets that change infrequently. Tiles can be kept in sync with feature layers for operational data.|
|Vector Tile Layer||Vector Tile Service||Basemaps and other complex datasets that change infrequently. Tiles can be kept in sync with feature layers for operational data.|
|Dynamic Map Layer||Map Service||Complex data sets that change frequently or need complex rendering requirements.|
|Image Layer||Image Service||Rendering and analyzing satellite or other imagery data.|
|Scene Layer||Scene Service||Displaying and rendering 3D datasets.|
: Although some layers cannot be hosted by ArcGIS Online, you can use ArcGIS Online to share layers hosted in ArcGIS Enterprise. See ArcGIS Server web services
: Cached layers are preprocessed so they can be quickly read and delivered to clients. Uncached layers make database queries and leverage HTTP caching only.
Other types of layers
In addition to the core layer types, ArcGIS Enterprise supports many additional layer types. You can find out more information in Approaches for publishing services with ArcGIS in the ArcGIS Enterprise documentation.
The supported layer types vary by SDK so check the samples and API reference of the SDK you are using to verify. In addition to supporting a variety of common file types such as CSV, GeoRSS, and KML, all ArcGIS APIs and SDKs support a basic graphics layer for adding arbitrary graphics to the map that can be extended into custom layer types.
Working with layers
In APIs and SDKs
Via the ArcGIS REST API
All of the core ArcGIS layer types are backed by a service hosted on an instance of ArcGIS Server. Clients like the ArcGIS APIs and SDKs interact with these services via the ArcGIS REST API. You can also use the REST API to build your applications and create new and unique functionality manually.
In Web Maps
Layers are also a large part of the web maps and the web map specification. Layers can be added to a web maps
operationalLayers properties and referenced either by their item id in ArcGIS Online or ArcGIS Enterprise or by the URL to their REST API Service. You can learn more about adding layers to web maps in the ArcGIS Online "Add layers" topic.
- ArcGIS DevLabs: Import CSV, GeoJSON, Shapefile or File GeoDatabase
- ArcGIS DevLabs: Define a schema for a new empty Feature Layer
- ArcGIS Online: Publish feature layers from a variety of formats
- ArcGIS Enterprise: Publish features
Vector Tile Layers
- ArcGIS Pro: Publish vector tiles
Dynamic Map Layers
- ArcMap: Publish a map service
- ArcMap: Creating a mosaic dataset