diff --git a/sdk/maps/azure-maps-weather/CHANGELOG.md b/sdk/maps/azure-maps-weather/CHANGELOG.md new file mode 100644 index 000000000000..2ee34d2549ef --- /dev/null +++ b/sdk/maps/azure-maps-weather/CHANGELOG.md @@ -0,0 +1,13 @@ +# Release History + +## 1.0.0-beta.1 (Unreleased) + +- Azure AzureMapsWeatherService client library for Java. This package contains Microsoft Azure AzureMapsWeatherService client library. + +### Features Added + +### Breaking Changes + +### Bugs Fixed + +### Other Changes diff --git a/sdk/maps/azure-maps-weather/README.md b/sdk/maps/azure-maps-weather/README.md new file mode 100644 index 000000000000..e71c06e2f2d6 --- /dev/null +++ b/sdk/maps/azure-maps-weather/README.md @@ -0,0 +1,63 @@ +# Azure AzureMapsWeatherService client library for Java + +Azure AzureMapsWeatherService client library for Java. + +This package contains Microsoft Azure AzureMapsWeatherService 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-weather;current}) +```xml + + com.azure + azure-maps-weather + 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.weather.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-weather/pom.xml b/sdk/maps/azure-maps-weather/pom.xml new file mode 100644 index 000000000000..fe0952d465a0 --- /dev/null +++ b/sdk/maps/azure-maps-weather/pom.xml @@ -0,0 +1,76 @@ + + 4.0.0 + + com.azure + azure-client-sdk-parent + 1.7.0 + ../../parents/azure-client-sdk-parent + + + com.azure + azure-maps-weather + 1.0.0-beta.1 + jar + + Microsoft Azure SDK for AzureMapsWeatherService Management + This package contains Microsoft Azure AzureMapsWeatherService 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 + false + + + + + + com.azure + azure-core + 1.22.0 + + + com.azure + azure-core-http-netty + 1.11.2 + + + org.junit.jupiter + junit-jupiter-engine + 5.7.2 + test + + + com.azure + azure-core-test + 1.7.4 + test + + + com.azure + azure-identity + 1.4.1 + test + + + diff --git a/sdk/maps/azure-maps-weather/src/main/java/com/azure/maps/weather/AzureMapsWeatherServiceAsyncClient.java b/sdk/maps/azure-maps-weather/src/main/java/com/azure/maps/weather/AzureMapsWeatherServiceAsyncClient.java new file mode 100644 index 000000000000..ef6c79ae8d05 --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/main/java/com/azure/maps/weather/AzureMapsWeatherServiceAsyncClient.java @@ -0,0 +1,1142 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.weather; + +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.weather.implementation.WeathersImpl; +import reactor.core.publisher.Mono; + +/** Initializes a new instance of the asynchronous AzureMapsWeatherService type. */ +@ServiceClient(builder = AzureMapsWeatherServiceBuilder.class, isAsync = true) +public final class AzureMapsWeatherServiceAsyncClient { + @Generated private final WeathersImpl serviceClient; + + /** + * Initializes an instance of Weathers client. + * + * @param serviceClient the service client implementation. + */ + @Generated + AzureMapsWeatherServiceAsyncClient(WeathersImpl serviceClient) { + this.serviceClient = serviceClient; + } + + /** + * **Get Hourly Forecast** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

Request detailed weather forecast by the hour for the next 1, 12, 24 (1 day), 72 (3 days), 120 (5 days), and + * 240 hours (10 days) for the given the given coordinate location. The API returns details such as temperature, + * humidity, wind, precipitation, and ultraviolet (UV) index. + * + *

