diff --git a/sdk/maps/azure-maps-render/CHANGELOG.md b/sdk/maps/azure-maps-render/CHANGELOG.md new file mode 100644 index 000000000000..e7565f37f97b --- /dev/null +++ b/sdk/maps/azure-maps-render/CHANGELOG.md @@ -0,0 +1,13 @@ +# Release History + +## 1.0.0-beta.1 (Unreleased) + +- Azure AzureMapsRenderService client library for Java. This package contains Microsoft Azure AzureMapsRenderService client library. + +### Features Added + +### Breaking Changes + +### Bugs Fixed + +### Other Changes diff --git a/sdk/maps/azure-maps-render/README.md b/sdk/maps/azure-maps-render/README.md new file mode 100644 index 000000000000..9bf38aeea5de --- /dev/null +++ b/sdk/maps/azure-maps-render/README.md @@ -0,0 +1,63 @@ +# Azure AzureMapsRenderService client library for Java + +Azure AzureMapsRenderService client library for Java. + +This package contains Microsoft Azure AzureMapsRenderService client library. + +## Documentation + +Various documentation is available to help you get started + +- [API reference documentation][docs] +- [Product documentation][product_documentation] + +## Getting started + +### Prerequisites + +- [Java Development Kit (JDK)][jdk] with version 8 or above +- [Azure Subscription][azure_subscription] + +### Adding the package to your product + +[//]: # ({x-version-update-start;com.azure:azure-maps-render;current}) +```xml + + com.azure + azure-maps-render + 1.0.0-beta.1 + +``` +[//]: # ({x-version-update-end}) + +### Authentication + +[Azure Identity][azure_identity] package provides the default implementation for authenticating the client. + +## Key concepts + +## Examples + +```java com.azure.maps.render.readme +``` + +## Troubleshooting + +## Next steps + +## Contributing + +For details on contributing to this repository, see the [contributing guide](https://github.com/Azure/azure-sdk-for-java/blob/main/CONTRIBUTING.md). + +1. Fork it +1. Create your feature branch (`git checkout -b my-new-feature`) +1. Commit your changes (`git commit -am 'Add some feature'`) +1. Push to the branch (`git push origin my-new-feature`) +1. Create new Pull Request + + +[product_documentation]: https://azure.microsoft.com/services/ +[docs]: https://azure.github.io/azure-sdk-for-java/ +[jdk]: https://docs.microsoft.com/java/azure/jdk/ +[azure_subscription]: https://azure.microsoft.com/free/ +[azure_identity]: https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/identity/azure-identity diff --git a/sdk/maps/azure-maps-render/pom.xml b/sdk/maps/azure-maps-render/pom.xml new file mode 100644 index 000000000000..82606c05a9c7 --- /dev/null +++ b/sdk/maps/azure-maps-render/pom.xml @@ -0,0 +1,73 @@ + + 4.0.0 + + com.azure + azure-client-sdk-parent + 1.7.0 + ../../parents/azure-client-sdk-parent + + + com.azure + azure-maps-render + 1.0.0-beta.1 + jar + + Microsoft Azure SDK for AzureMapsRenderService Management + This package contains Microsoft Azure AzureMapsRenderService client library. + https://github.com/Azure/azure-sdk-for-java + + + + The MIT License (MIT) + http://opensource.org/licenses/MIT + repo + + + + + https://github.com/Azure/azure-sdk-for-java + scm:git:git@github.com:Azure/azure-sdk-for-java.git + scm:git:git@github.com:Azure/azure-sdk-for-java.git + HEAD + + + + microsoft + Microsoft + + + + UTF-8 + true + + + + com.azure + azure-core + 1.25.0 + + + com.azure + azure-core-http-netty + 1.11.7 + + + org.junit.jupiter + junit-jupiter-engine + 5.8.2 + test + + + com.azure + azure-core-test + 1.7.8 + test + + + com.azure + azure-identity + 1.4.4 + test + + + diff --git a/sdk/maps/azure-maps-render/src/main/java/com/azure/maps/render/AzureMapsRenderServiceAsyncClient.java b/sdk/maps/azure-maps-render/src/main/java/com/azure/maps/render/AzureMapsRenderServiceAsyncClient.java new file mode 100644 index 000000000000..f617f0cfefd3 --- /dev/null +++ b/sdk/maps/azure-maps-render/src/main/java/com/azure/maps/render/AzureMapsRenderServiceAsyncClient.java @@ -0,0 +1,780 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.render; + +import com.azure.core.annotation.Generated; +import com.azure.core.annotation.ReturnType; +import com.azure.core.annotation.ServiceClient; +import com.azure.core.annotation.ServiceMethod; +import com.azure.core.exception.HttpResponseException; +import com.azure.core.http.rest.RequestOptions; +import com.azure.core.http.rest.Response; +import com.azure.core.util.BinaryData; +import com.azure.maps.render.implementation.RenderV2sImpl; +import reactor.core.publisher.Mono; + +/** Initializes a new instance of the asynchronous AzureMapsRenderServiceClient type. */ +@ServiceClient(builder = AzureMapsRenderServiceClientBuilder.class, isAsync = true) +public final class AzureMapsRenderServiceAsyncClient { + @Generated private final RenderV2sImpl serviceClient; + + /** + * Initializes an instance of RenderV2s client. + * + * @param serviceClient the service client implementation. + */ + @Generated + AzureMapsRenderServiceAsyncClient(RenderV2sImpl serviceClient) { + this.serviceClient = serviceClient; + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

