1---2name: azure-maps3description: Expert knowledge for Azure Maps development including troubleshooting, best practices, decision making, architecture & design patterns, limits & quotas, security, configuration, and integrations & coding patterns. Use when using Azure Maps web SDK, search/routing/weather APIs, Spatial IO, Power BI visuals, or Bing/Google Maps migration, and other Azure Maps related development tasks.4---5# Azure Maps Skill
6
7This skill provides expert guidance for Azure Maps. Covers troubleshooting, best practices, decision making, architecture & design patterns, limits & quotas, security, configuration, and integrations & coding patterns. It combines local quick-reference content with remote documentation fetching capabilities.
8
9## How to Use This Skill
10
11> **IMPORTANT for Agent**: Use the **Category Index** below to locate relevant sections. For categories with line ranges (e.g., `L35-L120`), use `read_file` with the specified lines. For categories with file links (e.g., `[security.md](security.md)`), use `read_file` on the linked reference file
12
13> **IMPORTANT for Agent**: If `metadata.generated_at` is more than 3 months old, suggest the user pull the latest version from the repository. If `mcp_microsoftdocs` tools are not available, suggest the user install it: [Installation Guide](https://github.com/MicrosoftDocs/mcp/blob/main/README.md)
14
15This skill requires **network access** to fetch documentation content:
16- **Preferred**: Use `mcp_microsoftdocs:microsoft_docs_fetch` with query string `from=learn-agent-skill`. Returns Markdown.
17- **Fallback**: Use `fetch_webpage` with query string `from=learn-agent-skill&accept=text/markdown`. Returns Markdown.
18
19## Category Index
20
21| Category | Lines | Description |
22|----------|-------|-------------|
23| Troubleshooting | L36-L40 | Diagnosing and fixing common Azure Maps Weather API issues, including authentication, request/response errors, throttling, and configuration or usage problems. |
24| Best Practices | L41-L51 | Guidance on securing Azure Maps apps, rendering custom/static data, correct copyright attribution, routing/search best practices, accessibility, and Web SDK performance optimization. |
25| Decision Making | L52-L61 | Guidance on pricing tiers, billing/usage, and how to migrate or replace Bing/Google Maps and Power BI map solutions with Azure Maps and related Azure services |
26| Architecture & Design Patterns | L62-L67 | Designing Azure architectures for elevation data services and multi-itinerary route optimization using Azure Maps, open DEM data, and NVIDIA cuOpt for scalable geospatial solutions |
27| Limits & Quotas | L68-L77 | Coverage, limits, and capabilities of Azure Maps services: QPS rate limits, and regional support for geocoding, rendering/tiles, routing, traffic, and weather data. |
28| Security | L78-L92 | Securing Azure Maps access: auth methods (keys, Entra ID, SAS), SPA/daemon/device scenarios, Power BI visual access/residency, and private endpoint network protection. |
29| Configuration | L93-L117 | Configuring Azure Maps web maps, styles, layers, data sources, routing models, localization, browser support, and migrating or updating to newer Azure Maps APIs and services. |
30| Integrations & Coding Patterns | L118-L180 | Patterns and code for integrating Azure Maps into web/mobile/Power BI apps, using REST/SDKs, layers, drawing, search/routing/weather, Spatial IO, and migrating from Bing/Google Maps. |
31
32### Troubleshooting
33| Topic | URL |
34|-------|-----|
35| Resolve common Azure Maps Weather service issues | https://learn.microsoft.com/en-us/azure/azure-maps/weather-services-faq |
36
37### Best Practices
38| Topic | URL |
39|-------|-----|
40| Apply authentication best practices for Azure Maps apps | https://learn.microsoft.com/en-us/azure/azure-maps/authentication-best-practices |
41| Render custom data on Azure Maps static raster images | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-render-custom-data |
42| Show required Azure Maps copyright attribution correctly | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-show-attribution |
43| Apply best practices for Azure Maps Route service | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-use-best-practices-for-routing |
44| Apply best practices for Azure Maps Search service | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-use-best-practices-for-search |
45| Implement accessibility features in Azure Maps apps | https://learn.microsoft.com/en-us/azure/azure-maps/map-accessibility |
46| Optimize performance with Azure Maps Web SDK best practices | https://learn.microsoft.com/en-us/azure/azure-maps/web-sdk-best-practices |
47
48### Decision Making
49| Topic | URL |
50|-------|-----|
51| Select and manage Azure Maps pricing tiers | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-manage-pricing-tier |
52| Plan migration from Bing Maps Enterprise to Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/migrate-bing-maps-overview |
53| Decide how to migrate from Google Maps to Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/migrate-from-google-maps |
54| Choose Azure Maps and Azure services to replace Bing SDS | https://learn.microsoft.com/en-us/azure/azure-maps/migrate-sds-data-source-management |
55| Convert Power BI Map visuals to Azure Maps visual | https://learn.microsoft.com/en-us/azure/azure-maps/power-bi-visual-conversion |
56| Interpret Azure Maps transaction billing and usage | https://learn.microsoft.com/en-us/azure/azure-maps/understanding-azure-maps-transactions |
57
58### Architecture & Design Patterns
59| Topic | URL |
60|-------|-----|
61| Build elevation data services on Azure using open DEM data | https://learn.microsoft.com/en-us/azure/azure-maps/elevation-data-services |
62| Architect a multi-itinerary optimization service with Azure Maps and NVIDIA cuOpt | https://learn.microsoft.com/en-us/azure/azure-maps/itinerary-optimization-service |
63
64### Limits & Quotas
65| Topic | URL |
66|-------|-----|
67| Understand Azure Maps QPS rate limits by pricing tier | https://learn.microsoft.com/en-us/azure/azure-maps/azure-maps-qps-rate-limits |
68| Check Azure Maps geocoding coverage by region | https://learn.microsoft.com/en-us/azure/azure-maps/geocoding-coverage |
69| Understand Azure Maps render coverage and tile detail | https://learn.microsoft.com/en-us/azure/azure-maps/render-coverage |
70| Evaluate Azure Maps routing coverage and capabilities | https://learn.microsoft.com/en-us/azure/azure-maps/routing-coverage |
71| Review Azure Maps traffic data coverage worldwide | https://learn.microsoft.com/en-us/azure/azure-maps/traffic-coverage |
72| Check Azure Maps weather service regional coverage | https://learn.microsoft.com/en-us/azure/azure-maps/weather-coverage |
73
74### Security
75| Topic | URL |
76|-------|-----|
77| Configure Azure Maps authentication methods securely | https://learn.microsoft.com/en-us/azure/azure-maps/azure-maps-authentication |
78| Configure authentication methods for Azure Maps accounts | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-manage-authentication |
79| Secure Azure Maps daemon and background applications | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-secure-daemon-app |
80| Secure input-constrained devices using Entra ID and Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-secure-device-code |
81| Secure Azure Maps with SAS token authentication | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-secure-sas-app |
82| Secure non-interactive SPAs for Azure Maps with Entra ID | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-secure-spa-app |
83| Secure Azure Maps SPA with interactive user sign-in | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-secure-spa-users |
84| Secure Azure Maps web apps with interactive sign-in | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-secure-webapp-users |
85| Understand Azure Maps Power BI visual data residency behavior | https://learn.microsoft.com/en-us/azure/azure-maps/power-bi-visual-data-residency |
86| Manage organizational access to Azure Maps Power BI visual | https://learn.microsoft.com/en-us/azure/azure-maps/power-bi-visual-manage-access |
87| Secure Azure Maps access using Private Endpoints | https://learn.microsoft.com/en-us/azure/azure-maps/private-endpoints |
88
89### Configuration
90| Topic | URL |
91|-------|-----|
92| Configure map styles in Azure Maps Web Map Control | https://learn.microsoft.com/en-us/azure/azure-maps/choose-map-style |
93| Configure vehicle consumption models in Azure Maps routing | https://learn.microsoft.com/en-us/azure/azure-maps/consumption-model |
94| Create and manage data sources in Azure Maps Web SDK | https://learn.microsoft.com/en-us/azure/azure-maps/create-data-source-web-sdk |
95| Use Azure Maps extended GeoJSON geometries | https://learn.microsoft.com/en-us/azure/azure-maps/extend-geojson |
96| Provision Azure Maps accounts using ARM templates | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-create-template |
97| Configure Azure Maps global data processing regions | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-manage-consent |
98| Add and configure Bubble layers in Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/map-add-bubble-layer |
99| Configure controls on Azure Maps Web maps | https://learn.microsoft.com/en-us/azure/azure-maps/map-add-controls |
100| Add HTML markers and events to Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/map-add-custom-html |
101| Add and configure Symbol layers in Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/map-add-pin |
102| Add and customize popups on Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/map-add-popup |
103| Migrate Azure Maps Route v1.0 APIs to 2025-01-01 | https://learn.microsoft.com/en-us/azure/azure-maps/migrate-route-v1-api |
104| Migrate Azure Maps Traffic v1 service to newer APIs | https://learn.microsoft.com/en-us/azure/azure-maps/migrate-traffic-v1-api |
105| Supported spatial formats in Azure Maps Spatial IO | https://learn.microsoft.com/en-us/azure/azure-maps/spatial-io-read-write-spatial-data |
106| Delimited and XML spatial data parsing rules in Spatial IO | https://learn.microsoft.com/en-us/azure/azure-maps/spatial-io-supported-data-format-details |
107| Browser support and feature detection for Azure Maps Web SDK | https://learn.microsoft.com/en-us/azure/azure-maps/supported-browsers |
108| Configure Azure Maps localization languages and views | https://learn.microsoft.com/en-us/azure/azure-maps/supported-languages |
109| Select and use built-in Azure Maps map styles | https://learn.microsoft.com/en-us/azure/azure-maps/supported-map-styles |
110| Use Azure Maps supported search category codes | https://learn.microsoft.com/en-us/azure/azure-maps/supported-search-categories |
111| Migrate Azure Maps Web SDK apps from v1/v2 to v3 | https://learn.microsoft.com/en-us/azure/azure-maps/web-sdk-migration-guide |
112| Configure Azure Maps zoom levels and tile coordinates | https://learn.microsoft.com/en-us/azure/azure-maps/zoom-levels-and-tile-grid |
113
114### Integrations & Coding Patterns
115| Topic | URL |
116|-------|-----|
117| Use PMTiles custom protocol with Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/add-custom-protocol-pmtiles |
118| Migrate Azure Maps Android SDK apps to Web SDK | https://learn.microsoft.com/en-us/azure/azure-maps/android-sdk-migration-guide |
119| Integrate Azure Maps geofence events with Event Grid | https://learn.microsoft.com/en-us/azure/azure-maps/azure-maps-event-grid-integration |
120| Cluster point data with Azure Maps Web SDK | https://learn.microsoft.com/en-us/azure/azure-maps/clustering-point-data-web-sdk |
121| Use data-driven style expressions in Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/data-driven-style-expressions-web-sdk |
122| Use Azure Maps drawing tools events | https://learn.microsoft.com/en-us/azure/azure-maps/drawing-tools-events |
123| Use drawing interactions and shortcuts in Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/drawing-tools-interactions-keyboard-shortcuts |
124| Integrate Azure Maps using the C# REST SDK | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-dev-guide-csharp-sdk |
125| Integrate Azure Maps using the Java REST SDK | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-dev-guide-java-sdk |
126| Integrate Azure Maps using the JavaScript REST SDK | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-dev-guide-js-sdk |
127| Integrate Azure Maps using the Python REST SDK | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-dev-guide-py-sdk |
128| Request real-time and forecast weather data with Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-request-weather-data |
129| Use Azure Maps Search APIs for geocoding and POI lookup | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-search-for-address |
130| Use image templates and fill patterns in Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-use-image-templates-web-sdk |
131| Use Azure Maps Web Map Control in web and mobile apps | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-use-map-control |
132| Embed Azure Maps map control via npm in Node.js apps | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-use-npm-package |
133| Integrate spatial data using Azure Maps Spatial IO | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-use-spatial-io-module |
134| Use Azure Maps TypeScript REST SDK modules | https://learn.microsoft.com/en-us/azure/azure-maps/how-to-use-ts-rest-sdk |
135| Migrate Azure Maps iOS SDK apps to Web SDK | https://learn.microsoft.com/en-us/azure/azure-maps/ios-sdk-migration-guide |
136| Add and customize drawing toolbar in Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/map-add-drawing-toolbar |
137| Create and customize heat map layers in Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/map-add-heat-map-layer |
138| Overlay image layers on Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/map-add-image-layer |
139| Render line layers with Azure Maps Web SDK | https://learn.microsoft.com/en-us/azure/azure-maps/map-add-line-layer |
140| Render polygon and circle layers in Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/map-add-shape |
141| Add and configure snap grid in Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/map-add-snap-grid |
142| Add tile layers and overlays in Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/map-add-tile-layer |
143| Create and animate maps with Azure Maps Web SDK | https://learn.microsoft.com/en-us/azure/azure-maps/map-create |
144| Handle Azure Maps Web SDK map events | https://learn.microsoft.com/en-us/azure/azure-maps/map-events |
145| Use polygon extrusion layers in Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/map-extruded-polygon |
146| Perform reverse geocoding in Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/map-get-information-from-coordinate |
147| Extract GeoJSON from drawn shapes in Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/map-get-shape-data |
148| Request and display routes with Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/map-route |
149| Search locations and show results in Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/map-search-location |
150| Display traffic flow and incidents in Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/map-show-traffic |
151| Translate Bing route calculation to Azure Maps routing | https://learn.microsoft.com/en-us/azure/azure-maps/migrate-calculate-route |
152| Migrate Bing truck routing to Azure Maps truck routes | https://learn.microsoft.com/en-us/azure/azure-maps/migrate-calculate-truck-route |
153| Convert Bing address geocoding to Azure Maps Geocoding | https://learn.microsoft.com/en-us/azure/azure-maps/migrate-find-location-address |
154| Migrate Bing reverse geocoding to Azure Maps API | https://learn.microsoft.com/en-us/azure/azure-maps/migrate-find-location-by-point |
155| Migrate Bing query-based geocoding to Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/migrate-find-location-query |
156| Migrate Bing time zone lookups to Azure Maps timezone API | https://learn.microsoft.com/en-us/azure/azure-maps/migrate-find-time-zone |
157| Migrate Bing Maps web apps to Azure Maps Web SDK | https://learn.microsoft.com/en-us/azure/azure-maps/migrate-from-bing-maps-web-app |
158| Migrate a web app from Google Maps to Azure Maps Web SDK | https://learn.microsoft.com/en-us/azure/azure-maps/migrate-from-google-maps-web-app |
159| Migrate Google Maps web services to Azure Maps REST APIs | https://learn.microsoft.com/en-us/azure/azure-maps/migrate-from-google-maps-web-services |
160| Migrate Bing Geocode Dataflow to Azure batch geocoding | https://learn.microsoft.com/en-us/azure/azure-maps/migrate-geocode-dataflow |
161| Replace Bing Geodata API with Azure Maps Get Polygon | https://learn.microsoft.com/en-us/azure/azure-maps/migrate-geodata |
162| Map Bing Get Imagery Metadata to Azure Maps tiles | https://learn.microsoft.com/en-us/azure/azure-maps/migrate-get-imagery-metadata |
163| Migrate Bing Static Map calls to Azure Static Image | https://learn.microsoft.com/en-us/azure/azure-maps/migrate-get-static-map |
164| Migrate Bing traffic incidents to Azure Maps incident details | https://learn.microsoft.com/en-us/azure/azure-maps/migrate-get-traffic-incidents |
165| Add and configure marker layers in Azure Maps visual | https://learn.microsoft.com/en-us/azure/azure-maps/power-bi-visual-add-marker-layer |
166| Add pie chart layers in Azure Maps Power BI visual | https://learn.microsoft.com/en-us/azure/azure-maps/power-bi-visual-add-pie-chart-layer |
167| Use cluster bubble layers in Azure Maps visual | https://learn.microsoft.com/en-us/azure/azure-maps/power-bi-visual-cluster-bubbles |
168| Use geocoding in Azure Maps Power BI visual | https://learn.microsoft.com/en-us/azure/azure-maps/power-bi-visual-geocode |
169| Get started with Azure Maps visual in Power BI | https://learn.microsoft.com/en-us/azure/azure-maps/power-bi-visual-get-started |
170| Configure layers in Azure Maps Power BI visual | https://learn.microsoft.com/en-us/azure/azure-maps/power-bi-visual-understanding-layers |
171| Configure Azure Maps drawing tools module | https://learn.microsoft.com/en-us/azure/azure-maps/set-drawing-options |
172| Overlay OGC WMS/WMTS layers in Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/spatial-io-add-ogc-map-layer |
173| Render data with Spatial IO SimpleDataLayer | https://learn.microsoft.com/en-us/azure/azure-maps/spatial-io-add-simple-data-layer |
174| Connect Azure Maps Spatial IO to WFS services | https://learn.microsoft.com/en-us/azure/azure-maps/spatial-io-connect-wfs-service |
175| Use core CSV/XML IO operations in Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/spatial-io-core-operations |
176| Implement custom WebGL layers in Azure Maps | https://learn.microsoft.com/en-us/azure/azure-maps/webgl-custom-layer |