In S0 you can request hourly forecast for the next 1, 12, 24 hours (1 day), and 72 hours (3 days). In S1 you + * can also request hourly forecast for the next 120 (5 days) and 240 hours (10 days). + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
durationStringNoTime frame of the returned weather forecast. By default, the forecast data for next hour will be returned. Available values are + * * `1` - Return forecast data for the next hour. Default value. + * * `12` - Return hourly forecast for next 12 hours. + * * `24` - Return hourly forecast for next 24 hours. + * * `72` - Return hourly forecast for next 72 hours (3 days). + * * `120` - Return hourly forecast for next 120 hours (5 days). Only available in S1 SKU. + * * `240` - Return hourly forecast for next 240 hours (10 days). Only available in S1 SKU.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     forecasts: [
+     *         {
+     *             dateTime: String
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             iconPhrase: String
+     *             hasPrecipitation: Boolean
+     *             isDaylight: Boolean
+     *             temperature: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             realFeelTemperature: (recursive schema, see realFeelTemperature above)
+     *             wetBulbTemperature: (recursive schema, see wetBulbTemperature above)
+     *             dewPoint: (recursive schema, see dewPoint above)
+     *             wind: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             windGust: (recursive schema, see windGust above)
+     *             relativeHumidity: Integer
+     *             visibility: (recursive schema, see visibility above)
+     *             cloudCeiling: (recursive schema, see cloudCeiling above)
+     *             uvIndex: Integer
+     *             uvIndexDescription: String
+     *             precipitationProbability: Integer
+     *             rainProbability: Integer
+     *             snowProbability: Integer
+     *             iceProbability: Integer
+     *             totalLiquid: (recursive schema, see totalLiquid above)
+     *             rain: (recursive schema, see rain above)
+     *             snow: (recursive schema, see snow above)
+     *             ice: (recursive schema, see ice above)
+     *             cloudCover: Integer
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getHourlyForecastWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getHourlyForecastWithResponseAsync(format, requestOptions); + } + + /** + * **Get Minute Forecast** + * + *

**Applies to**: S1 pricing tier. + * + *

Get Minute Forecast service returns minute-by-minute forecasts for a given location for the next 120 minutes. + * Users can request weather forecasts in the interval of 1, 5 and 15 minutes. The response will include details + * such as the type of precipitation (including rain, snow, or a mixture of both), start time, and precipitation + * intensity value (dBZ). + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
intervalStringNoSpecifies time interval in minutes for the returned weather forecast. Supported values are + * * `1` - Retrieve forecast for 1-minute intervals. Returned by default. + * * `5` - Retrieve forecasts for 5-minute intervals. + * * `15` - Retrieve forecasts for 15-minute intervals.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     summary: {
+     *         briefPhrase60: String
+     *         shortDescription: String
+     *         briefDescription: String
+     *         longPhrase: String
+     *         iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *     }
+     *     intervalSummaries: [
+     *         {
+     *             startMinute: Integer
+     *             endMinute: Integer
+     *             totalMinutes: Integer
+     *             shortDescription: String
+     *             briefDescription: String
+     *             longPhrase: String
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *         }
+     *     ]
+     *     intervals: [
+     *         {
+     *             startTime: String
+     *             minute: Integer
+     *             decibelRelativeToZ: Double
+     *             shortDescription: String
+     *             threshold: String
+     *             color: {
+     *                 red: Integer
+     *                 green: Integer
+     *                 blue: Integer
+     *                 hex: String
+     *             }
+     *             simplifiedColor: (recursive schema, see simplifiedColor above)
+     *             precipitationType: String(Rain/Snow/Ice/Mix)
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             cloudCover: Integer
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getMinuteForecastWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getMinuteForecastWithResponseAsync(format, requestOptions); + } + + /** + * **Get Quarter-Day Forecast** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

Service returns detailed weather forecast by quarter-day for the next 1, 5, 10, or 15 days for a given + * location. Response data is presented by quarters of the day - morning, afternoon, evening, and overnight. Details + * such as temperature, humidity, wind, precipitation, and UV index are returned. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
durationStringNoSpecifies for how many days the quester-day forecast responses are returned. Supported values are: + * * `1` - Return forecast data for the next day. Returned by default. + * * `5` - Return forecast data for the next 5 days. + * * `10` - Return forecast data for next 10 days. + * * `15` - Return forecast data for the next 15 days.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     forecasts: [
+     *         {
+     *             dateTime: String
+     *             effectiveDate: String
+     *             quarter: String(0/1/2/3)
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             iconPhrase: String
+     *             phrase: String
+     *             temperature: {
+     *                 minimum: {
+     *                     value: Float
+     *                     unitLabel: String
+     *                     unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *                 }
+     *                 maximum: (recursive schema, see maximum above)
+     *             }
+     *             realFeelTemperature: (recursive schema, see realFeelTemperature above)
+     *             dewPoint: (recursive schema, see dewPoint above)
+     *             relativeHumidity: Integer
+     *             wind: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             windGust: (recursive schema, see windGust above)
+     *             visibility: (recursive schema, see visibility above)
+     *             cloudCover: Integer
+     *             hasPrecipitation: Boolean
+     *             precipitationType: String(Rain/Snow/Ice/Mix)
+     *             precipitationIntensity: String
+     *             precipitationProbability: Integer
+     *             thunderstormProbability: Integer
+     *             totalLiquid: (recursive schema, see totalLiquid above)
+     *             rain: (recursive schema, see rain above)
+     *             snow: (recursive schema, see snow above)
+     *             ice: (recursive schema, see ice above)
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getQuarterDayForecastWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getQuarterDayForecastWithResponseAsync(format, requestOptions); + } + + /** + * **Get Current Conditions** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

Get Current Conditions service returns detailed current weather conditions such as precipitation, temperature + * and wind for a given coordinate location. Also, observations from the past 6 or 24 hours for a particular + * location can be retrieved. The basic information returned with the response include details such as observation + * date and time, brief description of the weather conditions, weather icon, precipitation indicator flags, and + * temperature. Additional details such as RealFeel™ Temperature and UV index are also returned. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
detailsStringNoReturn full details for the current conditions. Available values are + * * `true` - Returns full details. By default all details are returned. + * * `false` - Returns a truncated version of the current condition data, which includes observation date time, weather phrase, icon code, precipitation indicator flag, and temperature.
durationStringNoTime frame of the returned weather conditions. By default, the most current weather conditions will be returned. Default value is 0. Supported values are: + * * `0` - Return the most current weather conditions. + * * `6` - Return weather conditions from past 6 hours. + * * `24` - Return weather conditions from past 24 hours.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             dateTime: String
+     *             description: String
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             hasPrecipitation: Boolean
+     *             isDaytime: Boolean
+     *             temperature: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             realFeelTemperature: (recursive schema, see realFeelTemperature above)
+     *             realFeelTemperatureShade: (recursive schema, see realFeelTemperatureShade above)
+     *             relativeHumidity: Integer
+     *             dewPoint: (recursive schema, see dewPoint above)
+     *             wind: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             windGust: (recursive schema, see windGust above)
+     *             uvIndex: Integer
+     *             uvIndexDescription: String
+     *             visibility: (recursive schema, see visibility above)
+     *             obstructionsToVisibility: String
+     *             cloudCover: Integer
+     *             cloudCeiling: (recursive schema, see cloudCeiling above)
+     *             pressure: (recursive schema, see pressure above)
+     *             pressureTendency: {
+     *                 description: String
+     *                 code: String
+     *             }
+     *             pastTwentyFourHourTemperatureDeparture: (recursive schema, see pastTwentyFourHourTemperatureDeparture above)
+     *             apparentTemperature: (recursive schema, see apparentTemperature above)
+     *             windChillTemperature: (recursive schema, see windChillTemperature above)
+     *             wetBulbTemperature: (recursive schema, see wetBulbTemperature above)
+     *             precipitationSummary: {
+     *                 pastHour: (recursive schema, see pastHour above)
+     *                 pastThreeHours: (recursive schema, see pastThreeHours above)
+     *                 pastSixHours: (recursive schema, see pastSixHours above)
+     *                 pastNineHours: (recursive schema, see pastNineHours above)
+     *                 pastTwelveHours: (recursive schema, see pastTwelveHours above)
+     *                 pastEighteenHours: (recursive schema, see pastEighteenHours above)
+     *                 pastTwentyFourHours: (recursive schema, see pastTwentyFourHours above)
+     *             }
+     *             temperatureSummary: {
+     *                 pastSixHours: {
+     *                     minimum: (recursive schema, see minimum above)
+     *                     maximum: (recursive schema, see maximum above)
+     *                 }
+     *                 pastTwelveHours: (recursive schema, see pastTwelveHours above)
+     *                 pastTwentyFourHours: (recursive schema, see pastTwentyFourHours above)
+     *             }
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getCurrentConditionsWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getCurrentConditionsWithResponseAsync(format, requestOptions); + } + + /** + * **Get Daily Forecast** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

The service returns detailed weather forecast such as temperature and wind by day for the next 1, 5, 10, 15, + * 25, or 45 days for a given coordinate location. The response include details such as temperature, wind, + * precipitation, air quality, and UV index. + * + *

In S0 you can request daily forecast for the next 1, 5, 10, and 15 days. In S1 you can also request daily + * forecast for the next 25 days, and 45 days. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
durationStringNoSpecifies for how many days the daily forecast responses are returned. Available values are + * * `1` - Return forecast data for the next day. Returned by default. + * * `5` - Return forecast data for the next 5 days. + * * `10` - Return forecast data for the next 10 days. + * * `25` - Return forecast data for the next 25 days. Only available in S1 SKU. + * * `45` - Return forecast data for the next 45 days. Only available in S1 SKU.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     summary: {
+     *         startDate: String
+     *         endDate: String
+     *         severity: Integer
+     *         phrase: String
+     *         category: String
+     *     }
+     *     forecasts: [
+     *         {
+     *             dateTime: String
+     *             temperature: {
+     *                 minimum: {
+     *                     value: Float
+     *                     unitLabel: String
+     *                     unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *                 }
+     *                 maximum: (recursive schema, see maximum above)
+     *             }
+     *             realFeelTemperature: (recursive schema, see realFeelTemperature above)
+     *             realFeelTemperatureShade: (recursive schema, see realFeelTemperatureShade above)
+     *             hoursOfSun: Float
+     *             meanTemperatureDeviation: {
+     *                 heating: (recursive schema, see heating above)
+     *                 cooling: (recursive schema, see cooling above)
+     *             }
+     *             airQuality: [
+     *                 {
+     *                     description: String
+     *                     value: Integer
+     *                     category: String
+     *                     categoryValue: Integer
+     *                     airQualityType: String
+     *                 }
+     *             ]
+     *             daytimeForecast: {
+     *                 iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *                 iconPhrase: String
+     *                 localSource: {
+     *                     id: Integer
+     *                     name: String
+     *                     weatherCode: String
+     *                 }
+     *                 hasPrecipitation: Boolean
+     *                 precipitationType: String(Rain/Snow/Ice/Mix)
+     *                 precipitationIntensity: String
+     *                 shortDescription: String
+     *                 longPhrase: String
+     *                 precipitationProbability: Integer
+     *                 thunderstormProbability: Integer
+     *                 rainProbability: Integer
+     *                 snowProbability: Integer
+     *                 iceProbability: Integer
+     *                 wind: {
+     *                     direction: {
+     *                         degrees: Integer
+     *                         description: String
+     *                     }
+     *                     speed: (recursive schema, see speed above)
+     *                 }
+     *                 windGust: (recursive schema, see windGust above)
+     *                 totalLiquid: (recursive schema, see totalLiquid above)
+     *                 rain: (recursive schema, see rain above)
+     *                 snow: (recursive schema, see snow above)
+     *                 ice: (recursive schema, see ice above)
+     *                 hoursOfPrecipitation: Float
+     *                 hoursOfRain: Float
+     *                 hoursOfSnow: Float
+     *                 hoursOfIce: Float
+     *                 cloudCover: Integer
+     *             }
+     *             nighttimeForecast: (recursive schema, see nighttimeForecast above)
+     *             sources: [
+     *                 String
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getDailyForecastWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getDailyForecastWithResponseAsync(format, requestOptions); + } + + /** + * **Get Weather along route** + * + *

**Applies to**: S1 pricing tier. + * + *

Weather along a route API returns hyper local (one kilometer or less), up-to-the-minute weather nowcasts, + * weather hazard assessments, and notifications along a route described as a sequence of waypoints. This includes a + * list of weather hazards affecting the waypoint or route, and the aggregated hazard index for each waypoint might + * be used to paint each portion of a route according to how safe it is for the driver. When submitting the + * waypoints, it is recommended to stay within, or close to, the distance that can be traveled within 120-mins or + * shortly after. Data is updated every five minutes. + * + *

The service supplements Azure Maps [Route Service](https://docs.microsoft.com/rest/api/maps/route) that allows + * you to first request a route between an origin and a destination and use that as an input for Weather Along Route + * endpoint. + * + *

In addition, the service supports scenarios to generate weather notifications for waypoints that experience an + * increase in intensity of a weather hazard. For example, if the vehicle is expected to begin experiencing heavy + * rain as it reaches a waypoint, a weather notification for heavy rain will be generated for that waypoint allowing + * the end product to display a heavy rain notification before the driver reaches that waypoint. The trigger for + * when to display the notification for a waypoint could be based, for example, on a + * [geofence](https://docs.microsoft.com/azure/azure-maps/tutorial-iot-hub-maps), or selectable distance to the + * waypoint. + * + *

The API covers all regions of the planet except latitudes above Greenland and Antarctica. + * + *

Query Parameters + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
queryStringYesCoordinates through which the route is calculated, separated by colon (:) and entered in chronological order. A minimum of two waypoints is required. A single API call may contain up to 60 waypoints. + * A waypoint indicates location, ETA, and optional heading: latitude,longitude,ETA,heading, where + * * `Latitude` - Latitude coordinate in decimal degrees. + * * `Longitude` - Longitude coordinate in decimal degrees. + * * `ETA (estimated time of arrival)` - The number of minutes from the present time that it will take for the vehicle to reach the waypoint. Allowed range is from 0.0 to 120.0 minutes. + * * `Heading` - An optional value indicating the vehicle heading as it passes the waypoint. Expressed in clockwise degrees relative to true north. This is issued to calculate sun glare as a driving hazard. Allowed range is from 0.0 to 360.0 degrees. If not provided, a heading will automatically be derived based on the position of neighboring waypoints. + * + * It is recommended to stay within, or close to, the distance that can be traveled within 120-mins or shortly after. This way a more accurate assessment can be provided for the trip and prevent isolated events not being captured between waypoints. Information can and should be updated along the route (especially for trips greater than 2 hours) to continuously pull new waypoints moving forward, but also to ensure that forecast information for content such as precipitation type and intensity is accurate as storms develop and dissipate over time.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     summary: {
+     *         iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *         hazards: {
+     *             maxHazardIndex: String(0/1/2/3/4)
+     *             details: [
+     *                 {
+     *                     hazardIndex: String(0/1/2/3/4)
+     *                     hazardCode: String
+     *                     shortDescription: String
+     *                 }
+     *             ]
+     *         }
+     *     }
+     *     waypoints: [
+     *         {
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             shortDescription: String
+     *             isDaytime: Boolean
+     *             cloudCover: Integer
+     *             temperature: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             wind: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             windGust: (recursive schema, see windGust above)
+     *             precipitation: {
+     *                 dbz: Double
+     *                 type: String
+     *             }
+     *             lightningCount: Integer
+     *             sunGlare: {
+     *                 calculatedVehicleHeading: Integer
+     *                 glareIndex: Integer
+     *             }
+     *             hazards: (recursive schema, see hazards above)
+     *             notifications: [
+     *                 {
+     *                     type: String
+     *                     hazardIndex: String(0/1/2/3/4)
+     *                     hazardCode: String
+     *                     shortDescription: String
+     *                 }
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return this object is returned from a successful Weather Along Route. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getWeatherAlongRouteWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getWeatherAlongRouteWithResponseAsync(format, requestOptions); + } + + /** + * **Get Severe Weather Alerts** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

Severe weather phenomenon can significantly impact our everyday life and business operations. For example, + * severe weather conditions such as tropical storms, high winds or flooding can close roads and force logistics + * companies to reroute their fleet causing delays in reaching destinations and breaking the cold chain of + * refrigerated food products.  Azure Maps Severe Weather Alerts API returns the severe weather alerts that are + * available worldwide from both official Government Meteorological Agencies and leading global to + * regional weather alert providers. The service can return details such as alert type, category, level and detailed + * description about the active severe alerts for the requested location, like hurricanes, thunderstorms, lightning, + * heat waves or forest fires. + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
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.
detailsStringNoReturn full details for the severe weather alerts. Available values are + * * `true` - Returns full details. By default all details are returned. + * * `false` - Returns a truncated version of the alerts data, which excludes the area-specific full description of alert details (`alertDetails`).
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             countryCode: String
+     *             alertId: Integer
+     *             description: {
+     *                 description: String
+     *                 status: String
+     *             }
+     *             category: String
+     *             priority: Integer
+     *             classification: String
+     *             level: String
+     *             source: String
+     *             sourceId: Integer
+     *             disclaimer: String
+     *             alertDetails: [
+     *                 {
+     *                     name: String
+     *                     description: String
+     *                     startTime: String
+     *                     endTime: String
+     *                     latestStatus: {
+     *                         localized: String
+     *                         english: String(New/Extend/Cancel/Correct/Expire/Upgrade/Continue/Update)
+     *                     }
+     *                     details: String
+     *                     language: String
+     *                 }
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return this object is returned from a successful Get Severe Weather Alerts call. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getSevereWeatherAlertsWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getSevereWeatherAlertsWithResponseAsync(format, requestOptions); + } + + /** + * **Get Daily Indices** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

There may be times when you want to know if the weather conditions are optimal for a specific activity, for + * example, for outdoor construction, indoor activities, running or farming including soil moisture information. + * Azure Maps Indices API returns index values that will guide end users to plan future activities. For example, a + * health mobile application can notify users that today is good weather for running or for other outdoors + * activities like for playing golf, and retail stores can optimize their digital marketing campaigns based on + * predicted index values. The service returns in daily indices values for current and next 5, 10 and 15 days + * starting from current day. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
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.
durationStringNoSpecifies for how many days the daily indices are returned. By default, the indices data for the current day will be returned. When requesting future indices data, the current day is included in the response as day 1. Available values are + * * `1` - Return daily index data for the current day. Default value. + * * `5` - Return 5 days of daily index data starting from the current day. + * * `10` - Return 10 days of daily index data starting from the current day. + * * `15` - Return 15 days of daily index data starting from the current day.
indexIdStringNoNumeric index identifier that can be used for restricting returned results to the corresponding index type. Cannot be paired with `indexGroupId`. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details and to see the supported indices.
indexGroupIdStringNoNumeric index group identifier that can be used for restricting returned results to the corresponding subset of indices (index group). Cannot be paired with `indexId`. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details and to see the supported index groups.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             indexName: String
+     *             indexId: Integer
+     *             dateTime: String
+     *             value: Float
+     *             categoryDescription: String
+     *             categoryValue: Integer
+     *             isAscending: Boolean
+     *             description: String
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return this object is returned from a successful Get Daily Indices call. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getDailyIndicesWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getDailyIndicesWithResponseAsync(format, requestOptions); + } + + /** + * **Get Tropical Active Storms** + * + *

**Applies to**: Gen 1 (S0 and S1) and Gen 2 pricing tiers. + * + *

Get all government-issued active tropical storms. Information about the tropical storms includes, government + * ID, basin ID, year of origin, name and if it is subtropical. + * + *

Query Parameters + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             year: String
+     *             basinId: String(AL/EP/SI/NI/CP/NP/SP)
+     *             name: String
+     *             isActive: Boolean
+     *             isSubtropical: Boolean
+     *             govId: Integer
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return all government-issued active storms. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getTropicalActiveStormsWithResponse( + String format, RequestOptions requestOptions) { + return this.serviceClient.getTropicalActiveStormsWithResponseAsync(format, requestOptions); + } + + /** + * **Get Tropical Storm Search** + * + *

**Applies to**: Gen 1 (S0 and S1) and Gen 2 pricing tiers. + * + *

Search government-issued tropical storms by year, basin ID, and government ID. Information about the tropical + * storms includes, government ID, basin ID, status, year, name and if it is subtropical. + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
yearintYesYear of the cyclone(s)
basinIdStringNoBasin identifier
govIdStringNoGovernment storm Id
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             year: String
+     *             basinId: String(AL/EP/SI/NI/CP/NP/SP)
+     *             name: String
+     *             isActive: Boolean
+     *             isRetired: Boolean
+     *             isSubtropical: Boolean
+     *             govId: Integer
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return search government-issued storms. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getTropicalStormSearchWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getTropicalStormSearchWithResponseAsync(format, requestOptions); + } + + /** + * **Get Tropical Storm Forecasts** + * + *

**Applies to**: Gen 1 (S0 and S1) and Gen 2 pricing tiers. + * + *

Get all government-issued tropical storm forecasts. Information about the forecasted tropical storms includes, + * location, status, date the forecast was created, window, wind speed and wind radii. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
yearintYesYear of the cyclone(s)
basinIdStringYesBasin identifier
govIdintYesGovernment storm Id
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
detailsStringNoWhen true, wind radii summary data is included in the response
radiiGeometryStringNoWhen true, wind radii summary data and geoJSON details are included in the response
windowGeometryStringNoWhen true, window geometry data (geoJSON) is included in the response
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             dateTime: String
+     *             initializedDateTime: String
+     *             location: {
+     *                 latitude: Double
+     *                 longitude: Double
+     *             }
+     *             maxWindGust: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             sustainedWind: (recursive schema, see sustainedWind above)
+     *             status: String
+     *             window: {
+     *                 left: (recursive schema, see left above)
+     *                 right: (recursive schema, see right above)
+     *                 beginDateTime: String
+     *                 endDateTime: String
+     *                 beginStatus: String
+     *                 endStatus: String
+     *                 geometry: {
+     *                 }
+     *             }
+     *             windRadiiSummary: [
+     *                 {
+     *                     dateTime: String
+     *                     windSpeed: (recursive schema, see windSpeed above)
+     *                     radiusSectorData: [
+     *                         {
+     *                             beginBearing: Double
+     *                             endBearing: Double
+     *                             range: Double
+     *                         }
+     *                     ]
+     *                     radiiGeometry: (recursive schema, see radiiGeometry above)
+     *                 }
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the list of Government-issued forecasts. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getTropicalStormForecastWithResponse( + String format, RequestOptions requestOptions) { + return this.serviceClient.getTropicalStormForecastWithResponseAsync(format, requestOptions); + } + + /** + * **Get Tropical Storm Locations** + * + *

**Applies to**: Gen 1 (S0 and S1) and Gen 2 pricing tiers. + * + *

Get locations of an individual government-issued tropical storms. Information about the tropical storms + * includes, location coordinates, geometry, basin ID, date, wind details and wind radii. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
yearintYesYear of the cyclone(s)
basinIdStringYesBasin identifier
govIdintYesGovernment storm Id
detailsStringNoWhen true, wind radii summary data is included in the response
radiiGeometryStringNoWhen true, wind radii summary data and geoJSON details are included in the response
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
currentStringNoWhen true, return the current storm location
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             dateTime: String
+     *             location: {
+     *                 latitude: Double
+     *                 longitude: Double
+     *             }
+     *             maxWindGust: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             sustainedWind: (recursive schema, see sustainedWind above)
+     *             minimumPressure: (recursive schema, see minimumPressure above)
+     *             movement: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             status: String
+     *             isSubtropical: Boolean
+     *             hasTropicalPotential: Boolean
+     *             isPostTropical: Boolean
+     *             windRadiiSummary: [
+     *                 {
+     *                     dateTime: String
+     *                     windSpeed: (recursive schema, see windSpeed above)
+     *                     radiusSectorData: [
+     *                         {
+     *                             beginBearing: Double
+     *                             endBearing: Double
+     *                             range: Double
+     *                         }
+     *                     ]
+     *                     radiiGeometry: {
+     *                     }
+     *                 }
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return locations for an individual government-issued storm. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getTropicalStormLocationsWithResponse( + String format, RequestOptions requestOptions) { + return this.serviceClient.getTropicalStormLocationsWithResponseAsync(format, requestOptions); + } +} diff --git a/sdk/maps/azure-maps-weather/src/main/java/com/azure/maps/weather/AzureMapsWeatherServiceBuilder.java b/sdk/maps/azure-maps-weather/src/main/java/com/azure/maps/weather/AzureMapsWeatherServiceBuilder.java new file mode 100644 index 000000000000..f5b617a4aea8 --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/main/java/com/azure/maps/weather/AzureMapsWeatherServiceBuilder.java @@ -0,0 +1,317 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.weather; + +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.weather.implementation.AzureMapsWeatherServiceImpl; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +/** A builder for creating a new instance of the AzureMapsWeatherService type. */ +@ServiceClientBuilder(serviceClients = {AzureMapsWeatherServiceClient.class, AzureMapsWeatherServiceAsyncClient.class}) +public final class AzureMapsWeatherServiceBuilder { + private static final String SDK_NAME = "name"; + + private static final String SDK_VERSION = "version"; + + static final String[] DEFAULT_SCOPES = new String[] {"https://maps.azure.com/.default"}; + + private final Map properties = new HashMap<>(); + + /** Create an instance of the AzureMapsWeatherServiceBuilder. */ + public AzureMapsWeatherServiceBuilder() { + 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. + */ + 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 AzureMapsWeatherServiceBuilder. + */ + public AzureMapsWeatherServiceBuilder clientId(String clientId) { + this.clientId = clientId; + return this; + } + + /* + * server parameter + */ + private String host; + + /** + * Sets server parameter. + * + * @param host the host value. + * @return the AzureMapsWeatherServiceBuilder. + */ + public AzureMapsWeatherServiceBuilder host(String host) { + this.host = host; + return this; + } + + /* + * Service version + */ + private AzureMapsWeatherServiceVersion serviceVersion; + + /** + * Sets Service version. + * + * @param serviceVersion the serviceVersion value. + * @return the AzureMapsWeatherServiceBuilder. + */ + public AzureMapsWeatherServiceBuilder serviceVersion(AzureMapsWeatherServiceVersion serviceVersion) { + this.serviceVersion = serviceVersion; + return this; + } + + /* + * The HTTP pipeline to send requests through + */ + private HttpPipeline pipeline; + + /** + * Sets The HTTP pipeline to send requests through. + * + * @param pipeline the pipeline value. + * @return the AzureMapsWeatherServiceBuilder. + */ + public AzureMapsWeatherServiceBuilder pipeline(HttpPipeline pipeline) { + this.pipeline = pipeline; + return this; + } + + /* + * The HTTP client used to send the request. + */ + private HttpClient httpClient; + + /** + * Sets The HTTP client used to send the request. + * + * @param httpClient the httpClient value. + * @return the AzureMapsWeatherServiceBuilder. + */ + public AzureMapsWeatherServiceBuilder httpClient(HttpClient httpClient) { + this.httpClient = httpClient; + return this; + } + + /* + * The configuration store that is used during construction of the service + * client. + */ + private Configuration configuration; + + /** + * Sets The configuration store that is used during construction of the service client. + * + * @param configuration the configuration value. + * @return the AzureMapsWeatherServiceBuilder. + */ + public AzureMapsWeatherServiceBuilder configuration(Configuration configuration) { + this.configuration = configuration; + return this; + } + + /* + * The TokenCredential used for authentication. + */ + private TokenCredential tokenCredential; + + /** + * Sets The TokenCredential used for authentication. + * + * @param tokenCredential the tokenCredential value. + * @return the AzureMapsWeatherServiceBuilder. + */ + public AzureMapsWeatherServiceBuilder credential(TokenCredential tokenCredential) { + this.tokenCredential = tokenCredential; + return this; + } + + /* + * The logging configuration for HTTP requests and responses. + */ + private HttpLogOptions httpLogOptions; + + /** + * Sets The logging configuration for HTTP requests and responses. + * + * @param httpLogOptions the httpLogOptions value. + * @return the AzureMapsWeatherServiceBuilder. + */ + public AzureMapsWeatherServiceBuilder httpLogOptions(HttpLogOptions httpLogOptions) { + this.httpLogOptions = httpLogOptions; + return this; + } + + /* + * The retry policy that will attempt to retry failed requests, if + * applicable. + */ + private RetryPolicy retryPolicy; + + /** + * Sets The retry policy that will attempt to retry failed requests, if applicable. + * + * @param retryPolicy the retryPolicy value. + * @return the AzureMapsWeatherServiceBuilder. + */ + public AzureMapsWeatherServiceBuilder retryPolicy(RetryPolicy retryPolicy) { + this.retryPolicy = retryPolicy; + return this; + } + + /* + * The list of Http pipeline policies to add. + */ + private final List pipelinePolicies; + + /* + * The client options such as application ID and custom headers to set on a + * request. + */ + 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 AzureMapsWeatherServiceBuilder. + */ + public AzureMapsWeatherServiceBuilder 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 AzureMapsWeatherServiceBuilder. + */ + public AzureMapsWeatherServiceBuilder addPolicy(HttpPipelinePolicy customPolicy) { + pipelinePolicies.add(customPolicy); + return this; + } + + /** + * Builds an instance of AzureMapsWeatherServiceImpl with the provided parameters. + * + * @return an instance of AzureMapsWeatherServiceImpl. + */ + private AzureMapsWeatherServiceImpl buildInnerClient() { + if (host == null) { + this.host = "https://atlas.microsoft.com"; + } + if (serviceVersion == null) { + this.serviceVersion = AzureMapsWeatherServiceVersion.getLatest(); + } + if (pipeline == null) { + this.pipeline = createHttpPipeline(); + } + AzureMapsWeatherServiceImpl client = + new AzureMapsWeatherServiceImpl( + pipeline, JacksonAdapter.createDefaultSerializerAdapter(), clientId, host, serviceVersion); + return client; + } + + 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 AzureMapsWeatherServiceAsyncClient async client. + * + * @return an instance of AzureMapsWeatherServiceAsyncClient. + */ + public AzureMapsWeatherServiceAsyncClient buildAsyncClient() { + return new AzureMapsWeatherServiceAsyncClient(buildInnerClient().getWeathers()); + } + + /** + * Builds an instance of AzureMapsWeatherServiceClient sync client. + * + * @return an instance of AzureMapsWeatherServiceClient. + */ + public AzureMapsWeatherServiceClient buildClient() { + return new AzureMapsWeatherServiceClient(buildInnerClient().getWeathers()); + } +} diff --git a/sdk/maps/azure-maps-weather/src/main/java/com/azure/maps/weather/AzureMapsWeatherServiceClient.java b/sdk/maps/azure-maps-weather/src/main/java/com/azure/maps/weather/AzureMapsWeatherServiceClient.java new file mode 100644 index 000000000000..007af0c84c8b --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/main/java/com/azure/maps/weather/AzureMapsWeatherServiceClient.java @@ -0,0 +1,1138 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.weather; + +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.weather.implementation.WeathersImpl; + +/** Initializes a new instance of the synchronous AzureMapsWeatherService type. */ +@ServiceClient(builder = AzureMapsWeatherServiceBuilder.class) +public final class AzureMapsWeatherServiceClient { + @Generated private final WeathersImpl serviceClient; + + /** + * Initializes an instance of Weathers client. + * + * @param serviceClient the service client implementation. + */ + @Generated + AzureMapsWeatherServiceClient(WeathersImpl serviceClient) { + this.serviceClient = serviceClient; + } + + /** + * **Get Hourly Forecast** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

Request detailed weather forecast by the hour for the next 1, 12, 24 (1 day), 72 (3 days), 120 (5 days), and + * 240 hours (10 days) for the given the given coordinate location. The API returns details such as temperature, + * humidity, wind, precipitation, and ultraviolet (UV) index. + * + *

In S0 you can request hourly forecast for the next 1, 12, 24 hours (1 day), and 72 hours (3 days). In S1 you + * can also request hourly forecast for the next 120 (5 days) and 240 hours (10 days). + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
durationStringNoTime frame of the returned weather forecast. By default, the forecast data for next hour will be returned. Available values are + * * `1` - Return forecast data for the next hour. Default value. + * * `12` - Return hourly forecast for next 12 hours. + * * `24` - Return hourly forecast for next 24 hours. + * * `72` - Return hourly forecast for next 72 hours (3 days). + * * `120` - Return hourly forecast for next 120 hours (5 days). Only available in S1 SKU. + * * `240` - Return hourly forecast for next 240 hours (10 days). Only available in S1 SKU.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     forecasts: [
+     *         {
+     *             dateTime: String
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             iconPhrase: String
+     *             hasPrecipitation: Boolean
+     *             isDaylight: Boolean
+     *             temperature: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             realFeelTemperature: (recursive schema, see realFeelTemperature above)
+     *             wetBulbTemperature: (recursive schema, see wetBulbTemperature above)
+     *             dewPoint: (recursive schema, see dewPoint above)
+     *             wind: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             windGust: (recursive schema, see windGust above)
+     *             relativeHumidity: Integer
+     *             visibility: (recursive schema, see visibility above)
+     *             cloudCeiling: (recursive schema, see cloudCeiling above)
+     *             uvIndex: Integer
+     *             uvIndexDescription: String
+     *             precipitationProbability: Integer
+     *             rainProbability: Integer
+     *             snowProbability: Integer
+     *             iceProbability: Integer
+     *             totalLiquid: (recursive schema, see totalLiquid above)
+     *             rain: (recursive schema, see rain above)
+     *             snow: (recursive schema, see snow above)
+     *             ice: (recursive schema, see ice above)
+     *             cloudCover: Integer
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getHourlyForecastWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getHourlyForecastWithResponse(format, requestOptions); + } + + /** + * **Get Minute Forecast** + * + *

**Applies to**: S1 pricing tier. + * + *

Get Minute Forecast service returns minute-by-minute forecasts for a given location for the next 120 minutes. + * Users can request weather forecasts in the interval of 1, 5 and 15 minutes. The response will include details + * such as the type of precipitation (including rain, snow, or a mixture of both), start time, and precipitation + * intensity value (dBZ). + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
intervalStringNoSpecifies time interval in minutes for the returned weather forecast. Supported values are + * * `1` - Retrieve forecast for 1-minute intervals. Returned by default. + * * `5` - Retrieve forecasts for 5-minute intervals. + * * `15` - Retrieve forecasts for 15-minute intervals.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     summary: {
+     *         briefPhrase60: String
+     *         shortDescription: String
+     *         briefDescription: String
+     *         longPhrase: String
+     *         iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *     }
+     *     intervalSummaries: [
+     *         {
+     *             startMinute: Integer
+     *             endMinute: Integer
+     *             totalMinutes: Integer
+     *             shortDescription: String
+     *             briefDescription: String
+     *             longPhrase: String
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *         }
+     *     ]
+     *     intervals: [
+     *         {
+     *             startTime: String
+     *             minute: Integer
+     *             decibelRelativeToZ: Double
+     *             shortDescription: String
+     *             threshold: String
+     *             color: {
+     *                 red: Integer
+     *                 green: Integer
+     *                 blue: Integer
+     *                 hex: String
+     *             }
+     *             simplifiedColor: (recursive schema, see simplifiedColor above)
+     *             precipitationType: String(Rain/Snow/Ice/Mix)
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             cloudCover: Integer
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getMinuteForecastWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getMinuteForecastWithResponse(format, requestOptions); + } + + /** + * **Get Quarter-Day Forecast** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

Service returns detailed weather forecast by quarter-day for the next 1, 5, 10, or 15 days for a given + * location. Response data is presented by quarters of the day - morning, afternoon, evening, and overnight. Details + * such as temperature, humidity, wind, precipitation, and UV index are returned. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
durationStringNoSpecifies for how many days the quester-day forecast responses are returned. Supported values are: + * * `1` - Return forecast data for the next day. Returned by default. + * * `5` - Return forecast data for the next 5 days. + * * `10` - Return forecast data for next 10 days. + * * `15` - Return forecast data for the next 15 days.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     forecasts: [
+     *         {
+     *             dateTime: String
+     *             effectiveDate: String
+     *             quarter: String(0/1/2/3)
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             iconPhrase: String
+     *             phrase: String
+     *             temperature: {
+     *                 minimum: {
+     *                     value: Float
+     *                     unitLabel: String
+     *                     unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *                 }
+     *                 maximum: (recursive schema, see maximum above)
+     *             }
+     *             realFeelTemperature: (recursive schema, see realFeelTemperature above)
+     *             dewPoint: (recursive schema, see dewPoint above)
+     *             relativeHumidity: Integer
+     *             wind: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             windGust: (recursive schema, see windGust above)
+     *             visibility: (recursive schema, see visibility above)
+     *             cloudCover: Integer
+     *             hasPrecipitation: Boolean
+     *             precipitationType: String(Rain/Snow/Ice/Mix)
+     *             precipitationIntensity: String
+     *             precipitationProbability: Integer
+     *             thunderstormProbability: Integer
+     *             totalLiquid: (recursive schema, see totalLiquid above)
+     *             rain: (recursive schema, see rain above)
+     *             snow: (recursive schema, see snow above)
+     *             ice: (recursive schema, see ice above)
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getQuarterDayForecastWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getQuarterDayForecastWithResponse(format, requestOptions); + } + + /** + * **Get Current Conditions** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

Get Current Conditions service returns detailed current weather conditions such as precipitation, temperature + * and wind for a given coordinate location. Also, observations from the past 6 or 24 hours for a particular + * location can be retrieved. The basic information returned with the response include details such as observation + * date and time, brief description of the weather conditions, weather icon, precipitation indicator flags, and + * temperature. Additional details such as RealFeel™ Temperature and UV index are also returned. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
detailsStringNoReturn full details for the current conditions. Available values are + * * `true` - Returns full details. By default all details are returned. + * * `false` - Returns a truncated version of the current condition data, which includes observation date time, weather phrase, icon code, precipitation indicator flag, and temperature.
durationStringNoTime frame of the returned weather conditions. By default, the most current weather conditions will be returned. Default value is 0. Supported values are: + * * `0` - Return the most current weather conditions. + * * `6` - Return weather conditions from past 6 hours. + * * `24` - Return weather conditions from past 24 hours.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             dateTime: String
+     *             description: String
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             hasPrecipitation: Boolean
+     *             isDaytime: Boolean
+     *             temperature: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             realFeelTemperature: (recursive schema, see realFeelTemperature above)
+     *             realFeelTemperatureShade: (recursive schema, see realFeelTemperatureShade above)
+     *             relativeHumidity: Integer
+     *             dewPoint: (recursive schema, see dewPoint above)
+     *             wind: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             windGust: (recursive schema, see windGust above)
+     *             uvIndex: Integer
+     *             uvIndexDescription: String
+     *             visibility: (recursive schema, see visibility above)
+     *             obstructionsToVisibility: String
+     *             cloudCover: Integer
+     *             cloudCeiling: (recursive schema, see cloudCeiling above)
+     *             pressure: (recursive schema, see pressure above)
+     *             pressureTendency: {
+     *                 description: String
+     *                 code: String
+     *             }
+     *             pastTwentyFourHourTemperatureDeparture: (recursive schema, see pastTwentyFourHourTemperatureDeparture above)
+     *             apparentTemperature: (recursive schema, see apparentTemperature above)
+     *             windChillTemperature: (recursive schema, see windChillTemperature above)
+     *             wetBulbTemperature: (recursive schema, see wetBulbTemperature above)
+     *             precipitationSummary: {
+     *                 pastHour: (recursive schema, see pastHour above)
+     *                 pastThreeHours: (recursive schema, see pastThreeHours above)
+     *                 pastSixHours: (recursive schema, see pastSixHours above)
+     *                 pastNineHours: (recursive schema, see pastNineHours above)
+     *                 pastTwelveHours: (recursive schema, see pastTwelveHours above)
+     *                 pastEighteenHours: (recursive schema, see pastEighteenHours above)
+     *                 pastTwentyFourHours: (recursive schema, see pastTwentyFourHours above)
+     *             }
+     *             temperatureSummary: {
+     *                 pastSixHours: {
+     *                     minimum: (recursive schema, see minimum above)
+     *                     maximum: (recursive schema, see maximum above)
+     *                 }
+     *                 pastTwelveHours: (recursive schema, see pastTwelveHours above)
+     *                 pastTwentyFourHours: (recursive schema, see pastTwentyFourHours above)
+     *             }
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getCurrentConditionsWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getCurrentConditionsWithResponse(format, requestOptions); + } + + /** + * **Get Daily Forecast** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

The service returns detailed weather forecast such as temperature and wind by day for the next 1, 5, 10, 15, + * 25, or 45 days for a given coordinate location. The response include details such as temperature, wind, + * precipitation, air quality, and UV index. + * + *

In S0 you can request daily forecast for the next 1, 5, 10, and 15 days. In S1 you can also request daily + * forecast for the next 25 days, and 45 days. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
durationStringNoSpecifies for how many days the daily forecast responses are returned. Available values are + * * `1` - Return forecast data for the next day. Returned by default. + * * `5` - Return forecast data for the next 5 days. + * * `10` - Return forecast data for the next 10 days. + * * `25` - Return forecast data for the next 25 days. Only available in S1 SKU. + * * `45` - Return forecast data for the next 45 days. Only available in S1 SKU.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     summary: {
+     *         startDate: String
+     *         endDate: String
+     *         severity: Integer
+     *         phrase: String
+     *         category: String
+     *     }
+     *     forecasts: [
+     *         {
+     *             dateTime: String
+     *             temperature: {
+     *                 minimum: {
+     *                     value: Float
+     *                     unitLabel: String
+     *                     unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *                 }
+     *                 maximum: (recursive schema, see maximum above)
+     *             }
+     *             realFeelTemperature: (recursive schema, see realFeelTemperature above)
+     *             realFeelTemperatureShade: (recursive schema, see realFeelTemperatureShade above)
+     *             hoursOfSun: Float
+     *             meanTemperatureDeviation: {
+     *                 heating: (recursive schema, see heating above)
+     *                 cooling: (recursive schema, see cooling above)
+     *             }
+     *             airQuality: [
+     *                 {
+     *                     description: String
+     *                     value: Integer
+     *                     category: String
+     *                     categoryValue: Integer
+     *                     airQualityType: String
+     *                 }
+     *             ]
+     *             daytimeForecast: {
+     *                 iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *                 iconPhrase: String
+     *                 localSource: {
+     *                     id: Integer
+     *                     name: String
+     *                     weatherCode: String
+     *                 }
+     *                 hasPrecipitation: Boolean
+     *                 precipitationType: String(Rain/Snow/Ice/Mix)
+     *                 precipitationIntensity: String
+     *                 shortDescription: String
+     *                 longPhrase: String
+     *                 precipitationProbability: Integer
+     *                 thunderstormProbability: Integer
+     *                 rainProbability: Integer
+     *                 snowProbability: Integer
+     *                 iceProbability: Integer
+     *                 wind: {
+     *                     direction: {
+     *                         degrees: Integer
+     *                         description: String
+     *                     }
+     *                     speed: (recursive schema, see speed above)
+     *                 }
+     *                 windGust: (recursive schema, see windGust above)
+     *                 totalLiquid: (recursive schema, see totalLiquid above)
+     *                 rain: (recursive schema, see rain above)
+     *                 snow: (recursive schema, see snow above)
+     *                 ice: (recursive schema, see ice above)
+     *                 hoursOfPrecipitation: Float
+     *                 hoursOfRain: Float
+     *                 hoursOfSnow: Float
+     *                 hoursOfIce: Float
+     *                 cloudCover: Integer
+     *             }
+     *             nighttimeForecast: (recursive schema, see nighttimeForecast above)
+     *             sources: [
+     *                 String
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getDailyForecastWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getDailyForecastWithResponse(format, requestOptions); + } + + /** + * **Get Weather along route** + * + *

**Applies to**: S1 pricing tier. + * + *

Weather along a route API returns hyper local (one kilometer or less), up-to-the-minute weather nowcasts, + * weather hazard assessments, and notifications along a route described as a sequence of waypoints. This includes a + * list of weather hazards affecting the waypoint or route, and the aggregated hazard index for each waypoint might + * be used to paint each portion of a route according to how safe it is for the driver. When submitting the + * waypoints, it is recommended to stay within, or close to, the distance that can be traveled within 120-mins or + * shortly after. Data is updated every five minutes. + * + *

The service supplements Azure Maps [Route Service](https://docs.microsoft.com/rest/api/maps/route) that allows + * you to first request a route between an origin and a destination and use that as an input for Weather Along Route + * endpoint. + * + *

In addition, the service supports scenarios to generate weather notifications for waypoints that experience an + * increase in intensity of a weather hazard. For example, if the vehicle is expected to begin experiencing heavy + * rain as it reaches a waypoint, a weather notification for heavy rain will be generated for that waypoint allowing + * the end product to display a heavy rain notification before the driver reaches that waypoint. The trigger for + * when to display the notification for a waypoint could be based, for example, on a + * [geofence](https://docs.microsoft.com/azure/azure-maps/tutorial-iot-hub-maps), or selectable distance to the + * waypoint. + * + *

The API covers all regions of the planet except latitudes above Greenland and Antarctica. + * + *

Query Parameters + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
queryStringYesCoordinates through which the route is calculated, separated by colon (:) and entered in chronological order. A minimum of two waypoints is required. A single API call may contain up to 60 waypoints. + * A waypoint indicates location, ETA, and optional heading: latitude,longitude,ETA,heading, where + * * `Latitude` - Latitude coordinate in decimal degrees. + * * `Longitude` - Longitude coordinate in decimal degrees. + * * `ETA (estimated time of arrival)` - The number of minutes from the present time that it will take for the vehicle to reach the waypoint. Allowed range is from 0.0 to 120.0 minutes. + * * `Heading` - An optional value indicating the vehicle heading as it passes the waypoint. Expressed in clockwise degrees relative to true north. This is issued to calculate sun glare as a driving hazard. Allowed range is from 0.0 to 360.0 degrees. If not provided, a heading will automatically be derived based on the position of neighboring waypoints. + * + * It is recommended to stay within, or close to, the distance that can be traveled within 120-mins or shortly after. This way a more accurate assessment can be provided for the trip and prevent isolated events not being captured between waypoints. Information can and should be updated along the route (especially for trips greater than 2 hours) to continuously pull new waypoints moving forward, but also to ensure that forecast information for content such as precipitation type and intensity is accurate as storms develop and dissipate over time.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     summary: {
+     *         iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *         hazards: {
+     *             maxHazardIndex: String(0/1/2/3/4)
+     *             details: [
+     *                 {
+     *                     hazardIndex: String(0/1/2/3/4)
+     *                     hazardCode: String
+     *                     shortDescription: String
+     *                 }
+     *             ]
+     *         }
+     *     }
+     *     waypoints: [
+     *         {
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             shortDescription: String
+     *             isDaytime: Boolean
+     *             cloudCover: Integer
+     *             temperature: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             wind: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             windGust: (recursive schema, see windGust above)
+     *             precipitation: {
+     *                 dbz: Double
+     *                 type: String
+     *             }
+     *             lightningCount: Integer
+     *             sunGlare: {
+     *                 calculatedVehicleHeading: Integer
+     *                 glareIndex: Integer
+     *             }
+     *             hazards: (recursive schema, see hazards above)
+     *             notifications: [
+     *                 {
+     *                     type: String
+     *                     hazardIndex: String(0/1/2/3/4)
+     *                     hazardCode: String
+     *                     shortDescription: String
+     *                 }
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return this object is returned from a successful Weather Along Route. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getWeatherAlongRouteWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getWeatherAlongRouteWithResponse(format, requestOptions); + } + + /** + * **Get Severe Weather Alerts** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

Severe weather phenomenon can significantly impact our everyday life and business operations. For example, + * severe weather conditions such as tropical storms, high winds or flooding can close roads and force logistics + * companies to reroute their fleet causing delays in reaching destinations and breaking the cold chain of + * refrigerated food products.  Azure Maps Severe Weather Alerts API returns the severe weather alerts that are + * available worldwide from both official Government Meteorological Agencies and leading global to + * regional weather alert providers. The service can return details such as alert type, category, level and detailed + * description about the active severe alerts for the requested location, like hurricanes, thunderstorms, lightning, + * heat waves or forest fires. + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
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.
detailsStringNoReturn full details for the severe weather alerts. Available values are + * * `true` - Returns full details. By default all details are returned. + * * `false` - Returns a truncated version of the alerts data, which excludes the area-specific full description of alert details (`alertDetails`).
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             countryCode: String
+     *             alertId: Integer
+     *             description: {
+     *                 description: String
+     *                 status: String
+     *             }
+     *             category: String
+     *             priority: Integer
+     *             classification: String
+     *             level: String
+     *             source: String
+     *             sourceId: Integer
+     *             disclaimer: String
+     *             alertDetails: [
+     *                 {
+     *                     name: String
+     *                     description: String
+     *                     startTime: String
+     *                     endTime: String
+     *                     latestStatus: {
+     *                         localized: String
+     *                         english: String(New/Extend/Cancel/Correct/Expire/Upgrade/Continue/Update)
+     *                     }
+     *                     details: String
+     *                     language: String
+     *                 }
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return this object is returned from a successful Get Severe Weather Alerts call. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getSevereWeatherAlertsWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getSevereWeatherAlertsWithResponse(format, requestOptions); + } + + /** + * **Get Daily Indices** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

There may be times when you want to know if the weather conditions are optimal for a specific activity, for + * example, for outdoor construction, indoor activities, running or farming including soil moisture information. + * Azure Maps Indices API returns index values that will guide end users to plan future activities. For example, a + * health mobile application can notify users that today is good weather for running or for other outdoors + * activities like for playing golf, and retail stores can optimize their digital marketing campaigns based on + * predicted index values. The service returns in daily indices values for current and next 5, 10 and 15 days + * starting from current day. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
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.
durationStringNoSpecifies for how many days the daily indices are returned. By default, the indices data for the current day will be returned. When requesting future indices data, the current day is included in the response as day 1. Available values are + * * `1` - Return daily index data for the current day. Default value. + * * `5` - Return 5 days of daily index data starting from the current day. + * * `10` - Return 10 days of daily index data starting from the current day. + * * `15` - Return 15 days of daily index data starting from the current day.
indexIdStringNoNumeric index identifier that can be used for restricting returned results to the corresponding index type. Cannot be paired with `indexGroupId`. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details and to see the supported indices.
indexGroupIdStringNoNumeric index group identifier that can be used for restricting returned results to the corresponding subset of indices (index group). Cannot be paired with `indexId`. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details and to see the supported index groups.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             indexName: String
+     *             indexId: Integer
+     *             dateTime: String
+     *             value: Float
+     *             categoryDescription: String
+     *             categoryValue: Integer
+     *             isAscending: Boolean
+     *             description: String
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return this object is returned from a successful Get Daily Indices call. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getDailyIndicesWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getDailyIndicesWithResponse(format, requestOptions); + } + + /** + * **Get Tropical Active Storms** + * + *

**Applies to**: Gen 1 (S0 and S1) and Gen 2 pricing tiers. + * + *

Get all government-issued active tropical storms. Information about the tropical storms includes, government + * ID, basin ID, year of origin, name and if it is subtropical. + * + *

Query Parameters + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             year: String
+     *             basinId: String(AL/EP/SI/NI/CP/NP/SP)
+     *             name: String
+     *             isActive: Boolean
+     *             isSubtropical: Boolean
+     *             govId: Integer
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return all government-issued active storms. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getTropicalActiveStormsWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getTropicalActiveStormsWithResponse(format, requestOptions); + } + + /** + * **Get Tropical Storm Search** + * + *

**Applies to**: Gen 1 (S0 and S1) and Gen 2 pricing tiers. + * + *

Search government-issued tropical storms by year, basin ID, and government ID. Information about the tropical + * storms includes, government ID, basin ID, status, year, name and if it is subtropical. + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
yearintYesYear of the cyclone(s)
basinIdStringNoBasin identifier
govIdStringNoGovernment storm Id
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             year: String
+     *             basinId: String(AL/EP/SI/NI/CP/NP/SP)
+     *             name: String
+     *             isActive: Boolean
+     *             isRetired: Boolean
+     *             isSubtropical: Boolean
+     *             govId: Integer
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return search government-issued storms. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getTropicalStormSearchWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getTropicalStormSearchWithResponse(format, requestOptions); + } + + /** + * **Get Tropical Storm Forecasts** + * + *

**Applies to**: Gen 1 (S0 and S1) and Gen 2 pricing tiers. + * + *

Get all government-issued tropical storm forecasts. Information about the forecasted tropical storms includes, + * location, status, date the forecast was created, window, wind speed and wind radii. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
yearintYesYear of the cyclone(s)
basinIdStringYesBasin identifier
govIdintYesGovernment storm Id
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
detailsStringNoWhen true, wind radii summary data is included in the response
radiiGeometryStringNoWhen true, wind radii summary data and geoJSON details are included in the response
windowGeometryStringNoWhen true, window geometry data (geoJSON) is included in the response
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             dateTime: String
+     *             initializedDateTime: String
+     *             location: {
+     *                 latitude: Double
+     *                 longitude: Double
+     *             }
+     *             maxWindGust: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             sustainedWind: (recursive schema, see sustainedWind above)
+     *             status: String
+     *             window: {
+     *                 left: (recursive schema, see left above)
+     *                 right: (recursive schema, see right above)
+     *                 beginDateTime: String
+     *                 endDateTime: String
+     *                 beginStatus: String
+     *                 endStatus: String
+     *                 geometry: {
+     *                 }
+     *             }
+     *             windRadiiSummary: [
+     *                 {
+     *                     dateTime: String
+     *                     windSpeed: (recursive schema, see windSpeed above)
+     *                     radiusSectorData: [
+     *                         {
+     *                             beginBearing: Double
+     *                             endBearing: Double
+     *                             range: Double
+     *                         }
+     *                     ]
+     *                     radiiGeometry: (recursive schema, see radiiGeometry above)
+     *                 }
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the list of Government-issued forecasts. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getTropicalStormForecastWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getTropicalStormForecastWithResponse(format, requestOptions); + } + + /** + * **Get Tropical Storm Locations** + * + *

**Applies to**: Gen 1 (S0 and S1) and Gen 2 pricing tiers. + * + *

Get locations of an individual government-issued tropical storms. Information about the tropical storms + * includes, location coordinates, geometry, basin ID, date, wind details and wind radii. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
yearintYesYear of the cyclone(s)
basinIdStringYesBasin identifier
govIdintYesGovernment storm Id
detailsStringNoWhen true, wind radii summary data is included in the response
radiiGeometryStringNoWhen true, wind radii summary data and geoJSON details are included in the response
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
currentStringNoWhen true, return the current storm location
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             dateTime: String
+     *             location: {
+     *                 latitude: Double
+     *                 longitude: Double
+     *             }
+     *             maxWindGust: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             sustainedWind: (recursive schema, see sustainedWind above)
+     *             minimumPressure: (recursive schema, see minimumPressure above)
+     *             movement: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             status: String
+     *             isSubtropical: Boolean
+     *             hasTropicalPotential: Boolean
+     *             isPostTropical: Boolean
+     *             windRadiiSummary: [
+     *                 {
+     *                     dateTime: String
+     *                     windSpeed: (recursive schema, see windSpeed above)
+     *                     radiusSectorData: [
+     *                         {
+     *                             beginBearing: Double
+     *                             endBearing: Double
+     *                             range: Double
+     *                         }
+     *                     ]
+     *                     radiiGeometry: {
+     *                     }
+     *                 }
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return locations for an individual government-issued storm. + */ + @Generated + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getTropicalStormLocationsWithResponse(String format, RequestOptions requestOptions) { + return this.serviceClient.getTropicalStormLocationsWithResponse(format, requestOptions); + } +} diff --git a/sdk/maps/azure-maps-weather/src/main/java/com/azure/maps/weather/AzureMapsWeatherServiceVersion.java b/sdk/maps/azure-maps-weather/src/main/java/com/azure/maps/weather/AzureMapsWeatherServiceVersion.java new file mode 100644 index 000000000000..f033b8b21279 --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/main/java/com/azure/maps/weather/AzureMapsWeatherServiceVersion.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.weather; + +import com.azure.core.util.ServiceVersion; + +/** Service version of AzureMapsWeatherService. */ +public enum AzureMapsWeatherServiceVersion implements ServiceVersion { + /** Enum value 1.0. */ + V1_0("1.0"); + + private final String version; + + AzureMapsWeatherServiceVersion(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 AzureMapsWeatherServiceVersion}. + */ + public static AzureMapsWeatherServiceVersion getLatest() { + return V1_0; + } +} diff --git a/sdk/maps/azure-maps-weather/src/main/java/com/azure/maps/weather/implementation/AzureMapsWeatherServiceImpl.java b/sdk/maps/azure-maps-weather/src/main/java/com/azure/maps/weather/implementation/AzureMapsWeatherServiceImpl.java new file mode 100644 index 000000000000..0477d55e3b39 --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/main/java/com/azure/maps/weather/implementation/AzureMapsWeatherServiceImpl.java @@ -0,0 +1,158 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.weather.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.weather.AzureMapsWeatherServiceVersion; + +/** Initializes a new instance of the AzureMapsWeatherService type. */ +public final class AzureMapsWeatherServiceImpl { + /** + * 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 AzureMapsWeatherServiceVersion serviceVersion; + + /** + * Gets Service version. + * + * @return the serviceVersion value. + */ + public AzureMapsWeatherServiceVersion 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 WeathersImpl object to access its operations. */ + private final WeathersImpl weathers; + + /** + * Gets the WeathersImpl object to access its operations. + * + * @return the WeathersImpl object. + */ + public WeathersImpl getWeathers() { + return this.weathers; + } + + /** + * Initializes an instance of AzureMapsWeatherService 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 AzureMapsWeatherServiceImpl(String clientId, String host, AzureMapsWeatherServiceVersion serviceVersion) { + this( + new HttpPipelineBuilder() + .policies(new UserAgentPolicy(), new RetryPolicy(), new CookiePolicy()) + .build(), + JacksonAdapter.createDefaultSerializerAdapter(), + clientId, + host, + serviceVersion); + } + + /** + * Initializes an instance of AzureMapsWeatherService 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 AzureMapsWeatherServiceImpl( + HttpPipeline httpPipeline, String clientId, String host, AzureMapsWeatherServiceVersion serviceVersion) { + this(httpPipeline, JacksonAdapter.createDefaultSerializerAdapter(), clientId, host, serviceVersion); + } + + /** + * Initializes an instance of AzureMapsWeatherService 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 AzureMapsWeatherServiceImpl( + HttpPipeline httpPipeline, + SerializerAdapter serializerAdapter, + String clientId, + String host, + AzureMapsWeatherServiceVersion serviceVersion) { + this.httpPipeline = httpPipeline; + this.serializerAdapter = serializerAdapter; + this.clientId = clientId; + this.host = host; + this.serviceVersion = serviceVersion; + this.weathers = new WeathersImpl(this); + } +} diff --git a/sdk/maps/azure-maps-weather/src/main/java/com/azure/maps/weather/implementation/WeathersImpl.java b/sdk/maps/azure-maps-weather/src/main/java/com/azure/maps/weather/implementation/WeathersImpl.java new file mode 100644 index 000000000000..d1139c85a191 --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/main/java/com/azure/maps/weather/implementation/WeathersImpl.java @@ -0,0 +1,3558 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.weather.implementation; + +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 Weathers. */ +public final class WeathersImpl { + /** The proxy service used to perform REST calls. */ + private final WeathersService service; + + /** The service client containing this operation class. */ + private final AzureMapsWeatherServiceImpl client; + + /** + * Initializes an instance of WeathersImpl. + * + * @param client the instance of the service client containing this operation class. + */ + WeathersImpl(AzureMapsWeatherServiceImpl client) { + this.service = RestProxy.create(WeathersService.class, client.getHttpPipeline(), client.getSerializerAdapter()); + this.client = client; + } + + /** + * The interface defining all the services for AzureMapsWeatherServiceWeathers to be used by the proxy service to + * perform REST calls. + */ + @Host("{$host}") + @ServiceInterface(name = "AzureMapsWeatherServ") + private interface WeathersService { + @Get("/weather/forecast/hourly/{format}") + Mono> getHourlyForecast( + @HostParam("$host") String host, + @QueryParam("api-version") String apiVersion, + @PathParam("format") String format, + RequestOptions requestOptions, + Context context); + + @Get("/weather/forecast/minute/{format}") + Mono> getMinuteForecast( + @HostParam("$host") String host, + @QueryParam("api-version") String apiVersion, + @PathParam("format") String format, + RequestOptions requestOptions, + Context context); + + @Get("/weather/forecast/quarterDay/{format}") + Mono> getQuarterDayForecast( + @HostParam("$host") String host, + @QueryParam("api-version") String apiVersion, + @PathParam("format") String format, + RequestOptions requestOptions, + Context context); + + @Get("/weather/currentConditions/{format}") + Mono> getCurrentConditions( + @HostParam("$host") String host, + @QueryParam("api-version") String apiVersion, + @PathParam("format") String format, + RequestOptions requestOptions, + Context context); + + @Get("/weather/forecast/daily/{format}") + Mono> getDailyForecast( + @HostParam("$host") String host, + @QueryParam("api-version") String apiVersion, + @PathParam("format") String format, + RequestOptions requestOptions, + Context context); + + @Get("/weather/route/{format}") + Mono> getWeatherAlongRoute( + @HostParam("$host") String host, + @QueryParam("api-version") String apiVersion, + @PathParam("format") String format, + RequestOptions requestOptions, + Context context); + + @Get("/weather/severe/alerts/{format}") + Mono> getSevereWeatherAlerts( + @HostParam("$host") String host, + @QueryParam("api-version") String apiVersion, + @PathParam("format") String format, + RequestOptions requestOptions, + Context context); + + @Get("/weather/indices/daily/{format}") + Mono> getDailyIndices( + @HostParam("$host") String host, + @QueryParam("api-version") String apiVersion, + @PathParam("format") String format, + RequestOptions requestOptions, + Context context); + + @Get("/weather/tropical/storms/active/{format}") + Mono> getTropicalActiveStorms( + @HostParam("$host") String host, + @QueryParam("api-version") String apiVersion, + @PathParam("format") String format, + RequestOptions requestOptions, + Context context); + + @Get("/weather/tropical/storms/{format}") + Mono> getTropicalStormSearch( + @HostParam("$host") String host, + @QueryParam("api-version") String apiVersion, + @PathParam("format") String format, + RequestOptions requestOptions, + Context context); + + @Get("/weather/tropical/storms/forecasts/{format}") + Mono> getTropicalStormForecast( + @HostParam("$host") String host, + @QueryParam("api-version") String apiVersion, + @PathParam("format") String format, + RequestOptions requestOptions, + Context context); + + @Get("/weather/tropical/storms/locations/{format}") + Mono> getTropicalStormLocations( + @HostParam("$host") String host, + @QueryParam("api-version") String apiVersion, + @PathParam("format") String format, + RequestOptions requestOptions, + Context context); + } + + /** + * **Get Hourly Forecast** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

Request detailed weather forecast by the hour for the next 1, 12, 24 (1 day), 72 (3 days), 120 (5 days), and + * 240 hours (10 days) for the given the given coordinate location. The API returns details such as temperature, + * humidity, wind, precipitation, and ultraviolet (UV) index. + * + *

In S0 you can request hourly forecast for the next 1, 12, 24 hours (1 day), and 72 hours (3 days). In S1 you + * can also request hourly forecast for the next 120 (5 days) and 240 hours (10 days). + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
durationStringNoTime frame of the returned weather forecast. By default, the forecast data for next hour will be returned. Available values are + * * `1` - Return forecast data for the next hour. Default value. + * * `12` - Return hourly forecast for next 12 hours. + * * `24` - Return hourly forecast for next 24 hours. + * * `72` - Return hourly forecast for next 72 hours (3 days). + * * `120` - Return hourly forecast for next 120 hours (5 days). Only available in S1 SKU. + * * `240` - Return hourly forecast for next 240 hours (10 days). Only available in S1 SKU.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     forecasts: [
+     *         {
+     *             dateTime: String
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             iconPhrase: String
+     *             hasPrecipitation: Boolean
+     *             isDaylight: Boolean
+     *             temperature: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             realFeelTemperature: (recursive schema, see realFeelTemperature above)
+     *             wetBulbTemperature: (recursive schema, see wetBulbTemperature above)
+     *             dewPoint: (recursive schema, see dewPoint above)
+     *             wind: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             windGust: (recursive schema, see windGust above)
+     *             relativeHumidity: Integer
+     *             visibility: (recursive schema, see visibility above)
+     *             cloudCeiling: (recursive schema, see cloudCeiling above)
+     *             uvIndex: Integer
+     *             uvIndexDescription: String
+     *             precipitationProbability: Integer
+     *             rainProbability: Integer
+     *             snowProbability: Integer
+     *             iceProbability: Integer
+     *             totalLiquid: (recursive schema, see totalLiquid above)
+     *             rain: (recursive schema, see rain above)
+     *             snow: (recursive schema, see snow above)
+     *             ice: (recursive schema, see ice above)
+     *             cloudCover: Integer
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getHourlyForecastWithResponseAsync(String format, RequestOptions requestOptions) { + return FluxUtil.withContext( + context -> + service.getHourlyForecast( + this.client.getHost(), + this.client.getServiceVersion().getVersion(), + format, + requestOptions, + context)); + } + + /** + * **Get Hourly Forecast** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

Request detailed weather forecast by the hour for the next 1, 12, 24 (1 day), 72 (3 days), 120 (5 days), and + * 240 hours (10 days) for the given the given coordinate location. The API returns details such as temperature, + * humidity, wind, precipitation, and ultraviolet (UV) index. + * + *

In S0 you can request hourly forecast for the next 1, 12, 24 hours (1 day), and 72 hours (3 days). In S1 you + * can also request hourly forecast for the next 120 (5 days) and 240 hours (10 days). + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
durationStringNoTime frame of the returned weather forecast. By default, the forecast data for next hour will be returned. Available values are + * * `1` - Return forecast data for the next hour. Default value. + * * `12` - Return hourly forecast for next 12 hours. + * * `24` - Return hourly forecast for next 24 hours. + * * `72` - Return hourly forecast for next 72 hours (3 days). + * * `120` - Return hourly forecast for next 120 hours (5 days). Only available in S1 SKU. + * * `240` - Return hourly forecast for next 240 hours (10 days). Only available in S1 SKU.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     forecasts: [
+     *         {
+     *             dateTime: String
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             iconPhrase: String
+     *             hasPrecipitation: Boolean
+     *             isDaylight: Boolean
+     *             temperature: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             realFeelTemperature: (recursive schema, see realFeelTemperature above)
+     *             wetBulbTemperature: (recursive schema, see wetBulbTemperature above)
+     *             dewPoint: (recursive schema, see dewPoint above)
+     *             wind: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             windGust: (recursive schema, see windGust above)
+     *             relativeHumidity: Integer
+     *             visibility: (recursive schema, see visibility above)
+     *             cloudCeiling: (recursive schema, see cloudCeiling above)
+     *             uvIndex: Integer
+     *             uvIndexDescription: String
+     *             precipitationProbability: Integer
+     *             rainProbability: Integer
+     *             snowProbability: Integer
+     *             iceProbability: Integer
+     *             totalLiquid: (recursive schema, see totalLiquid above)
+     *             rain: (recursive schema, see rain above)
+     *             snow: (recursive schema, see snow above)
+     *             ice: (recursive schema, see ice above)
+     *             cloudCover: Integer
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @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 status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getHourlyForecastWithResponseAsync( + String format, RequestOptions requestOptions, Context context) { + return service.getHourlyForecast( + this.client.getHost(), this.client.getServiceVersion().getVersion(), format, requestOptions, context); + } + + /** + * **Get Hourly Forecast** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

Request detailed weather forecast by the hour for the next 1, 12, 24 (1 day), 72 (3 days), 120 (5 days), and + * 240 hours (10 days) for the given the given coordinate location. The API returns details such as temperature, + * humidity, wind, precipitation, and ultraviolet (UV) index. + * + *

In S0 you can request hourly forecast for the next 1, 12, 24 hours (1 day), and 72 hours (3 days). In S1 you + * can also request hourly forecast for the next 120 (5 days) and 240 hours (10 days). + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
durationStringNoTime frame of the returned weather forecast. By default, the forecast data for next hour will be returned. Available values are + * * `1` - Return forecast data for the next hour. Default value. + * * `12` - Return hourly forecast for next 12 hours. + * * `24` - Return hourly forecast for next 24 hours. + * * `72` - Return hourly forecast for next 72 hours (3 days). + * * `120` - Return hourly forecast for next 120 hours (5 days). Only available in S1 SKU. + * * `240` - Return hourly forecast for next 240 hours (10 days). Only available in S1 SKU.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     forecasts: [
+     *         {
+     *             dateTime: String
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             iconPhrase: String
+     *             hasPrecipitation: Boolean
+     *             isDaylight: Boolean
+     *             temperature: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             realFeelTemperature: (recursive schema, see realFeelTemperature above)
+     *             wetBulbTemperature: (recursive schema, see wetBulbTemperature above)
+     *             dewPoint: (recursive schema, see dewPoint above)
+     *             wind: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             windGust: (recursive schema, see windGust above)
+     *             relativeHumidity: Integer
+     *             visibility: (recursive schema, see visibility above)
+     *             cloudCeiling: (recursive schema, see cloudCeiling above)
+     *             uvIndex: Integer
+     *             uvIndexDescription: String
+     *             precipitationProbability: Integer
+     *             rainProbability: Integer
+     *             snowProbability: Integer
+     *             iceProbability: Integer
+     *             totalLiquid: (recursive schema, see totalLiquid above)
+     *             rain: (recursive schema, see rain above)
+     *             snow: (recursive schema, see snow above)
+     *             ice: (recursive schema, see ice above)
+     *             cloudCover: Integer
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getHourlyForecastWithResponse(String format, RequestOptions requestOptions) { + return getHourlyForecastWithResponseAsync(format, requestOptions).block(); + } + + /** + * **Get Minute Forecast** + * + *

**Applies to**: S1 pricing tier. + * + *

Get Minute Forecast service returns minute-by-minute forecasts for a given location for the next 120 minutes. + * Users can request weather forecasts in the interval of 1, 5 and 15 minutes. The response will include details + * such as the type of precipitation (including rain, snow, or a mixture of both), start time, and precipitation + * intensity value (dBZ). + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
intervalStringNoSpecifies time interval in minutes for the returned weather forecast. Supported values are + * * `1` - Retrieve forecast for 1-minute intervals. Returned by default. + * * `5` - Retrieve forecasts for 5-minute intervals. + * * `15` - Retrieve forecasts for 15-minute intervals.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     summary: {
+     *         briefPhrase60: String
+     *         shortDescription: String
+     *         briefDescription: String
+     *         longPhrase: String
+     *         iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *     }
+     *     intervalSummaries: [
+     *         {
+     *             startMinute: Integer
+     *             endMinute: Integer
+     *             totalMinutes: Integer
+     *             shortDescription: String
+     *             briefDescription: String
+     *             longPhrase: String
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *         }
+     *     ]
+     *     intervals: [
+     *         {
+     *             startTime: String
+     *             minute: Integer
+     *             decibelRelativeToZ: Double
+     *             shortDescription: String
+     *             threshold: String
+     *             color: {
+     *                 red: Integer
+     *                 green: Integer
+     *                 blue: Integer
+     *                 hex: String
+     *             }
+     *             simplifiedColor: (recursive schema, see simplifiedColor above)
+     *             precipitationType: String(Rain/Snow/Ice/Mix)
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             cloudCover: Integer
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getMinuteForecastWithResponseAsync(String format, RequestOptions requestOptions) { + return FluxUtil.withContext( + context -> + service.getMinuteForecast( + this.client.getHost(), + this.client.getServiceVersion().getVersion(), + format, + requestOptions, + context)); + } + + /** + * **Get Minute Forecast** + * + *

**Applies to**: S1 pricing tier. + * + *

Get Minute Forecast service returns minute-by-minute forecasts for a given location for the next 120 minutes. + * Users can request weather forecasts in the interval of 1, 5 and 15 minutes. The response will include details + * such as the type of precipitation (including rain, snow, or a mixture of both), start time, and precipitation + * intensity value (dBZ). + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
intervalStringNoSpecifies time interval in minutes for the returned weather forecast. Supported values are + * * `1` - Retrieve forecast for 1-minute intervals. Returned by default. + * * `5` - Retrieve forecasts for 5-minute intervals. + * * `15` - Retrieve forecasts for 15-minute intervals.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     summary: {
+     *         briefPhrase60: String
+     *         shortDescription: String
+     *         briefDescription: String
+     *         longPhrase: String
+     *         iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *     }
+     *     intervalSummaries: [
+     *         {
+     *             startMinute: Integer
+     *             endMinute: Integer
+     *             totalMinutes: Integer
+     *             shortDescription: String
+     *             briefDescription: String
+     *             longPhrase: String
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *         }
+     *     ]
+     *     intervals: [
+     *         {
+     *             startTime: String
+     *             minute: Integer
+     *             decibelRelativeToZ: Double
+     *             shortDescription: String
+     *             threshold: String
+     *             color: {
+     *                 red: Integer
+     *                 green: Integer
+     *                 blue: Integer
+     *                 hex: String
+     *             }
+     *             simplifiedColor: (recursive schema, see simplifiedColor above)
+     *             precipitationType: String(Rain/Snow/Ice/Mix)
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             cloudCover: Integer
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @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 status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getMinuteForecastWithResponseAsync( + String format, RequestOptions requestOptions, Context context) { + return service.getMinuteForecast( + this.client.getHost(), this.client.getServiceVersion().getVersion(), format, requestOptions, context); + } + + /** + * **Get Minute Forecast** + * + *

**Applies to**: S1 pricing tier. + * + *

Get Minute Forecast service returns minute-by-minute forecasts for a given location for the next 120 minutes. + * Users can request weather forecasts in the interval of 1, 5 and 15 minutes. The response will include details + * such as the type of precipitation (including rain, snow, or a mixture of both), start time, and precipitation + * intensity value (dBZ). + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
intervalStringNoSpecifies time interval in minutes for the returned weather forecast. Supported values are + * * `1` - Retrieve forecast for 1-minute intervals. Returned by default. + * * `5` - Retrieve forecasts for 5-minute intervals. + * * `15` - Retrieve forecasts for 15-minute intervals.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     summary: {
+     *         briefPhrase60: String
+     *         shortDescription: String
+     *         briefDescription: String
+     *         longPhrase: String
+     *         iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *     }
+     *     intervalSummaries: [
+     *         {
+     *             startMinute: Integer
+     *             endMinute: Integer
+     *             totalMinutes: Integer
+     *             shortDescription: String
+     *             briefDescription: String
+     *             longPhrase: String
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *         }
+     *     ]
+     *     intervals: [
+     *         {
+     *             startTime: String
+     *             minute: Integer
+     *             decibelRelativeToZ: Double
+     *             shortDescription: String
+     *             threshold: String
+     *             color: {
+     *                 red: Integer
+     *                 green: Integer
+     *                 blue: Integer
+     *                 hex: String
+     *             }
+     *             simplifiedColor: (recursive schema, see simplifiedColor above)
+     *             precipitationType: String(Rain/Snow/Ice/Mix)
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             cloudCover: Integer
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getMinuteForecastWithResponse(String format, RequestOptions requestOptions) { + return getMinuteForecastWithResponseAsync(format, requestOptions).block(); + } + + /** + * **Get Quarter-Day Forecast** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

Service returns detailed weather forecast by quarter-day for the next 1, 5, 10, or 15 days for a given + * location. Response data is presented by quarters of the day - morning, afternoon, evening, and overnight. Details + * such as temperature, humidity, wind, precipitation, and UV index are returned. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
durationStringNoSpecifies for how many days the quester-day forecast responses are returned. Supported values are: + * * `1` - Return forecast data for the next day. Returned by default. + * * `5` - Return forecast data for the next 5 days. + * * `10` - Return forecast data for next 10 days. + * * `15` - Return forecast data for the next 15 days.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     forecasts: [
+     *         {
+     *             dateTime: String
+     *             effectiveDate: String
+     *             quarter: String(0/1/2/3)
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             iconPhrase: String
+     *             phrase: String
+     *             temperature: {
+     *                 minimum: {
+     *                     value: Float
+     *                     unitLabel: String
+     *                     unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *                 }
+     *                 maximum: (recursive schema, see maximum above)
+     *             }
+     *             realFeelTemperature: (recursive schema, see realFeelTemperature above)
+     *             dewPoint: (recursive schema, see dewPoint above)
+     *             relativeHumidity: Integer
+     *             wind: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             windGust: (recursive schema, see windGust above)
+     *             visibility: (recursive schema, see visibility above)
+     *             cloudCover: Integer
+     *             hasPrecipitation: Boolean
+     *             precipitationType: String(Rain/Snow/Ice/Mix)
+     *             precipitationIntensity: String
+     *             precipitationProbability: Integer
+     *             thunderstormProbability: Integer
+     *             totalLiquid: (recursive schema, see totalLiquid above)
+     *             rain: (recursive schema, see rain above)
+     *             snow: (recursive schema, see snow above)
+     *             ice: (recursive schema, see ice above)
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getQuarterDayForecastWithResponseAsync( + String format, RequestOptions requestOptions) { + return FluxUtil.withContext( + context -> + service.getQuarterDayForecast( + this.client.getHost(), + this.client.getServiceVersion().getVersion(), + format, + requestOptions, + context)); + } + + /** + * **Get Quarter-Day Forecast** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

Service returns detailed weather forecast by quarter-day for the next 1, 5, 10, or 15 days for a given + * location. Response data is presented by quarters of the day - morning, afternoon, evening, and overnight. Details + * such as temperature, humidity, wind, precipitation, and UV index are returned. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
durationStringNoSpecifies for how many days the quester-day forecast responses are returned. Supported values are: + * * `1` - Return forecast data for the next day. Returned by default. + * * `5` - Return forecast data for the next 5 days. + * * `10` - Return forecast data for next 10 days. + * * `15` - Return forecast data for the next 15 days.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     forecasts: [
+     *         {
+     *             dateTime: String
+     *             effectiveDate: String
+     *             quarter: String(0/1/2/3)
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             iconPhrase: String
+     *             phrase: String
+     *             temperature: {
+     *                 minimum: {
+     *                     value: Float
+     *                     unitLabel: String
+     *                     unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *                 }
+     *                 maximum: (recursive schema, see maximum above)
+     *             }
+     *             realFeelTemperature: (recursive schema, see realFeelTemperature above)
+     *             dewPoint: (recursive schema, see dewPoint above)
+     *             relativeHumidity: Integer
+     *             wind: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             windGust: (recursive schema, see windGust above)
+     *             visibility: (recursive schema, see visibility above)
+     *             cloudCover: Integer
+     *             hasPrecipitation: Boolean
+     *             precipitationType: String(Rain/Snow/Ice/Mix)
+     *             precipitationIntensity: String
+     *             precipitationProbability: Integer
+     *             thunderstormProbability: Integer
+     *             totalLiquid: (recursive schema, see totalLiquid above)
+     *             rain: (recursive schema, see rain above)
+     *             snow: (recursive schema, see snow above)
+     *             ice: (recursive schema, see ice above)
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @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 status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getQuarterDayForecastWithResponseAsync( + String format, RequestOptions requestOptions, Context context) { + return service.getQuarterDayForecast( + this.client.getHost(), this.client.getServiceVersion().getVersion(), format, requestOptions, context); + } + + /** + * **Get Quarter-Day Forecast** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

Service returns detailed weather forecast by quarter-day for the next 1, 5, 10, or 15 days for a given + * location. Response data is presented by quarters of the day - morning, afternoon, evening, and overnight. Details + * such as temperature, humidity, wind, precipitation, and UV index are returned. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
durationStringNoSpecifies for how many days the quester-day forecast responses are returned. Supported values are: + * * `1` - Return forecast data for the next day. Returned by default. + * * `5` - Return forecast data for the next 5 days. + * * `10` - Return forecast data for next 10 days. + * * `15` - Return forecast data for the next 15 days.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     forecasts: [
+     *         {
+     *             dateTime: String
+     *             effectiveDate: String
+     *             quarter: String(0/1/2/3)
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             iconPhrase: String
+     *             phrase: String
+     *             temperature: {
+     *                 minimum: {
+     *                     value: Float
+     *                     unitLabel: String
+     *                     unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *                 }
+     *                 maximum: (recursive schema, see maximum above)
+     *             }
+     *             realFeelTemperature: (recursive schema, see realFeelTemperature above)
+     *             dewPoint: (recursive schema, see dewPoint above)
+     *             relativeHumidity: Integer
+     *             wind: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             windGust: (recursive schema, see windGust above)
+     *             visibility: (recursive schema, see visibility above)
+     *             cloudCover: Integer
+     *             hasPrecipitation: Boolean
+     *             precipitationType: String(Rain/Snow/Ice/Mix)
+     *             precipitationIntensity: String
+     *             precipitationProbability: Integer
+     *             thunderstormProbability: Integer
+     *             totalLiquid: (recursive schema, see totalLiquid above)
+     *             rain: (recursive schema, see rain above)
+     *             snow: (recursive schema, see snow above)
+     *             ice: (recursive schema, see ice above)
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getQuarterDayForecastWithResponse(String format, RequestOptions requestOptions) { + return getQuarterDayForecastWithResponseAsync(format, requestOptions).block(); + } + + /** + * **Get Current Conditions** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

Get Current Conditions service returns detailed current weather conditions such as precipitation, temperature + * and wind for a given coordinate location. Also, observations from the past 6 or 24 hours for a particular + * location can be retrieved. The basic information returned with the response include details such as observation + * date and time, brief description of the weather conditions, weather icon, precipitation indicator flags, and + * temperature. Additional details such as RealFeel™ Temperature and UV index are also returned. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
detailsStringNoReturn full details for the current conditions. Available values are + * * `true` - Returns full details. By default all details are returned. + * * `false` - Returns a truncated version of the current condition data, which includes observation date time, weather phrase, icon code, precipitation indicator flag, and temperature.
durationStringNoTime frame of the returned weather conditions. By default, the most current weather conditions will be returned. Default value is 0. Supported values are: + * * `0` - Return the most current weather conditions. + * * `6` - Return weather conditions from past 6 hours. + * * `24` - Return weather conditions from past 24 hours.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             dateTime: String
+     *             description: String
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             hasPrecipitation: Boolean
+     *             isDaytime: Boolean
+     *             temperature: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             realFeelTemperature: (recursive schema, see realFeelTemperature above)
+     *             realFeelTemperatureShade: (recursive schema, see realFeelTemperatureShade above)
+     *             relativeHumidity: Integer
+     *             dewPoint: (recursive schema, see dewPoint above)
+     *             wind: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             windGust: (recursive schema, see windGust above)
+     *             uvIndex: Integer
+     *             uvIndexDescription: String
+     *             visibility: (recursive schema, see visibility above)
+     *             obstructionsToVisibility: String
+     *             cloudCover: Integer
+     *             cloudCeiling: (recursive schema, see cloudCeiling above)
+     *             pressure: (recursive schema, see pressure above)
+     *             pressureTendency: {
+     *                 description: String
+     *                 code: String
+     *             }
+     *             pastTwentyFourHourTemperatureDeparture: (recursive schema, see pastTwentyFourHourTemperatureDeparture above)
+     *             apparentTemperature: (recursive schema, see apparentTemperature above)
+     *             windChillTemperature: (recursive schema, see windChillTemperature above)
+     *             wetBulbTemperature: (recursive schema, see wetBulbTemperature above)
+     *             precipitationSummary: {
+     *                 pastHour: (recursive schema, see pastHour above)
+     *                 pastThreeHours: (recursive schema, see pastThreeHours above)
+     *                 pastSixHours: (recursive schema, see pastSixHours above)
+     *                 pastNineHours: (recursive schema, see pastNineHours above)
+     *                 pastTwelveHours: (recursive schema, see pastTwelveHours above)
+     *                 pastEighteenHours: (recursive schema, see pastEighteenHours above)
+     *                 pastTwentyFourHours: (recursive schema, see pastTwentyFourHours above)
+     *             }
+     *             temperatureSummary: {
+     *                 pastSixHours: {
+     *                     minimum: (recursive schema, see minimum above)
+     *                     maximum: (recursive schema, see maximum above)
+     *                 }
+     *                 pastTwelveHours: (recursive schema, see pastTwelveHours above)
+     *                 pastTwentyFourHours: (recursive schema, see pastTwentyFourHours above)
+     *             }
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getCurrentConditionsWithResponseAsync( + String format, RequestOptions requestOptions) { + return FluxUtil.withContext( + context -> + service.getCurrentConditions( + this.client.getHost(), + this.client.getServiceVersion().getVersion(), + format, + requestOptions, + context)); + } + + /** + * **Get Current Conditions** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

Get Current Conditions service returns detailed current weather conditions such as precipitation, temperature + * and wind for a given coordinate location. Also, observations from the past 6 or 24 hours for a particular + * location can be retrieved. The basic information returned with the response include details such as observation + * date and time, brief description of the weather conditions, weather icon, precipitation indicator flags, and + * temperature. Additional details such as RealFeel™ Temperature and UV index are also returned. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
detailsStringNoReturn full details for the current conditions. Available values are + * * `true` - Returns full details. By default all details are returned. + * * `false` - Returns a truncated version of the current condition data, which includes observation date time, weather phrase, icon code, precipitation indicator flag, and temperature.
durationStringNoTime frame of the returned weather conditions. By default, the most current weather conditions will be returned. Default value is 0. Supported values are: + * * `0` - Return the most current weather conditions. + * * `6` - Return weather conditions from past 6 hours. + * * `24` - Return weather conditions from past 24 hours.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             dateTime: String
+     *             description: String
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             hasPrecipitation: Boolean
+     *             isDaytime: Boolean
+     *             temperature: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             realFeelTemperature: (recursive schema, see realFeelTemperature above)
+     *             realFeelTemperatureShade: (recursive schema, see realFeelTemperatureShade above)
+     *             relativeHumidity: Integer
+     *             dewPoint: (recursive schema, see dewPoint above)
+     *             wind: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             windGust: (recursive schema, see windGust above)
+     *             uvIndex: Integer
+     *             uvIndexDescription: String
+     *             visibility: (recursive schema, see visibility above)
+     *             obstructionsToVisibility: String
+     *             cloudCover: Integer
+     *             cloudCeiling: (recursive schema, see cloudCeiling above)
+     *             pressure: (recursive schema, see pressure above)
+     *             pressureTendency: {
+     *                 description: String
+     *                 code: String
+     *             }
+     *             pastTwentyFourHourTemperatureDeparture: (recursive schema, see pastTwentyFourHourTemperatureDeparture above)
+     *             apparentTemperature: (recursive schema, see apparentTemperature above)
+     *             windChillTemperature: (recursive schema, see windChillTemperature above)
+     *             wetBulbTemperature: (recursive schema, see wetBulbTemperature above)
+     *             precipitationSummary: {
+     *                 pastHour: (recursive schema, see pastHour above)
+     *                 pastThreeHours: (recursive schema, see pastThreeHours above)
+     *                 pastSixHours: (recursive schema, see pastSixHours above)
+     *                 pastNineHours: (recursive schema, see pastNineHours above)
+     *                 pastTwelveHours: (recursive schema, see pastTwelveHours above)
+     *                 pastEighteenHours: (recursive schema, see pastEighteenHours above)
+     *                 pastTwentyFourHours: (recursive schema, see pastTwentyFourHours above)
+     *             }
+     *             temperatureSummary: {
+     *                 pastSixHours: {
+     *                     minimum: (recursive schema, see minimum above)
+     *                     maximum: (recursive schema, see maximum above)
+     *                 }
+     *                 pastTwelveHours: (recursive schema, see pastTwelveHours above)
+     *                 pastTwentyFourHours: (recursive schema, see pastTwentyFourHours above)
+     *             }
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @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 status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getCurrentConditionsWithResponseAsync( + String format, RequestOptions requestOptions, Context context) { + return service.getCurrentConditions( + this.client.getHost(), this.client.getServiceVersion().getVersion(), format, requestOptions, context); + } + + /** + * **Get Current Conditions** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

Get Current Conditions service returns detailed current weather conditions such as precipitation, temperature + * and wind for a given coordinate location. Also, observations from the past 6 or 24 hours for a particular + * location can be retrieved. The basic information returned with the response include details such as observation + * date and time, brief description of the weather conditions, weather icon, precipitation indicator flags, and + * temperature. Additional details such as RealFeel™ Temperature and UV index are also returned. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
detailsStringNoReturn full details for the current conditions. Available values are + * * `true` - Returns full details. By default all details are returned. + * * `false` - Returns a truncated version of the current condition data, which includes observation date time, weather phrase, icon code, precipitation indicator flag, and temperature.
durationStringNoTime frame of the returned weather conditions. By default, the most current weather conditions will be returned. Default value is 0. Supported values are: + * * `0` - Return the most current weather conditions. + * * `6` - Return weather conditions from past 6 hours. + * * `24` - Return weather conditions from past 24 hours.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             dateTime: String
+     *             description: String
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             hasPrecipitation: Boolean
+     *             isDaytime: Boolean
+     *             temperature: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             realFeelTemperature: (recursive schema, see realFeelTemperature above)
+     *             realFeelTemperatureShade: (recursive schema, see realFeelTemperatureShade above)
+     *             relativeHumidity: Integer
+     *             dewPoint: (recursive schema, see dewPoint above)
+     *             wind: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             windGust: (recursive schema, see windGust above)
+     *             uvIndex: Integer
+     *             uvIndexDescription: String
+     *             visibility: (recursive schema, see visibility above)
+     *             obstructionsToVisibility: String
+     *             cloudCover: Integer
+     *             cloudCeiling: (recursive schema, see cloudCeiling above)
+     *             pressure: (recursive schema, see pressure above)
+     *             pressureTendency: {
+     *                 description: String
+     *                 code: String
+     *             }
+     *             pastTwentyFourHourTemperatureDeparture: (recursive schema, see pastTwentyFourHourTemperatureDeparture above)
+     *             apparentTemperature: (recursive schema, see apparentTemperature above)
+     *             windChillTemperature: (recursive schema, see windChillTemperature above)
+     *             wetBulbTemperature: (recursive schema, see wetBulbTemperature above)
+     *             precipitationSummary: {
+     *                 pastHour: (recursive schema, see pastHour above)
+     *                 pastThreeHours: (recursive schema, see pastThreeHours above)
+     *                 pastSixHours: (recursive schema, see pastSixHours above)
+     *                 pastNineHours: (recursive schema, see pastNineHours above)
+     *                 pastTwelveHours: (recursive schema, see pastTwelveHours above)
+     *                 pastEighteenHours: (recursive schema, see pastEighteenHours above)
+     *                 pastTwentyFourHours: (recursive schema, see pastTwentyFourHours above)
+     *             }
+     *             temperatureSummary: {
+     *                 pastSixHours: {
+     *                     minimum: (recursive schema, see minimum above)
+     *                     maximum: (recursive schema, see maximum above)
+     *                 }
+     *                 pastTwelveHours: (recursive schema, see pastTwelveHours above)
+     *                 pastTwentyFourHours: (recursive schema, see pastTwentyFourHours above)
+     *             }
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getCurrentConditionsWithResponse(String format, RequestOptions requestOptions) { + return getCurrentConditionsWithResponseAsync(format, requestOptions).block(); + } + + /** + * **Get Daily Forecast** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

The service returns detailed weather forecast such as temperature and wind by day for the next 1, 5, 10, 15, + * 25, or 45 days for a given coordinate location. The response include details such as temperature, wind, + * precipitation, air quality, and UV index. + * + *

In S0 you can request daily forecast for the next 1, 5, 10, and 15 days. In S1 you can also request daily + * forecast for the next 25 days, and 45 days. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
durationStringNoSpecifies for how many days the daily forecast responses are returned. Available values are + * * `1` - Return forecast data for the next day. Returned by default. + * * `5` - Return forecast data for the next 5 days. + * * `10` - Return forecast data for the next 10 days. + * * `25` - Return forecast data for the next 25 days. Only available in S1 SKU. + * * `45` - Return forecast data for the next 45 days. Only available in S1 SKU.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     summary: {
+     *         startDate: String
+     *         endDate: String
+     *         severity: Integer
+     *         phrase: String
+     *         category: String
+     *     }
+     *     forecasts: [
+     *         {
+     *             dateTime: String
+     *             temperature: {
+     *                 minimum: {
+     *                     value: Float
+     *                     unitLabel: String
+     *                     unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *                 }
+     *                 maximum: (recursive schema, see maximum above)
+     *             }
+     *             realFeelTemperature: (recursive schema, see realFeelTemperature above)
+     *             realFeelTemperatureShade: (recursive schema, see realFeelTemperatureShade above)
+     *             hoursOfSun: Float
+     *             meanTemperatureDeviation: {
+     *                 heating: (recursive schema, see heating above)
+     *                 cooling: (recursive schema, see cooling above)
+     *             }
+     *             airQuality: [
+     *                 {
+     *                     description: String
+     *                     value: Integer
+     *                     category: String
+     *                     categoryValue: Integer
+     *                     airQualityType: String
+     *                 }
+     *             ]
+     *             daytimeForecast: {
+     *                 iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *                 iconPhrase: String
+     *                 localSource: {
+     *                     id: Integer
+     *                     name: String
+     *                     weatherCode: String
+     *                 }
+     *                 hasPrecipitation: Boolean
+     *                 precipitationType: String(Rain/Snow/Ice/Mix)
+     *                 precipitationIntensity: String
+     *                 shortDescription: String
+     *                 longPhrase: String
+     *                 precipitationProbability: Integer
+     *                 thunderstormProbability: Integer
+     *                 rainProbability: Integer
+     *                 snowProbability: Integer
+     *                 iceProbability: Integer
+     *                 wind: {
+     *                     direction: {
+     *                         degrees: Integer
+     *                         description: String
+     *                     }
+     *                     speed: (recursive schema, see speed above)
+     *                 }
+     *                 windGust: (recursive schema, see windGust above)
+     *                 totalLiquid: (recursive schema, see totalLiquid above)
+     *                 rain: (recursive schema, see rain above)
+     *                 snow: (recursive schema, see snow above)
+     *                 ice: (recursive schema, see ice above)
+     *                 hoursOfPrecipitation: Float
+     *                 hoursOfRain: Float
+     *                 hoursOfSnow: Float
+     *                 hoursOfIce: Float
+     *                 cloudCover: Integer
+     *             }
+     *             nighttimeForecast: (recursive schema, see nighttimeForecast above)
+     *             sources: [
+     *                 String
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getDailyForecastWithResponseAsync(String format, RequestOptions requestOptions) { + return FluxUtil.withContext( + context -> + service.getDailyForecast( + this.client.getHost(), + this.client.getServiceVersion().getVersion(), + format, + requestOptions, + context)); + } + + /** + * **Get Daily Forecast** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

The service returns detailed weather forecast such as temperature and wind by day for the next 1, 5, 10, 15, + * 25, or 45 days for a given coordinate location. The response include details such as temperature, wind, + * precipitation, air quality, and UV index. + * + *

In S0 you can request daily forecast for the next 1, 5, 10, and 15 days. In S1 you can also request daily + * forecast for the next 25 days, and 45 days. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
durationStringNoSpecifies for how many days the daily forecast responses are returned. Available values are + * * `1` - Return forecast data for the next day. Returned by default. + * * `5` - Return forecast data for the next 5 days. + * * `10` - Return forecast data for the next 10 days. + * * `25` - Return forecast data for the next 25 days. Only available in S1 SKU. + * * `45` - Return forecast data for the next 45 days. Only available in S1 SKU.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     summary: {
+     *         startDate: String
+     *         endDate: String
+     *         severity: Integer
+     *         phrase: String
+     *         category: String
+     *     }
+     *     forecasts: [
+     *         {
+     *             dateTime: String
+     *             temperature: {
+     *                 minimum: {
+     *                     value: Float
+     *                     unitLabel: String
+     *                     unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *                 }
+     *                 maximum: (recursive schema, see maximum above)
+     *             }
+     *             realFeelTemperature: (recursive schema, see realFeelTemperature above)
+     *             realFeelTemperatureShade: (recursive schema, see realFeelTemperatureShade above)
+     *             hoursOfSun: Float
+     *             meanTemperatureDeviation: {
+     *                 heating: (recursive schema, see heating above)
+     *                 cooling: (recursive schema, see cooling above)
+     *             }
+     *             airQuality: [
+     *                 {
+     *                     description: String
+     *                     value: Integer
+     *                     category: String
+     *                     categoryValue: Integer
+     *                     airQualityType: String
+     *                 }
+     *             ]
+     *             daytimeForecast: {
+     *                 iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *                 iconPhrase: String
+     *                 localSource: {
+     *                     id: Integer
+     *                     name: String
+     *                     weatherCode: String
+     *                 }
+     *                 hasPrecipitation: Boolean
+     *                 precipitationType: String(Rain/Snow/Ice/Mix)
+     *                 precipitationIntensity: String
+     *                 shortDescription: String
+     *                 longPhrase: String
+     *                 precipitationProbability: Integer
+     *                 thunderstormProbability: Integer
+     *                 rainProbability: Integer
+     *                 snowProbability: Integer
+     *                 iceProbability: Integer
+     *                 wind: {
+     *                     direction: {
+     *                         degrees: Integer
+     *                         description: String
+     *                     }
+     *                     speed: (recursive schema, see speed above)
+     *                 }
+     *                 windGust: (recursive schema, see windGust above)
+     *                 totalLiquid: (recursive schema, see totalLiquid above)
+     *                 rain: (recursive schema, see rain above)
+     *                 snow: (recursive schema, see snow above)
+     *                 ice: (recursive schema, see ice above)
+     *                 hoursOfPrecipitation: Float
+     *                 hoursOfRain: Float
+     *                 hoursOfSnow: Float
+     *                 hoursOfIce: Float
+     *                 cloudCover: Integer
+     *             }
+     *             nighttimeForecast: (recursive schema, see nighttimeForecast above)
+     *             sources: [
+     *                 String
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @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 status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getDailyForecastWithResponseAsync( + String format, RequestOptions requestOptions, Context context) { + return service.getDailyForecast( + this.client.getHost(), this.client.getServiceVersion().getVersion(), format, requestOptions, context); + } + + /** + * **Get Daily Forecast** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

The service returns detailed weather forecast such as temperature and wind by day for the next 1, 5, 10, 15, + * 25, or 45 days for a given coordinate location. The response include details such as temperature, wind, + * precipitation, air quality, and UV index. + * + *

In S0 you can request daily forecast for the next 1, 5, 10, and 15 days. In S1 you can also request daily + * forecast for the next 25 days, and 45 days. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
durationStringNoSpecifies for how many days the daily forecast responses are returned. Available values are + * * `1` - Return forecast data for the next day. Returned by default. + * * `5` - Return forecast data for the next 5 days. + * * `10` - Return forecast data for the next 10 days. + * * `25` - Return forecast data for the next 25 days. Only available in S1 SKU. + * * `45` - Return forecast data for the next 45 days. Only available in S1 SKU.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     summary: {
+     *         startDate: String
+     *         endDate: String
+     *         severity: Integer
+     *         phrase: String
+     *         category: String
+     *     }
+     *     forecasts: [
+     *         {
+     *             dateTime: String
+     *             temperature: {
+     *                 minimum: {
+     *                     value: Float
+     *                     unitLabel: String
+     *                     unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *                 }
+     *                 maximum: (recursive schema, see maximum above)
+     *             }
+     *             realFeelTemperature: (recursive schema, see realFeelTemperature above)
+     *             realFeelTemperatureShade: (recursive schema, see realFeelTemperatureShade above)
+     *             hoursOfSun: Float
+     *             meanTemperatureDeviation: {
+     *                 heating: (recursive schema, see heating above)
+     *                 cooling: (recursive schema, see cooling above)
+     *             }
+     *             airQuality: [
+     *                 {
+     *                     description: String
+     *                     value: Integer
+     *                     category: String
+     *                     categoryValue: Integer
+     *                     airQualityType: String
+     *                 }
+     *             ]
+     *             daytimeForecast: {
+     *                 iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *                 iconPhrase: String
+     *                 localSource: {
+     *                     id: Integer
+     *                     name: String
+     *                     weatherCode: String
+     *                 }
+     *                 hasPrecipitation: Boolean
+     *                 precipitationType: String(Rain/Snow/Ice/Mix)
+     *                 precipitationIntensity: String
+     *                 shortDescription: String
+     *                 longPhrase: String
+     *                 precipitationProbability: Integer
+     *                 thunderstormProbability: Integer
+     *                 rainProbability: Integer
+     *                 snowProbability: Integer
+     *                 iceProbability: Integer
+     *                 wind: {
+     *                     direction: {
+     *                         degrees: Integer
+     *                         description: String
+     *                     }
+     *                     speed: (recursive schema, see speed above)
+     *                 }
+     *                 windGust: (recursive schema, see windGust above)
+     *                 totalLiquid: (recursive schema, see totalLiquid above)
+     *                 rain: (recursive schema, see rain above)
+     *                 snow: (recursive schema, see snow above)
+     *                 ice: (recursive schema, see ice above)
+     *                 hoursOfPrecipitation: Float
+     *                 hoursOfRain: Float
+     *                 hoursOfSnow: Float
+     *                 hoursOfIce: Float
+     *                 cloudCover: Integer
+     *             }
+     *             nighttimeForecast: (recursive schema, see nighttimeForecast above)
+     *             sources: [
+     *                 String
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the response. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getDailyForecastWithResponse(String format, RequestOptions requestOptions) { + return getDailyForecastWithResponseAsync(format, requestOptions).block(); + } + + /** + * **Get Weather along route** + * + *

**Applies to**: S1 pricing tier. + * + *

Weather along a route API returns hyper local (one kilometer or less), up-to-the-minute weather nowcasts, + * weather hazard assessments, and notifications along a route described as a sequence of waypoints. This includes a + * list of weather hazards affecting the waypoint or route, and the aggregated hazard index for each waypoint might + * be used to paint each portion of a route according to how safe it is for the driver. When submitting the + * waypoints, it is recommended to stay within, or close to, the distance that can be traveled within 120-mins or + * shortly after. Data is updated every five minutes. + * + *

The service supplements Azure Maps [Route Service](https://docs.microsoft.com/rest/api/maps/route) that allows + * you to first request a route between an origin and a destination and use that as an input for Weather Along Route + * endpoint. + * + *

In addition, the service supports scenarios to generate weather notifications for waypoints that experience an + * increase in intensity of a weather hazard. For example, if the vehicle is expected to begin experiencing heavy + * rain as it reaches a waypoint, a weather notification for heavy rain will be generated for that waypoint allowing + * the end product to display a heavy rain notification before the driver reaches that waypoint. The trigger for + * when to display the notification for a waypoint could be based, for example, on a + * [geofence](https://docs.microsoft.com/azure/azure-maps/tutorial-iot-hub-maps), or selectable distance to the + * waypoint. + * + *

The API covers all regions of the planet except latitudes above Greenland and Antarctica. + * + *

Query Parameters + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
queryStringYesCoordinates through which the route is calculated, separated by colon (:) and entered in chronological order. A minimum of two waypoints is required. A single API call may contain up to 60 waypoints. + * A waypoint indicates location, ETA, and optional heading: latitude,longitude,ETA,heading, where + * * `Latitude` - Latitude coordinate in decimal degrees. + * * `Longitude` - Longitude coordinate in decimal degrees. + * * `ETA (estimated time of arrival)` - The number of minutes from the present time that it will take for the vehicle to reach the waypoint. Allowed range is from 0.0 to 120.0 minutes. + * * `Heading` - An optional value indicating the vehicle heading as it passes the waypoint. Expressed in clockwise degrees relative to true north. This is issued to calculate sun glare as a driving hazard. Allowed range is from 0.0 to 360.0 degrees. If not provided, a heading will automatically be derived based on the position of neighboring waypoints. + * + * It is recommended to stay within, or close to, the distance that can be traveled within 120-mins or shortly after. This way a more accurate assessment can be provided for the trip and prevent isolated events not being captured between waypoints. Information can and should be updated along the route (especially for trips greater than 2 hours) to continuously pull new waypoints moving forward, but also to ensure that forecast information for content such as precipitation type and intensity is accurate as storms develop and dissipate over time.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     summary: {
+     *         iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *         hazards: {
+     *             maxHazardIndex: String(0/1/2/3/4)
+     *             details: [
+     *                 {
+     *                     hazardIndex: String(0/1/2/3/4)
+     *                     hazardCode: String
+     *                     shortDescription: String
+     *                 }
+     *             ]
+     *         }
+     *     }
+     *     waypoints: [
+     *         {
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             shortDescription: String
+     *             isDaytime: Boolean
+     *             cloudCover: Integer
+     *             temperature: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             wind: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             windGust: (recursive schema, see windGust above)
+     *             precipitation: {
+     *                 dbz: Double
+     *                 type: String
+     *             }
+     *             lightningCount: Integer
+     *             sunGlare: {
+     *                 calculatedVehicleHeading: Integer
+     *                 glareIndex: Integer
+     *             }
+     *             hazards: (recursive schema, see hazards above)
+     *             notifications: [
+     *                 {
+     *                     type: String
+     *                     hazardIndex: String(0/1/2/3/4)
+     *                     hazardCode: String
+     *                     shortDescription: String
+     *                 }
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return this object is returned from a successful Weather Along Route. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getWeatherAlongRouteWithResponseAsync( + String format, RequestOptions requestOptions) { + return FluxUtil.withContext( + context -> + service.getWeatherAlongRoute( + this.client.getHost(), + this.client.getServiceVersion().getVersion(), + format, + requestOptions, + context)); + } + + /** + * **Get Weather along route** + * + *

**Applies to**: S1 pricing tier. + * + *

Weather along a route API returns hyper local (one kilometer or less), up-to-the-minute weather nowcasts, + * weather hazard assessments, and notifications along a route described as a sequence of waypoints. This includes a + * list of weather hazards affecting the waypoint or route, and the aggregated hazard index for each waypoint might + * be used to paint each portion of a route according to how safe it is for the driver. When submitting the + * waypoints, it is recommended to stay within, or close to, the distance that can be traveled within 120-mins or + * shortly after. Data is updated every five minutes. + * + *

The service supplements Azure Maps [Route Service](https://docs.microsoft.com/rest/api/maps/route) that allows + * you to first request a route between an origin and a destination and use that as an input for Weather Along Route + * endpoint. + * + *

In addition, the service supports scenarios to generate weather notifications for waypoints that experience an + * increase in intensity of a weather hazard. For example, if the vehicle is expected to begin experiencing heavy + * rain as it reaches a waypoint, a weather notification for heavy rain will be generated for that waypoint allowing + * the end product to display a heavy rain notification before the driver reaches that waypoint. The trigger for + * when to display the notification for a waypoint could be based, for example, on a + * [geofence](https://docs.microsoft.com/azure/azure-maps/tutorial-iot-hub-maps), or selectable distance to the + * waypoint. + * + *

The API covers all regions of the planet except latitudes above Greenland and Antarctica. + * + *

Query Parameters + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
queryStringYesCoordinates through which the route is calculated, separated by colon (:) and entered in chronological order. A minimum of two waypoints is required. A single API call may contain up to 60 waypoints. + * A waypoint indicates location, ETA, and optional heading: latitude,longitude,ETA,heading, where + * * `Latitude` - Latitude coordinate in decimal degrees. + * * `Longitude` - Longitude coordinate in decimal degrees. + * * `ETA (estimated time of arrival)` - The number of minutes from the present time that it will take for the vehicle to reach the waypoint. Allowed range is from 0.0 to 120.0 minutes. + * * `Heading` - An optional value indicating the vehicle heading as it passes the waypoint. Expressed in clockwise degrees relative to true north. This is issued to calculate sun glare as a driving hazard. Allowed range is from 0.0 to 360.0 degrees. If not provided, a heading will automatically be derived based on the position of neighboring waypoints. + * + * It is recommended to stay within, or close to, the distance that can be traveled within 120-mins or shortly after. This way a more accurate assessment can be provided for the trip and prevent isolated events not being captured between waypoints. Information can and should be updated along the route (especially for trips greater than 2 hours) to continuously pull new waypoints moving forward, but also to ensure that forecast information for content such as precipitation type and intensity is accurate as storms develop and dissipate over time.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     summary: {
+     *         iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *         hazards: {
+     *             maxHazardIndex: String(0/1/2/3/4)
+     *             details: [
+     *                 {
+     *                     hazardIndex: String(0/1/2/3/4)
+     *                     hazardCode: String
+     *                     shortDescription: String
+     *                 }
+     *             ]
+     *         }
+     *     }
+     *     waypoints: [
+     *         {
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             shortDescription: String
+     *             isDaytime: Boolean
+     *             cloudCover: Integer
+     *             temperature: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             wind: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             windGust: (recursive schema, see windGust above)
+     *             precipitation: {
+     *                 dbz: Double
+     *                 type: String
+     *             }
+     *             lightningCount: Integer
+     *             sunGlare: {
+     *                 calculatedVehicleHeading: Integer
+     *                 glareIndex: Integer
+     *             }
+     *             hazards: (recursive schema, see hazards above)
+     *             notifications: [
+     *                 {
+     *                     type: String
+     *                     hazardIndex: String(0/1/2/3/4)
+     *                     hazardCode: String
+     *                     shortDescription: String
+     *                 }
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @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 status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return this object is returned from a successful Weather Along Route. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getWeatherAlongRouteWithResponseAsync( + String format, RequestOptions requestOptions, Context context) { + return service.getWeatherAlongRoute( + this.client.getHost(), this.client.getServiceVersion().getVersion(), format, requestOptions, context); + } + + /** + * **Get Weather along route** + * + *

**Applies to**: S1 pricing tier. + * + *

Weather along a route API returns hyper local (one kilometer or less), up-to-the-minute weather nowcasts, + * weather hazard assessments, and notifications along a route described as a sequence of waypoints. This includes a + * list of weather hazards affecting the waypoint or route, and the aggregated hazard index for each waypoint might + * be used to paint each portion of a route according to how safe it is for the driver. When submitting the + * waypoints, it is recommended to stay within, or close to, the distance that can be traveled within 120-mins or + * shortly after. Data is updated every five minutes. + * + *

The service supplements Azure Maps [Route Service](https://docs.microsoft.com/rest/api/maps/route) that allows + * you to first request a route between an origin and a destination and use that as an input for Weather Along Route + * endpoint. + * + *

In addition, the service supports scenarios to generate weather notifications for waypoints that experience an + * increase in intensity of a weather hazard. For example, if the vehicle is expected to begin experiencing heavy + * rain as it reaches a waypoint, a weather notification for heavy rain will be generated for that waypoint allowing + * the end product to display a heavy rain notification before the driver reaches that waypoint. The trigger for + * when to display the notification for a waypoint could be based, for example, on a + * [geofence](https://docs.microsoft.com/azure/azure-maps/tutorial-iot-hub-maps), or selectable distance to the + * waypoint. + * + *

The API covers all regions of the planet except latitudes above Greenland and Antarctica. + * + *

Query Parameters + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
queryStringYesCoordinates through which the route is calculated, separated by colon (:) and entered in chronological order. A minimum of two waypoints is required. A single API call may contain up to 60 waypoints. + * A waypoint indicates location, ETA, and optional heading: latitude,longitude,ETA,heading, where + * * `Latitude` - Latitude coordinate in decimal degrees. + * * `Longitude` - Longitude coordinate in decimal degrees. + * * `ETA (estimated time of arrival)` - The number of minutes from the present time that it will take for the vehicle to reach the waypoint. Allowed range is from 0.0 to 120.0 minutes. + * * `Heading` - An optional value indicating the vehicle heading as it passes the waypoint. Expressed in clockwise degrees relative to true north. This is issued to calculate sun glare as a driving hazard. Allowed range is from 0.0 to 360.0 degrees. If not provided, a heading will automatically be derived based on the position of neighboring waypoints. + * + * It is recommended to stay within, or close to, the distance that can be traveled within 120-mins or shortly after. This way a more accurate assessment can be provided for the trip and prevent isolated events not being captured between waypoints. Information can and should be updated along the route (especially for trips greater than 2 hours) to continuously pull new waypoints moving forward, but also to ensure that forecast information for content such as precipitation type and intensity is accurate as storms develop and dissipate over time.
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.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     summary: {
+     *         iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *         hazards: {
+     *             maxHazardIndex: String(0/1/2/3/4)
+     *             details: [
+     *                 {
+     *                     hazardIndex: String(0/1/2/3/4)
+     *                     hazardCode: String
+     *                     shortDescription: String
+     *                 }
+     *             ]
+     *         }
+     *     }
+     *     waypoints: [
+     *         {
+     *             iconCode: String(1/2/3/4/5/6/7/8/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/29/30/31/32/33/34/35/36/37/38/39/40/41/42/43/44)
+     *             shortDescription: String
+     *             isDaytime: Boolean
+     *             cloudCover: Integer
+     *             temperature: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             wind: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             windGust: (recursive schema, see windGust above)
+     *             precipitation: {
+     *                 dbz: Double
+     *                 type: String
+     *             }
+     *             lightningCount: Integer
+     *             sunGlare: {
+     *                 calculatedVehicleHeading: Integer
+     *                 glareIndex: Integer
+     *             }
+     *             hazards: (recursive schema, see hazards above)
+     *             notifications: [
+     *                 {
+     *                     type: String
+     *                     hazardIndex: String(0/1/2/3/4)
+     *                     hazardCode: String
+     *                     shortDescription: String
+     *                 }
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return this object is returned from a successful Weather Along Route. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getWeatherAlongRouteWithResponse(String format, RequestOptions requestOptions) { + return getWeatherAlongRouteWithResponseAsync(format, requestOptions).block(); + } + + /** + * **Get Severe Weather Alerts** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

Severe weather phenomenon can significantly impact our everyday life and business operations. For example, + * severe weather conditions such as tropical storms, high winds or flooding can close roads and force logistics + * companies to reroute their fleet causing delays in reaching destinations and breaking the cold chain of + * refrigerated food products.  Azure Maps Severe Weather Alerts API returns the severe weather alerts that are + * available worldwide from both official Government Meteorological Agencies and leading global to + * regional weather alert providers. The service can return details such as alert type, category, level and detailed + * description about the active severe alerts for the requested location, like hurricanes, thunderstorms, lightning, + * heat waves or forest fires. + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
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.
detailsStringNoReturn full details for the severe weather alerts. Available values are + * * `true` - Returns full details. By default all details are returned. + * * `false` - Returns a truncated version of the alerts data, which excludes the area-specific full description of alert details (`alertDetails`).
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             countryCode: String
+     *             alertId: Integer
+     *             description: {
+     *                 description: String
+     *                 status: String
+     *             }
+     *             category: String
+     *             priority: Integer
+     *             classification: String
+     *             level: String
+     *             source: String
+     *             sourceId: Integer
+     *             disclaimer: String
+     *             alertDetails: [
+     *                 {
+     *                     name: String
+     *                     description: String
+     *                     startTime: String
+     *                     endTime: String
+     *                     latestStatus: {
+     *                         localized: String
+     *                         english: String(New/Extend/Cancel/Correct/Expire/Upgrade/Continue/Update)
+     *                     }
+     *                     details: String
+     *                     language: String
+     *                 }
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return this object is returned from a successful Get Severe Weather Alerts call. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getSevereWeatherAlertsWithResponseAsync( + String format, RequestOptions requestOptions) { + return FluxUtil.withContext( + context -> + service.getSevereWeatherAlerts( + this.client.getHost(), + this.client.getServiceVersion().getVersion(), + format, + requestOptions, + context)); + } + + /** + * **Get Severe Weather Alerts** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

Severe weather phenomenon can significantly impact our everyday life and business operations. For example, + * severe weather conditions such as tropical storms, high winds or flooding can close roads and force logistics + * companies to reroute their fleet causing delays in reaching destinations and breaking the cold chain of + * refrigerated food products.  Azure Maps Severe Weather Alerts API returns the severe weather alerts that are + * available worldwide from both official Government Meteorological Agencies and leading global to + * regional weather alert providers. The service can return details such as alert type, category, level and detailed + * description about the active severe alerts for the requested location, like hurricanes, thunderstorms, lightning, + * heat waves or forest fires. + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
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.
detailsStringNoReturn full details for the severe weather alerts. Available values are + * * `true` - Returns full details. By default all details are returned. + * * `false` - Returns a truncated version of the alerts data, which excludes the area-specific full description of alert details (`alertDetails`).
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             countryCode: String
+     *             alertId: Integer
+     *             description: {
+     *                 description: String
+     *                 status: String
+     *             }
+     *             category: String
+     *             priority: Integer
+     *             classification: String
+     *             level: String
+     *             source: String
+     *             sourceId: Integer
+     *             disclaimer: String
+     *             alertDetails: [
+     *                 {
+     *                     name: String
+     *                     description: String
+     *                     startTime: String
+     *                     endTime: String
+     *                     latestStatus: {
+     *                         localized: String
+     *                         english: String(New/Extend/Cancel/Correct/Expire/Upgrade/Continue/Update)
+     *                     }
+     *                     details: String
+     *                     language: String
+     *                 }
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @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 status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return this object is returned from a successful Get Severe Weather Alerts call. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getSevereWeatherAlertsWithResponseAsync( + String format, RequestOptions requestOptions, Context context) { + return service.getSevereWeatherAlerts( + this.client.getHost(), this.client.getServiceVersion().getVersion(), format, requestOptions, context); + } + + /** + * **Get Severe Weather Alerts** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

Severe weather phenomenon can significantly impact our everyday life and business operations. For example, + * severe weather conditions such as tropical storms, high winds or flooding can close roads and force logistics + * companies to reroute their fleet causing delays in reaching destinations and breaking the cold chain of + * refrigerated food products.  Azure Maps Severe Weather Alerts API returns the severe weather alerts that are + * available worldwide from both official Government Meteorological Agencies and leading global to + * regional weather alert providers. The service can return details such as alert type, category, level and detailed + * description about the active severe alerts for the requested location, like hurricanes, thunderstorms, lightning, + * heat waves or forest fires. + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
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.
detailsStringNoReturn full details for the severe weather alerts. Available values are + * * `true` - Returns full details. By default all details are returned. + * * `false` - Returns a truncated version of the alerts data, which excludes the area-specific full description of alert details (`alertDetails`).
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             countryCode: String
+     *             alertId: Integer
+     *             description: {
+     *                 description: String
+     *                 status: String
+     *             }
+     *             category: String
+     *             priority: Integer
+     *             classification: String
+     *             level: String
+     *             source: String
+     *             sourceId: Integer
+     *             disclaimer: String
+     *             alertDetails: [
+     *                 {
+     *                     name: String
+     *                     description: String
+     *                     startTime: String
+     *                     endTime: String
+     *                     latestStatus: {
+     *                         localized: String
+     *                         english: String(New/Extend/Cancel/Correct/Expire/Upgrade/Continue/Update)
+     *                     }
+     *                     details: String
+     *                     language: String
+     *                 }
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return this object is returned from a successful Get Severe Weather Alerts call. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getSevereWeatherAlertsWithResponse(String format, RequestOptions requestOptions) { + return getSevereWeatherAlertsWithResponseAsync(format, requestOptions).block(); + } + + /** + * **Get Daily Indices** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

There may be times when you want to know if the weather conditions are optimal for a specific activity, for + * example, for outdoor construction, indoor activities, running or farming including soil moisture information. + * Azure Maps Indices API returns index values that will guide end users to plan future activities. For example, a + * health mobile application can notify users that today is good weather for running or for other outdoors + * activities like for playing golf, and retail stores can optimize their digital marketing campaigns based on + * predicted index values. The service returns in daily indices values for current and next 5, 10 and 15 days + * starting from current day. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
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.
durationStringNoSpecifies for how many days the daily indices are returned. By default, the indices data for the current day will be returned. When requesting future indices data, the current day is included in the response as day 1. Available values are + * * `1` - Return daily index data for the current day. Default value. + * * `5` - Return 5 days of daily index data starting from the current day. + * * `10` - Return 10 days of daily index data starting from the current day. + * * `15` - Return 15 days of daily index data starting from the current day.
indexIdStringNoNumeric index identifier that can be used for restricting returned results to the corresponding index type. Cannot be paired with `indexGroupId`. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details and to see the supported indices.
indexGroupIdStringNoNumeric index group identifier that can be used for restricting returned results to the corresponding subset of indices (index group). Cannot be paired with `indexId`. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details and to see the supported index groups.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             indexName: String
+     *             indexId: Integer
+     *             dateTime: String
+     *             value: Float
+     *             categoryDescription: String
+     *             categoryValue: Integer
+     *             isAscending: Boolean
+     *             description: String
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return this object is returned from a successful Get Daily Indices call. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getDailyIndicesWithResponseAsync(String format, RequestOptions requestOptions) { + return FluxUtil.withContext( + context -> + service.getDailyIndices( + this.client.getHost(), + this.client.getServiceVersion().getVersion(), + format, + requestOptions, + context)); + } + + /** + * **Get Daily Indices** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

There may be times when you want to know if the weather conditions are optimal for a specific activity, for + * example, for outdoor construction, indoor activities, running or farming including soil moisture information. + * Azure Maps Indices API returns index values that will guide end users to plan future activities. For example, a + * health mobile application can notify users that today is good weather for running or for other outdoors + * activities like for playing golf, and retail stores can optimize their digital marketing campaigns based on + * predicted index values. The service returns in daily indices values for current and next 5, 10 and 15 days + * starting from current day. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
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.
durationStringNoSpecifies for how many days the daily indices are returned. By default, the indices data for the current day will be returned. When requesting future indices data, the current day is included in the response as day 1. Available values are + * * `1` - Return daily index data for the current day. Default value. + * * `5` - Return 5 days of daily index data starting from the current day. + * * `10` - Return 10 days of daily index data starting from the current day. + * * `15` - Return 15 days of daily index data starting from the current day.
indexIdStringNoNumeric index identifier that can be used for restricting returned results to the corresponding index type. Cannot be paired with `indexGroupId`. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details and to see the supported indices.
indexGroupIdStringNoNumeric index group identifier that can be used for restricting returned results to the corresponding subset of indices (index group). Cannot be paired with `indexId`. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details and to see the supported index groups.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             indexName: String
+     *             indexId: Integer
+     *             dateTime: String
+     *             value: Float
+     *             categoryDescription: String
+     *             categoryValue: Integer
+     *             isAscending: Boolean
+     *             description: String
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @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 status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return this object is returned from a successful Get Daily Indices call. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getDailyIndicesWithResponseAsync( + String format, RequestOptions requestOptions, Context context) { + return service.getDailyIndices( + this.client.getHost(), this.client.getServiceVersion().getVersion(), format, requestOptions, context); + } + + /** + * **Get Daily Indices** + * + *

**Applies to**: S0 and S1 pricing tiers. + * + *

There may be times when you want to know if the weather conditions are optimal for a specific activity, for + * example, for outdoor construction, indoor activities, running or farming including soil moisture information. + * Azure Maps Indices API returns index values that will guide end users to plan future activities. For example, a + * health mobile application can notify users that today is good weather for running or for other outdoors + * activities like for playing golf, and retail stores can optimize their digital marketing campaigns based on + * predicted index values. The service returns in daily indices values for current and next 5, 10 and 15 days + * starting from current day. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
coordinatesStringYesThe applicable query specified as a comma separated string composed by latitude followed by longitude e.g. "47.641268,-122.125679".
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.
durationStringNoSpecifies for how many days the daily indices are returned. By default, the indices data for the current day will be returned. When requesting future indices data, the current day is included in the response as day 1. Available values are + * * `1` - Return daily index data for the current day. Default value. + * * `5` - Return 5 days of daily index data starting from the current day. + * * `10` - Return 10 days of daily index data starting from the current day. + * * `15` - Return 15 days of daily index data starting from the current day.
indexIdStringNoNumeric index identifier that can be used for restricting returned results to the corresponding index type. Cannot be paired with `indexGroupId`. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details and to see the supported indices.
indexGroupIdStringNoNumeric index group identifier that can be used for restricting returned results to the corresponding subset of indices (index group). Cannot be paired with `indexId`. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details and to see the supported index groups.
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             indexName: String
+     *             indexId: Integer
+     *             dateTime: String
+     *             value: Float
+     *             categoryDescription: String
+     *             categoryValue: Integer
+     *             isAscending: Boolean
+     *             description: String
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return this object is returned from a successful Get Daily Indices call. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getDailyIndicesWithResponse(String format, RequestOptions requestOptions) { + return getDailyIndicesWithResponseAsync(format, requestOptions).block(); + } + + /** + * **Get Tropical Active Storms** + * + *

**Applies to**: Gen 1 (S0 and S1) and Gen 2 pricing tiers. + * + *

Get all government-issued active tropical storms. Information about the tropical storms includes, government + * ID, basin ID, year of origin, name and if it is subtropical. + * + *

Query Parameters + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             year: String
+     *             basinId: String(AL/EP/SI/NI/CP/NP/SP)
+     *             name: String
+     *             isActive: Boolean
+     *             isSubtropical: Boolean
+     *             govId: Integer
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return all government-issued active storms. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getTropicalActiveStormsWithResponseAsync( + String format, RequestOptions requestOptions) { + return FluxUtil.withContext( + context -> + service.getTropicalActiveStorms( + this.client.getHost(), + this.client.getServiceVersion().getVersion(), + format, + requestOptions, + context)); + } + + /** + * **Get Tropical Active Storms** + * + *

**Applies to**: Gen 1 (S0 and S1) and Gen 2 pricing tiers. + * + *

Get all government-issued active tropical storms. Information about the tropical storms includes, government + * ID, basin ID, year of origin, name and if it is subtropical. + * + *

Query Parameters + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             year: String
+     *             basinId: String(AL/EP/SI/NI/CP/NP/SP)
+     *             name: String
+     *             isActive: Boolean
+     *             isSubtropical: Boolean
+     *             govId: Integer
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @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 status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return all government-issued active storms. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getTropicalActiveStormsWithResponseAsync( + String format, RequestOptions requestOptions, Context context) { + return service.getTropicalActiveStorms( + this.client.getHost(), this.client.getServiceVersion().getVersion(), format, requestOptions, context); + } + + /** + * **Get Tropical Active Storms** + * + *

**Applies to**: Gen 1 (S0 and S1) and Gen 2 pricing tiers. + * + *

Get all government-issued active tropical storms. Information about the tropical storms includes, government + * ID, basin ID, year of origin, name and if it is subtropical. + * + *

Query Parameters + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             year: String
+     *             basinId: String(AL/EP/SI/NI/CP/NP/SP)
+     *             name: String
+     *             isActive: Boolean
+     *             isSubtropical: Boolean
+     *             govId: Integer
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return all government-issued active storms. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getTropicalActiveStormsWithResponse(String format, RequestOptions requestOptions) { + return getTropicalActiveStormsWithResponseAsync(format, requestOptions).block(); + } + + /** + * **Get Tropical Storm Search** + * + *

**Applies to**: Gen 1 (S0 and S1) and Gen 2 pricing tiers. + * + *

Search government-issued tropical storms by year, basin ID, and government ID. Information about the tropical + * storms includes, government ID, basin ID, status, year, name and if it is subtropical. + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
yearintYesYear of the cyclone(s)
basinIdStringNoBasin identifier
govIdStringNoGovernment storm Id
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             year: String
+     *             basinId: String(AL/EP/SI/NI/CP/NP/SP)
+     *             name: String
+     *             isActive: Boolean
+     *             isRetired: Boolean
+     *             isSubtropical: Boolean
+     *             govId: Integer
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return search government-issued storms. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getTropicalStormSearchWithResponseAsync( + String format, RequestOptions requestOptions) { + return FluxUtil.withContext( + context -> + service.getTropicalStormSearch( + this.client.getHost(), + this.client.getServiceVersion().getVersion(), + format, + requestOptions, + context)); + } + + /** + * **Get Tropical Storm Search** + * + *

**Applies to**: Gen 1 (S0 and S1) and Gen 2 pricing tiers. + * + *

Search government-issued tropical storms by year, basin ID, and government ID. Information about the tropical + * storms includes, government ID, basin ID, status, year, name and if it is subtropical. + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
yearintYesYear of the cyclone(s)
basinIdStringNoBasin identifier
govIdStringNoGovernment storm Id
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             year: String
+     *             basinId: String(AL/EP/SI/NI/CP/NP/SP)
+     *             name: String
+     *             isActive: Boolean
+     *             isRetired: Boolean
+     *             isSubtropical: Boolean
+     *             govId: Integer
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @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 status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return search government-issued storms. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getTropicalStormSearchWithResponseAsync( + String format, RequestOptions requestOptions, Context context) { + return service.getTropicalStormSearch( + this.client.getHost(), this.client.getServiceVersion().getVersion(), format, requestOptions, context); + } + + /** + * **Get Tropical Storm Search** + * + *

**Applies to**: Gen 1 (S0 and S1) and Gen 2 pricing tiers. + * + *

Search government-issued tropical storms by year, basin ID, and government ID. Information about the tropical + * storms includes, government ID, basin ID, status, year, name and if it is subtropical. + * + *

Query Parameters + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
yearintYesYear of the cyclone(s)
basinIdStringNoBasin identifier
govIdStringNoGovernment storm Id
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             year: String
+     *             basinId: String(AL/EP/SI/NI/CP/NP/SP)
+     *             name: String
+     *             isActive: Boolean
+     *             isRetired: Boolean
+     *             isSubtropical: Boolean
+     *             govId: Integer
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return search government-issued storms. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getTropicalStormSearchWithResponse(String format, RequestOptions requestOptions) { + return getTropicalStormSearchWithResponseAsync(format, requestOptions).block(); + } + + /** + * **Get Tropical Storm Forecasts** + * + *

**Applies to**: Gen 1 (S0 and S1) and Gen 2 pricing tiers. + * + *

Get all government-issued tropical storm forecasts. Information about the forecasted tropical storms includes, + * location, status, date the forecast was created, window, wind speed and wind radii. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
yearintYesYear of the cyclone(s)
basinIdStringYesBasin identifier
govIdintYesGovernment storm Id
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
detailsStringNoWhen true, wind radii summary data is included in the response
radiiGeometryStringNoWhen true, wind radii summary data and geoJSON details are included in the response
windowGeometryStringNoWhen true, window geometry data (geoJSON) is included in the response
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             dateTime: String
+     *             initializedDateTime: String
+     *             location: {
+     *                 latitude: Double
+     *                 longitude: Double
+     *             }
+     *             maxWindGust: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             sustainedWind: (recursive schema, see sustainedWind above)
+     *             status: String
+     *             window: {
+     *                 left: (recursive schema, see left above)
+     *                 right: (recursive schema, see right above)
+     *                 beginDateTime: String
+     *                 endDateTime: String
+     *                 beginStatus: String
+     *                 endStatus: String
+     *                 geometry: {
+     *                 }
+     *             }
+     *             windRadiiSummary: [
+     *                 {
+     *                     dateTime: String
+     *                     windSpeed: (recursive schema, see windSpeed above)
+     *                     radiusSectorData: [
+     *                         {
+     *                             beginBearing: Double
+     *                             endBearing: Double
+     *                             range: Double
+     *                         }
+     *                     ]
+     *                     radiiGeometry: (recursive schema, see radiiGeometry above)
+     *                 }
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the list of Government-issued forecasts. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getTropicalStormForecastWithResponseAsync( + String format, RequestOptions requestOptions) { + return FluxUtil.withContext( + context -> + service.getTropicalStormForecast( + this.client.getHost(), + this.client.getServiceVersion().getVersion(), + format, + requestOptions, + context)); + } + + /** + * **Get Tropical Storm Forecasts** + * + *

**Applies to**: Gen 1 (S0 and S1) and Gen 2 pricing tiers. + * + *

Get all government-issued tropical storm forecasts. Information about the forecasted tropical storms includes, + * location, status, date the forecast was created, window, wind speed and wind radii. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
yearintYesYear of the cyclone(s)
basinIdStringYesBasin identifier
govIdintYesGovernment storm Id
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
detailsStringNoWhen true, wind radii summary data is included in the response
radiiGeometryStringNoWhen true, wind radii summary data and geoJSON details are included in the response
windowGeometryStringNoWhen true, window geometry data (geoJSON) is included in the response
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             dateTime: String
+     *             initializedDateTime: String
+     *             location: {
+     *                 latitude: Double
+     *                 longitude: Double
+     *             }
+     *             maxWindGust: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             sustainedWind: (recursive schema, see sustainedWind above)
+     *             status: String
+     *             window: {
+     *                 left: (recursive schema, see left above)
+     *                 right: (recursive schema, see right above)
+     *                 beginDateTime: String
+     *                 endDateTime: String
+     *                 beginStatus: String
+     *                 endStatus: String
+     *                 geometry: {
+     *                 }
+     *             }
+     *             windRadiiSummary: [
+     *                 {
+     *                     dateTime: String
+     *                     windSpeed: (recursive schema, see windSpeed above)
+     *                     radiusSectorData: [
+     *                         {
+     *                             beginBearing: Double
+     *                             endBearing: Double
+     *                             range: Double
+     *                         }
+     *                     ]
+     *                     radiiGeometry: (recursive schema, see radiiGeometry above)
+     *                 }
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @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 status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the list of Government-issued forecasts. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getTropicalStormForecastWithResponseAsync( + String format, RequestOptions requestOptions, Context context) { + return service.getTropicalStormForecast( + this.client.getHost(), this.client.getServiceVersion().getVersion(), format, requestOptions, context); + } + + /** + * **Get Tropical Storm Forecasts** + * + *

**Applies to**: Gen 1 (S0 and S1) and Gen 2 pricing tiers. + * + *

Get all government-issued tropical storm forecasts. Information about the forecasted tropical storms includes, + * location, status, date the forecast was created, window, wind speed and wind radii. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
yearintYesYear of the cyclone(s)
basinIdStringYesBasin identifier
govIdintYesGovernment storm Id
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
detailsStringNoWhen true, wind radii summary data is included in the response
radiiGeometryStringNoWhen true, wind radii summary data and geoJSON details are included in the response
windowGeometryStringNoWhen true, window geometry data (geoJSON) is included in the response
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             dateTime: String
+     *             initializedDateTime: String
+     *             location: {
+     *                 latitude: Double
+     *                 longitude: Double
+     *             }
+     *             maxWindGust: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             sustainedWind: (recursive schema, see sustainedWind above)
+     *             status: String
+     *             window: {
+     *                 left: (recursive schema, see left above)
+     *                 right: (recursive schema, see right above)
+     *                 beginDateTime: String
+     *                 endDateTime: String
+     *                 beginStatus: String
+     *                 endStatus: String
+     *                 geometry: {
+     *                 }
+     *             }
+     *             windRadiiSummary: [
+     *                 {
+     *                     dateTime: String
+     *                     windSpeed: (recursive schema, see windSpeed above)
+     *                     radiusSectorData: [
+     *                         {
+     *                             beginBearing: Double
+     *                             endBearing: Double
+     *                             range: Double
+     *                         }
+     *                     ]
+     *                     radiiGeometry: (recursive schema, see radiiGeometry above)
+     *                 }
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return the list of Government-issued forecasts. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getTropicalStormForecastWithResponse(String format, RequestOptions requestOptions) { + return getTropicalStormForecastWithResponseAsync(format, requestOptions).block(); + } + + /** + * **Get Tropical Storm Locations** + * + *

**Applies to**: Gen 1 (S0 and S1) and Gen 2 pricing tiers. + * + *

Get locations of an individual government-issued tropical storms. Information about the tropical storms + * includes, location coordinates, geometry, basin ID, date, wind details and wind radii. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
yearintYesYear of the cyclone(s)
basinIdStringYesBasin identifier
govIdintYesGovernment storm Id
detailsStringNoWhen true, wind radii summary data is included in the response
radiiGeometryStringNoWhen true, wind radii summary data and geoJSON details are included in the response
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
currentStringNoWhen true, return the current storm location
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             dateTime: String
+     *             location: {
+     *                 latitude: Double
+     *                 longitude: Double
+     *             }
+     *             maxWindGust: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             sustainedWind: (recursive schema, see sustainedWind above)
+     *             minimumPressure: (recursive schema, see minimumPressure above)
+     *             movement: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             status: String
+     *             isSubtropical: Boolean
+     *             hasTropicalPotential: Boolean
+     *             isPostTropical: Boolean
+     *             windRadiiSummary: [
+     *                 {
+     *                     dateTime: String
+     *                     windSpeed: (recursive schema, see windSpeed above)
+     *                     radiusSectorData: [
+     *                         {
+     *                             beginBearing: Double
+     *                             endBearing: Double
+     *                             range: Double
+     *                         }
+     *                     ]
+     *                     radiiGeometry: {
+     *                     }
+     *                 }
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return locations for an individual government-issued storm. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getTropicalStormLocationsWithResponseAsync( + String format, RequestOptions requestOptions) { + return FluxUtil.withContext( + context -> + service.getTropicalStormLocations( + this.client.getHost(), + this.client.getServiceVersion().getVersion(), + format, + requestOptions, + context)); + } + + /** + * **Get Tropical Storm Locations** + * + *

**Applies to**: Gen 1 (S0 and S1) and Gen 2 pricing tiers. + * + *

Get locations of an individual government-issued tropical storms. Information about the tropical storms + * includes, location coordinates, geometry, basin ID, date, wind details and wind radii. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
yearintYesYear of the cyclone(s)
basinIdStringYesBasin identifier
govIdintYesGovernment storm Id
detailsStringNoWhen true, wind radii summary data is included in the response
radiiGeometryStringNoWhen true, wind radii summary data and geoJSON details are included in the response
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
currentStringNoWhen true, return the current storm location
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             dateTime: String
+     *             location: {
+     *                 latitude: Double
+     *                 longitude: Double
+     *             }
+     *             maxWindGust: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             sustainedWind: (recursive schema, see sustainedWind above)
+     *             minimumPressure: (recursive schema, see minimumPressure above)
+     *             movement: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             status: String
+     *             isSubtropical: Boolean
+     *             hasTropicalPotential: Boolean
+     *             isPostTropical: Boolean
+     *             windRadiiSummary: [
+     *                 {
+     *                     dateTime: String
+     *                     windSpeed: (recursive schema, see windSpeed above)
+     *                     radiusSectorData: [
+     *                         {
+     *                             beginBearing: Double
+     *                             endBearing: Double
+     *                             range: Double
+     *                         }
+     *                     ]
+     *                     radiiGeometry: {
+     *                     }
+     *                 }
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @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 status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return locations for an individual government-issued storm. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Mono> getTropicalStormLocationsWithResponseAsync( + String format, RequestOptions requestOptions, Context context) { + return service.getTropicalStormLocations( + this.client.getHost(), this.client.getServiceVersion().getVersion(), format, requestOptions, context); + } + + /** + * **Get Tropical Storm Locations** + * + *

**Applies to**: Gen 1 (S0 and S1) and Gen 2 pricing tiers. + * + *

Get locations of an individual government-issued tropical storms. Information about the tropical storms + * includes, location coordinates, geometry, basin ID, date, wind details and wind radii. + * + *

Query Parameters + * + * + * + * + * + * + * + * + * + * + * + * + *
Query Parameters
NameTypeRequiredDescription
apiVersionStringYesApi Version
yearintYesYear of the cyclone(s)
basinIdStringYesBasin identifier
govIdintYesGovernment storm Id
detailsStringNoWhen true, wind radii summary data is included in the response
radiiGeometryStringNoWhen true, wind radii summary data and geoJSON details are included in the response
unitStringNoSpecifies to return the data in either metric units or imperial units. Default value is metric.
currentStringNoWhen true, return the current storm location
+ * + *

Header Parameters + * + * + * + * + * + *
Header Parameters
NameTypeRequiredDescription
clientIdStringNoSpecifies 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
+     * {
+     *     results: [
+     *         {
+     *             dateTime: String
+     *             location: {
+     *                 latitude: Double
+     *                 longitude: Double
+     *             }
+     *             maxWindGust: {
+     *                 value: Float
+     *                 unitLabel: String
+     *                 unitType: String(0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/31)
+     *             }
+     *             sustainedWind: (recursive schema, see sustainedWind above)
+     *             minimumPressure: (recursive schema, see minimumPressure above)
+     *             movement: {
+     *                 direction: {
+     *                     degrees: Integer
+     *                     description: String
+     *                 }
+     *                 speed: (recursive schema, see speed above)
+     *             }
+     *             status: String
+     *             isSubtropical: Boolean
+     *             hasTropicalPotential: Boolean
+     *             isPostTropical: Boolean
+     *             windRadiiSummary: [
+     *                 {
+     *                     dateTime: String
+     *                     windSpeed: (recursive schema, see windSpeed above)
+     *                     radiusSectorData: [
+     *                         {
+     *                             beginBearing: Double
+     *                             endBearing: Double
+     *                             range: Double
+     *                         }
+     *                     ]
+     *                     radiiGeometry: {
+     *                     }
+     *                 }
+     *             ]
+     *         }
+     *     ]
+     * }
+     * }
+ * + * @param format Desired format of the response. Only `json` format is supported. + * @param requestOptions The options to configure the HTTP request before HTTP client sends it. + * @throws HttpResponseException thrown if status code is 400 or above, if throwOnError in requestOptions is not + * false. + * @return locations for an individual government-issued storm. + */ + @ServiceMethod(returns = ReturnType.SINGLE) + public Response getTropicalStormLocationsWithResponse(String format, RequestOptions requestOptions) { + return getTropicalStormLocationsWithResponseAsync(format, requestOptions).block(); + } +} diff --git a/sdk/maps/azure-maps-weather/src/main/java/com/azure/maps/weather/package-info.java b/sdk/maps/azure-maps-weather/src/main/java/com/azure/maps/weather/package-info.java new file mode 100644 index 000000000000..28e5e831d80e --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/main/java/com/azure/maps/weather/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 AzureMapsWeatherService. null. */ +package com.azure.maps.weather; diff --git a/sdk/maps/azure-maps-weather/src/main/java/module-info.java b/sdk/maps/azure-maps-weather/src/main/java/module-info.java new file mode 100644 index 000000000000..ac7852b6ecde --- /dev/null +++ b/sdk/maps/azure-maps-weather/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.weather { + requires transitive com.azure.core; + + exports com.azure.maps.weather; +} diff --git a/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/ReadmeSamples.java b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/ReadmeSamples.java new file mode 100644 index 000000000000..7b231915cb31 --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/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.weather; + +public final class ReadmeSamples { + public void readmeSamples() { + // BEGIN: com.azure.maps.weather.readme + // END: com.azure.maps.weather.readme + } +} diff --git a/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/GetTropicalActiveStorms.java b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/GetTropicalActiveStorms.java new file mode 100644 index 000000000000..e66a369ff705 --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/GetTropicalActiveStorms.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.weather.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.weather.AzureMapsWeatherServiceBuilder; +import com.azure.maps.weather.AzureMapsWeatherServiceClient; + +public class GetTropicalActiveStorms { + public static void main(String[] args) { + AzureMapsWeatherServiceClient client = + new AzureMapsWeatherServiceBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildAzureMapsWeatherServiceClient(); + RequestOptions requestOptions = new RequestOptions(); + Response response = client.getTropicalActiveStormsWithResponse("json", requestOptions); + } +} diff --git a/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/GetTropicalStormCurrentLocation.java b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/GetTropicalStormCurrentLocation.java new file mode 100644 index 000000000000..0602aa4f5b55 --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/GetTropicalStormCurrentLocation.java @@ -0,0 +1,28 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.weather.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.weather.AzureMapsWeatherServiceBuilder; +import com.azure.maps.weather.AzureMapsWeatherServiceClient; + +public class GetTropicalStormCurrentLocation { + public static void main(String[] args) { + AzureMapsWeatherServiceClient client = + new AzureMapsWeatherServiceBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildAzureMapsWeatherServiceClient(); + RequestOptions requestOptions = new RequestOptions(); + requestOptions.addQueryParam("current", "true"); + requestOptions.addQueryParam("year", 2021); + requestOptions.addQueryParam("govId", 2); + requestOptions.addQueryParam("basinId", "NP"); + Response response = client.getTropicalStormLocationsWithResponse("json", requestOptions); + } +} diff --git a/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/GetTropicalStormForecasts.java b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/GetTropicalStormForecasts.java new file mode 100644 index 000000000000..1249f14a4c76 --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/GetTropicalStormForecasts.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.weather.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.weather.AzureMapsWeatherServiceBuilder; +import com.azure.maps.weather.AzureMapsWeatherServiceClient; + +public class GetTropicalStormForecasts { + public static void main(String[] args) { + AzureMapsWeatherServiceClient client = + new AzureMapsWeatherServiceBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildAzureMapsWeatherServiceClient(); + RequestOptions requestOptions = new RequestOptions(); + requestOptions.addQueryParam("basinId", "NP"); + requestOptions.addQueryParam("year", 2021); + requestOptions.addQueryParam("govId", 2); + Response response = client.getTropicalStormForecastWithResponse("json", requestOptions); + } +} diff --git a/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/GetTropicalStormLocations.java b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/GetTropicalStormLocations.java new file mode 100644 index 000000000000..c91b14bccb7e --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/GetTropicalStormLocations.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.weather.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.weather.AzureMapsWeatherServiceBuilder; +import com.azure.maps.weather.AzureMapsWeatherServiceClient; + +public class GetTropicalStormLocations { + public static void main(String[] args) { + AzureMapsWeatherServiceClient client = + new AzureMapsWeatherServiceBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildAzureMapsWeatherServiceClient(); + RequestOptions requestOptions = new RequestOptions(); + requestOptions.addQueryParam("basinId", "NP"); + requestOptions.addQueryParam("year", 2021); + requestOptions.addQueryParam("govId", 1); + Response response = client.getTropicalStormLocationsWithResponse("json", requestOptions); + } +} diff --git a/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/GetTropicalStormSearch.java b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/GetTropicalStormSearch.java new file mode 100644 index 000000000000..7d5c6ccbe3c7 --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/GetTropicalStormSearch.java @@ -0,0 +1,26 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.weather.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.weather.AzureMapsWeatherServiceBuilder; +import com.azure.maps.weather.AzureMapsWeatherServiceClient; + +public class GetTropicalStormSearch { + public static void main(String[] args) { + AzureMapsWeatherServiceClient client = + new AzureMapsWeatherServiceBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildAzureMapsWeatherServiceClient(); + RequestOptions requestOptions = new RequestOptions(); + requestOptions.addQueryParam("basinId", "AL"); + requestOptions.addQueryParam("year", 2021); + Response response = client.getTropicalStormSearchWithResponse("json", requestOptions); + } +} diff --git a/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/GetTropicalStormSearchWithThreeProperties.java b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/GetTropicalStormSearchWithThreeProperties.java new file mode 100644 index 000000000000..a1792756ebbe --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/GetTropicalStormSearchWithThreeProperties.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.weather.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.weather.AzureMapsWeatherServiceBuilder; +import com.azure.maps.weather.AzureMapsWeatherServiceClient; + +public class GetTropicalStormSearchWithThreeProperties { + public static void main(String[] args) { + AzureMapsWeatherServiceClient client = + new AzureMapsWeatherServiceBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildAzureMapsWeatherServiceClient(); + RequestOptions requestOptions = new RequestOptions(); + requestOptions.addQueryParam("basinId", "AL"); + requestOptions.addQueryParam("year", 2021); + requestOptions.addQueryParam("govId", "1"); + Response response = client.getTropicalStormSearchWithResponse("json", requestOptions); + } +} diff --git a/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveDailyIndicesValuesFromCurrentDay.java b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveDailyIndicesValuesFromCurrentDay.java new file mode 100644 index 000000000000..b2145cf80b0c --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveDailyIndicesValuesFromCurrentDay.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.weather.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.weather.AzureMapsWeatherServiceBuilder; +import com.azure.maps.weather.AzureMapsWeatherServiceClient; + +public class SuccessfullyRetrieveDailyIndicesValuesFromCurrentDay { + public static void main(String[] args) { + AzureMapsWeatherServiceClient client = + new AzureMapsWeatherServiceBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildAzureMapsWeatherServiceClient(); + RequestOptions requestOptions = new RequestOptions(); + requestOptions.addQueryParam("indexGroupId", "11"); + Response response = client.getDailyIndicesWithResponse("json", requestOptions); + } +} diff --git a/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveDetailedCurrentWeatherConditionsForAGivenCoordinateLocation.java b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveDetailedCurrentWeatherConditionsForAGivenCoordinateLocation.java new file mode 100644 index 000000000000..ffc9f7de52bf --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveDetailedCurrentWeatherConditionsForAGivenCoordinateLocation.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.weather.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.weather.AzureMapsWeatherServiceBuilder; +import com.azure.maps.weather.AzureMapsWeatherServiceClient; + +public class SuccessfullyRetrieveDetailedCurrentWeatherConditionsForAGivenCoordinateLocation { + public static void main(String[] args) { + AzureMapsWeatherServiceClient client = + new AzureMapsWeatherServiceBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildAzureMapsWeatherServiceClient(); + RequestOptions requestOptions = new RequestOptions(); + Response response = client.getCurrentConditionsWithResponse("json", requestOptions); + } +} diff --git a/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveDetailedDailyWeatherForecastForAGivenCoordinateLocation.java b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveDetailedDailyWeatherForecastForAGivenCoordinateLocation.java new file mode 100644 index 000000000000..40b5e0657e52 --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveDetailedDailyWeatherForecastForAGivenCoordinateLocation.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.weather.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.weather.AzureMapsWeatherServiceBuilder; +import com.azure.maps.weather.AzureMapsWeatherServiceClient; + +public class SuccessfullyRetrieveDetailedDailyWeatherForecastForAGivenCoordinateLocation { + public static void main(String[] args) { + AzureMapsWeatherServiceClient client = + new AzureMapsWeatherServiceBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildAzureMapsWeatherServiceClient(); + RequestOptions requestOptions = new RequestOptions(); + requestOptions.addQueryParam("duration", "5"); + Response response = client.getDailyForecastWithResponse("json", requestOptions); + } +} diff --git a/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveDetailedWeatherCastsAlongARouteDescribedAsASequenceOfWaypoints.java b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveDetailedWeatherCastsAlongARouteDescribedAsASequenceOfWaypoints.java new file mode 100644 index 000000000000..0bb5ef17a04e --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveDetailedWeatherCastsAlongARouteDescribedAsASequenceOfWaypoints.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.weather.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.weather.AzureMapsWeatherServiceBuilder; +import com.azure.maps.weather.AzureMapsWeatherServiceClient; + +public class SuccessfullyRetrieveDetailedWeatherCastsAlongARouteDescribedAsASequenceOfWaypoints { + public static void main(String[] args) { + AzureMapsWeatherServiceClient client = + new AzureMapsWeatherServiceBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildAzureMapsWeatherServiceClient(); + RequestOptions requestOptions = new RequestOptions(); + requestOptions.addQueryParam( + "query", + "38.907,-77.037,0:38.907,-77.009,10:38.926,-76.928,20:39.033,-76.852,30:39.168,-76.732,40:39.269,-76.634,50:39.287,-76.612,60"); + Response response = client.getWeatherAlongRouteWithResponse("json", requestOptions); + } +} diff --git a/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveDetailedWeatherForecastByAGivenLocation.java b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveDetailedWeatherForecastByAGivenLocation.java new file mode 100644 index 000000000000..4210365453ee --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveDetailedWeatherForecastByAGivenLocation.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.weather.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.weather.AzureMapsWeatherServiceBuilder; +import com.azure.maps.weather.AzureMapsWeatherServiceClient; + +public class SuccessfullyRetrieveDetailedWeatherForecastByAGivenLocation { + public static void main(String[] args) { + AzureMapsWeatherServiceClient client = + new AzureMapsWeatherServiceBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildAzureMapsWeatherServiceClient(); + RequestOptions requestOptions = new RequestOptions(); + requestOptions.addQueryParam("duration", "1"); + Response response = client.getQuarterDayForecastWithResponse("json", requestOptions); + } +} diff --git a/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveDetailedWeatherForecastByTheHour.java b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveDetailedWeatherForecastByTheHour.java new file mode 100644 index 000000000000..3726581b2ac7 --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveDetailedWeatherForecastByTheHour.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.weather.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.weather.AzureMapsWeatherServiceBuilder; +import com.azure.maps.weather.AzureMapsWeatherServiceClient; + +public class SuccessfullyRetrieveDetailedWeatherForecastByTheHour { + public static void main(String[] args) { + AzureMapsWeatherServiceClient client = + new AzureMapsWeatherServiceBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildAzureMapsWeatherServiceClient(); + RequestOptions requestOptions = new RequestOptions(); + requestOptions.addQueryParam("duration", "12"); + Response response = client.getHourlyForecastWithResponse("json", requestOptions); + } +} diff --git a/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveMinuteByMinuteForecastsForAGivenLocation.java b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveMinuteByMinuteForecastsForAGivenLocation.java new file mode 100644 index 000000000000..3cc725e99c2b --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveMinuteByMinuteForecastsForAGivenLocation.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.weather.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.weather.AzureMapsWeatherServiceBuilder; +import com.azure.maps.weather.AzureMapsWeatherServiceClient; + +public class SuccessfullyRetrieveMinuteByMinuteForecastsForAGivenLocation { + public static void main(String[] args) { + AzureMapsWeatherServiceClient client = + new AzureMapsWeatherServiceBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildAzureMapsWeatherServiceClient(); + RequestOptions requestOptions = new RequestOptions(); + requestOptions.addQueryParam("interval", "15"); + Response response = client.getMinuteForecastWithResponse("json", requestOptions); + } +} diff --git a/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveSevereWeatherAlerts.java b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveSevereWeatherAlerts.java new file mode 100644 index 000000000000..45a0dfeabd3a --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/samples/java/com/azure/maps/weather/generated/SuccessfullyRetrieveSevereWeatherAlerts.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.weather.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.weather.AzureMapsWeatherServiceBuilder; +import com.azure.maps.weather.AzureMapsWeatherServiceClient; + +public class SuccessfullyRetrieveSevereWeatherAlerts { + public static void main(String[] args) { + AzureMapsWeatherServiceClient client = + new AzureMapsWeatherServiceBuilder() + .credential(new DefaultAzureCredentialBuilder().build()) + .host("https://atlas.microsoft.com") + .buildAzureMapsWeatherServiceClient(); + RequestOptions requestOptions = new RequestOptions(); + Response response = client.getSevereWeatherAlertsWithResponse("json", requestOptions); + } +} diff --git a/sdk/maps/azure-maps-weather/src/test/java/com/azure/maps/weather/ClientTests.java b/sdk/maps/azure-maps-weather/src/test/java/com/azure/maps/weather/ClientTests.java new file mode 100644 index 000000000000..b50c0354388a --- /dev/null +++ b/sdk/maps/azure-maps-weather/src/test/java/com/azure/maps/weather/ClientTests.java @@ -0,0 +1,47 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.maps.weather; + +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 AzureMapsWeatherServiceBuilder builder; + + @BeforeEach + public void setup() { + builder = + new AzureMapsWeatherServiceBuilder() + .host(Configuration.getGlobalConfiguration().get("HOST", "https://atlas.microsoft.com")) + .httpClient(HttpClient.createDefault()) + .httpLogOptions(new HttpLogOptions().setLogLevel(HttpLogDetailLevel.BODY_AND_HEADERS)); + if (getTestMode() == TestMode.PLAYBACK) { + builder.httpClient(interceptorManager.getPlaybackClient()) + .credential(request -> Mono.just(new AccessToken("this_is_a_token", OffsetDateTime.MAX))); + } else if (getTestMode() == TestMode.RECORD) { + builder.addPolicy(interceptorManager.getRecordPolicy()) + .credential(new DefaultAzureCredentialBuilder().build()); + } else if (getTestMode() == TestMode.LIVE) { + builder.credential(new DefaultAzureCredentialBuilder().build()); + } + } + + @Test + @DoNotRecord(skipInPlayback = true) + public void testClient() { + // use the builder to create client + } +} diff --git a/sdk/maps/azure-maps-weather/swagger/README_SPEC.md b/sdk/maps/azure-maps-weather/swagger/README_SPEC.md new file mode 100644 index 000000000000..571a9321b2c1 --- /dev/null +++ b/sdk/maps/azure-maps-weather/swagger/README_SPEC.md @@ -0,0 +1,24 @@ +## Generate autorest code + +```yaml +input-file: + - /home/vsts/work/1/s/azure-rest-api-specs/specification/maps/data-plane/Weather/preview/1.0/weather.json +java: true +output-folder: ../ +regenerate-pom: false +generate-sync-async-clients: true +generate-client-as-impl: true +generate-client-interfaces: false +add-context-parameter: true +low-level-client: true +sync-methods: all +generate-samples: true +license-header: MICROSOFT_MIT_SMALL +namespace: com.azure.maps.weather +context-client-method-parameter: true +azure-arm: false +credential-types: tokencredential +credential-scopes: https://maps.azure.com/.default +service-versions: + - '1.0' +```