The Get Map Tiles API allows users to request map tiles in vector or raster formats typically to be integrated + * into a map control or SDK. Some example tiles that can be requested are Azure Maps road tiles, real-time Weather + * Radar tiles or the map tiles created using [Azure Maps Creator](https://aka.ms/amcreator). By default, Azure Maps + * uses vector tiles for its web map control (Web SDK) and Android SDK. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
tilesetIdStringYesA tileset is a collection of raster or vector data broken up into a uniform grid of square tiles at preset zoom levels. Every tileset has a **tilesetId** to use when making requests. The **tilesetId** for tilesets created using [Azure Maps Creator](https://aka.ms/amcreator) are generated through the [Tileset Create API](https://docs.microsoft.com/en-us/rest/api/maps/tileset). The ready-to-use tilesets supplied by Azure Maps are listed below. For example, microsoft.base.
zoomintYesZoom level for the desired tile. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.
xintYesX coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
yintYesY coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
timeStampStringNoThe desired date and time of the requested tile. This parameter must be specified in the standard date-time format (e.g. 2019-11-14T16:03:00-08:00), as defined by [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601). This parameter is only supported when tilesetId parameter is set to one of the values below. + * + * * microsoft.weather.infrared.main: We provide tiles up to 3 hours in the past. Tiles are available in 10-minute intervals. We round the timeStamp value to the nearest 10-minute time frame. + * * microsoft.weather.radar.main: We provide tiles up to 1.5 hours in the past and up to 2 hours in the future. Tiles are available in 5-minute intervals. We round the timeStamp value to the nearest 5-minute time frame.
tileSizeStringNoThe size of the returned map tile in pixels.
languageStringNoLanguage in which search results should be returned. Should be one of supported IETF language tags, case insensitive. When data in specified language is not available for a specific field, default language is used. + * + * Please refer to [Supported Languages](https://docs.microsoft.com/azure/azure-maps/supported-languages) for details.
viewStringNoThe View parameter (also called the "user region" parameter) allows you to show the correct maps for a certain country/region for geopolitically disputed regions. Different countries have different views of such regions, and the View parameter allows your application to comply with the view required by the country your application will be serving. By default, the View parameter is set to “Unified” even if you haven’t defined it in the request. It is your responsibility to determine the location of your users, and then set the View parameter correctly for that location. Alternatively, you have the option to set ‘View=Auto’, which will return the map data based on the IP address of the request. The View parameter in Azure Maps must be used in compliance with applicable laws, including those regarding mapping, of the country where maps, images and other data and third party content that you are authorized to access via Azure Maps is made available. Example: view=IN. + * + * Please refer to [Supported Views](https://aka.ms/AzureMapsLocalizationViews) for details and to see the available Views.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return the {@link Response} on successful completion of {@link Mono}. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getMapTileWithResponse(RequestOptions requestOptions) { + return this.serviceClient.getMapTileWithResponseAsync(requestOptions); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

The Get Map Tileset API allows users to request metadata for a tileset. + * + *

Query Parameters + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
tilesetIdStringYesA tileset is a collection of raster or vector data broken up into a uniform grid of square tiles at preset zoom levels. Every tileset has a **tilesetId** to use when making requests. The **tilesetId** for tilesets created using [Azure Maps Creator](https://aka.ms/amcreator) are generated through the [Tileset Create API](https://docs.microsoft.com/en-us/rest/api/maps/tileset). The ready-to-use tilesets supplied by Azure Maps are listed below. For example, microsoft.base.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     tilejson: String
+     *     name: String
+     *     description: String
+     *     version: String
+     *     attribution: String
+     *     template: String
+     *     legend: String
+     *     scheme: String
+     *     tiles: [
+     *         String
+     *     ]
+     *     grids: [
+     *         String
+     *     ]
+     *     data: [
+     *         String
+     *     ]
+     *     minZoom: Integer
+     *     maxZoom: Integer
+     *     bounds: [
+     *         float
+     *     ]
+     *     center: [
+     *         float
+     *     ]
+     * }
+     * }
+ * + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return metadata for a tileset in the TileJSON format along with {@link Response} on successful completion of + * {@link Mono}. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getMapTilesetWithResponse(RequestOptions requestOptions) { + return this.serviceClient.getMapTilesetWithResponseAsync(requestOptions); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

The Get Map Attribution API allows users to request map copyright attribution information for a section of a + * tileset. + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
tilesetIdStringYesA tileset is a collection of raster or vector data broken up into a uniform grid of square tiles at preset zoom levels. Every tileset has a **tilesetId** to use when making requests. The **tilesetId** for tilesets created using [Azure Maps Creator](https://aka.ms/amcreator) are generated through the [Tileset Create API](https://docs.microsoft.com/en-us/rest/api/maps/tileset). The ready-to-use tilesets supplied by Azure Maps are listed below. For example, microsoft.base.
zoomintYesZoom level for the desired map attribution.
boundsStringYesThe string that represents the rectangular area of a bounding box. The bounds parameter is defined by the 4 bounding box coordinates, with WGS84 longitude and latitude of the southwest corner followed by WGS84 longitude and latitude of the northeast corner. The string is presented in the following format: `[SouthwestCorner_Longitude, SouthwestCorner_Latitude, NortheastCorner_Longitude, NortheastCorner_Latitude]`.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     copyrights: [
+     *         String
+     *     ]
+     * }
+     * }
+ * + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return copyright attribution for the requested section of a tileset along with {@link Response} on successful + * completion of {@link Mono}. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getMapAttributionWithResponse(RequestOptions requestOptions) { + return this.serviceClient.getMapAttributionWithResponseAsync(requestOptions); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Fetches state tiles in vector format typically to be integrated into indoor maps module of map control or SDK. + * The map control will call this API after user turns on dynamic styling (see [Zoom Levels and Tile + * Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid)). + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
zoomintYesZoom level for the desired tile. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.
xintYesX coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
yintYesY coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
statesetIdStringYesThe stateset id.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return the {@link Response} on successful completion of {@link Mono}. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getMapStateTileWithResponse(RequestOptions requestOptions) { + return this.serviceClient.getMapStateTileWithResponseAsync(requestOptions); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Copyrights API is designed to serve copyright information for Render Tile service. In addition to basic + * copyright for the whole map, API is serving specific groups of copyrights for some countries. + * + *

As an alternative to copyrights for map request, one can receive captions for displaying the map provider + * information on the map. + * + *

Query Parameters + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     formatVersion: String
+     *     copyrightsCaption: String
+     * }
+     * }
+ * + * @param format Desired format of the response. Value can be either _json_ or _xml_. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return this object is returned from a successful copyright call along with {@link Response} on successful + * completion of {@link Mono}. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getCopyrightCaptionWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getCopyrightCaptionWithResponseAsync(format, requestOptions); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

The static image service renders a user-defined, rectangular image containing a map section using a zoom level + * from 0 to 20. The static image service renders a user-defined, rectangular image containing a map section using a + * zoom level from 0 to 20. The supported resolution range for the map image is from 1x1 to 8192x8192. If you are + * deciding when to use the static image service over the map tile service, you may want to consider how you would + * like to interact with the rendered map. If the map contents will be relatively unchanging, a static map is a good + * choice. If you want to support a lot of zooming, panning and changing of the map content, the map tile service + * would be a better choice. + * + *

Service also provides Image Composition functionality to get a static image back with additional data like; + * pushpins and geometry overlays with following S0 and S1 capabilities. + * + *

In S0 you can: - Render up to 5 pushpins specified in the request - Provide one custom image for the pins + * referenced in the request - Add labels to the pushpins + * + *

In S1 you can: - Render pushpins through [Azure Maps Data Service](https://aka.ms/AzureMapsMapDataService) - + * Specify multiple pushpin styles - Render circle, polyline and polygon geometry types. - Render of supported + * GeoJSON geometry types uploaded through [Azure Maps Data Service](https://aka.ms/AzureMapsMapDataService) + * + *

Please see [How-to-Guide](https://aka.ms/AzureMapsHowToGuideImageCompositor) for detailed examples. + * + *

_Note_ : Either **center** or **bbox** parameter must be supplied to the API. <br><br> The + * supported Lat and Lon ranges when using the **bbox** parameter, are as follows: <br><br> + * + *

|Zoom Level | Max Lon Range | Max Lat Range| |:----------|:----------------|:-------------| |0 | 360.0 | 170.0 + * | |1 | 360.0 | 170.0 | |2 | 360.0 | 170.0 | |3 | 360.0 | 170.0 | |4 | 360.0 | 170.0 | |5 | 180.0 | 85.0 | |6 | + * 90.0 | 42.5 | |7 | 45.0 | 21.25 | |8 | 22.5 | 10.625 | |9 | 11.25 | 5.3125 | |10 | 5.625 | 2.62625 | |11 | 2.8125 + * | 1.328125 | |12 | 1.40625 | 0.6640625 | |13 | 0.703125 | 0.33203125 | |14 | 0.3515625 | 0.166015625 | |15 | + * 0.17578125 | 0.0830078125 | |16 | 0.087890625 | 0.0415039063 | |17 | 0.0439453125 | 0.0207519531 | |18 | + * 0.0219726563 | 0.0103759766 | |19 | 0.0109863281 | 0.0051879883 | |20 | 0.0054931641 | 0.0025939941 |. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
layerStringNoMap layer requested. If layer is set to labels or hybrid, the format should be png.
styleStringNoMap style to be returned. Possible values are main and dark.
zoomStringNoDesired zoom level of the map. Zoom value must be in the range: 0-20 (inclusive). Default value is 12.<br><br>Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.
centerStringNoCoordinates of the center point. Format: 'lon,lat'. Projection used + * - EPSG:3857. Longitude range: -180 to 180. Latitude range: -85 to 85. + * + * Note: Either center or bbox are required parameters. They are + * mutually exclusive.
bboxStringNoBounding box. Projection used - EPSG:3857. Format : 'minLon, minLat, + * maxLon, maxLat'. + * + * Note: Either bbox or center are required + * parameters. They are mutually exclusive. It shouldn’t be used with + * height or width. + * + * The maximum allowed ranges for Lat and Lon are defined for each zoom level + * in the table at the top of this page.
heightStringNoHeight of the resulting image in pixels. Range is 1 to 8192. Default + * is 512. It shouldn’t be used with bbox.
widthStringNoWidth of the resulting image in pixels. Range is 1 to 8192. Default is 512. It shouldn’t be used with bbox.
languageStringNoLanguage in which search results should be returned. Should be one of supported IETF language tags, case insensitive. When data in specified language is not available for a specific field, default language is used. + * + * Please refer to [Supported Languages](https://docs.microsoft.com/azure/azure-maps/supported-languages) for details.
viewStringNoThe View parameter (also called the "user region" parameter) allows you to show the correct maps for a certain country/region for geopolitically disputed regions. Different countries have different views of such regions, and the View parameter allows your application to comply with the view required by the country your application will be serving. By default, the View parameter is set to “Unified” even if you haven’t defined it in the request. It is your responsibility to determine the location of your users, and then set the View parameter correctly for that location. Alternatively, you have the option to set ‘View=Auto’, which will return the map data based on the IP address of the request. The View parameter in Azure Maps must be used in compliance with applicable laws, including those regarding mapping, of the country where maps, images and other data and third party content that you are authorized to access via Azure Maps is made available. Example: view=IN. + * + * Please refer to [Supported Views](https://aka.ms/AzureMapsLocalizationViews) for details and to see the available Views.
pinsStringNoPushpin style and instances. Use this parameter to optionally add pushpins to the image. + * The pushpin style describes the appearance of the pushpins, and the instances specify + * the coordinates of the pushpins and optional labels for each pin. (Be sure to properly URL-encode values of this + * parameter since it will contain reserved characters such as pipes and punctuation.) + * + * The Azure Maps account S0 SKU only supports a single instance of the pins parameter. Other SKUs + * allow multiple instances of the pins parameter to specify multiple pin styles. + * + * To render a pushpin at latitude 45°N and longitude 122°W using the default built-in pushpin style, add the + * querystring parameter + * + * `pins=default||-122 45` + * + * Note that the longitude comes before the latitude. + * After URL encoding this will look like + * + * `pins=default%7C%7C-122+45` + * + * All of the examples here show the pins + * parameter without URL encoding, for clarity. + * + * To render a pin at multiple locations, separate each location with a pipe character. For example, use + * + * `pins=default||-122 45|-119.5 43.2|-121.67 47.12` + * + * The S0 Azure Maps account SKU only allows five pushpins. Other account SKUs do not have this limitation. + * + * ### Style Modifiers + * + * You can modify the appearance of the pins by adding style modifiers. These are added after the style but before + * the locations and labels. Style modifiers each have a two-letter name. These abbreviated names are used to help + * reduce the length of the URL. + * + * To change the color of the pushpin, use the 'co' style modifier and specify the color using the HTML/CSS RGB color + * format which is a six-digit hexadecimal number (the three-digit form is not supported). For example, to use + * a deep pink color which you would specify as #FF1493 in CSS, use + * + * `pins=default|coFF1493||-122 45` + * + * ### Pushpin Labels + * + * To add a label to the pins, put the label in single quotes just before the coordinates. For example, to label + * three pins with the values '1', '2', and '3', use + * + * `pins=default||'1'-122 45|'2'-119.5 43.2|'3'-121.67 47.12` + * + * There is a built in pushpin style called 'none' that does not display a pushpin image. You can use this if + * you want to display labels without any pin image. For example, + * + * `pins=none||'A'-122 45|'B'-119.5 43.2` + * + * To change the color of the pushpin labels, use the 'lc' label color style modifier. For example, to use pink + * pushpins with black labels, use + * + * `pins=default|coFF1493|lc000000||-122 45` + * + * To change the size of the labels, use the 'ls' label size style modifier. The label size represents the approximate + * height of the label text in pixels. For example, to increase the label size to 12, use + * + * `pins=default|ls12||'A'-122 45|'B'-119 43` + * + * The labels are centered at the pushpin 'label anchor.' The anchor location is predefined for built-in pushpins and + * is at the top center of custom pushpins (see below). To override the label anchor, using the 'la' style modifier + * and provide X and Y pixel coordinates for the anchor. These coordinates are relative to the top left corner of the + * pushpin image. Positive X values move the anchor to the right, and positive Y values move the anchor down. For example, + * to position the label anchor 10 pixels right and 4 pixels above the top left corner of the pushpin image, + * use + * + * `pins=default|la10 -4||'A'-122 45|'B'-119 43` + * + * ### Custom Pushpins + * + * To use a custom pushpin image, use the word 'custom' as the pin style name, and then specify a URL after the + * location and label information. Use two pipe characters to indicate that you're done specifying locations and are + * starting the URL. For example, + * + * `pins=custom||-122 45||http://contoso.com/pushpins/red.png` + * + * After URL encoding, this would look like + * + * `pins=custom%7C%7C-122+45%7C%7Chttp%3A%2F%2Fcontoso.com%2Fpushpins%2Fred.png` + * + * By default, custom pushpin images are drawn centered at the pin coordinates. This usually isn't ideal as it obscures + * the location that you're trying to highlight. To override the anchor location of the pin image, use the 'an' + * style modifier. This uses the same format as the 'la' label anchor style modifier. For example, if your custom + * pin image has the tip of the pin at the top left corner of the image, you can set the anchor to that spot by + * using + * + * `pins=custom|an0 0||-122 45||http://contoso.com/pushpins/red.png` + * + * Note: If you use the 'co' color modifier with a custom pushpin image, the specified color will replace the RGB + * channels of the pixels in the image but will leave the alpha (opacity) channel unchanged. This would usually + * only be done with a solid-color custom image. + * + * ### Getting Pushpins from Azure Maps Data Storage + * + * For all Azure Maps account SKUs other than S0, + * the pushpin location information can be obtained from Azure Maps Data Storage. After uploading a GeoJSON document containing pin locations, the Data Storage service returns a Unique Data ID (UDID) that you can use + * to reference the data in the pins parameter. + * + * To use the point geometry from an uploaded GeoJSON document as the pin locations, specify the UDID in the locations + * section of the pins parameter. For example, + * + * `pins=default||udid-29dc105a-dee7-409f-a3f9-22b066ae4713` + * + * Note that + * only point and multipoint geometry, points and multipoints from geometry collections, and point geometry from features + * will be used. Linestring and polygon geometry will be ignored. If the point comes from a feature and the feature + * has a string property called "label", the value of that property will be used as the label for the pin. + * + * You can mix pin locations from Data Storage and pin locations specified in the pins parameter. Any of the pipe-delimited + * pin locations can be a longitude and latitude or a UDID. For example, + * + * `pins=default||-122 45|udid-29dc105a-dee7-409f-a3f9-22b066ae4713|-119 43` + * + * ### Scale, Rotation, and Opacity + * + * You can make pushpins and their labels larger or smaller by using the 'sc' scale style modifier. This is a + * value greater than zero. A value of 1 is the standard scale. Values larger than 1 will make the pins larger, and + * values smaller than 1 will make them smaller. For example, to draw the pushpins 50% larger than normal, use + * + * `pins=default|sc1.5||-122 45` + * + * You can rotate pushpins and their labels by using the 'ro' rotation style modifier. This is a number of degrees + * of clockwise rotation. Use a negative number to rotate counter-clockwise. For example, to rotate the pushpins + * 90 degrees clockwise and double their size, use + * + * `pins=default|ro90|sc2||-122 45` + * + * You can make pushpins and their labels partially transparent by specifying the 'al' alpha style modifier. + * This is a number between 0 and 1 indicating the opacity of the pushpins. Zero makes them completely transparent + * (and not visible) and 1 makes them completely opaque (which is the default). For example, to make pushpins + * and their labels only 67% opaque, use + * + * `pins=default|al.67||-122 45` + * + * ### Style Modifier Summary + * + * Modifier | Description | Range + * :--------:|-----------------|------------------ + * al | Alpha (opacity) | 0 to 1 + * an | Pin anchor | * + * co | Pin color | 000000 to FFFFFF + * la | Label anchor | * + * lc | Label color | 000000 to FFFFFF + * ls | Label size | Greater than 0 + * ro | Rotation | -360 to 360 + * sc | Scale | Greater than 0 + * + * * X and Y coordinates can be anywhere within pin image or a margin around it. + * The margin size is the minimum of the pin width and height.
pathStringNoPath style and locations. Use this parameter to optionally add lines, polygons or circles to the image. + * The path style describes the appearance of the line and fill. (Be sure to properly URL-encode values of this + * parameter since it will contain reserved characters such as pipes and punctuation.) + * + * Path parameter is supported in Azure Maps account SKU starting with S1. Multiple instances of the path parameter + * allow to specify multiple geometries with their styles. Number of parameters per request is limited to 10 and + * number of locations is limited to 100 per path. + * + * To render a circle with radius 100 meters and center point at latitude 45°N and longitude 122°W using the default style, add the + * querystring parameter + * + * `path=ra100||-122 45` + * + * Note that the longitude comes before the latitude. + * After URL encoding this will look like + * + * `path=ra100%7C%7C-122+45` + * + * All of the examples here show the path parameter without URL encoding, for clarity. + * + * To render a line, separate each location with a pipe character. For example, use + * + * `path=||-122 45|-119.5 43.2|-121.67 47.12` + * + * To render a polygon, last location must be equal to the start location. For example, use + * + * `path=||-122 45|-119.5 43.2|-121.67 47.12|-122 45` + * + * Longitude and latitude values for locations of lines and polygons can be in the range from -360 to 360 to allow for rendering of geometries crossing the anti-meridian. + * + * ### Style Modifiers + * + * You can modify the appearance of the path by adding style modifiers. These are added before the locations. + * Style modifiers each have a two-letter name. These abbreviated names are used to help reduce the length + * of the URL. + * + * To change the color of the outline, use the 'lc' style modifier and specify the color using the HTML/CSS RGB color + * format which is a six-digit hexadecimal number (the three-digit form is not supported). For example, to use + * a deep pink color which you would specify as #FF1493 in CSS, use + * + * `path=lcFF1493||-122 45|-119.5 43.2` + * + * Multiple style modifiers may be combined together to create a more complex visual style. + * + * `lc0000FF|lw3|la0.60|fa0.50||-122.2 47.6|-122.2 47.7|-122.3 47.7|-122.3 47.6|-122.2 47.6` + * + * ### Getting Path locations from Azure Maps Data Storage + * + * For all Azure Maps account SKUs other than S0, the path location information can be obtained from Azure Maps Data Storage. + * After uploading a GeoJSON document containing path locations, the Data Storage service returns a Unique Data ID (UDID) that you can use + * to reference the data in the path parameter. + * + * To use the point geometry from an uploaded GeoJSON document as the path locations, specify the UDID in the locations + * section of the path parameter. For example, + * + * `path=||udid-29dc105a-dee7-409f-a3f9-22b066ae4713` + * + * Note the it is not allowed to mix path locations from Data Storage with locations specified in the path parameter. + * + * ### Style Modifier Summary + * + * Modifier | Description | Range + * :--------:|------------------------|------------------ + * lc | Line color | 000000 to FFFFFF + * fc | Fill color | 000000 to FFFFFF + * la | Line alpha (opacity) | 0 to 1 + * fa | Fill alpha (opacity) | 0 to 1 + * lw | Line width | Greater than 0 + * ra | Circle radius (meters) | Greater than 0
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + * @param format Desired format of the response. Possible value: png. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return the {@link Response} on successful completion of {@link Mono}. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getMapStaticImageWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getMapStaticImageWithResponseAsync(format, requestOptions); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Returns copyright information for a given bounding box. Bounding-box requests should specify the minimum and + * maximum longitude and latitude (EPSG-3857) coordinates. + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
mincoordinatesStringYesMinimum coordinates (south-west point) of bounding box in latitude longitude coordinate system. E.g. 52.41064,4.84228
maxcoordinatesStringYesMaximum coordinates (north-east point) of bounding box in latitude longitude coordinate system. E.g. 52.41064,4.84228
textStringNoYes/no value to exclude textual data from response. Only images and country names will be in response.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     formatVersion: String
+     *     generalCopyrights: [
+     *         String
+     *     ]
+     *     regions: [
+     *         {
+     *             copyrights: [
+     *                 String
+     *             ]
+     *             country: {
+     *                 iso3: String
+     *                 label: String
+     *             }
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Value can be either _json_ or _xml_. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return this object is returned from a successful copyright request along with {@link Response} on successful + * completion of {@link Mono}. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getCopyrightFromBoundingBoxWithResponse( + String format, RequestOptions requestOptions) { + return this.serviceClient.getCopyrightFromBoundingBoxWithResponseAsync(format, requestOptions); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Copyrights API is designed to serve copyright information for Render Tile service. In addition to basic + * copyright for the whole map, API is serving specific groups of copyrights for some countries. Returns the + * copyright information for a given tile. To obtain the copyright information for a particular tile, the request + * should specify the tile's zoom level and x and y coordinates (see: Zoom Levels and Tile Grid). + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
zoomintYesZoom level for the desired tile. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.
xintYesX coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
yintYesY coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
textStringNoYes/no value to exclude textual data from response. Only images and country names will be in response.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     formatVersion: String
+     *     generalCopyrights: [
+     *         String
+     *     ]
+     *     regions: [
+     *         {
+     *             copyrights: [
+     *                 String
+     *             ]
+     *             country: {
+     *                 iso3: String
+     *                 label: String
+     *             }
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Value can be either _json_ or _xml_. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return this object is returned from a successful copyright request along with {@link Response} on successful + * completion of {@link Mono}. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getCopyrightForTileWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getCopyrightForTileWithResponseAsync(format, requestOptions); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Copyrights API is designed to serve copyright information for Render Tile service. In addition to basic + * copyright for the whole map, API is serving specific groups of copyrights for some countries. Returns the + * copyright information for the world. To obtain the default copyright information for the whole world, do not + * specify a tile or bounding box. + * + *

Query Parameters + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
textStringNoYes/no value to exclude textual data from response. Only images and country names will be in response.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     formatVersion: String
+     *     generalCopyrights: [
+     *         String
+     *     ]
+     *     regions: [
+     *         {
+     *             copyrights: [
+     *                 String
+     *             ]
+     *             country: {
+     *                 iso3: String
+     *                 label: String
+     *             }
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Value can be either _json_ or _xml_. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return this object is returned from a successful copyright request along with {@link Response} on successful + * completion of {@link Mono}. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getCopyrightForWorldWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getCopyrightForWorldWithResponseAsync(format, requestOptions); + } +} diff --git a/sdk/maps/azure-maps-render/src/main/java/com/azure/maps/render/AzureMapsRenderServiceClient.java b/sdk/maps/azure-maps-render/src/main/java/com/azure/maps/render/AzureMapsRenderServiceClient.java new file mode 100644 index 000000000000..f98b3351cce4 --- /dev/null +++ b/sdk/maps/azure-maps-render/src/main/java/com/azure/maps/render/AzureMapsRenderServiceClient.java @@ -0,0 +1,772 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.render; + +import com.azure.core.annotation.Generated; +import com.azure.core.annotation.ReturnType; +import com.azure.core.annotation.ServiceClient; +import com.azure.core.annotation.ServiceMethod; +import com.azure.core.exception.HttpResponseException; +import com.azure.core.http.rest.RequestOptions; +import com.azure.core.http.rest.Response; +import com.azure.core.util.BinaryData; +import com.azure.maps.render.implementation.RenderV2sImpl; + +/** Initializes a new instance of the synchronous AzureMapsRenderServiceClient type. */ +@ServiceClient(builder = AzureMapsRenderServiceClientBuilder.class) +public final class AzureMapsRenderServiceClient { + @Generated private final RenderV2sImpl serviceClient; + + /** + * Initializes an instance of RenderV2s client. + * + * @param serviceClient the service client implementation. + */ + @Generated + AzureMapsRenderServiceClient(RenderV2sImpl serviceClient) { + this.serviceClient = serviceClient; + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

The Get Map Tiles API allows users to request map tiles in vector or raster formats typically to be integrated + * into a map control or SDK. Some example tiles that can be requested are Azure Maps road tiles, real-time Weather + * Radar tiles or the map tiles created using [Azure Maps Creator](https://aka.ms/amcreator). By default, Azure Maps + * uses vector tiles for its web map control (Web SDK) and Android SDK. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
tilesetIdStringYesA tileset is a collection of raster or vector data broken up into a uniform grid of square tiles at preset zoom levels. Every tileset has a **tilesetId** to use when making requests. The **tilesetId** for tilesets created using [Azure Maps Creator](https://aka.ms/amcreator) are generated through the [Tileset Create API](https://docs.microsoft.com/en-us/rest/api/maps/tileset). The ready-to-use tilesets supplied by Azure Maps are listed below. For example, microsoft.base.
zoomintYesZoom level for the desired tile. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.
xintYesX coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
yintYesY coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
timeStampStringNoThe desired date and time of the requested tile. This parameter must be specified in the standard date-time format (e.g. 2019-11-14T16:03:00-08:00), as defined by [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601). This parameter is only supported when tilesetId parameter is set to one of the values below. + * + * * microsoft.weather.infrared.main: We provide tiles up to 3 hours in the past. Tiles are available in 10-minute intervals. We round the timeStamp value to the nearest 10-minute time frame. + * * microsoft.weather.radar.main: We provide tiles up to 1.5 hours in the past and up to 2 hours in the future. Tiles are available in 5-minute intervals. We round the timeStamp value to the nearest 5-minute time frame.
tileSizeStringNoThe size of the returned map tile in pixels.
languageStringNoLanguage in which search results should be returned. Should be one of supported IETF language tags, case insensitive. When data in specified language is not available for a specific field, default language is used. + * + * Please refer to [Supported Languages](https://docs.microsoft.com/azure/azure-maps/supported-languages) for details.
viewStringNoThe View parameter (also called the "user region" parameter) allows you to show the correct maps for a certain country/region for geopolitically disputed regions. Different countries have different views of such regions, and the View parameter allows your application to comply with the view required by the country your application will be serving. By default, the View parameter is set to “Unified” even if you haven’t defined it in the request. It is your responsibility to determine the location of your users, and then set the View parameter correctly for that location. Alternatively, you have the option to set ‘View=Auto’, which will return the map data based on the IP address of the request. The View parameter in Azure Maps must be used in compliance with applicable laws, including those regarding mapping, of the country where maps, images and other data and third party content that you are authorized to access via Azure Maps is made available. Example: view=IN. + * + * Please refer to [Supported Views](https://aka.ms/AzureMapsLocalizationViews) for details and to see the available Views.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return the {@link Response}. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getMapTileWithResponse(RequestOptions requestOptions) { + return this.serviceClient.getMapTileWithResponse(requestOptions); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

The Get Map Tileset API allows users to request metadata for a tileset. + * + *

Query Parameters + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
tilesetIdStringYesA tileset is a collection of raster or vector data broken up into a uniform grid of square tiles at preset zoom levels. Every tileset has a **tilesetId** to use when making requests. The **tilesetId** for tilesets created using [Azure Maps Creator](https://aka.ms/amcreator) are generated through the [Tileset Create API](https://docs.microsoft.com/en-us/rest/api/maps/tileset). The ready-to-use tilesets supplied by Azure Maps are listed below. For example, microsoft.base.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     tilejson: String
+     *     name: String
+     *     description: String
+     *     version: String
+     *     attribution: String
+     *     template: String
+     *     legend: String
+     *     scheme: String
+     *     tiles: [
+     *         String
+     *     ]
+     *     grids: [
+     *         String
+     *     ]
+     *     data: [
+     *         String
+     *     ]
+     *     minZoom: Integer
+     *     maxZoom: Integer
+     *     bounds: [
+     *         float
+     *     ]
+     *     center: [
+     *         float
+     *     ]
+     * }
+     * }
+ * + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return metadata for a tileset in the TileJSON format along with {@link Response}. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getMapTilesetWithResponse(RequestOptions requestOptions) { + return this.serviceClient.getMapTilesetWithResponse(requestOptions); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

The Get Map Attribution API allows users to request map copyright attribution information for a section of a + * tileset. + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
tilesetIdStringYesA tileset is a collection of raster or vector data broken up into a uniform grid of square tiles at preset zoom levels. Every tileset has a **tilesetId** to use when making requests. The **tilesetId** for tilesets created using [Azure Maps Creator](https://aka.ms/amcreator) are generated through the [Tileset Create API](https://docs.microsoft.com/en-us/rest/api/maps/tileset). The ready-to-use tilesets supplied by Azure Maps are listed below. For example, microsoft.base.
zoomintYesZoom level for the desired map attribution.
boundsStringYesThe string that represents the rectangular area of a bounding box. The bounds parameter is defined by the 4 bounding box coordinates, with WGS84 longitude and latitude of the southwest corner followed by WGS84 longitude and latitude of the northeast corner. The string is presented in the following format: `[SouthwestCorner_Longitude, SouthwestCorner_Latitude, NortheastCorner_Longitude, NortheastCorner_Latitude]`.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     copyrights: [
+     *         String
+     *     ]
+     * }
+     * }
+ * + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return copyright attribution for the requested section of a tileset along with {@link Response}. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getMapAttributionWithResponse(RequestOptions requestOptions) { + return this.serviceClient.getMapAttributionWithResponse(requestOptions); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Fetches state tiles in vector format typically to be integrated into indoor maps module of map control or SDK. + * The map control will call this API after user turns on dynamic styling (see [Zoom Levels and Tile + * Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid)). + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
zoomintYesZoom level for the desired tile. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.
xintYesX coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
yintYesY coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
statesetIdStringYesThe stateset id.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return the {@link Response}. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getMapStateTileWithResponse(RequestOptions requestOptions) { + return this.serviceClient.getMapStateTileWithResponse(requestOptions); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Copyrights API is designed to serve copyright information for Render Tile service. In addition to basic + * copyright for the whole map, API is serving specific groups of copyrights for some countries. + * + *

As an alternative to copyrights for map request, one can receive captions for displaying the map provider + * information on the map. + * + *

Query Parameters + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     formatVersion: String
+     *     copyrightsCaption: String
+     * }
+     * }
+ * + * @param format Desired format of the response. Value can be either _json_ or _xml_. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return this object is returned from a successful copyright call along with {@link Response}. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getCopyrightCaptionWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getCopyrightCaptionWithResponse(format, requestOptions); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

The static image service renders a user-defined, rectangular image containing a map section using a zoom level + * from 0 to 20. The static image service renders a user-defined, rectangular image containing a map section using a + * zoom level from 0 to 20. The supported resolution range for the map image is from 1x1 to 8192x8192. If you are + * deciding when to use the static image service over the map tile service, you may want to consider how you would + * like to interact with the rendered map. If the map contents will be relatively unchanging, a static map is a good + * choice. If you want to support a lot of zooming, panning and changing of the map content, the map tile service + * would be a better choice. + * + *

Service also provides Image Composition functionality to get a static image back with additional data like; + * pushpins and geometry overlays with following S0 and S1 capabilities. + * + *

In S0 you can: - Render up to 5 pushpins specified in the request - Provide one custom image for the pins + * referenced in the request - Add labels to the pushpins + * + *

In S1 you can: - Render pushpins through [Azure Maps Data Service](https://aka.ms/AzureMapsMapDataService) - + * Specify multiple pushpin styles - Render circle, polyline and polygon geometry types. - Render of supported + * GeoJSON geometry types uploaded through [Azure Maps Data Service](https://aka.ms/AzureMapsMapDataService) + * + *

Please see [How-to-Guide](https://aka.ms/AzureMapsHowToGuideImageCompositor) for detailed examples. + * + *

_Note_ : Either **center** or **bbox** parameter must be supplied to the API. <br><br> The + * supported Lat and Lon ranges when using the **bbox** parameter, are as follows: <br><br> + * + *

|Zoom Level | Max Lon Range | Max Lat Range| |:----------|:----------------|:-------------| |0 | 360.0 | 170.0 + * | |1 | 360.0 | 170.0 | |2 | 360.0 | 170.0 | |3 | 360.0 | 170.0 | |4 | 360.0 | 170.0 | |5 | 180.0 | 85.0 | |6 | + * 90.0 | 42.5 | |7 | 45.0 | 21.25 | |8 | 22.5 | 10.625 | |9 | 11.25 | 5.3125 | |10 | 5.625 | 2.62625 | |11 | 2.8125 + * | 1.328125 | |12 | 1.40625 | 0.6640625 | |13 | 0.703125 | 0.33203125 | |14 | 0.3515625 | 0.166015625 | |15 | + * 0.17578125 | 0.0830078125 | |16 | 0.087890625 | 0.0415039063 | |17 | 0.0439453125 | 0.0207519531 | |18 | + * 0.0219726563 | 0.0103759766 | |19 | 0.0109863281 | 0.0051879883 | |20 | 0.0054931641 | 0.0025939941 |. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
layerStringNoMap layer requested. If layer is set to labels or hybrid, the format should be png.
styleStringNoMap style to be returned. Possible values are main and dark.
zoomStringNoDesired zoom level of the map. Zoom value must be in the range: 0-20 (inclusive). Default value is 12.<br><br>Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.
centerStringNoCoordinates of the center point. Format: 'lon,lat'. Projection used + * - EPSG:3857. Longitude range: -180 to 180. Latitude range: -85 to 85. + * + * Note: Either center or bbox are required parameters. They are + * mutually exclusive.
bboxStringNoBounding box. Projection used - EPSG:3857. Format : 'minLon, minLat, + * maxLon, maxLat'. + * + * Note: Either bbox or center are required + * parameters. They are mutually exclusive. It shouldn’t be used with + * height or width. + * + * The maximum allowed ranges for Lat and Lon are defined for each zoom level + * in the table at the top of this page.
heightStringNoHeight of the resulting image in pixels. Range is 1 to 8192. Default + * is 512. It shouldn’t be used with bbox.
widthStringNoWidth of the resulting image in pixels. Range is 1 to 8192. Default is 512. It shouldn’t be used with bbox.
languageStringNoLanguage in which search results should be returned. Should be one of supported IETF language tags, case insensitive. When data in specified language is not available for a specific field, default language is used. + * + * Please refer to [Supported Languages](https://docs.microsoft.com/azure/azure-maps/supported-languages) for details.
viewStringNoThe View parameter (also called the "user region" parameter) allows you to show the correct maps for a certain country/region for geopolitically disputed regions. Different countries have different views of such regions, and the View parameter allows your application to comply with the view required by the country your application will be serving. By default, the View parameter is set to “Unified” even if you haven’t defined it in the request. It is your responsibility to determine the location of your users, and then set the View parameter correctly for that location. Alternatively, you have the option to set ‘View=Auto’, which will return the map data based on the IP address of the request. The View parameter in Azure Maps must be used in compliance with applicable laws, including those regarding mapping, of the country where maps, images and other data and third party content that you are authorized to access via Azure Maps is made available. Example: view=IN. + * + * Please refer to [Supported Views](https://aka.ms/AzureMapsLocalizationViews) for details and to see the available Views.
pinsStringNoPushpin style and instances. Use this parameter to optionally add pushpins to the image. + * The pushpin style describes the appearance of the pushpins, and the instances specify + * the coordinates of the pushpins and optional labels for each pin. (Be sure to properly URL-encode values of this + * parameter since it will contain reserved characters such as pipes and punctuation.) + * + * The Azure Maps account S0 SKU only supports a single instance of the pins parameter. Other SKUs + * allow multiple instances of the pins parameter to specify multiple pin styles. + * + * To render a pushpin at latitude 45°N and longitude 122°W using the default built-in pushpin style, add the + * querystring parameter + * + * `pins=default||-122 45` + * + * Note that the longitude comes before the latitude. + * After URL encoding this will look like + * + * `pins=default%7C%7C-122+45` + * + * All of the examples here show the pins + * parameter without URL encoding, for clarity. + * + * To render a pin at multiple locations, separate each location with a pipe character. For example, use + * + * `pins=default||-122 45|-119.5 43.2|-121.67 47.12` + * + * The S0 Azure Maps account SKU only allows five pushpins. Other account SKUs do not have this limitation. + * + * ### Style Modifiers + * + * You can modify the appearance of the pins by adding style modifiers. These are added after the style but before + * the locations and labels. Style modifiers each have a two-letter name. These abbreviated names are used to help + * reduce the length of the URL. + * + * To change the color of the pushpin, use the 'co' style modifier and specify the color using the HTML/CSS RGB color + * format which is a six-digit hexadecimal number (the three-digit form is not supported). For example, to use + * a deep pink color which you would specify as #FF1493 in CSS, use + * + * `pins=default|coFF1493||-122 45` + * + * ### Pushpin Labels + * + * To add a label to the pins, put the label in single quotes just before the coordinates. For example, to label + * three pins with the values '1', '2', and '3', use + * + * `pins=default||'1'-122 45|'2'-119.5 43.2|'3'-121.67 47.12` + * + * There is a built in pushpin style called 'none' that does not display a pushpin image. You can use this if + * you want to display labels without any pin image. For example, + * + * `pins=none||'A'-122 45|'B'-119.5 43.2` + * + * To change the color of the pushpin labels, use the 'lc' label color style modifier. For example, to use pink + * pushpins with black labels, use + * + * `pins=default|coFF1493|lc000000||-122 45` + * + * To change the size of the labels, use the 'ls' label size style modifier. The label size represents the approximate + * height of the label text in pixels. For example, to increase the label size to 12, use + * + * `pins=default|ls12||'A'-122 45|'B'-119 43` + * + * The labels are centered at the pushpin 'label anchor.' The anchor location is predefined for built-in pushpins and + * is at the top center of custom pushpins (see below). To override the label anchor, using the 'la' style modifier + * and provide X and Y pixel coordinates for the anchor. These coordinates are relative to the top left corner of the + * pushpin image. Positive X values move the anchor to the right, and positive Y values move the anchor down. For example, + * to position the label anchor 10 pixels right and 4 pixels above the top left corner of the pushpin image, + * use + * + * `pins=default|la10 -4||'A'-122 45|'B'-119 43` + * + * ### Custom Pushpins + * + * To use a custom pushpin image, use the word 'custom' as the pin style name, and then specify a URL after the + * location and label information. Use two pipe characters to indicate that you're done specifying locations and are + * starting the URL. For example, + * + * `pins=custom||-122 45||http://contoso.com/pushpins/red.png` + * + * After URL encoding, this would look like + * + * `pins=custom%7C%7C-122+45%7C%7Chttp%3A%2F%2Fcontoso.com%2Fpushpins%2Fred.png` + * + * By default, custom pushpin images are drawn centered at the pin coordinates. This usually isn't ideal as it obscures + * the location that you're trying to highlight. To override the anchor location of the pin image, use the 'an' + * style modifier. This uses the same format as the 'la' label anchor style modifier. For example, if your custom + * pin image has the tip of the pin at the top left corner of the image, you can set the anchor to that spot by + * using + * + * `pins=custom|an0 0||-122 45||http://contoso.com/pushpins/red.png` + * + * Note: If you use the 'co' color modifier with a custom pushpin image, the specified color will replace the RGB + * channels of the pixels in the image but will leave the alpha (opacity) channel unchanged. This would usually + * only be done with a solid-color custom image. + * + * ### Getting Pushpins from Azure Maps Data Storage + * + * For all Azure Maps account SKUs other than S0, + * the pushpin location information can be obtained from Azure Maps Data Storage. After uploading a GeoJSON document containing pin locations, the Data Storage service returns a Unique Data ID (UDID) that you can use + * to reference the data in the pins parameter. + * + * To use the point geometry from an uploaded GeoJSON document as the pin locations, specify the UDID in the locations + * section of the pins parameter. For example, + * + * `pins=default||udid-29dc105a-dee7-409f-a3f9-22b066ae4713` + * + * Note that + * only point and multipoint geometry, points and multipoints from geometry collections, and point geometry from features + * will be used. Linestring and polygon geometry will be ignored. If the point comes from a feature and the feature + * has a string property called "label", the value of that property will be used as the label for the pin. + * + * You can mix pin locations from Data Storage and pin locations specified in the pins parameter. Any of the pipe-delimited + * pin locations can be a longitude and latitude or a UDID. For example, + * + * `pins=default||-122 45|udid-29dc105a-dee7-409f-a3f9-22b066ae4713|-119 43` + * + * ### Scale, Rotation, and Opacity + * + * You can make pushpins and their labels larger or smaller by using the 'sc' scale style modifier. This is a + * value greater than zero. A value of 1 is the standard scale. Values larger than 1 will make the pins larger, and + * values smaller than 1 will make them smaller. For example, to draw the pushpins 50% larger than normal, use + * + * `pins=default|sc1.5||-122 45` + * + * You can rotate pushpins and their labels by using the 'ro' rotation style modifier. This is a number of degrees + * of clockwise rotation. Use a negative number to rotate counter-clockwise. For example, to rotate the pushpins + * 90 degrees clockwise and double their size, use + * + * `pins=default|ro90|sc2||-122 45` + * + * You can make pushpins and their labels partially transparent by specifying the 'al' alpha style modifier. + * This is a number between 0 and 1 indicating the opacity of the pushpins. Zero makes them completely transparent + * (and not visible) and 1 makes them completely opaque (which is the default). For example, to make pushpins + * and their labels only 67% opaque, use + * + * `pins=default|al.67||-122 45` + * + * ### Style Modifier Summary + * + * Modifier | Description | Range + * :--------:|-----------------|------------------ + * al | Alpha (opacity) | 0 to 1 + * an | Pin anchor | * + * co | Pin color | 000000 to FFFFFF + * la | Label anchor | * + * lc | Label color | 000000 to FFFFFF + * ls | Label size | Greater than 0 + * ro | Rotation | -360 to 360 + * sc | Scale | Greater than 0 + * + * * X and Y coordinates can be anywhere within pin image or a margin around it. + * The margin size is the minimum of the pin width and height.
pathStringNoPath style and locations. Use this parameter to optionally add lines, polygons or circles to the image. + * The path style describes the appearance of the line and fill. (Be sure to properly URL-encode values of this + * parameter since it will contain reserved characters such as pipes and punctuation.) + * + * Path parameter is supported in Azure Maps account SKU starting with S1. Multiple instances of the path parameter + * allow to specify multiple geometries with their styles. Number of parameters per request is limited to 10 and + * number of locations is limited to 100 per path. + * + * To render a circle with radius 100 meters and center point at latitude 45°N and longitude 122°W using the default style, add the + * querystring parameter + * + * `path=ra100||-122 45` + * + * Note that the longitude comes before the latitude. + * After URL encoding this will look like + * + * `path=ra100%7C%7C-122+45` + * + * All of the examples here show the path parameter without URL encoding, for clarity. + * + * To render a line, separate each location with a pipe character. For example, use + * + * `path=||-122 45|-119.5 43.2|-121.67 47.12` + * + * To render a polygon, last location must be equal to the start location. For example, use + * + * `path=||-122 45|-119.5 43.2|-121.67 47.12|-122 45` + * + * Longitude and latitude values for locations of lines and polygons can be in the range from -360 to 360 to allow for rendering of geometries crossing the anti-meridian. + * + * ### Style Modifiers + * + * You can modify the appearance of the path by adding style modifiers. These are added before the locations. + * Style modifiers each have a two-letter name. These abbreviated names are used to help reduce the length + * of the URL. + * + * To change the color of the outline, use the 'lc' style modifier and specify the color using the HTML/CSS RGB color + * format which is a six-digit hexadecimal number (the three-digit form is not supported). For example, to use + * a deep pink color which you would specify as #FF1493 in CSS, use + * + * `path=lcFF1493||-122 45|-119.5 43.2` + * + * Multiple style modifiers may be combined together to create a more complex visual style. + * + * `lc0000FF|lw3|la0.60|fa0.50||-122.2 47.6|-122.2 47.7|-122.3 47.7|-122.3 47.6|-122.2 47.6` + * + * ### Getting Path locations from Azure Maps Data Storage + * + * For all Azure Maps account SKUs other than S0, the path location information can be obtained from Azure Maps Data Storage. + * After uploading a GeoJSON document containing path locations, the Data Storage service returns a Unique Data ID (UDID) that you can use + * to reference the data in the path parameter. + * + * To use the point geometry from an uploaded GeoJSON document as the path locations, specify the UDID in the locations + * section of the path parameter. For example, + * + * `path=||udid-29dc105a-dee7-409f-a3f9-22b066ae4713` + * + * Note the it is not allowed to mix path locations from Data Storage with locations specified in the path parameter. + * + * ### Style Modifier Summary + * + * Modifier | Description | Range + * :--------:|------------------------|------------------ + * lc | Line color | 000000 to FFFFFF + * fc | Fill color | 000000 to FFFFFF + * la | Line alpha (opacity) | 0 to 1 + * fa | Fill alpha (opacity) | 0 to 1 + * lw | Line width | Greater than 0 + * ra | Circle radius (meters) | Greater than 0
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + * @param format Desired format of the response. Possible value: png. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return the {@link Response}. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getMapStaticImageWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getMapStaticImageWithResponse(format, requestOptions); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Returns copyright information for a given bounding box. Bounding-box requests should specify the minimum and + * maximum longitude and latitude (EPSG-3857) coordinates. + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
mincoordinatesStringYesMinimum coordinates (south-west point) of bounding box in latitude longitude coordinate system. E.g. 52.41064,4.84228
maxcoordinatesStringYesMaximum coordinates (north-east point) of bounding box in latitude longitude coordinate system. E.g. 52.41064,4.84228
textStringNoYes/no value to exclude textual data from response. Only images and country names will be in response.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     formatVersion: String
+     *     generalCopyrights: [
+     *         String
+     *     ]
+     *     regions: [
+     *         {
+     *             copyrights: [
+     *                 String
+     *             ]
+     *             country: {
+     *                 iso3: String
+     *                 label: String
+     *             }
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Value can be either _json_ or _xml_. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return this object is returned from a successful copyright request along with {@link Response}. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getCopyrightFromBoundingBoxWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getCopyrightFromBoundingBoxWithResponse(format, requestOptions); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Copyrights API is designed to serve copyright information for Render Tile service. In addition to basic + * copyright for the whole map, API is serving specific groups of copyrights for some countries. Returns the + * copyright information for a given tile. To obtain the copyright information for a particular tile, the request + * should specify the tile's zoom level and x and y coordinates (see: Zoom Levels and Tile Grid). + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
zoomintYesZoom level for the desired tile. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.
xintYesX coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
yintYesY coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
textStringNoYes/no value to exclude textual data from response. Only images and country names will be in response.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     formatVersion: String
+     *     generalCopyrights: [
+     *         String
+     *     ]
+     *     regions: [
+     *         {
+     *             copyrights: [
+     *                 String
+     *             ]
+     *             country: {
+     *                 iso3: String
+     *                 label: String
+     *             }
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Value can be either _json_ or _xml_. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return this object is returned from a successful copyright request along with {@link Response}. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getCopyrightForTileWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getCopyrightForTileWithResponse(format, requestOptions); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Copyrights API is designed to serve copyright information for Render Tile service. In addition to basic + * copyright for the whole map, API is serving specific groups of copyrights for some countries. Returns the + * copyright information for the world. To obtain the default copyright information for the whole world, do not + * specify a tile or bounding box. + * + *

Query Parameters + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
textStringNoYes/no value to exclude textual data from response. Only images and country names will be in response.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     formatVersion: String
+     *     generalCopyrights: [
+     *         String
+     *     ]
+     *     regions: [
+     *         {
+     *             copyrights: [
+     *                 String
+     *             ]
+     *             country: {
+     *                 iso3: String
+     *                 label: String
+     *             }
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Value can be either _json_ or _xml_. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return this object is returned from a successful copyright request along with {@link Response}. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getCopyrightForWorldWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getCopyrightForWorldWithResponse(format, requestOptions); + } +} diff --git a/sdk/maps/azure-maps-render/src/main/java/com/azure/maps/render/AzureMapsRenderServiceClientBuilder.java b/sdk/maps/azure-maps-render/src/main/java/com/azure/maps/render/AzureMapsRenderServiceClientBuilder.java new file mode 100644 index 000000000000..f69ecbdf0f66 --- /dev/null +++ b/sdk/maps/azure-maps-render/src/main/java/com/azure/maps/render/AzureMapsRenderServiceClientBuilder.java @@ -0,0 +1,333 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.render; + +import com.azure.core.annotation.Generated; +import com.azure.core.annotation.ServiceClientBuilder; +import com.azure.core.credential.TokenCredential; +import com.azure.core.http.HttpClient; +import com.azure.core.http.HttpHeaders; +import com.azure.core.http.HttpPipeline; +import com.azure.core.http.HttpPipelineBuilder; +import com.azure.core.http.HttpPipelinePosition; +import com.azure.core.http.policy.AddHeadersPolicy; +import com.azure.core.http.policy.BearerTokenAuthenticationPolicy; +import com.azure.core.http.policy.CookiePolicy; +import com.azure.core.http.policy.HttpLogOptions; +import com.azure.core.http.policy.HttpLoggingPolicy; +import com.azure.core.http.policy.HttpPipelinePolicy; +import com.azure.core.http.policy.HttpPolicyProviders; +import com.azure.core.http.policy.RetryPolicy; +import com.azure.core.http.policy.UserAgentPolicy; +import com.azure.core.util.ClientOptions; +import com.azure.core.util.Configuration; +import com.azure.core.util.CoreUtils; +import com.azure.core.util.serializer.JacksonAdapter; +import com.azure.maps.render.implementation.AzureMapsRenderServiceClientImpl; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +/** A builder for creating a new instance of the AzureMapsRenderServiceClient type. */ +@ServiceClientBuilder(serviceClients = {AzureMapsRenderServiceClient.class, AzureMapsRenderServiceAsyncClient.class}) +public final class AzureMapsRenderServiceClientBuilder { + @Generated private static final String SDK_NAME = "name"; + + @Generated private static final String SDK_VERSION = "version"; + + @Generated private static final String[] DEFAULT_SCOPES = new String[] {"https://atlas.microsoft.com/.default"}; + + @Generated private final Map properties = CoreUtils.getProperties("azure-maps-render.properties"); + + /** Create an instance of the AzureMapsRenderServiceClientBuilder. */ + @Generated + public AzureMapsRenderServiceClientBuilder() { + this.pipelinePolicies = new ArrayList<>(); + } + + /* + * Specifies which account is intended for usage in conjunction with the + * Azure AD security model. It represents a unique ID for the Azure Maps + * account and can be retrieved from the Azure Maps management plane + * Account API. To use Azure AD security in Azure Maps see the following + * [articles](https://aka.ms/amauthdetails) for guidance. + */ + @Generated private String clientId; + + /** + * Sets Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents + * a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To + * use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance. + * + * @param clientId the clientId value. + * @return the AzureMapsRenderServiceClientBuilder. + */ + @Generated + public AzureMapsRenderServiceClientBuilder clientId(String clientId) { + this.clientId = clientId; + return this; + } + + /* + * server parameter + */ + @Generated private String host; + + /** + * Sets server parameter. + * + * @param host the host value. + * @return the AzureMapsRenderServiceClientBuilder. + */ + @Generated + public AzureMapsRenderServiceClientBuilder host(String host) { + this.host = host; + return this; + } + + /* + * Service version + */ + @Generated private AzureMapsRenderServiceVersion serviceVersion; + + /** + * Sets Service version. + * + * @param serviceVersion the serviceVersion value. + * @return the AzureMapsRenderServiceClientBuilder. + */ + @Generated + public AzureMapsRenderServiceClientBuilder serviceVersion(AzureMapsRenderServiceVersion serviceVersion) { + this.serviceVersion = serviceVersion; + return this; + } + + /* + * The HTTP pipeline to send requests through + */ + @Generated private HttpPipeline pipeline; + + /** + * Sets The HTTP pipeline to send requests through. + * + * @param pipeline the pipeline value. + * @return the AzureMapsRenderServiceClientBuilder. + */ + @Generated + public AzureMapsRenderServiceClientBuilder pipeline(HttpPipeline pipeline) { + this.pipeline = pipeline; + return this; + } + + /* + * The HTTP client used to send the request. + */ + @Generated private HttpClient httpClient; + + /** + * Sets The HTTP client used to send the request. + * + * @param httpClient the httpClient value. + * @return the AzureMapsRenderServiceClientBuilder. + */ + @Generated + public AzureMapsRenderServiceClientBuilder httpClient(HttpClient httpClient) { + this.httpClient = httpClient; + return this; + } + + /* + * The configuration store that is used during construction of the service + * client. + */ + @Generated private Configuration configuration; + + /** + * Sets The configuration store that is used during construction of the service client. + * + * @param configuration the configuration value. + * @return the AzureMapsRenderServiceClientBuilder. + */ + @Generated + public AzureMapsRenderServiceClientBuilder configuration(Configuration configuration) { + this.configuration = configuration; + return this; + } + + /* + * The TokenCredential used for authentication. + */ + @Generated private TokenCredential tokenCredential; + + /** + * Sets The TokenCredential used for authentication. + * + * @param tokenCredential the tokenCredential value. + * @return the AzureMapsRenderServiceClientBuilder. + */ + @Generated + public AzureMapsRenderServiceClientBuilder credential(TokenCredential tokenCredential) { + this.tokenCredential = tokenCredential; + return this; + } + + /* + * The logging configuration for HTTP requests and responses. + */ + @Generated private HttpLogOptions httpLogOptions; + + /** + * Sets The logging configuration for HTTP requests and responses. + * + * @param httpLogOptions the httpLogOptions value. + * @return the AzureMapsRenderServiceClientBuilder. + */ + @Generated + public AzureMapsRenderServiceClientBuilder httpLogOptions(HttpLogOptions httpLogOptions) { + this.httpLogOptions = httpLogOptions; + return this; + } + + /* + * The retry policy that will attempt to retry failed requests, if + * applicable. + */ + @Generated private RetryPolicy retryPolicy; + + /** + * Sets The retry policy that will attempt to retry failed requests, if applicable. + * + * @param retryPolicy the retryPolicy value. + * @return the AzureMapsRenderServiceClientBuilder. + */ + @Generated + public AzureMapsRenderServiceClientBuilder retryPolicy(RetryPolicy retryPolicy) { + this.retryPolicy = retryPolicy; + return this; + } + + /* + * The list of Http pipeline policies to add. + */ + @Generated private final List pipelinePolicies; + + /* + * The client options such as application ID and custom headers to set on a + * request. + */ + @Generated private ClientOptions clientOptions; + + /** + * Sets The client options such as application ID and custom headers to set on a request. + * + * @param clientOptions the clientOptions value. + * @return the AzureMapsRenderServiceClientBuilder. + */ + @Generated + public AzureMapsRenderServiceClientBuilder clientOptions(ClientOptions clientOptions) { + this.clientOptions = clientOptions; + return this; + } + + /** + * Adds a custom Http pipeline policy. + * + * @param customPolicy The custom Http pipeline policy to add. + * @return the AzureMapsRenderServiceClientBuilder. + */ + @Generated + public AzureMapsRenderServiceClientBuilder addPolicy(HttpPipelinePolicy customPolicy) { + pipelinePolicies.add(customPolicy); + return this; + } + + /** + * Builds an instance of AzureMapsRenderServiceClientImpl with the provided parameters. + * + * @return an instance of AzureMapsRenderServiceClientImpl. + */ + @Generated + private AzureMapsRenderServiceClientImpl buildInnerClient() { + if (host == null) { + this.host = "https://atlas.microsoft.com"; + } + if (serviceVersion == null) { + this.serviceVersion = AzureMapsRenderServiceVersion.getLatest(); + } + if (pipeline == null) { + this.pipeline = createHttpPipeline(); + } + AzureMapsRenderServiceClientImpl client = + new AzureMapsRenderServiceClientImpl( + pipeline, JacksonAdapter.createDefaultSerializerAdapter(), clientId, host, serviceVersion); + return client; + } + + @Generated + private HttpPipeline createHttpPipeline() { + Configuration buildConfiguration = + (configuration == null) ? Configuration.getGlobalConfiguration() : configuration; + if (httpLogOptions == null) { + httpLogOptions = new HttpLogOptions(); + } + if (clientOptions == null) { + clientOptions = new ClientOptions(); + } + List policies = new ArrayList<>(); + String clientName = properties.getOrDefault(SDK_NAME, "UnknownName"); + String clientVersion = properties.getOrDefault(SDK_VERSION, "UnknownVersion"); + String applicationId = CoreUtils.getApplicationId(clientOptions, httpLogOptions); + policies.add(new UserAgentPolicy(applicationId, clientName, clientVersion, buildConfiguration)); + HttpHeaders headers = new HttpHeaders(); + clientOptions.getHeaders().forEach(header -> headers.set(header.getName(), header.getValue())); + if (headers.getSize() > 0) { + policies.add(new AddHeadersPolicy(headers)); + } + policies.addAll( + this.pipelinePolicies.stream() + .filter(p -> p.getPipelinePosition() == HttpPipelinePosition.PER_CALL) + .collect(Collectors.toList())); + HttpPolicyProviders.addBeforeRetryPolicies(policies); + policies.add(retryPolicy == null ? new RetryPolicy() : retryPolicy); + policies.add(new CookiePolicy()); + if (tokenCredential != null) { + policies.add(new BearerTokenAuthenticationPolicy(tokenCredential, DEFAULT_SCOPES)); + } + policies.addAll( + this.pipelinePolicies.stream() + .filter(p -> p.getPipelinePosition() == HttpPipelinePosition.PER_RETRY) + .collect(Collectors.toList())); + HttpPolicyProviders.addAfterRetryPolicies(policies); + policies.add(new HttpLoggingPolicy(httpLogOptions)); + HttpPipeline httpPipeline = + new HttpPipelineBuilder() + .policies(policies.toArray(new HttpPipelinePolicy[0])) + .httpClient(httpClient) + .clientOptions(clientOptions) + .build(); + return httpPipeline; + } + + /** + * Builds an instance of AzureMapsRenderServiceAsyncClient async client. + * + * @return an instance of AzureMapsRenderServiceAsyncClient. + */ + @Generated + public AzureMapsRenderServiceAsyncClient buildAsyncClient() { + return new AzureMapsRenderServiceAsyncClient(buildInnerClient().getRenderV2s()); + } + + /** + * Builds an instance of AzureMapsRenderServiceClient sync client. + * + * @return an instance of AzureMapsRenderServiceClient. + */ + @Generated + public AzureMapsRenderServiceClient buildClient() { + return new AzureMapsRenderServiceClient(buildInnerClient().getRenderV2s()); + } +} diff --git a/sdk/maps/azure-maps-render/src/main/java/com/azure/maps/render/AzureMapsRenderServiceVersion.java b/sdk/maps/azure-maps-render/src/main/java/com/azure/maps/render/AzureMapsRenderServiceVersion.java new file mode 100644 index 000000000000..fd56d03577e9 --- /dev/null +++ b/sdk/maps/azure-maps-render/src/main/java/com/azure/maps/render/AzureMapsRenderServiceVersion.java @@ -0,0 +1,33 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.render; + +import com.azure.core.util.ServiceVersion; + +/** Service version of AzureMapsRenderServiceClient. */ +public enum AzureMapsRenderServiceVersion implements ServiceVersion { + /** Enum value 2.1. */ + V2_1("2.1"); + + private final String version; + + AzureMapsRenderServiceVersion(String version) { + this.version = version; + } + + @Override + public String getVersion() { + return this.version; + } + + /** + * Gets the latest service version supported by this client library. + * + * @return The latest {@link AzureMapsRenderServiceVersion}. + */ + public static AzureMapsRenderServiceVersion getLatest() { + return V2_1; + } +} diff --git a/sdk/maps/azure-maps-render/src/main/java/com/azure/maps/render/implementation/AzureMapsRenderServiceClientImpl.java b/sdk/maps/azure-maps-render/src/main/java/com/azure/maps/render/implementation/AzureMapsRenderServiceClientImpl.java new file mode 100644 index 000000000000..28b7086f55e7 --- /dev/null +++ b/sdk/maps/azure-maps-render/src/main/java/com/azure/maps/render/implementation/AzureMapsRenderServiceClientImpl.java @@ -0,0 +1,159 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.render.implementation; + +import com.azure.core.http.HttpPipeline; +import com.azure.core.http.HttpPipelineBuilder; +import com.azure.core.http.policy.CookiePolicy; +import com.azure.core.http.policy.RetryPolicy; +import com.azure.core.http.policy.UserAgentPolicy; +import com.azure.core.util.serializer.JacksonAdapter; +import com.azure.core.util.serializer.SerializerAdapter; +import com.azure.maps.render.AzureMapsRenderServiceVersion; + +/** Initializes a new instance of the AzureMapsRenderServiceClient type. */ +public final class AzureMapsRenderServiceClientImpl { + /** + * Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a + * unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To + * use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance. + */ + private final String clientId; + + /** + * Gets Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents + * a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To + * use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance. + * + * @return the clientId value. + */ + public String getClientId() { + return this.clientId; + } + + /** server parameter. */ + private final String host; + + /** + * Gets server parameter. + * + * @return the host value. + */ + public String getHost() { + return this.host; + } + + /** Service version. */ + private final AzureMapsRenderServiceVersion serviceVersion; + + /** + * Gets Service version. + * + * @return the serviceVersion value. + */ + public AzureMapsRenderServiceVersion getServiceVersion() { + return this.serviceVersion; + } + + /** The HTTP pipeline to send requests through. */ + private final HttpPipeline httpPipeline; + + /** + * Gets The HTTP pipeline to send requests through. + * + * @return the httpPipeline value. + */ + public HttpPipeline getHttpPipeline() { + return this.httpPipeline; + } + + /** The serializer to serialize an object into a string. */ + private final SerializerAdapter serializerAdapter; + + /** + * Gets The serializer to serialize an object into a string. + * + * @return the serializerAdapter value. + */ + public SerializerAdapter getSerializerAdapter() { + return this.serializerAdapter; + } + + /** The RenderV2sImpl object to access its operations. */ + private final RenderV2sImpl renderV2s; + + /** + * Gets the RenderV2sImpl object to access its operations. + * + * @return the RenderV2sImpl object. + */ + public RenderV2sImpl getRenderV2s() { + return this.renderV2s; + } + + /** + * Initializes an instance of AzureMapsRenderServiceClient client. + * + * @param clientId Specifies which account is intended for usage in conjunction with the Azure AD security model. It + * represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane + * Account API. To use Azure AD security in Azure Maps see the following + * [articles](https://aka.ms/amauthdetails) for guidance. + * @param host server parameter. + * @param serviceVersion Service version. + */ + public AzureMapsRenderServiceClientImpl( + String clientId, String host, AzureMapsRenderServiceVersion serviceVersion) { + this( + new HttpPipelineBuilder() + .policies(new UserAgentPolicy(), new RetryPolicy(), new CookiePolicy()) + .build(), + JacksonAdapter.createDefaultSerializerAdapter(), + clientId, + host, + serviceVersion); + } + + /** + * Initializes an instance of AzureMapsRenderServiceClient client. + * + * @param httpPipeline The HTTP pipeline to send requests through. + * @param clientId Specifies which account is intended for usage in conjunction with the Azure AD security model. It + * represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane + * Account API. To use Azure AD security in Azure Maps see the following + * [articles](https://aka.ms/amauthdetails) for guidance. + * @param host server parameter. + * @param serviceVersion Service version. + */ + public AzureMapsRenderServiceClientImpl( + HttpPipeline httpPipeline, String clientId, String host, AzureMapsRenderServiceVersion serviceVersion) { + this(httpPipeline, JacksonAdapter.createDefaultSerializerAdapter(), clientId, host, serviceVersion); + } + + /** + * Initializes an instance of AzureMapsRenderServiceClient client. + * + * @param httpPipeline The HTTP pipeline to send requests through. + * @param serializerAdapter The serializer to serialize an object into a string. + * @param clientId Specifies which account is intended for usage in conjunction with the Azure AD security model. It + * represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane + * Account API. To use Azure AD security in Azure Maps see the following + * [articles](https://aka.ms/amauthdetails) for guidance. + * @param host server parameter. + * @param serviceVersion Service version. + */ + public AzureMapsRenderServiceClientImpl( + HttpPipeline httpPipeline, + SerializerAdapter serializerAdapter, + String clientId, + String host, + AzureMapsRenderServiceVersion serviceVersion) { + this.httpPipeline = httpPipeline; + this.serializerAdapter = serializerAdapter; + this.clientId = clientId; + this.host = host; + this.serviceVersion = serviceVersion; + this.renderV2s = new RenderV2sImpl(this); + } +} diff --git a/sdk/maps/azure-maps-render/src/main/java/com/azure/maps/render/implementation/RenderV2sImpl.java b/sdk/maps/azure-maps-render/src/main/java/com/azure/maps/render/implementation/RenderV2sImpl.java new file mode 100644 index 000000000000..7a59c69dafb7 --- /dev/null +++ b/sdk/maps/azure-maps-render/src/main/java/com/azure/maps/render/implementation/RenderV2sImpl.java @@ -0,0 +1,2423 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.render.implementation; + +import com.azure.core.annotation.ExpectedResponses; +import com.azure.core.annotation.Get; +import com.azure.core.annotation.Host; +import com.azure.core.annotation.HostParam; +import com.azure.core.annotation.PathParam; +import com.azure.core.annotation.QueryParam; +import com.azure.core.annotation.ReturnType; +import com.azure.core.annotation.ServiceInterface; +import com.azure.core.annotation.ServiceMethod; +import com.azure.core.exception.HttpResponseException; +import com.azure.core.http.rest.RequestOptions; +import com.azure.core.http.rest.Response; +import com.azure.core.http.rest.RestProxy; +import com.azure.core.util.BinaryData; +import com.azure.core.util.Context; +import com.azure.core.util.FluxUtil; +import reactor.core.publisher.Mono; + +/** An instance of this class provides access to all the operations defined in RenderV2s. */ +public final class RenderV2sImpl { + /** The proxy service used to perform REST calls. */ + private final RenderV2sService service; + + /** The service client containing this operation class. */ + private final AzureMapsRenderServiceClientImpl client; + + /** + * Initializes an instance of RenderV2sImpl. + * + * @param client the instance of the service client containing this operation class. + */ + RenderV2sImpl(AzureMapsRenderServiceClientImpl client) { + this.service = + RestProxy.create(RenderV2sService.class, client.getHttpPipeline(), client.getSerializerAdapter()); + this.client = client; + } + + /** + * The interface defining all the services for AzureMapsRenderServiceRenderV2s to be used by the proxy service to + * perform REST calls. + */ + @Host("{$host}") + @ServiceInterface(name = "AzureMapsRenderServi") + private interface RenderV2sService { + @Get("/map/tile") + @ExpectedResponses({200}) + Mono> getMapTile( + @HostParam("$host") String host, + @QueryParam("api-version") String apiVersion, + RequestOptions requestOptions, + Context context); + + @Get("/map/tileset") + @ExpectedResponses({200}) + Mono> getMapTileset( + @HostParam("$host") String host, + @QueryParam("api-version") String apiVersion, + RequestOptions requestOptions, + Context context); + + @Get("/map/attribution") + @ExpectedResponses({200}) + Mono> getMapAttribution( + @HostParam("$host") String host, + @QueryParam("api-version") String apiVersion, + RequestOptions requestOptions, + Context context); + + @Get("/map/statetile") + @ExpectedResponses({200}) + Mono> getMapStateTile( + @HostParam("$host") String host, + @QueryParam("api-version") String apiVersion, + RequestOptions requestOptions, + Context context); + + @Get("/map/copyright/caption/{format}") + @ExpectedResponses({200}) + Mono> getCopyrightCaption( + @HostParam("$host") String host, + @QueryParam("api-version") String apiVersion, + @PathParam("format") String format, + RequestOptions requestOptions, + Context context); + + @Get("/map/static/{format}") + @ExpectedResponses({200}) + Mono> getMapStaticImage( + @HostParam("$host") String host, + @QueryParam("api-version") String apiVersion, + @PathParam("format") String format, + RequestOptions requestOptions, + Context context); + + @Get("/map/copyright/bounding/{format}") + @ExpectedResponses({200}) + Mono> getCopyrightFromBoundingBox( + @HostParam("$host") String host, + @QueryParam("api-version") String apiVersion, + @PathParam("format") String format, + RequestOptions requestOptions, + Context context); + + @Get("/map/copyright/tile/{format}") + @ExpectedResponses({200}) + Mono> getCopyrightForTile( + @HostParam("$host") String host, + @QueryParam("api-version") String apiVersion, + @PathParam("format") String format, + RequestOptions requestOptions, + Context context); + + @Get("/map/copyright/world/{format}") + @ExpectedResponses({200}) + Mono> getCopyrightForWorld( + @HostParam("$host") String host, + @QueryParam("api-version") String apiVersion, + @PathParam("format") String format, + RequestOptions requestOptions, + Context context); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

The Get Map Tiles API allows users to request map tiles in vector or raster formats typically to be integrated + * into a map control or SDK. Some example tiles that can be requested are Azure Maps road tiles, real-time Weather + * Radar tiles or the map tiles created using [Azure Maps Creator](https://aka.ms/amcreator). By default, Azure Maps + * uses vector tiles for its web map control (Web SDK) and Android SDK. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
tilesetIdStringYesA tileset is a collection of raster or vector data broken up into a uniform grid of square tiles at preset zoom levels. Every tileset has a **tilesetId** to use when making requests. The **tilesetId** for tilesets created using [Azure Maps Creator](https://aka.ms/amcreator) are generated through the [Tileset Create API](https://docs.microsoft.com/en-us/rest/api/maps/tileset). The ready-to-use tilesets supplied by Azure Maps are listed below. For example, microsoft.base.
zoomintYesZoom level for the desired tile. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.
xintYesX coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
yintYesY coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
timeStampStringNoThe desired date and time of the requested tile. This parameter must be specified in the standard date-time format (e.g. 2019-11-14T16:03:00-08:00), as defined by [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601). This parameter is only supported when tilesetId parameter is set to one of the values below. + * + * * microsoft.weather.infrared.main: We provide tiles up to 3 hours in the past. Tiles are available in 10-minute intervals. We round the timeStamp value to the nearest 10-minute time frame. + * * microsoft.weather.radar.main: We provide tiles up to 1.5 hours in the past and up to 2 hours in the future. Tiles are available in 5-minute intervals. We round the timeStamp value to the nearest 5-minute time frame.
tileSizeStringNoThe size of the returned map tile in pixels.
languageStringNoLanguage in which search results should be returned. Should be one of supported IETF language tags, case insensitive. When data in specified language is not available for a specific field, default language is used. + * + * Please refer to [Supported Languages](https://docs.microsoft.com/azure/azure-maps/supported-languages) for details.
viewStringNoThe View parameter (also called the "user region" parameter) allows you to show the correct maps for a certain country/region for geopolitically disputed regions. Different countries have different views of such regions, and the View parameter allows your application to comply with the view required by the country your application will be serving. By default, the View parameter is set to “Unified” even if you haven’t defined it in the request. It is your responsibility to determine the location of your users, and then set the View parameter correctly for that location. Alternatively, you have the option to set ‘View=Auto’, which will return the map data based on the IP address of the request. The View parameter in Azure Maps must be used in compliance with applicable laws, including those regarding mapping, of the country where maps, images and other data and third party content that you are authorized to access via Azure Maps is made available. Example: view=IN. + * + * Please refer to [Supported Views](https://aka.ms/AzureMapsLocalizationViews) for details and to see the available Views.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return the {@link Response} on successful completion of {@link Mono}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getMapTileWithResponseAsync(RequestOptions requestOptions) { + return FluxUtil.withContext( + context -> + service.getMapTile( + this.client.getHost(), + this.client.getServiceVersion().getVersion(), + requestOptions, + context)); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

The Get Map Tiles API allows users to request map tiles in vector or raster formats typically to be integrated + * into a map control or SDK. Some example tiles that can be requested are Azure Maps road tiles, real-time Weather + * Radar tiles or the map tiles created using [Azure Maps Creator](https://aka.ms/amcreator). By default, Azure Maps + * uses vector tiles for its web map control (Web SDK) and Android SDK. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
tilesetIdStringYesA tileset is a collection of raster or vector data broken up into a uniform grid of square tiles at preset zoom levels. Every tileset has a **tilesetId** to use when making requests. The **tilesetId** for tilesets created using [Azure Maps Creator](https://aka.ms/amcreator) are generated through the [Tileset Create API](https://docs.microsoft.com/en-us/rest/api/maps/tileset). The ready-to-use tilesets supplied by Azure Maps are listed below. For example, microsoft.base.
zoomintYesZoom level for the desired tile. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.
xintYesX coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
yintYesY coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
timeStampStringNoThe desired date and time of the requested tile. This parameter must be specified in the standard date-time format (e.g. 2019-11-14T16:03:00-08:00), as defined by [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601). This parameter is only supported when tilesetId parameter is set to one of the values below. + * + * * microsoft.weather.infrared.main: We provide tiles up to 3 hours in the past. Tiles are available in 10-minute intervals. We round the timeStamp value to the nearest 10-minute time frame. + * * microsoft.weather.radar.main: We provide tiles up to 1.5 hours in the past and up to 2 hours in the future. Tiles are available in 5-minute intervals. We round the timeStamp value to the nearest 5-minute time frame.
tileSizeStringNoThe size of the returned map tile in pixels.
languageStringNoLanguage in which search results should be returned. Should be one of supported IETF language tags, case insensitive. When data in specified language is not available for a specific field, default language is used. + * + * Please refer to [Supported Languages](https://docs.microsoft.com/azure/azure-maps/supported-languages) for details.
viewStringNoThe View parameter (also called the "user region" parameter) allows you to show the correct maps for a certain country/region for geopolitically disputed regions. Different countries have different views of such regions, and the View parameter allows your application to comply with the view required by the country your application will be serving. By default, the View parameter is set to “Unified” even if you haven’t defined it in the request. It is your responsibility to determine the location of your users, and then set the View parameter correctly for that location. Alternatively, you have the option to set ‘View=Auto’, which will return the map data based on the IP address of the request. The View parameter in Azure Maps must be used in compliance with applicable laws, including those regarding mapping, of the country where maps, images and other data and third party content that you are authorized to access via Azure Maps is made available. Example: view=IN. + * + * Please refer to [Supported Views](https://aka.ms/AzureMapsLocalizationViews) for details and to see the available Views.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @param context The context to associate with this operation. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return the {@link Response} on successful completion of {@link Mono}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getMapTileWithResponseAsync(RequestOptions requestOptions, Context context) { + return service.getMapTile( + this.client.getHost(), this.client.getServiceVersion().getVersion(), requestOptions, context); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

The Get Map Tiles API allows users to request map tiles in vector or raster formats typically to be integrated + * into a map control or SDK. Some example tiles that can be requested are Azure Maps road tiles, real-time Weather + * Radar tiles or the map tiles created using [Azure Maps Creator](https://aka.ms/amcreator). By default, Azure Maps + * uses vector tiles for its web map control (Web SDK) and Android SDK. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
tilesetIdStringYesA tileset is a collection of raster or vector data broken up into a uniform grid of square tiles at preset zoom levels. Every tileset has a **tilesetId** to use when making requests. The **tilesetId** for tilesets created using [Azure Maps Creator](https://aka.ms/amcreator) are generated through the [Tileset Create API](https://docs.microsoft.com/en-us/rest/api/maps/tileset). The ready-to-use tilesets supplied by Azure Maps are listed below. For example, microsoft.base.
zoomintYesZoom level for the desired tile. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.
xintYesX coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
yintYesY coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
timeStampStringNoThe desired date and time of the requested tile. This parameter must be specified in the standard date-time format (e.g. 2019-11-14T16:03:00-08:00), as defined by [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601). This parameter is only supported when tilesetId parameter is set to one of the values below. + * + * * microsoft.weather.infrared.main: We provide tiles up to 3 hours in the past. Tiles are available in 10-minute intervals. We round the timeStamp value to the nearest 10-minute time frame. + * * microsoft.weather.radar.main: We provide tiles up to 1.5 hours in the past and up to 2 hours in the future. Tiles are available in 5-minute intervals. We round the timeStamp value to the nearest 5-minute time frame.
tileSizeStringNoThe size of the returned map tile in pixels.
languageStringNoLanguage in which search results should be returned. Should be one of supported IETF language tags, case insensitive. When data in specified language is not available for a specific field, default language is used. + * + * Please refer to [Supported Languages](https://docs.microsoft.com/azure/azure-maps/supported-languages) for details.
viewStringNoThe View parameter (also called the "user region" parameter) allows you to show the correct maps for a certain country/region for geopolitically disputed regions. Different countries have different views of such regions, and the View parameter allows your application to comply with the view required by the country your application will be serving. By default, the View parameter is set to “Unified” even if you haven’t defined it in the request. It is your responsibility to determine the location of your users, and then set the View parameter correctly for that location. Alternatively, you have the option to set ‘View=Auto’, which will return the map data based on the IP address of the request. The View parameter in Azure Maps must be used in compliance with applicable laws, including those regarding mapping, of the country where maps, images and other data and third party content that you are authorized to access via Azure Maps is made available. Example: view=IN. + * + * Please refer to [Supported Views](https://aka.ms/AzureMapsLocalizationViews) for details and to see the available Views.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return the {@link Response}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getMapTileWithResponse(RequestOptions requestOptions) { + return getMapTileWithResponseAsync(requestOptions).block(); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

The Get Map Tileset API allows users to request metadata for a tileset. + * + *

Query Parameters + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
tilesetIdStringYesA tileset is a collection of raster or vector data broken up into a uniform grid of square tiles at preset zoom levels. Every tileset has a **tilesetId** to use when making requests. The **tilesetId** for tilesets created using [Azure Maps Creator](https://aka.ms/amcreator) are generated through the [Tileset Create API](https://docs.microsoft.com/en-us/rest/api/maps/tileset). The ready-to-use tilesets supplied by Azure Maps are listed below. For example, microsoft.base.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     tilejson: String
+     *     name: String
+     *     description: String
+     *     version: String
+     *     attribution: String
+     *     template: String
+     *     legend: String
+     *     scheme: String
+     *     tiles: [
+     *         String
+     *     ]
+     *     grids: [
+     *         String
+     *     ]
+     *     data: [
+     *         String
+     *     ]
+     *     minZoom: Integer
+     *     maxZoom: Integer
+     *     bounds: [
+     *         float
+     *     ]
+     *     center: [
+     *         float
+     *     ]
+     * }
+     * }
+ * + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return metadata for a tileset in the TileJSON format along with {@link Response} on successful completion of + * {@link Mono}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getMapTilesetWithResponseAsync(RequestOptions requestOptions) { + return FluxUtil.withContext( + context -> + service.getMapTileset( + this.client.getHost(), + this.client.getServiceVersion().getVersion(), + requestOptions, + context)); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

The Get Map Tileset API allows users to request metadata for a tileset. + * + *

Query Parameters + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
tilesetIdStringYesA tileset is a collection of raster or vector data broken up into a uniform grid of square tiles at preset zoom levels. Every tileset has a **tilesetId** to use when making requests. The **tilesetId** for tilesets created using [Azure Maps Creator](https://aka.ms/amcreator) are generated through the [Tileset Create API](https://docs.microsoft.com/en-us/rest/api/maps/tileset). The ready-to-use tilesets supplied by Azure Maps are listed below. For example, microsoft.base.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     tilejson: String
+     *     name: String
+     *     description: String
+     *     version: String
+     *     attribution: String
+     *     template: String
+     *     legend: String
+     *     scheme: String
+     *     tiles: [
+     *         String
+     *     ]
+     *     grids: [
+     *         String
+     *     ]
+     *     data: [
+     *         String
+     *     ]
+     *     minZoom: Integer
+     *     maxZoom: Integer
+     *     bounds: [
+     *         float
+     *     ]
+     *     center: [
+     *         float
+     *     ]
+     * }
+     * }
+ * + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @param context The context to associate with this operation. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return metadata for a tileset in the TileJSON format along with {@link Response} on successful completion of + * {@link Mono}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getMapTilesetWithResponseAsync(RequestOptions requestOptions, Context context) { + return service.getMapTileset( + this.client.getHost(), this.client.getServiceVersion().getVersion(), requestOptions, context); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

The Get Map Tileset API allows users to request metadata for a tileset. + * + *

Query Parameters + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
tilesetIdStringYesA tileset is a collection of raster or vector data broken up into a uniform grid of square tiles at preset zoom levels. Every tileset has a **tilesetId** to use when making requests. The **tilesetId** for tilesets created using [Azure Maps Creator](https://aka.ms/amcreator) are generated through the [Tileset Create API](https://docs.microsoft.com/en-us/rest/api/maps/tileset). The ready-to-use tilesets supplied by Azure Maps are listed below. For example, microsoft.base.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     tilejson: String
+     *     name: String
+     *     description: String
+     *     version: String
+     *     attribution: String
+     *     template: String
+     *     legend: String
+     *     scheme: String
+     *     tiles: [
+     *         String
+     *     ]
+     *     grids: [
+     *         String
+     *     ]
+     *     data: [
+     *         String
+     *     ]
+     *     minZoom: Integer
+     *     maxZoom: Integer
+     *     bounds: [
+     *         float
+     *     ]
+     *     center: [
+     *         float
+     *     ]
+     * }
+     * }
+ * + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return metadata for a tileset in the TileJSON format along with {@link Response}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getMapTilesetWithResponse(RequestOptions requestOptions) { + return getMapTilesetWithResponseAsync(requestOptions).block(); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

The Get Map Attribution API allows users to request map copyright attribution information for a section of a + * tileset. + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
tilesetIdStringYesA tileset is a collection of raster or vector data broken up into a uniform grid of square tiles at preset zoom levels. Every tileset has a **tilesetId** to use when making requests. The **tilesetId** for tilesets created using [Azure Maps Creator](https://aka.ms/amcreator) are generated through the [Tileset Create API](https://docs.microsoft.com/en-us/rest/api/maps/tileset). The ready-to-use tilesets supplied by Azure Maps are listed below. For example, microsoft.base.
zoomintYesZoom level for the desired map attribution.
boundsStringYesThe string that represents the rectangular area of a bounding box. The bounds parameter is defined by the 4 bounding box coordinates, with WGS84 longitude and latitude of the southwest corner followed by WGS84 longitude and latitude of the northeast corner. The string is presented in the following format: `[SouthwestCorner_Longitude, SouthwestCorner_Latitude, NortheastCorner_Longitude, NortheastCorner_Latitude]`.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     copyrights: [
+     *         String
+     *     ]
+     * }
+     * }
+ * + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return copyright attribution for the requested section of a tileset along with {@link Response} on successful + * completion of {@link Mono}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getMapAttributionWithResponseAsync(RequestOptions requestOptions) { + return FluxUtil.withContext( + context -> + service.getMapAttribution( + this.client.getHost(), + this.client.getServiceVersion().getVersion(), + requestOptions, + context)); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

The Get Map Attribution API allows users to request map copyright attribution information for a section of a + * tileset. + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
tilesetIdStringYesA tileset is a collection of raster or vector data broken up into a uniform grid of square tiles at preset zoom levels. Every tileset has a **tilesetId** to use when making requests. The **tilesetId** for tilesets created using [Azure Maps Creator](https://aka.ms/amcreator) are generated through the [Tileset Create API](https://docs.microsoft.com/en-us/rest/api/maps/tileset). The ready-to-use tilesets supplied by Azure Maps are listed below. For example, microsoft.base.
zoomintYesZoom level for the desired map attribution.
boundsStringYesThe string that represents the rectangular area of a bounding box. The bounds parameter is defined by the 4 bounding box coordinates, with WGS84 longitude and latitude of the southwest corner followed by WGS84 longitude and latitude of the northeast corner. The string is presented in the following format: `[SouthwestCorner_Longitude, SouthwestCorner_Latitude, NortheastCorner_Longitude, NortheastCorner_Latitude]`.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     copyrights: [
+     *         String
+     *     ]
+     * }
+     * }
+ * + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @param context The context to associate with this operation. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return copyright attribution for the requested section of a tileset along with {@link Response} on successful + * completion of {@link Mono}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getMapAttributionWithResponseAsync( + RequestOptions requestOptions, Context context) { + return service.getMapAttribution( + this.client.getHost(), this.client.getServiceVersion().getVersion(), requestOptions, context); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

The Get Map Attribution API allows users to request map copyright attribution information for a section of a + * tileset. + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
tilesetIdStringYesA tileset is a collection of raster or vector data broken up into a uniform grid of square tiles at preset zoom levels. Every tileset has a **tilesetId** to use when making requests. The **tilesetId** for tilesets created using [Azure Maps Creator](https://aka.ms/amcreator) are generated through the [Tileset Create API](https://docs.microsoft.com/en-us/rest/api/maps/tileset). The ready-to-use tilesets supplied by Azure Maps are listed below. For example, microsoft.base.
zoomintYesZoom level for the desired map attribution.
boundsStringYesThe string that represents the rectangular area of a bounding box. The bounds parameter is defined by the 4 bounding box coordinates, with WGS84 longitude and latitude of the southwest corner followed by WGS84 longitude and latitude of the northeast corner. The string is presented in the following format: `[SouthwestCorner_Longitude, SouthwestCorner_Latitude, NortheastCorner_Longitude, NortheastCorner_Latitude]`.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     copyrights: [
+     *         String
+     *     ]
+     * }
+     * }
+ * + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return copyright attribution for the requested section of a tileset along with {@link Response}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getMapAttributionWithResponse(RequestOptions requestOptions) { + return getMapAttributionWithResponseAsync(requestOptions).block(); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Fetches state tiles in vector format typically to be integrated into indoor maps module of map control or SDK. + * The map control will call this API after user turns on dynamic styling (see [Zoom Levels and Tile + * Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid)). + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
zoomintYesZoom level for the desired tile. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.
xintYesX coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
yintYesY coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
statesetIdStringYesThe stateset id.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return the {@link Response} on successful completion of {@link Mono}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getMapStateTileWithResponseAsync(RequestOptions requestOptions) { + return FluxUtil.withContext( + context -> + service.getMapStateTile( + this.client.getHost(), + this.client.getServiceVersion().getVersion(), + requestOptions, + context)); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Fetches state tiles in vector format typically to be integrated into indoor maps module of map control or SDK. + * The map control will call this API after user turns on dynamic styling (see [Zoom Levels and Tile + * Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid)). + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
zoomintYesZoom level for the desired tile. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.
xintYesX coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
yintYesY coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
statesetIdStringYesThe stateset id.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @param context The context to associate with this operation. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return the {@link Response} on successful completion of {@link Mono}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getMapStateTileWithResponseAsync(RequestOptions requestOptions, Context context) { + return service.getMapStateTile( + this.client.getHost(), this.client.getServiceVersion().getVersion(), requestOptions, context); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Fetches state tiles in vector format typically to be integrated into indoor maps module of map control or SDK. + * The map control will call this API after user turns on dynamic styling (see [Zoom Levels and Tile + * Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid)). + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
zoomintYesZoom level for the desired tile. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.
xintYesX coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
yintYesY coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
statesetIdStringYesThe stateset id.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return the {@link Response}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getMapStateTileWithResponse(RequestOptions requestOptions) { + return getMapStateTileWithResponseAsync(requestOptions).block(); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Copyrights API is designed to serve copyright information for Render Tile service. In addition to basic + * copyright for the whole map, API is serving specific groups of copyrights for some countries. + * + *

As an alternative to copyrights for map request, one can receive captions for displaying the map provider + * information on the map. + * + *

Query Parameters + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     formatVersion: String
+     *     copyrightsCaption: String
+     * }
+     * }
+ * + * @param format Desired format of the response. Value can be either _json_ or _xml_. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return this object is returned from a successful copyright call along with {@link Response} on successful + * completion of {@link Mono}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getCopyrightCaptionWithResponseAsync( + String format, RequestOptions requestOptions) { + return FluxUtil.withContext( + context -> + service.getCopyrightCaption( + this.client.getHost(), + this.client.getServiceVersion().getVersion(), + format, + requestOptions, + context)); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Copyrights API is designed to serve copyright information for Render Tile service. In addition to basic + * copyright for the whole map, API is serving specific groups of copyrights for some countries. + * + *

As an alternative to copyrights for map request, one can receive captions for displaying the map provider + * information on the map. + * + *

Query Parameters + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     formatVersion: String
+     *     copyrightsCaption: String
+     * }
+     * }
+ * + * @param format Desired format of the response. Value can be either _json_ or _xml_. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @param context The context to associate with this operation. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return this object is returned from a successful copyright call along with {@link Response} on successful + * completion of {@link Mono}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getCopyrightCaptionWithResponseAsync( + String format, RequestOptions requestOptions, Context context) { + return service.getCopyrightCaption( + this.client.getHost(), this.client.getServiceVersion().getVersion(), format, requestOptions, context); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Copyrights API is designed to serve copyright information for Render Tile service. In addition to basic + * copyright for the whole map, API is serving specific groups of copyrights for some countries. + * + *

As an alternative to copyrights for map request, one can receive captions for displaying the map provider + * information on the map. + * + *

Query Parameters + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     formatVersion: String
+     *     copyrightsCaption: String
+     * }
+     * }
+ * + * @param format Desired format of the response. Value can be either _json_ or _xml_. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return this object is returned from a successful copyright call along with {@link Response}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getCopyrightCaptionWithResponse(String format, RequestOptions requestOptions) { + return getCopyrightCaptionWithResponseAsync(format, requestOptions).block(); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

The static image service renders a user-defined, rectangular image containing a map section using a zoom level + * from 0 to 20. The static image service renders a user-defined, rectangular image containing a map section using a + * zoom level from 0 to 20. The supported resolution range for the map image is from 1x1 to 8192x8192. If you are + * deciding when to use the static image service over the map tile service, you may want to consider how you would + * like to interact with the rendered map. If the map contents will be relatively unchanging, a static map is a good + * choice. If you want to support a lot of zooming, panning and changing of the map content, the map tile service + * would be a better choice. + * + *

Service also provides Image Composition functionality to get a static image back with additional data like; + * pushpins and geometry overlays with following S0 and S1 capabilities. + * + *

In S0 you can: - Render up to 5 pushpins specified in the request - Provide one custom image for the pins + * referenced in the request - Add labels to the pushpins + * + *

In S1 you can: - Render pushpins through [Azure Maps Data Service](https://aka.ms/AzureMapsMapDataService) - + * Specify multiple pushpin styles - Render circle, polyline and polygon geometry types. - Render of supported + * GeoJSON geometry types uploaded through [Azure Maps Data Service](https://aka.ms/AzureMapsMapDataService) + * + *

Please see [How-to-Guide](https://aka.ms/AzureMapsHowToGuideImageCompositor) for detailed examples. + * + *

_Note_ : Either **center** or **bbox** parameter must be supplied to the API. <br><br> The + * supported Lat and Lon ranges when using the **bbox** parameter, are as follows: <br><br> + * + *

|Zoom Level | Max Lon Range | Max Lat Range| |:----------|:----------------|:-------------| |0 | 360.0 | 170.0 + * | |1 | 360.0 | 170.0 | |2 | 360.0 | 170.0 | |3 | 360.0 | 170.0 | |4 | 360.0 | 170.0 | |5 | 180.0 | 85.0 | |6 | + * 90.0 | 42.5 | |7 | 45.0 | 21.25 | |8 | 22.5 | 10.625 | |9 | 11.25 | 5.3125 | |10 | 5.625 | 2.62625 | |11 | 2.8125 + * | 1.328125 | |12 | 1.40625 | 0.6640625 | |13 | 0.703125 | 0.33203125 | |14 | 0.3515625 | 0.166015625 | |15 | + * 0.17578125 | 0.0830078125 | |16 | 0.087890625 | 0.0415039063 | |17 | 0.0439453125 | 0.0207519531 | |18 | + * 0.0219726563 | 0.0103759766 | |19 | 0.0109863281 | 0.0051879883 | |20 | 0.0054931641 | 0.0025939941 |. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
layerStringNoMap layer requested. If layer is set to labels or hybrid, the format should be png.
styleStringNoMap style to be returned. Possible values are main and dark.
zoomStringNoDesired zoom level of the map. Zoom value must be in the range: 0-20 (inclusive). Default value is 12.<br><br>Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.
centerStringNoCoordinates of the center point. Format: 'lon,lat'. Projection used + * - EPSG:3857. Longitude range: -180 to 180. Latitude range: -85 to 85. + * + * Note: Either center or bbox are required parameters. They are + * mutually exclusive.
bboxStringNoBounding box. Projection used - EPSG:3857. Format : 'minLon, minLat, + * maxLon, maxLat'. + * + * Note: Either bbox or center are required + * parameters. They are mutually exclusive. It shouldn’t be used with + * height or width. + * + * The maximum allowed ranges for Lat and Lon are defined for each zoom level + * in the table at the top of this page.
heightStringNoHeight of the resulting image in pixels. Range is 1 to 8192. Default + * is 512. It shouldn’t be used with bbox.
widthStringNoWidth of the resulting image in pixels. Range is 1 to 8192. Default is 512. It shouldn’t be used with bbox.
languageStringNoLanguage in which search results should be returned. Should be one of supported IETF language tags, case insensitive. When data in specified language is not available for a specific field, default language is used. + * + * Please refer to [Supported Languages](https://docs.microsoft.com/azure/azure-maps/supported-languages) for details.
viewStringNoThe View parameter (also called the "user region" parameter) allows you to show the correct maps for a certain country/region for geopolitically disputed regions. Different countries have different views of such regions, and the View parameter allows your application to comply with the view required by the country your application will be serving. By default, the View parameter is set to “Unified” even if you haven’t defined it in the request. It is your responsibility to determine the location of your users, and then set the View parameter correctly for that location. Alternatively, you have the option to set ‘View=Auto’, which will return the map data based on the IP address of the request. The View parameter in Azure Maps must be used in compliance with applicable laws, including those regarding mapping, of the country where maps, images and other data and third party content that you are authorized to access via Azure Maps is made available. Example: view=IN. + * + * Please refer to [Supported Views](https://aka.ms/AzureMapsLocalizationViews) for details and to see the available Views.
pinsStringNoPushpin style and instances. Use this parameter to optionally add pushpins to the image. + * The pushpin style describes the appearance of the pushpins, and the instances specify + * the coordinates of the pushpins and optional labels for each pin. (Be sure to properly URL-encode values of this + * parameter since it will contain reserved characters such as pipes and punctuation.) + * + * The Azure Maps account S0 SKU only supports a single instance of the pins parameter. Other SKUs + * allow multiple instances of the pins parameter to specify multiple pin styles. + * + * To render a pushpin at latitude 45°N and longitude 122°W using the default built-in pushpin style, add the + * querystring parameter + * + * `pins=default||-122 45` + * + * Note that the longitude comes before the latitude. + * After URL encoding this will look like + * + * `pins=default%7C%7C-122+45` + * + * All of the examples here show the pins + * parameter without URL encoding, for clarity. + * + * To render a pin at multiple locations, separate each location with a pipe character. For example, use + * + * `pins=default||-122 45|-119.5 43.2|-121.67 47.12` + * + * The S0 Azure Maps account SKU only allows five pushpins. Other account SKUs do not have this limitation. + * + * ### Style Modifiers + * + * You can modify the appearance of the pins by adding style modifiers. These are added after the style but before + * the locations and labels. Style modifiers each have a two-letter name. These abbreviated names are used to help + * reduce the length of the URL. + * + * To change the color of the pushpin, use the 'co' style modifier and specify the color using the HTML/CSS RGB color + * format which is a six-digit hexadecimal number (the three-digit form is not supported). For example, to use + * a deep pink color which you would specify as #FF1493 in CSS, use + * + * `pins=default|coFF1493||-122 45` + * + * ### Pushpin Labels + * + * To add a label to the pins, put the label in single quotes just before the coordinates. For example, to label + * three pins with the values '1', '2', and '3', use + * + * `pins=default||'1'-122 45|'2'-119.5 43.2|'3'-121.67 47.12` + * + * There is a built in pushpin style called 'none' that does not display a pushpin image. You can use this if + * you want to display labels without any pin image. For example, + * + * `pins=none||'A'-122 45|'B'-119.5 43.2` + * + * To change the color of the pushpin labels, use the 'lc' label color style modifier. For example, to use pink + * pushpins with black labels, use + * + * `pins=default|coFF1493|lc000000||-122 45` + * + * To change the size of the labels, use the 'ls' label size style modifier. The label size represents the approximate + * height of the label text in pixels. For example, to increase the label size to 12, use + * + * `pins=default|ls12||'A'-122 45|'B'-119 43` + * + * The labels are centered at the pushpin 'label anchor.' The anchor location is predefined for built-in pushpins and + * is at the top center of custom pushpins (see below). To override the label anchor, using the 'la' style modifier + * and provide X and Y pixel coordinates for the anchor. These coordinates are relative to the top left corner of the + * pushpin image. Positive X values move the anchor to the right, and positive Y values move the anchor down. For example, + * to position the label anchor 10 pixels right and 4 pixels above the top left corner of the pushpin image, + * use + * + * `pins=default|la10 -4||'A'-122 45|'B'-119 43` + * + * ### Custom Pushpins + * + * To use a custom pushpin image, use the word 'custom' as the pin style name, and then specify a URL after the + * location and label information. Use two pipe characters to indicate that you're done specifying locations and are + * starting the URL. For example, + * + * `pins=custom||-122 45||http://contoso.com/pushpins/red.png` + * + * After URL encoding, this would look like + * + * `pins=custom%7C%7C-122+45%7C%7Chttp%3A%2F%2Fcontoso.com%2Fpushpins%2Fred.png` + * + * By default, custom pushpin images are drawn centered at the pin coordinates. This usually isn't ideal as it obscures + * the location that you're trying to highlight. To override the anchor location of the pin image, use the 'an' + * style modifier. This uses the same format as the 'la' label anchor style modifier. For example, if your custom + * pin image has the tip of the pin at the top left corner of the image, you can set the anchor to that spot by + * using + * + * `pins=custom|an0 0||-122 45||http://contoso.com/pushpins/red.png` + * + * Note: If you use the 'co' color modifier with a custom pushpin image, the specified color will replace the RGB + * channels of the pixels in the image but will leave the alpha (opacity) channel unchanged. This would usually + * only be done with a solid-color custom image. + * + * ### Getting Pushpins from Azure Maps Data Storage + * + * For all Azure Maps account SKUs other than S0, + * the pushpin location information can be obtained from Azure Maps Data Storage. After uploading a GeoJSON document containing pin locations, the Data Storage service returns a Unique Data ID (UDID) that you can use + * to reference the data in the pins parameter. + * + * To use the point geometry from an uploaded GeoJSON document as the pin locations, specify the UDID in the locations + * section of the pins parameter. For example, + * + * `pins=default||udid-29dc105a-dee7-409f-a3f9-22b066ae4713` + * + * Note that + * only point and multipoint geometry, points and multipoints from geometry collections, and point geometry from features + * will be used. Linestring and polygon geometry will be ignored. If the point comes from a feature and the feature + * has a string property called "label", the value of that property will be used as the label for the pin. + * + * You can mix pin locations from Data Storage and pin locations specified in the pins parameter. Any of the pipe-delimited + * pin locations can be a longitude and latitude or a UDID. For example, + * + * `pins=default||-122 45|udid-29dc105a-dee7-409f-a3f9-22b066ae4713|-119 43` + * + * ### Scale, Rotation, and Opacity + * + * You can make pushpins and their labels larger or smaller by using the 'sc' scale style modifier. This is a + * value greater than zero. A value of 1 is the standard scale. Values larger than 1 will make the pins larger, and + * values smaller than 1 will make them smaller. For example, to draw the pushpins 50% larger than normal, use + * + * `pins=default|sc1.5||-122 45` + * + * You can rotate pushpins and their labels by using the 'ro' rotation style modifier. This is a number of degrees + * of clockwise rotation. Use a negative number to rotate counter-clockwise. For example, to rotate the pushpins + * 90 degrees clockwise and double their size, use + * + * `pins=default|ro90|sc2||-122 45` + * + * You can make pushpins and their labels partially transparent by specifying the 'al' alpha style modifier. + * This is a number between 0 and 1 indicating the opacity of the pushpins. Zero makes them completely transparent + * (and not visible) and 1 makes them completely opaque (which is the default). For example, to make pushpins + * and their labels only 67% opaque, use + * + * `pins=default|al.67||-122 45` + * + * ### Style Modifier Summary + * + * Modifier | Description | Range + * :--------:|-----------------|------------------ + * al | Alpha (opacity) | 0 to 1 + * an | Pin anchor | * + * co | Pin color | 000000 to FFFFFF + * la | Label anchor | * + * lc | Label color | 000000 to FFFFFF + * ls | Label size | Greater than 0 + * ro | Rotation | -360 to 360 + * sc | Scale | Greater than 0 + * + * * X and Y coordinates can be anywhere within pin image or a margin around it. + * The margin size is the minimum of the pin width and height.
pathStringNoPath style and locations. Use this parameter to optionally add lines, polygons or circles to the image. + * The path style describes the appearance of the line and fill. (Be sure to properly URL-encode values of this + * parameter since it will contain reserved characters such as pipes and punctuation.) + * + * Path parameter is supported in Azure Maps account SKU starting with S1. Multiple instances of the path parameter + * allow to specify multiple geometries with their styles. Number of parameters per request is limited to 10 and + * number of locations is limited to 100 per path. + * + * To render a circle with radius 100 meters and center point at latitude 45°N and longitude 122°W using the default style, add the + * querystring parameter + * + * `path=ra100||-122 45` + * + * Note that the longitude comes before the latitude. + * After URL encoding this will look like + * + * `path=ra100%7C%7C-122+45` + * + * All of the examples here show the path parameter without URL encoding, for clarity. + * + * To render a line, separate each location with a pipe character. For example, use + * + * `path=||-122 45|-119.5 43.2|-121.67 47.12` + * + * To render a polygon, last location must be equal to the start location. For example, use + * + * `path=||-122 45|-119.5 43.2|-121.67 47.12|-122 45` + * + * Longitude and latitude values for locations of lines and polygons can be in the range from -360 to 360 to allow for rendering of geometries crossing the anti-meridian. + * + * ### Style Modifiers + * + * You can modify the appearance of the path by adding style modifiers. These are added before the locations. + * Style modifiers each have a two-letter name. These abbreviated names are used to help reduce the length + * of the URL. + * + * To change the color of the outline, use the 'lc' style modifier and specify the color using the HTML/CSS RGB color + * format which is a six-digit hexadecimal number (the three-digit form is not supported). For example, to use + * a deep pink color which you would specify as #FF1493 in CSS, use + * + * `path=lcFF1493||-122 45|-119.5 43.2` + * + * Multiple style modifiers may be combined together to create a more complex visual style. + * + * `lc0000FF|lw3|la0.60|fa0.50||-122.2 47.6|-122.2 47.7|-122.3 47.7|-122.3 47.6|-122.2 47.6` + * + * ### Getting Path locations from Azure Maps Data Storage + * + * For all Azure Maps account SKUs other than S0, the path location information can be obtained from Azure Maps Data Storage. + * After uploading a GeoJSON document containing path locations, the Data Storage service returns a Unique Data ID (UDID) that you can use + * to reference the data in the path parameter. + * + * To use the point geometry from an uploaded GeoJSON document as the path locations, specify the UDID in the locations + * section of the path parameter. For example, + * + * `path=||udid-29dc105a-dee7-409f-a3f9-22b066ae4713` + * + * Note the it is not allowed to mix path locations from Data Storage with locations specified in the path parameter. + * + * ### Style Modifier Summary + * + * Modifier | Description | Range + * :--------:|------------------------|------------------ + * lc | Line color | 000000 to FFFFFF + * fc | Fill color | 000000 to FFFFFF + * la | Line alpha (opacity) | 0 to 1 + * fa | Fill alpha (opacity) | 0 to 1 + * lw | Line width | Greater than 0 + * ra | Circle radius (meters) | Greater than 0
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + * @param format Desired format of the response. Possible value: png. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return the {@link Response} on successful completion of {@link Mono}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getMapStaticImageWithResponseAsync(String format, RequestOptions requestOptions) { + return FluxUtil.withContext( + context -> + service.getMapStaticImage( + this.client.getHost(), + this.client.getServiceVersion().getVersion(), + format, + requestOptions, + context)); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

The static image service renders a user-defined, rectangular image containing a map section using a zoom level + * from 0 to 20. The static image service renders a user-defined, rectangular image containing a map section using a + * zoom level from 0 to 20. The supported resolution range for the map image is from 1x1 to 8192x8192. If you are + * deciding when to use the static image service over the map tile service, you may want to consider how you would + * like to interact with the rendered map. If the map contents will be relatively unchanging, a static map is a good + * choice. If you want to support a lot of zooming, panning and changing of the map content, the map tile service + * would be a better choice. + * + *

Service also provides Image Composition functionality to get a static image back with additional data like; + * pushpins and geometry overlays with following S0 and S1 capabilities. + * + *

In S0 you can: - Render up to 5 pushpins specified in the request - Provide one custom image for the pins + * referenced in the request - Add labels to the pushpins + * + *

In S1 you can: - Render pushpins through [Azure Maps Data Service](https://aka.ms/AzureMapsMapDataService) - + * Specify multiple pushpin styles - Render circle, polyline and polygon geometry types. - Render of supported + * GeoJSON geometry types uploaded through [Azure Maps Data Service](https://aka.ms/AzureMapsMapDataService) + * + *

Please see [How-to-Guide](https://aka.ms/AzureMapsHowToGuideImageCompositor) for detailed examples. + * + *

_Note_ : Either **center** or **bbox** parameter must be supplied to the API. <br><br> The + * supported Lat and Lon ranges when using the **bbox** parameter, are as follows: <br><br> + * + *

|Zoom Level | Max Lon Range | Max Lat Range| |:----------|:----------------|:-------------| |0 | 360.0 | 170.0 + * | |1 | 360.0 | 170.0 | |2 | 360.0 | 170.0 | |3 | 360.0 | 170.0 | |4 | 360.0 | 170.0 | |5 | 180.0 | 85.0 | |6 | + * 90.0 | 42.5 | |7 | 45.0 | 21.25 | |8 | 22.5 | 10.625 | |9 | 11.25 | 5.3125 | |10 | 5.625 | 2.62625 | |11 | 2.8125 + * | 1.328125 | |12 | 1.40625 | 0.6640625 | |13 | 0.703125 | 0.33203125 | |14 | 0.3515625 | 0.166015625 | |15 | + * 0.17578125 | 0.0830078125 | |16 | 0.087890625 | 0.0415039063 | |17 | 0.0439453125 | 0.0207519531 | |18 | + * 0.0219726563 | 0.0103759766 | |19 | 0.0109863281 | 0.0051879883 | |20 | 0.0054931641 | 0.0025939941 |. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
layerStringNoMap layer requested. If layer is set to labels or hybrid, the format should be png.
styleStringNoMap style to be returned. Possible values are main and dark.
zoomStringNoDesired zoom level of the map. Zoom value must be in the range: 0-20 (inclusive). Default value is 12.<br><br>Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.
centerStringNoCoordinates of the center point. Format: 'lon,lat'. Projection used + * - EPSG:3857. Longitude range: -180 to 180. Latitude range: -85 to 85. + * + * Note: Either center or bbox are required parameters. They are + * mutually exclusive.
bboxStringNoBounding box. Projection used - EPSG:3857. Format : 'minLon, minLat, + * maxLon, maxLat'. + * + * Note: Either bbox or center are required + * parameters. They are mutually exclusive. It shouldn’t be used with + * height or width. + * + * The maximum allowed ranges for Lat and Lon are defined for each zoom level + * in the table at the top of this page.
heightStringNoHeight of the resulting image in pixels. Range is 1 to 8192. Default + * is 512. It shouldn’t be used with bbox.
widthStringNoWidth of the resulting image in pixels. Range is 1 to 8192. Default is 512. It shouldn’t be used with bbox.
languageStringNoLanguage in which search results should be returned. Should be one of supported IETF language tags, case insensitive. When data in specified language is not available for a specific field, default language is used. + * + * Please refer to [Supported Languages](https://docs.microsoft.com/azure/azure-maps/supported-languages) for details.
viewStringNoThe View parameter (also called the "user region" parameter) allows you to show the correct maps for a certain country/region for geopolitically disputed regions. Different countries have different views of such regions, and the View parameter allows your application to comply with the view required by the country your application will be serving. By default, the View parameter is set to “Unified” even if you haven’t defined it in the request. It is your responsibility to determine the location of your users, and then set the View parameter correctly for that location. Alternatively, you have the option to set ‘View=Auto’, which will return the map data based on the IP address of the request. The View parameter in Azure Maps must be used in compliance with applicable laws, including those regarding mapping, of the country where maps, images and other data and third party content that you are authorized to access via Azure Maps is made available. Example: view=IN. + * + * Please refer to [Supported Views](https://aka.ms/AzureMapsLocalizationViews) for details and to see the available Views.
pinsStringNoPushpin style and instances. Use this parameter to optionally add pushpins to the image. + * The pushpin style describes the appearance of the pushpins, and the instances specify + * the coordinates of the pushpins and optional labels for each pin. (Be sure to properly URL-encode values of this + * parameter since it will contain reserved characters such as pipes and punctuation.) + * + * The Azure Maps account S0 SKU only supports a single instance of the pins parameter. Other SKUs + * allow multiple instances of the pins parameter to specify multiple pin styles. + * + * To render a pushpin at latitude 45°N and longitude 122°W using the default built-in pushpin style, add the + * querystring parameter + * + * `pins=default||-122 45` + * + * Note that the longitude comes before the latitude. + * After URL encoding this will look like + * + * `pins=default%7C%7C-122+45` + * + * All of the examples here show the pins + * parameter without URL encoding, for clarity. + * + * To render a pin at multiple locations, separate each location with a pipe character. For example, use + * + * `pins=default||-122 45|-119.5 43.2|-121.67 47.12` + * + * The S0 Azure Maps account SKU only allows five pushpins. Other account SKUs do not have this limitation. + * + * ### Style Modifiers + * + * You can modify the appearance of the pins by adding style modifiers. These are added after the style but before + * the locations and labels. Style modifiers each have a two-letter name. These abbreviated names are used to help + * reduce the length of the URL. + * + * To change the color of the pushpin, use the 'co' style modifier and specify the color using the HTML/CSS RGB color + * format which is a six-digit hexadecimal number (the three-digit form is not supported). For example, to use + * a deep pink color which you would specify as #FF1493 in CSS, use + * + * `pins=default|coFF1493||-122 45` + * + * ### Pushpin Labels + * + * To add a label to the pins, put the label in single quotes just before the coordinates. For example, to label + * three pins with the values '1', '2', and '3', use + * + * `pins=default||'1'-122 45|'2'-119.5 43.2|'3'-121.67 47.12` + * + * There is a built in pushpin style called 'none' that does not display a pushpin image. You can use this if + * you want to display labels without any pin image. For example, + * + * `pins=none||'A'-122 45|'B'-119.5 43.2` + * + * To change the color of the pushpin labels, use the 'lc' label color style modifier. For example, to use pink + * pushpins with black labels, use + * + * `pins=default|coFF1493|lc000000||-122 45` + * + * To change the size of the labels, use the 'ls' label size style modifier. The label size represents the approximate + * height of the label text in pixels. For example, to increase the label size to 12, use + * + * `pins=default|ls12||'A'-122 45|'B'-119 43` + * + * The labels are centered at the pushpin 'label anchor.' The anchor location is predefined for built-in pushpins and + * is at the top center of custom pushpins (see below). To override the label anchor, using the 'la' style modifier + * and provide X and Y pixel coordinates for the anchor. These coordinates are relative to the top left corner of the + * pushpin image. Positive X values move the anchor to the right, and positive Y values move the anchor down. For example, + * to position the label anchor 10 pixels right and 4 pixels above the top left corner of the pushpin image, + * use + * + * `pins=default|la10 -4||'A'-122 45|'B'-119 43` + * + * ### Custom Pushpins + * + * To use a custom pushpin image, use the word 'custom' as the pin style name, and then specify a URL after the + * location and label information. Use two pipe characters to indicate that you're done specifying locations and are + * starting the URL. For example, + * + * `pins=custom||-122 45||http://contoso.com/pushpins/red.png` + * + * After URL encoding, this would look like + * + * `pins=custom%7C%7C-122+45%7C%7Chttp%3A%2F%2Fcontoso.com%2Fpushpins%2Fred.png` + * + * By default, custom pushpin images are drawn centered at the pin coordinates. This usually isn't ideal as it obscures + * the location that you're trying to highlight. To override the anchor location of the pin image, use the 'an' + * style modifier. This uses the same format as the 'la' label anchor style modifier. For example, if your custom + * pin image has the tip of the pin at the top left corner of the image, you can set the anchor to that spot by + * using + * + * `pins=custom|an0 0||-122 45||http://contoso.com/pushpins/red.png` + * + * Note: If you use the 'co' color modifier with a custom pushpin image, the specified color will replace the RGB + * channels of the pixels in the image but will leave the alpha (opacity) channel unchanged. This would usually + * only be done with a solid-color custom image. + * + * ### Getting Pushpins from Azure Maps Data Storage + * + * For all Azure Maps account SKUs other than S0, + * the pushpin location information can be obtained from Azure Maps Data Storage. After uploading a GeoJSON document containing pin locations, the Data Storage service returns a Unique Data ID (UDID) that you can use + * to reference the data in the pins parameter. + * + * To use the point geometry from an uploaded GeoJSON document as the pin locations, specify the UDID in the locations + * section of the pins parameter. For example, + * + * `pins=default||udid-29dc105a-dee7-409f-a3f9-22b066ae4713` + * + * Note that + * only point and multipoint geometry, points and multipoints from geometry collections, and point geometry from features + * will be used. Linestring and polygon geometry will be ignored. If the point comes from a feature and the feature + * has a string property called "label", the value of that property will be used as the label for the pin. + * + * You can mix pin locations from Data Storage and pin locations specified in the pins parameter. Any of the pipe-delimited + * pin locations can be a longitude and latitude or a UDID. For example, + * + * `pins=default||-122 45|udid-29dc105a-dee7-409f-a3f9-22b066ae4713|-119 43` + * + * ### Scale, Rotation, and Opacity + * + * You can make pushpins and their labels larger or smaller by using the 'sc' scale style modifier. This is a + * value greater than zero. A value of 1 is the standard scale. Values larger than 1 will make the pins larger, and + * values smaller than 1 will make them smaller. For example, to draw the pushpins 50% larger than normal, use + * + * `pins=default|sc1.5||-122 45` + * + * You can rotate pushpins and their labels by using the 'ro' rotation style modifier. This is a number of degrees + * of clockwise rotation. Use a negative number to rotate counter-clockwise. For example, to rotate the pushpins + * 90 degrees clockwise and double their size, use + * + * `pins=default|ro90|sc2||-122 45` + * + * You can make pushpins and their labels partially transparent by specifying the 'al' alpha style modifier. + * This is a number between 0 and 1 indicating the opacity of the pushpins. Zero makes them completely transparent + * (and not visible) and 1 makes them completely opaque (which is the default). For example, to make pushpins + * and their labels only 67% opaque, use + * + * `pins=default|al.67||-122 45` + * + * ### Style Modifier Summary + * + * Modifier | Description | Range + * :--------:|-----------------|------------------ + * al | Alpha (opacity) | 0 to 1 + * an | Pin anchor | * + * co | Pin color | 000000 to FFFFFF + * la | Label anchor | * + * lc | Label color | 000000 to FFFFFF + * ls | Label size | Greater than 0 + * ro | Rotation | -360 to 360 + * sc | Scale | Greater than 0 + * + * * X and Y coordinates can be anywhere within pin image or a margin around it. + * The margin size is the minimum of the pin width and height.
pathStringNoPath style and locations. Use this parameter to optionally add lines, polygons or circles to the image. + * The path style describes the appearance of the line and fill. (Be sure to properly URL-encode values of this + * parameter since it will contain reserved characters such as pipes and punctuation.) + * + * Path parameter is supported in Azure Maps account SKU starting with S1. Multiple instances of the path parameter + * allow to specify multiple geometries with their styles. Number of parameters per request is limited to 10 and + * number of locations is limited to 100 per path. + * + * To render a circle with radius 100 meters and center point at latitude 45°N and longitude 122°W using the default style, add the + * querystring parameter + * + * `path=ra100||-122 45` + * + * Note that the longitude comes before the latitude. + * After URL encoding this will look like + * + * `path=ra100%7C%7C-122+45` + * + * All of the examples here show the path parameter without URL encoding, for clarity. + * + * To render a line, separate each location with a pipe character. For example, use + * + * `path=||-122 45|-119.5 43.2|-121.67 47.12` + * + * To render a polygon, last location must be equal to the start location. For example, use + * + * `path=||-122 45|-119.5 43.2|-121.67 47.12|-122 45` + * + * Longitude and latitude values for locations of lines and polygons can be in the range from -360 to 360 to allow for rendering of geometries crossing the anti-meridian. + * + * ### Style Modifiers + * + * You can modify the appearance of the path by adding style modifiers. These are added before the locations. + * Style modifiers each have a two-letter name. These abbreviated names are used to help reduce the length + * of the URL. + * + * To change the color of the outline, use the 'lc' style modifier and specify the color using the HTML/CSS RGB color + * format which is a six-digit hexadecimal number (the three-digit form is not supported). For example, to use + * a deep pink color which you would specify as #FF1493 in CSS, use + * + * `path=lcFF1493||-122 45|-119.5 43.2` + * + * Multiple style modifiers may be combined together to create a more complex visual style. + * + * `lc0000FF|lw3|la0.60|fa0.50||-122.2 47.6|-122.2 47.7|-122.3 47.7|-122.3 47.6|-122.2 47.6` + * + * ### Getting Path locations from Azure Maps Data Storage + * + * For all Azure Maps account SKUs other than S0, the path location information can be obtained from Azure Maps Data Storage. + * After uploading a GeoJSON document containing path locations, the Data Storage service returns a Unique Data ID (UDID) that you can use + * to reference the data in the path parameter. + * + * To use the point geometry from an uploaded GeoJSON document as the path locations, specify the UDID in the locations + * section of the path parameter. For example, + * + * `path=||udid-29dc105a-dee7-409f-a3f9-22b066ae4713` + * + * Note the it is not allowed to mix path locations from Data Storage with locations specified in the path parameter. + * + * ### Style Modifier Summary + * + * Modifier | Description | Range + * :--------:|------------------------|------------------ + * lc | Line color | 000000 to FFFFFF + * fc | Fill color | 000000 to FFFFFF + * la | Line alpha (opacity) | 0 to 1 + * fa | Fill alpha (opacity) | 0 to 1 + * lw | Line width | Greater than 0 + * ra | Circle radius (meters) | Greater than 0
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + * @param format Desired format of the response. Possible value: png. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @param context The context to associate with this operation. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return the {@link Response} on successful completion of {@link Mono}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getMapStaticImageWithResponseAsync( + String format, RequestOptions requestOptions, Context context) { + return service.getMapStaticImage( + this.client.getHost(), this.client.getServiceVersion().getVersion(), format, requestOptions, context); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

The static image service renders a user-defined, rectangular image containing a map section using a zoom level + * from 0 to 20. The static image service renders a user-defined, rectangular image containing a map section using a + * zoom level from 0 to 20. The supported resolution range for the map image is from 1x1 to 8192x8192. If you are + * deciding when to use the static image service over the map tile service, you may want to consider how you would + * like to interact with the rendered map. If the map contents will be relatively unchanging, a static map is a good + * choice. If you want to support a lot of zooming, panning and changing of the map content, the map tile service + * would be a better choice. + * + *

Service also provides Image Composition functionality to get a static image back with additional data like; + * pushpins and geometry overlays with following S0 and S1 capabilities. + * + *

In S0 you can: - Render up to 5 pushpins specified in the request - Provide one custom image for the pins + * referenced in the request - Add labels to the pushpins + * + *

In S1 you can: - Render pushpins through [Azure Maps Data Service](https://aka.ms/AzureMapsMapDataService) - + * Specify multiple pushpin styles - Render circle, polyline and polygon geometry types. - Render of supported + * GeoJSON geometry types uploaded through [Azure Maps Data Service](https://aka.ms/AzureMapsMapDataService) + * + *

Please see [How-to-Guide](https://aka.ms/AzureMapsHowToGuideImageCompositor) for detailed examples. + * + *

_Note_ : Either **center** or **bbox** parameter must be supplied to the API. <br><br> The + * supported Lat and Lon ranges when using the **bbox** parameter, are as follows: <br><br> + * + *

|Zoom Level | Max Lon Range | Max Lat Range| |:----------|:----------------|:-------------| |0 | 360.0 | 170.0 + * | |1 | 360.0 | 170.0 | |2 | 360.0 | 170.0 | |3 | 360.0 | 170.0 | |4 | 360.0 | 170.0 | |5 | 180.0 | 85.0 | |6 | + * 90.0 | 42.5 | |7 | 45.0 | 21.25 | |8 | 22.5 | 10.625 | |9 | 11.25 | 5.3125 | |10 | 5.625 | 2.62625 | |11 | 2.8125 + * | 1.328125 | |12 | 1.40625 | 0.6640625 | |13 | 0.703125 | 0.33203125 | |14 | 0.3515625 | 0.166015625 | |15 | + * 0.17578125 | 0.0830078125 | |16 | 0.087890625 | 0.0415039063 | |17 | 0.0439453125 | 0.0207519531 | |18 | + * 0.0219726563 | 0.0103759766 | |19 | 0.0109863281 | 0.0051879883 | |20 | 0.0054931641 | 0.0025939941 |. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
layerStringNoMap layer requested. If layer is set to labels or hybrid, the format should be png.
styleStringNoMap style to be returned. Possible values are main and dark.
zoomStringNoDesired zoom level of the map. Zoom value must be in the range: 0-20 (inclusive). Default value is 12.<br><br>Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.
centerStringNoCoordinates of the center point. Format: 'lon,lat'. Projection used + * - EPSG:3857. Longitude range: -180 to 180. Latitude range: -85 to 85. + * + * Note: Either center or bbox are required parameters. They are + * mutually exclusive.
bboxStringNoBounding box. Projection used - EPSG:3857. Format : 'minLon, minLat, + * maxLon, maxLat'. + * + * Note: Either bbox or center are required + * parameters. They are mutually exclusive. It shouldn’t be used with + * height or width. + * + * The maximum allowed ranges for Lat and Lon are defined for each zoom level + * in the table at the top of this page.
heightStringNoHeight of the resulting image in pixels. Range is 1 to 8192. Default + * is 512. It shouldn’t be used with bbox.
widthStringNoWidth of the resulting image in pixels. Range is 1 to 8192. Default is 512. It shouldn’t be used with bbox.
languageStringNoLanguage in which search results should be returned. Should be one of supported IETF language tags, case insensitive. When data in specified language is not available for a specific field, default language is used. + * + * Please refer to [Supported Languages](https://docs.microsoft.com/azure/azure-maps/supported-languages) for details.
viewStringNoThe View parameter (also called the "user region" parameter) allows you to show the correct maps for a certain country/region for geopolitically disputed regions. Different countries have different views of such regions, and the View parameter allows your application to comply with the view required by the country your application will be serving. By default, the View parameter is set to “Unified” even if you haven’t defined it in the request. It is your responsibility to determine the location of your users, and then set the View parameter correctly for that location. Alternatively, you have the option to set ‘View=Auto’, which will return the map data based on the IP address of the request. The View parameter in Azure Maps must be used in compliance with applicable laws, including those regarding mapping, of the country where maps, images and other data and third party content that you are authorized to access via Azure Maps is made available. Example: view=IN. + * + * Please refer to [Supported Views](https://aka.ms/AzureMapsLocalizationViews) for details and to see the available Views.
pinsStringNoPushpin style and instances. Use this parameter to optionally add pushpins to the image. + * The pushpin style describes the appearance of the pushpins, and the instances specify + * the coordinates of the pushpins and optional labels for each pin. (Be sure to properly URL-encode values of this + * parameter since it will contain reserved characters such as pipes and punctuation.) + * + * The Azure Maps account S0 SKU only supports a single instance of the pins parameter. Other SKUs + * allow multiple instances of the pins parameter to specify multiple pin styles. + * + * To render a pushpin at latitude 45°N and longitude 122°W using the default built-in pushpin style, add the + * querystring parameter + * + * `pins=default||-122 45` + * + * Note that the longitude comes before the latitude. + * After URL encoding this will look like + * + * `pins=default%7C%7C-122+45` + * + * All of the examples here show the pins + * parameter without URL encoding, for clarity. + * + * To render a pin at multiple locations, separate each location with a pipe character. For example, use + * + * `pins=default||-122 45|-119.5 43.2|-121.67 47.12` + * + * The S0 Azure Maps account SKU only allows five pushpins. Other account SKUs do not have this limitation. + * + * ### Style Modifiers + * + * You can modify the appearance of the pins by adding style modifiers. These are added after the style but before + * the locations and labels. Style modifiers each have a two-letter name. These abbreviated names are used to help + * reduce the length of the URL. + * + * To change the color of the pushpin, use the 'co' style modifier and specify the color using the HTML/CSS RGB color + * format which is a six-digit hexadecimal number (the three-digit form is not supported). For example, to use + * a deep pink color which you would specify as #FF1493 in CSS, use + * + * `pins=default|coFF1493||-122 45` + * + * ### Pushpin Labels + * + * To add a label to the pins, put the label in single quotes just before the coordinates. For example, to label + * three pins with the values '1', '2', and '3', use + * + * `pins=default||'1'-122 45|'2'-119.5 43.2|'3'-121.67 47.12` + * + * There is a built in pushpin style called 'none' that does not display a pushpin image. You can use this if + * you want to display labels without any pin image. For example, + * + * `pins=none||'A'-122 45|'B'-119.5 43.2` + * + * To change the color of the pushpin labels, use the 'lc' label color style modifier. For example, to use pink + * pushpins with black labels, use + * + * `pins=default|coFF1493|lc000000||-122 45` + * + * To change the size of the labels, use the 'ls' label size style modifier. The label size represents the approximate + * height of the label text in pixels. For example, to increase the label size to 12, use + * + * `pins=default|ls12||'A'-122 45|'B'-119 43` + * + * The labels are centered at the pushpin 'label anchor.' The anchor location is predefined for built-in pushpins and + * is at the top center of custom pushpins (see below). To override the label anchor, using the 'la' style modifier + * and provide X and Y pixel coordinates for the anchor. These coordinates are relative to the top left corner of the + * pushpin image. Positive X values move the anchor to the right, and positive Y values move the anchor down. For example, + * to position the label anchor 10 pixels right and 4 pixels above the top left corner of the pushpin image, + * use + * + * `pins=default|la10 -4||'A'-122 45|'B'-119 43` + * + * ### Custom Pushpins + * + * To use a custom pushpin image, use the word 'custom' as the pin style name, and then specify a URL after the + * location and label information. Use two pipe characters to indicate that you're done specifying locations and are + * starting the URL. For example, + * + * `pins=custom||-122 45||http://contoso.com/pushpins/red.png` + * + * After URL encoding, this would look like + * + * `pins=custom%7C%7C-122+45%7C%7Chttp%3A%2F%2Fcontoso.com%2Fpushpins%2Fred.png` + * + * By default, custom pushpin images are drawn centered at the pin coordinates. This usually isn't ideal as it obscures + * the location that you're trying to highlight. To override the anchor location of the pin image, use the 'an' + * style modifier. This uses the same format as the 'la' label anchor style modifier. For example, if your custom + * pin image has the tip of the pin at the top left corner of the image, you can set the anchor to that spot by + * using + * + * `pins=custom|an0 0||-122 45||http://contoso.com/pushpins/red.png` + * + * Note: If you use the 'co' color modifier with a custom pushpin image, the specified color will replace the RGB + * channels of the pixels in the image but will leave the alpha (opacity) channel unchanged. This would usually + * only be done with a solid-color custom image. + * + * ### Getting Pushpins from Azure Maps Data Storage + * + * For all Azure Maps account SKUs other than S0, + * the pushpin location information can be obtained from Azure Maps Data Storage. After uploading a GeoJSON document containing pin locations, the Data Storage service returns a Unique Data ID (UDID) that you can use + * to reference the data in the pins parameter. + * + * To use the point geometry from an uploaded GeoJSON document as the pin locations, specify the UDID in the locations + * section of the pins parameter. For example, + * + * `pins=default||udid-29dc105a-dee7-409f-a3f9-22b066ae4713` + * + * Note that + * only point and multipoint geometry, points and multipoints from geometry collections, and point geometry from features + * will be used. Linestring and polygon geometry will be ignored. If the point comes from a feature and the feature + * has a string property called "label", the value of that property will be used as the label for the pin. + * + * You can mix pin locations from Data Storage and pin locations specified in the pins parameter. Any of the pipe-delimited + * pin locations can be a longitude and latitude or a UDID. For example, + * + * `pins=default||-122 45|udid-29dc105a-dee7-409f-a3f9-22b066ae4713|-119 43` + * + * ### Scale, Rotation, and Opacity + * + * You can make pushpins and their labels larger or smaller by using the 'sc' scale style modifier. This is a + * value greater than zero. A value of 1 is the standard scale. Values larger than 1 will make the pins larger, and + * values smaller than 1 will make them smaller. For example, to draw the pushpins 50% larger than normal, use + * + * `pins=default|sc1.5||-122 45` + * + * You can rotate pushpins and their labels by using the 'ro' rotation style modifier. This is a number of degrees + * of clockwise rotation. Use a negative number to rotate counter-clockwise. For example, to rotate the pushpins + * 90 degrees clockwise and double their size, use + * + * `pins=default|ro90|sc2||-122 45` + * + * You can make pushpins and their labels partially transparent by specifying the 'al' alpha style modifier. + * This is a number between 0 and 1 indicating the opacity of the pushpins. Zero makes them completely transparent + * (and not visible) and 1 makes them completely opaque (which is the default). For example, to make pushpins + * and their labels only 67% opaque, use + * + * `pins=default|al.67||-122 45` + * + * ### Style Modifier Summary + * + * Modifier | Description | Range + * :--------:|-----------------|------------------ + * al | Alpha (opacity) | 0 to 1 + * an | Pin anchor | * + * co | Pin color | 000000 to FFFFFF + * la | Label anchor | * + * lc | Label color | 000000 to FFFFFF + * ls | Label size | Greater than 0 + * ro | Rotation | -360 to 360 + * sc | Scale | Greater than 0 + * + * * X and Y coordinates can be anywhere within pin image or a margin around it. + * The margin size is the minimum of the pin width and height.
pathStringNoPath style and locations. Use this parameter to optionally add lines, polygons or circles to the image. + * The path style describes the appearance of the line and fill. (Be sure to properly URL-encode values of this + * parameter since it will contain reserved characters such as pipes and punctuation.) + * + * Path parameter is supported in Azure Maps account SKU starting with S1. Multiple instances of the path parameter + * allow to specify multiple geometries with their styles. Number of parameters per request is limited to 10 and + * number of locations is limited to 100 per path. + * + * To render a circle with radius 100 meters and center point at latitude 45°N and longitude 122°W using the default style, add the + * querystring parameter + * + * `path=ra100||-122 45` + * + * Note that the longitude comes before the latitude. + * After URL encoding this will look like + * + * `path=ra100%7C%7C-122+45` + * + * All of the examples here show the path parameter without URL encoding, for clarity. + * + * To render a line, separate each location with a pipe character. For example, use + * + * `path=||-122 45|-119.5 43.2|-121.67 47.12` + * + * To render a polygon, last location must be equal to the start location. For example, use + * + * `path=||-122 45|-119.5 43.2|-121.67 47.12|-122 45` + * + * Longitude and latitude values for locations of lines and polygons can be in the range from -360 to 360 to allow for rendering of geometries crossing the anti-meridian. + * + * ### Style Modifiers + * + * You can modify the appearance of the path by adding style modifiers. These are added before the locations. + * Style modifiers each have a two-letter name. These abbreviated names are used to help reduce the length + * of the URL. + * + * To change the color of the outline, use the 'lc' style modifier and specify the color using the HTML/CSS RGB color + * format which is a six-digit hexadecimal number (the three-digit form is not supported). For example, to use + * a deep pink color which you would specify as #FF1493 in CSS, use + * + * `path=lcFF1493||-122 45|-119.5 43.2` + * + * Multiple style modifiers may be combined together to create a more complex visual style. + * + * `lc0000FF|lw3|la0.60|fa0.50||-122.2 47.6|-122.2 47.7|-122.3 47.7|-122.3 47.6|-122.2 47.6` + * + * ### Getting Path locations from Azure Maps Data Storage + * + * For all Azure Maps account SKUs other than S0, the path location information can be obtained from Azure Maps Data Storage. + * After uploading a GeoJSON document containing path locations, the Data Storage service returns a Unique Data ID (UDID) that you can use + * to reference the data in the path parameter. + * + * To use the point geometry from an uploaded GeoJSON document as the path locations, specify the UDID in the locations + * section of the path parameter. For example, + * + * `path=||udid-29dc105a-dee7-409f-a3f9-22b066ae4713` + * + * Note the it is not allowed to mix path locations from Data Storage with locations specified in the path parameter. + * + * ### Style Modifier Summary + * + * Modifier | Description | Range + * :--------:|------------------------|------------------ + * lc | Line color | 000000 to FFFFFF + * fc | Fill color | 000000 to FFFFFF + * la | Line alpha (opacity) | 0 to 1 + * fa | Fill alpha (opacity) | 0 to 1 + * lw | Line width | Greater than 0 + * ra | Circle radius (meters) | Greater than 0
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + * @param format Desired format of the response. Possible value: png. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return the {@link Response}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getMapStaticImageWithResponse(String format, RequestOptions requestOptions) { + return getMapStaticImageWithResponseAsync(format, requestOptions).block(); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Returns copyright information for a given bounding box. Bounding-box requests should specify the minimum and + * maximum longitude and latitude (EPSG-3857) coordinates. + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
mincoordinatesStringYesMinimum coordinates (south-west point) of bounding box in latitude longitude coordinate system. E.g. 52.41064,4.84228
maxcoordinatesStringYesMaximum coordinates (north-east point) of bounding box in latitude longitude coordinate system. E.g. 52.41064,4.84228
textStringNoYes/no value to exclude textual data from response. Only images and country names will be in response.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     formatVersion: String
+     *     generalCopyrights: [
+     *         String
+     *     ]
+     *     regions: [
+     *         {
+     *             copyrights: [
+     *                 String
+     *             ]
+     *             country: {
+     *                 iso3: String
+     *                 label: String
+     *             }
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Value can be either _json_ or _xml_. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return this object is returned from a successful copyright request along with {@link Response} on successful + * completion of {@link Mono}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getCopyrightFromBoundingBoxWithResponseAsync( + String format, RequestOptions requestOptions) { + return FluxUtil.withContext( + context -> + service.getCopyrightFromBoundingBox( + this.client.getHost(), + this.client.getServiceVersion().getVersion(), + format, + requestOptions, + context)); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Returns copyright information for a given bounding box. Bounding-box requests should specify the minimum and + * maximum longitude and latitude (EPSG-3857) coordinates. + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
mincoordinatesStringYesMinimum coordinates (south-west point) of bounding box in latitude longitude coordinate system. E.g. 52.41064,4.84228
maxcoordinatesStringYesMaximum coordinates (north-east point) of bounding box in latitude longitude coordinate system. E.g. 52.41064,4.84228
textStringNoYes/no value to exclude textual data from response. Only images and country names will be in response.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     formatVersion: String
+     *     generalCopyrights: [
+     *         String
+     *     ]
+     *     regions: [
+     *         {
+     *             copyrights: [
+     *                 String
+     *             ]
+     *             country: {
+     *                 iso3: String
+     *                 label: String
+     *             }
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Value can be either _json_ or _xml_. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @param context The context to associate with this operation. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return this object is returned from a successful copyright request along with {@link Response} on successful + * completion of {@link Mono}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getCopyrightFromBoundingBoxWithResponseAsync( + String format, RequestOptions requestOptions, Context context) { + return service.getCopyrightFromBoundingBox( + this.client.getHost(), this.client.getServiceVersion().getVersion(), format, requestOptions, context); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Returns copyright information for a given bounding box. Bounding-box requests should specify the minimum and + * maximum longitude and latitude (EPSG-3857) coordinates. + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
mincoordinatesStringYesMinimum coordinates (south-west point) of bounding box in latitude longitude coordinate system. E.g. 52.41064,4.84228
maxcoordinatesStringYesMaximum coordinates (north-east point) of bounding box in latitude longitude coordinate system. E.g. 52.41064,4.84228
textStringNoYes/no value to exclude textual data from response. Only images and country names will be in response.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     formatVersion: String
+     *     generalCopyrights: [
+     *         String
+     *     ]
+     *     regions: [
+     *         {
+     *             copyrights: [
+     *                 String
+     *             ]
+     *             country: {
+     *                 iso3: String
+     *                 label: String
+     *             }
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Value can be either _json_ or _xml_. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return this object is returned from a successful copyright request along with {@link Response}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getCopyrightFromBoundingBoxWithResponse(String format, RequestOptions requestOptions) { + return getCopyrightFromBoundingBoxWithResponseAsync(format, requestOptions).block(); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Copyrights API is designed to serve copyright information for Render Tile service. In addition to basic + * copyright for the whole map, API is serving specific groups of copyrights for some countries. Returns the + * copyright information for a given tile. To obtain the copyright information for a particular tile, the request + * should specify the tile's zoom level and x and y coordinates (see: Zoom Levels and Tile Grid). + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
zoomintYesZoom level for the desired tile. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.
xintYesX coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
yintYesY coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
textStringNoYes/no value to exclude textual data from response. Only images and country names will be in response.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     formatVersion: String
+     *     generalCopyrights: [
+     *         String
+     *     ]
+     *     regions: [
+     *         {
+     *             copyrights: [
+     *                 String
+     *             ]
+     *             country: {
+     *                 iso3: String
+     *                 label: String
+     *             }
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Value can be either _json_ or _xml_. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return this object is returned from a successful copyright request along with {@link Response} on successful + * completion of {@link Mono}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getCopyrightForTileWithResponseAsync( + String format, RequestOptions requestOptions) { + return FluxUtil.withContext( + context -> + service.getCopyrightForTile( + this.client.getHost(), + this.client.getServiceVersion().getVersion(), + format, + requestOptions, + context)); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Copyrights API is designed to serve copyright information for Render Tile service. In addition to basic + * copyright for the whole map, API is serving specific groups of copyrights for some countries. Returns the + * copyright information for a given tile. To obtain the copyright information for a particular tile, the request + * should specify the tile's zoom level and x and y coordinates (see: Zoom Levels and Tile Grid). + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
zoomintYesZoom level for the desired tile. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.
xintYesX coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
yintYesY coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
textStringNoYes/no value to exclude textual data from response. Only images and country names will be in response.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     formatVersion: String
+     *     generalCopyrights: [
+     *         String
+     *     ]
+     *     regions: [
+     *         {
+     *             copyrights: [
+     *                 String
+     *             ]
+     *             country: {
+     *                 iso3: String
+     *                 label: String
+     *             }
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Value can be either _json_ or _xml_. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @param context The context to associate with this operation. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return this object is returned from a successful copyright request along with {@link Response} on successful + * completion of {@link Mono}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getCopyrightForTileWithResponseAsync( + String format, RequestOptions requestOptions, Context context) { + return service.getCopyrightForTile( + this.client.getHost(), this.client.getServiceVersion().getVersion(), format, requestOptions, context); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Copyrights API is designed to serve copyright information for Render Tile service. In addition to basic + * copyright for the whole map, API is serving specific groups of copyrights for some countries. Returns the + * copyright information for a given tile. To obtain the copyright information for a particular tile, the request + * should specify the tile's zoom level and x and y coordinates (see: Zoom Levels and Tile Grid). + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
zoomintYesZoom level for the desired tile. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.
xintYesX coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
yintYesY coordinate of the tile on zoom grid. Value must be in the range [0, 2<sup>`zoom`</sup> -1]. + * + * Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/azure/location-based-services/zoom-levels-and-tile-grid) for details.
textStringNoYes/no value to exclude textual data from response. Only images and country names will be in response.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     formatVersion: String
+     *     generalCopyrights: [
+     *         String
+     *     ]
+     *     regions: [
+     *         {
+     *             copyrights: [
+     *                 String
+     *             ]
+     *             country: {
+     *                 iso3: String
+     *                 label: String
+     *             }
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Value can be either _json_ or _xml_. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return this object is returned from a successful copyright request along with {@link Response}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getCopyrightForTileWithResponse(String format, RequestOptions requestOptions) { + return getCopyrightForTileWithResponseAsync(format, requestOptions).block(); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Copyrights API is designed to serve copyright information for Render Tile service. In addition to basic + * copyright for the whole map, API is serving specific groups of copyrights for some countries. Returns the + * copyright information for the world. To obtain the default copyright information for the whole world, do not + * specify a tile or bounding box. + * + *

Query Parameters + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
textStringNoYes/no value to exclude textual data from response. Only images and country names will be in response.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     formatVersion: String
+     *     generalCopyrights: [
+     *         String
+     *     ]
+     *     regions: [
+     *         {
+     *             copyrights: [
+     *                 String
+     *             ]
+     *             country: {
+     *                 iso3: String
+     *                 label: String
+     *             }
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Value can be either _json_ or _xml_. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return this object is returned from a successful copyright request along with {@link Response} on successful + * completion of {@link Mono}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getCopyrightForWorldWithResponseAsync( + String format, RequestOptions requestOptions) { + return FluxUtil.withContext( + context -> + service.getCopyrightForWorld( + this.client.getHost(), + this.client.getServiceVersion().getVersion(), + format, + requestOptions, + context)); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Copyrights API is designed to serve copyright information for Render Tile service. In addition to basic + * copyright for the whole map, API is serving specific groups of copyrights for some countries. Returns the + * copyright information for the world. To obtain the default copyright information for the whole world, do not + * specify a tile or bounding box. + * + *

Query Parameters + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
textStringNoYes/no value to exclude textual data from response. Only images and country names will be in response.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     formatVersion: String
+     *     generalCopyrights: [
+     *         String
+     *     ]
+     *     regions: [
+     *         {
+     *             copyrights: [
+     *                 String
+     *             ]
+     *             country: {
+     *                 iso3: String
+     *                 label: String
+     *             }
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Value can be either _json_ or _xml_. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @param context The context to associate with this operation. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return this object is returned from a successful copyright request along with {@link Response} on successful + * completion of {@link Mono}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getCopyrightForWorldWithResponseAsync( + String format, RequestOptions requestOptions, Context context) { + return service.getCopyrightForWorld( + this.client.getHost(), this.client.getServiceVersion().getVersion(), format, requestOptions, context); + } + + /** + * **Applies to**: S0 and S1 pricing tiers. + * + *

Copyrights API is designed to serve copyright information for Render Tile service. In addition to basic + * copyright for the whole map, API is serving specific groups of copyrights for some countries. Returns the + * copyright information for the world. To obtain the default copyright information for the whole world, do not + * specify a tile or bounding box. + * + *

Query Parameters + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
api-versionStringYesApi Version
textStringNoYes/no value to exclude textual data from response. Only images and country names will be in response.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
x-ms-client-idStringNoSpecifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.
+ * + *

Response Body Schema + * + *

{@code
+     * {
+     *     formatVersion: String
+     *     generalCopyrights: [
+     *         String
+     *     ]
+     *     regions: [
+     *         {
+     *             copyrights: [
+     *                 String
+     *             ]
+     *             country: {
+     *                 iso3: String
+     *                 label: String
+     *             }
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Value can be either _json_ or _xml_. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if the request is rejected by server. + * @return this object is returned from a successful copyright request along with {@link Response}. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getCopyrightForWorldWithResponse(String format, RequestOptions requestOptions) { + return getCopyrightForWorldWithResponseAsync(format, requestOptions).block(); + } +} diff --git a/sdk/maps/azure-maps-render/src/main/java/com/azure/maps/render/package-info.java b/sdk/maps/azure-maps-render/src/main/java/com/azure/maps/render/package-info.java new file mode 100644 index 000000000000..650aaeee7625 --- /dev/null +++ b/sdk/maps/azure-maps-render/src/main/java/com/azure/maps/render/package-info.java @@ -0,0 +1,6 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +/** Package containing the classes for AzureMapsRenderService. Azure Maps Render REST APIs. */ +package com.azure.maps.render; diff --git a/sdk/maps/azure-maps-render/src/main/java/module-info.java b/sdk/maps/azure-maps-render/src/main/java/module-info.java new file mode 100644 index 000000000000..5879ab16a25d --- /dev/null +++ b/sdk/maps/azure-maps-render/src/main/java/module-info.java @@ -0,0 +1,9 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +module com.azure.maps.render { + requires transitive com.azure.core; + + exports com.azure.maps.render; +} diff --git a/sdk/maps/azure-maps-render/src/main/resources/azure-maps-render.properties b/sdk/maps/azure-maps-render/src/main/resources/azure-maps-render.properties new file mode 100644 index 000000000000..ca812989b4f2 --- /dev/null +++ b/sdk/maps/azure-maps-render/src/main/resources/azure-maps-render.properties @@ -0,0 +1,2 @@ +name=${project.artifactId} +version=${project.version} diff --git a/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/ReadmeSamples.java b/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/ReadmeSamples.java new file mode 100644 index 000000000000..bc82e67236a9 --- /dev/null +++ b/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/ReadmeSamples.java @@ -0,0 +1,12 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.render; + +public final class ReadmeSamples { + public void readmeSamples() { + // BEGIN: com.azure.maps.render.readme + // END: com.azure.maps.render.readme + } +} diff --git a/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulAttributionRequest.java b/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulAttributionRequest.java new file mode 100644 index 000000000000..b6586db2d399 --- /dev/null +++ b/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulAttributionRequest.java @@ -0,0 +1,27 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.render.generated; + +import com.azure.core.http.rest.RequestOptions; +import com.azure.core.http.rest.Response; +import com.azure.core.util.BinaryData; +import com.azure.identity.DefaultAzureCredentialBuilder; +import com.azure.maps.render.AzureMapsRenderServiceClient; +import com.azure.maps.render.AzureMapsRenderServiceClientBuilder; + +public class SuccessfulAttributionRequest { + public static void main(String[] args) { + AzureMapsRenderServiceClient client = + new AzureMapsRenderServiceClientBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildClient(); + RequestOptions requestOptions = new RequestOptions(); + requestOptions.addQueryParam("bounds", "-122.414162,47.57949,-122.247157,47.668372"); + requestOptions.addQueryParam("zoom", 6); + requestOptions.addQueryParam("tilesetId", "microsoft.base"); + Response response = client.getMapAttributionWithResponse(requestOptions); + } +} diff --git a/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulBoundingBoxCopyrightRequest.java b/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulBoundingBoxCopyrightRequest.java new file mode 100644 index 000000000000..299fa70f2f8f --- /dev/null +++ b/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulBoundingBoxCopyrightRequest.java @@ -0,0 +1,27 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.render.generated; + +import com.azure.core.http.rest.RequestOptions; +import com.azure.core.http.rest.Response; +import com.azure.core.util.BinaryData; +import com.azure.identity.DefaultAzureCredentialBuilder; +import com.azure.maps.render.AzureMapsRenderServiceClient; +import com.azure.maps.render.AzureMapsRenderServiceClientBuilder; + +public class SuccessfulBoundingBoxCopyrightRequest { + public static void main(String[] args) { + AzureMapsRenderServiceClient client = + new AzureMapsRenderServiceClientBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildClient(); + RequestOptions requestOptions = new RequestOptions(); + requestOptions.addQueryParam("maxcoordinates", "52.41072,4.84239"); + requestOptions.addQueryParam("text", "yes"); + requestOptions.addQueryParam("mincoordinates", "52.41064,4.84228"); + Response response = client.getCopyrightFromBoundingBoxWithResponse("json", requestOptions); + } +} diff --git a/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulCopyrightCaptionRequest.java b/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulCopyrightCaptionRequest.java new file mode 100644 index 000000000000..160484157c51 --- /dev/null +++ b/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulCopyrightCaptionRequest.java @@ -0,0 +1,24 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.render.generated; + +import com.azure.core.http.rest.RequestOptions; +import com.azure.core.http.rest.Response; +import com.azure.core.util.BinaryData; +import com.azure.identity.DefaultAzureCredentialBuilder; +import com.azure.maps.render.AzureMapsRenderServiceClient; +import com.azure.maps.render.AzureMapsRenderServiceClientBuilder; + +public class SuccessfulCopyrightCaptionRequest { + public static void main(String[] args) { + AzureMapsRenderServiceClient client = + new AzureMapsRenderServiceClientBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildClient(); + RequestOptions requestOptions = new RequestOptions(); + Response response = client.getCopyrightCaptionWithResponse("json", requestOptions); + } +} diff --git a/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulStateTileRequest.java b/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulStateTileRequest.java new file mode 100644 index 000000000000..14061661e6fd --- /dev/null +++ b/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulStateTileRequest.java @@ -0,0 +1,27 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.render.generated; + +import com.azure.core.http.rest.RequestOptions; +import com.azure.core.http.rest.Response; +import com.azure.identity.DefaultAzureCredentialBuilder; +import com.azure.maps.render.AzureMapsRenderServiceClient; +import com.azure.maps.render.AzureMapsRenderServiceClientBuilder; + +public class SuccessfulStateTileRequest { + public static void main(String[] args) { + AzureMapsRenderServiceClient client = + new AzureMapsRenderServiceClientBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildClient(); + RequestOptions requestOptions = new RequestOptions(); + requestOptions.addQueryParam("x", 10); + requestOptions.addQueryParam("y", 22); + requestOptions.addQueryParam("zoom", 6); + requestOptions.addQueryParam("statesetId", "[statesetId]"); + Response response = client.getMapStateTileWithResponse(requestOptions); + } +} diff --git a/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulStaticImageRequest.java b/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulStaticImageRequest.java new file mode 100644 index 000000000000..9a59f48068e9 --- /dev/null +++ b/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulStaticImageRequest.java @@ -0,0 +1,27 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.render.generated; + +import com.azure.core.http.rest.RequestOptions; +import com.azure.core.http.rest.Response; +import com.azure.identity.DefaultAzureCredentialBuilder; +import com.azure.maps.render.AzureMapsRenderServiceClient; +import com.azure.maps.render.AzureMapsRenderServiceClientBuilder; + +public class SuccessfulStaticImageRequest { + public static void main(String[] args) { + AzureMapsRenderServiceClient client = + new AzureMapsRenderServiceClientBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildClient(); + RequestOptions requestOptions = new RequestOptions(); + requestOptions.addQueryParam("bbox", "1.355233,42.982261,24.980233,56.526017"); + requestOptions.addQueryParam("style", "main"); + requestOptions.addQueryParam("zoom", "2"); + requestOptions.addQueryParam("layer", "basic"); + Response response = client.getMapStaticImageWithResponse("png", requestOptions); + } +} diff --git a/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulTileCopyrightRequest.java b/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulTileCopyrightRequest.java new file mode 100644 index 000000000000..e45e9c99e0c6 --- /dev/null +++ b/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulTileCopyrightRequest.java @@ -0,0 +1,27 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.render.generated; + +import com.azure.core.http.rest.RequestOptions; +import com.azure.core.http.rest.Response; +import com.azure.core.util.BinaryData; +import com.azure.identity.DefaultAzureCredentialBuilder; +import com.azure.maps.render.AzureMapsRenderServiceClient; +import com.azure.maps.render.AzureMapsRenderServiceClientBuilder; + +public class SuccessfulTileCopyrightRequest { + public static void main(String[] args) { + AzureMapsRenderServiceClient client = + new AzureMapsRenderServiceClientBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildClient(); + RequestOptions requestOptions = new RequestOptions(); + requestOptions.addQueryParam("x", 9); + requestOptions.addQueryParam("y", 22); + requestOptions.addQueryParam("zoom", 6); + Response response = client.getCopyrightForTileWithResponse("json", requestOptions); + } +} diff --git a/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulTileRequest.java b/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulTileRequest.java new file mode 100644 index 000000000000..13989b6d1199 --- /dev/null +++ b/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulTileRequest.java @@ -0,0 +1,27 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.render.generated; + +import com.azure.core.http.rest.RequestOptions; +import com.azure.core.http.rest.Response; +import com.azure.identity.DefaultAzureCredentialBuilder; +import com.azure.maps.render.AzureMapsRenderServiceClient; +import com.azure.maps.render.AzureMapsRenderServiceClientBuilder; + +public class SuccessfulTileRequest { + public static void main(String[] args) { + AzureMapsRenderServiceClient client = + new AzureMapsRenderServiceClientBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildClient(); + RequestOptions requestOptions = new RequestOptions(); + requestOptions.addQueryParam("x", 10); + requestOptions.addQueryParam("y", 22); + requestOptions.addQueryParam("zoom", 6); + requestOptions.addQueryParam("tilesetId", "microsoft.base"); + Response response = client.getMapTileWithResponse(requestOptions); + } +} diff --git a/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulTilesetRequest.java b/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulTilesetRequest.java new file mode 100644 index 000000000000..ae99c3cbed66 --- /dev/null +++ b/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulTilesetRequest.java @@ -0,0 +1,25 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.render.generated; + +import com.azure.core.http.rest.RequestOptions; +import com.azure.core.http.rest.Response; +import com.azure.core.util.BinaryData; +import com.azure.identity.DefaultAzureCredentialBuilder; +import com.azure.maps.render.AzureMapsRenderServiceClient; +import com.azure.maps.render.AzureMapsRenderServiceClientBuilder; + +public class SuccessfulTilesetRequest { + public static void main(String[] args) { + AzureMapsRenderServiceClient client = + new AzureMapsRenderServiceClientBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildClient(); + RequestOptions requestOptions = new RequestOptions(); + requestOptions.addQueryParam("tilesetId", "microsoft.base"); + Response response = client.getMapTilesetWithResponse(requestOptions); + } +} diff --git a/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulWorldCopyrightRequest.java b/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulWorldCopyrightRequest.java new file mode 100644 index 000000000000..1f56e1a42cd9 --- /dev/null +++ b/sdk/maps/azure-maps-render/src/samples/java/com/azure/maps/render/generated/SuccessfulWorldCopyrightRequest.java @@ -0,0 +1,24 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.render.generated; + +import com.azure.core.http.rest.RequestOptions; +import com.azure.core.http.rest.Response; +import com.azure.core.util.BinaryData; +import com.azure.identity.DefaultAzureCredentialBuilder; +import com.azure.maps.render.AzureMapsRenderServiceClient; +import com.azure.maps.render.AzureMapsRenderServiceClientBuilder; + +public class SuccessfulWorldCopyrightRequest { + public static void main(String[] args) { + AzureMapsRenderServiceClient client = + new AzureMapsRenderServiceClientBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildClient(); + RequestOptions requestOptions = new RequestOptions(); + Response response = client.getCopyrightForWorldWithResponse("json", requestOptions); + } +} diff --git a/sdk/maps/azure-maps-render/src/test/java/com/azure/maps/render/ClientTests.java b/sdk/maps/azure-maps-render/src/test/java/com/azure/maps/render/ClientTests.java new file mode 100644 index 000000000000..094de8fea8dc --- /dev/null +++ b/sdk/maps/azure-maps-render/src/test/java/com/azure/maps/render/ClientTests.java @@ -0,0 +1,50 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.render; + +import com.azure.core.credential.AccessToken; +import com.azure.core.http.HttpClient; +import com.azure.core.http.policy.HttpLogDetailLevel; +import com.azure.core.http.policy.HttpLogOptions; +import com.azure.core.test.TestBase; +import com.azure.core.test.TestMode; +import com.azure.core.test.annotation.DoNotRecord; +import com.azure.core.util.Configuration; +import com.azure.identity.DefaultAzureCredentialBuilder; +import java.time.OffsetDateTime; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import reactor.core.publisher.Mono; + +public final class ClientTests extends TestBase { + private AzureMapsRenderServiceClient azureMapsRenderServiceClient; + + @BeforeEach + public void setup() { + AzureMapsRenderServiceClientBuilder azureMapsRenderServiceClientbuilder = + new AzureMapsRenderServiceClientBuilder() + .host(Configuration.getGlobalConfiguration().get("HOST", "https://atlas.microsoft.com")) + .httpClient(HttpClient.createDefault()) + .httpLogOptions(new HttpLogOptions().setLogLevel(HttpLogDetailLevel.BASIC)); + if (getTestMode() == TestMode.PLAYBACK) { + azureMapsRenderServiceClientbuilder + .httpClient(interceptorManager.getPlaybackClient()) + .credential(request -> Mono.just(new AccessToken("this_is_a_token", OffsetDateTime.MAX))); + } else if (getTestMode() == TestMode.RECORD) { + azureMapsRenderServiceClientbuilder + .addPolicy(interceptorManager.getRecordPolicy()) + .credential(new DefaultAzureCredentialBuilder().build()); + } else if (getTestMode() == TestMode.LIVE) { + azureMapsRenderServiceClientbuilder.credential(new DefaultAzureCredentialBuilder().build()); + } + azureMapsRenderServiceClient = azureMapsRenderServiceClientbuilder.buildClient(); + } + + @Test + @DoNotRecord(skipInPlayback = true) + public void testClient() { + // use the builder to create client + } +} diff --git a/sdk/maps/azure-maps-render/swagger/README_SPEC.md b/sdk/maps/azure-maps-render/swagger/README_SPEC.md new file mode 100644 index 000000000000..6c80059176e0 --- /dev/null +++ b/sdk/maps/azure-maps-render/swagger/README_SPEC.md @@ -0,0 +1,25 @@ +## Generate autorest code + +```yaml +input-files: +- /home/vsts/work/1/s/azure-rest-api-specs/specification/maps/data-plane/Render/preview/2.1/render.json +output-folder: ../ +java: true +regenerate-pom: false +partial-update: true +generate-sync-async-clients: true +generate-client-as-impl: true +generate-client-interfaces: false +generate-builder-per-client: true +add-context-parameter: true +artifact-id: azure-maps-render +low-level-client: true +sync-methods: all +generate-samples: true +license-header: MICROSOFT_MIT_SMALL +namespace: com.azure.maps.render +context-client-method-parameter: true +azure-arm: false +service-versions: +- '2.1' +```