Weather - Get Tropical Storm Forecast
Use to get a list of tropical storms forecasted by national weather forecasting agencies.
The Get Tropical Storm Forecasts API is an HTTP GET request that returns individual 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.
GET https://atlas.microsoft.com/weather/tropical/storms/forecasts/json?api-version=1.1&year={year}&basinId={basinId}&govId={govId}
GET https://atlas.microsoft.com/weather/tropical/storms/forecasts/json?api-version=1.1&year={year}&basinId={basinId}&govId={govId}&unit={unit}&details={details}&radiiGeometry={radiiGeometry}&windowGeometry={windowGeometry}
URI Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
|
format
|
path | True |
Desired format of the response. Only |
|
|
api-version
|
query | True |
string |
Version number of Azure Maps API. |
|
basin
|
query | True |
The |
|
|
gov
|
query | True |
integer (int32) |
Government storm Id |
|
year
|
query | True |
integer (int32) |
Year of the cyclone(s) |
|
details
|
query |
boolean |
When true, wind radii summary data is included in the response |
|
|
radii
|
query |
boolean |
When true, wind radii summary data and geoJSON details are included in the response |
|
|
unit
|
query |
Specifies to return the data in either metric units or imperial units. Default value is metric. |
||
|
window
|
query |
boolean |
When true, window geometry data (geoJSON) is included in the response |
Request Header
| Name | Required | Type | Description |
|---|---|---|---|
| x-ms-client-id |
string |
Indicates the account intended for use with the Microsoft Entra ID security model. This unique ID for the Azure Maps account can be obtained from the Azure Maps management plane Account API. For more information on using Microsoft Entra ID security in Azure Maps, see Manage authentication in Azure Maps. |
Responses
| Name | Type | Description |
|---|---|---|
| 200 OK |
OK |
|
| Other Status Codes |
An unexpected error occurred. |
Security
AADToken
These are the Microsoft Entra OAuth 2.0 Flows. When paired with Azure role-based access control it can be used to control access to Azure Maps REST APIs. Azure role-based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built-in role or a custom role composed of one or more permissions to Azure Maps REST APIs.
To implement scenarios, we recommend viewing authentication concepts. In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.
Notes
- This security definition requires the use of the
x-ms-client-idheader to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the Maps management API.
The Authorization URL is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Microsoft Entra ID configurations.
*
The Azure role-based access control is configured from the Azure management plane via Azure portal, PowerShell, CLI, Azure SDKs, or REST APIs.
*
Usage of the Azure Maps Web SDK allows for configuration based setup of an application for multiple use cases.
- For more information on Microsoft identity platform, see Microsoft identity platform overview.
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
| Name | Description |
|---|---|
| https://atlas.microsoft.com/.default | https://atlas.microsoft.com/.default |
subscription-key
This is a shared key that is provisioned when you Create an Azure Maps account in the Azure portal or using PowerShell, CLI, Azure SDKs, or REST API.
With this key, any application can access all REST API. In other words, this key can be used as a master key in the account that they are issued in.
For publicly exposed applications, our recommendation is to use the confidential client applications approach to access Azure Maps REST APIs so your key can be securely stored.
Type:
apiKey
In:
query
SAS Token
This is a shared access signature token is created from the List SAS operation on the Azure Maps resource through the Azure management plane via Azure portal, PowerShell, CLI, Azure SDKs, or REST APIs.
With this token, any application is authorized to access with Azure role-based access controls and fine-grain control to the expiration, rate, and region(s) of use for the particular token. In other words, the SAS Token can be used to allow applications to control access in a more secured way than the shared key.
For publicly exposed applications, our recommendation is to configure a specific list of allowed origins on the Map account resource to limit rendering abuse and regularly renew the SAS Token.
Type:
apiKey
In:
header
Examples
Get Tropical Storm Forecasts
Sample request
GET https://atlas.microsoft.com/weather/tropical/storms/forecasts/json?api-version=1.1&year=2021&basinId=NP&govId=2
Sample response
{
"results": [
{
"dateTime": "2021-04-25T06:00:00+00:00",
"initializedDateTime": "2021-04-24T18:00:00+00:00",
"location": {
"latitude": 22,
"longitude": 137.8
},
"maxWindGust": {
"value": 92.6,
"unit": "km/h",
"unitType": 7
},
"sustainedWind": {
"value": 74.1,
"unit": "km/h",
"unitType": 7
},
"status": "Tropical Storm",
"window": {
"left": {
"latitude": 22.56387,
"longitude": 137.739517
},
"right": {
"latitude": 21.4361,
"longitude": 137.860489
}
}
},
{
"dateTime": "2021-04-25T18:00:00+00:00",
"initializedDateTime": "2021-04-24T18:00:00+00:00",
"location": {
"latitude": 23.7,
"longitude": 142.4
},
"maxWindGust": {
"value": 92.6,
"unit": "km/h",
"unitType": 7
},
"sustainedWind": {
"value": 74.1,
"unit": "km/h",
"unitType": 7
},
"status": "Tropical Storm",
"window": {
"left": {
"latitude": 24.45283,
"longitude": 142.055313
},
"right": {
"latitude": 22.94641,
"longitude": 142.744675
}
}
}
]
}
Definitions
| Name | Description |
|---|---|
|
basin |
Basin identifier |
|
Error |
The resource management error additional info. |
|
Error |
The error detail. |
|
Error |
Error response |
|
Geo |
A valid |
|
Geo |
A valid |
|
Geo |
A valid |
|
Geo |
A valid |
|
Geo |
A valid |
|
Geo |
A valid |
|
Geo |
A valid |
|
Geo |
A valid |
|
Json |
Desired format of the response. Only |
|
Lat |
A location represented as a latitude and longitude. |
|
Radius |
Bearing 0-90 = NE quadrant; 90-180 = SE quadrant; 180-270 = SW quadrant; 270-360 = NW quadrant. |
|
Storm |
The StormForecast object contains detailed Government-issued information about forecasted tropical storms, including the storm's location, status, forecast creation date, wind speed, and wind radii. |
|
Storm |
An array of StormForecast objects, each detailing individual storm forecasts issued by government authorities. |
|
Storm |
The StormWindRadiiSummary object provides a high-level overview of the wind distribution around a tropical storm. It includes the geometric representation of wind radii (radiiGeometry), detailed sector-based wind data (radiusSectorData), and the wind speeds at various distances from the storm's center (windSpeed). These properties collectively help in understanding the spatial extent and intensity of winds associated with the storm. Displayed when the request includes |
|
Unit |
An integer representing the unit type. For example, 17 for Celsius, 18 for Fahrenheit. Can be used for unit translation. For a complete list, see Weather services in Azure Maps. |
|
Weather |
Specifies to return the data in either metric units or imperial units. Default value is metric. |
|
Weather |
Specific value of a given unit related to weather. |
|
Weather |
Forecast window for the storm |
basinId
Basin identifier
| Value | Description |
|---|---|
| AL |
The Atlantic Ocean. Crucial for tracking hurricanes that affect the Americas and the Caribbean. It is one of the most active regions for tropical storms. |
| CP |
The Central Pacific Ocean. This basin is used for storms affecting Hawaii and surrounding areas. |
| EP |
The Eastern Pacific Ocean. This basin tracks storms impacting the western coast of the Americas, including Mexico and Central America. It is adjacent to the Central Pacific basin. |
| NI |
The North Indian Ocean. This basin covers storms impacting South Asia, including countries like India and Bangladesh, which are frequently affected by cyclones. |
| NP |
The Northwest Pacific Ocean. This basin is important for tracking typhoons that affect East Asia, including countries like China, Japan, and the Philippines. It is the most active tropical storm regions globally. |
| SI |
The South Indian Ocean. This basin, positioned south of the equator, covers cyclones impacting Madagascar, Africa, and surrounding regions. |
| SP |
The South Pacific Ocean. This basin, positioned south of the equator, is relevant for cyclones affecting Australia and the South Pacific islands. |
ErrorAdditionalInfo
The resource management error additional info.
| Name | Type | Description |
|---|---|---|
| info |
object |
The additional info. |
| type |
string |
The additional info type. |
ErrorDetail
The error detail.
| Name | Type | Description |
|---|---|---|
| additionalInfo |
The error additional info. |
|
| code |
string |
The error code. |
| details |
The error details. |
|
| message |
string |
The error message. |
| target |
string |
The error target. |
ErrorResponse
Error response
| Name | Type | Description |
|---|---|---|
| error |
The error object. |
GeoJsonGeometry
A valid GeoJSON geometry object. The type must be one of the seven valid GeoJSON geometry types - Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon and GeometryCollection. Please refer to RFC 7946 for details.
| Name | Type | Description |
|---|---|---|
| type |
Geo |
Specifies the |
GeoJsonGeometryCollection
A valid GeoJSON GeometryCollection object type. Please refer to RFC 7946 for details.
| Name | Type | Description |
|---|---|---|
| geometries | GeoJsonGeometry[]: |
Contains a list of valid |
| type |
string:
Geometry |
Specifies the |
GeoJsonLineString
A valid GeoJSON LineString geometry type. Please refer to RFC 7946 for details.
| Name | Type | Description |
|---|---|---|
| coordinates |
number[] (double) |
Coordinates for the |
| type |
string:
Line |
Specifies the |
GeoJsonMultiLineString
A valid GeoJSON MultiLineString geometry type. Please refer to RFC 7946 for details.
| Name | Type | Description |
|---|---|---|
| coordinates |
number[] (double) |
Coordinates for the |
| type |
string:
Multi |
Specifies the |
GeoJsonMultiPoint
A valid GeoJSON MultiPoint geometry type. Please refer to RFC 7946 for details.
| Name | Type | Description |
|---|---|---|
| coordinates |
number[] (double) |
Coordinates for the |
| type |
string:
Multi |
Specifies the |
GeoJsonMultiPolygon
A valid GeoJSON MultiPolygon object type. Please refer to RFC 7946 for details.
| Name | Type | Description |
|---|---|---|
| coordinates |
number[] (double) |
Contains a list of valid |
| type |
string:
Multi |
Specifies the |
GeoJsonPoint
A valid GeoJSON Point geometry type. Please refer to RFC 7946 for details.
| Name | Type | Description |
|---|---|---|
| coordinates |
number[] (double) |
A |
| type |
string:
Point |
Specifies the |
GeoJsonPolygon
A valid GeoJSON Polygon geometry type. Please refer to RFC 7946 for details.
| Name | Type | Description |
|---|---|---|
| coordinates |
number[] (double) |
Coordinates for the |
| type |
string:
Polygon |
Specifies the |
JsonFormat
Desired format of the response. Only json format is supported.
| Value | Description |
|---|---|
| json |
LatLongPair
A location represented as a latitude and longitude.
| Name | Type | Description |
|---|---|---|
| latitude |
number (double) |
Latitude property |
| longitude |
number (double) |
Longitude property |
RadiusSector
Bearing 0-90 = NE quadrant; 90-180 = SE quadrant; 180-270 = SW quadrant; 270-360 = NW quadrant.
| Name | Type | Description |
|---|---|---|
| beginBearing |
number (double) |
Bearing, in degrees, of the beginning of the quadrant. |
| endBearing |
number (double) |
Bearing, in degrees, of the end of the quadrant. |
| range |
number (double) |
The radius of the quadrant, in nautical miles. |
StormForecast
The StormForecast object contains detailed Government-issued information about forecasted tropical storms, including the storm's location, status, forecast creation date, wind speed, and wind radii.
| Name | Type | Description |
|---|---|---|
| dateTime |
string |
Date and time that the current forecast is valid, displayed in ISO 8601 format (yyyy-mm-ddThh:mm:ss-hh:mm). For example, 2025-04-29T07:00:00-07:00. |
| initializedDateTime |
string |
Date and time that the forecast was created, displayed in ISO 8601 format (yyyy-mm-ddThh:mm:ss-hh:mm). For example, 2025-04-29T07:00:00-07:00. |
| location |
Specifies the geographical coordinates (latitude and longitude) of the storm's forecasted position. |
|
| maxWindGust |
Specifies the expected maximum wind gust speed and direction expected during the storm, measured in kilometers per hour (km/h) or miles per hour (mph), based on the specified unit. Wind direction is given in azimuth degrees, ranging from 0° (true North) to 359°, moving clockwise. May be NULL. |
|
| status |
string |
Indicates the current state or condition of the storm. This property provides information on whether the storm is active, dissipating, or has reached another significant status. Possible values:
|
| sustainedWind |
Specifies the maximum sustained wind speed expected during the storm, measured in kilometers per hour (km/h) or miles per hour (mph), based on the unit specified in the request. May be NULL. |
|
| windRadiiSummary |
Contains an array of StormWindRadiiSummary objects, detailing wind radii in different quadrants around the storm's center. Displayed when |
|
| window |
Provides forecast details for the storm within the specified time frame. If the |
StormForecastResult
An array of StormForecast objects, each detailing individual storm forecasts issued by government authorities.
| Name | Type | Description |
|---|---|---|
| nextLink |
string |
Contains the URL to fetch the next page of results if the response is paginated. This is useful when the response is too large to be returned in a single call, allowing users to navigate through multiple pages of results. |
| results |
An array of forecast data for tropical storms, including predicted paths, intensities, and other relevant details. These forecasts are issued by government authorities. |
StormWindRadiiSummary
The StormWindRadiiSummary object provides a high-level overview of the wind distribution around a tropical storm. It includes the geometric representation of wind radii (radiiGeometry), detailed sector-based wind data (radiusSectorData), and the wind speeds at various distances from the storm's center (windSpeed). These properties collectively help in understanding the spatial extent and intensity of winds associated with the storm. Displayed when the request includes details=true or radiiGeometry=true.
| Name | Type | Description |
|---|---|---|
| dateTime |
string |
Date and time that the wind radii summary data is valid, displayed in ISO 8601 format (yyyy-mm-ddThh:mm:ss-hh:mm). For example, 2025-04-29T07:00:00-07:00. |
| radiiGeometry | GeoJsonGeometry: |
A GeoJSON object that is returned when the |
| radiusSectorData |
An array of RadiusSector objects. Each object contains detailed geographical information (in geoJSON format) needed to plot wind radius quadrants: 0-90° for NE, 90-180° for SE, 180-270° for SW, and 270-360° for NW. |
|
| windSpeed |
The overall wind speed associated with the storm's wind radii data. This single wind speed value applies collectively to all the sectors within the radiusSectorData array, which provides detailed geographical information for the NE, SE, SW, and NW quadrants of the storm's wind radii. |
UnitType
An integer representing the unit type. For example, 17 for Celsius, 18 for Fahrenheit. Can be used for unit translation. For a complete list, see Weather services in Azure Maps.
| Value | Description |
|---|---|
| 0 |
feet |
| 1 |
inches |
| 2 |
miles |
| 3 |
millimeter |
| 4 |
centimeter |
| 5 |
meter |
| 6 |
kilometer |
| 7 |
kilometersPerHour |
| 8 |
knots |
| 9 |
milesPerHour |
| 10 |
metersPerSecond |
| 11 |
hectoPascals |
| 12 |
inchesOfMercury |
| 13 |
kiloPascals |
| 14 |
millibars |
| 15 |
millimetersOfMercury |
| 16 |
poundsPerSquareInch |
| 17 |
Celsius |
| 18 |
Fahrenheit |
| 19 |
kelvin |
| 20 |
percent |
| 21 |
float |
| 22 |
integer |
| 31 |
MicrogramsPerCubicMeterOfAir |
WeatherDataUnit
Specifies to return the data in either metric units or imperial units. Default value is metric.
| Value | Description |
|---|---|
| imperial |
Return data using imperial units such as Fahrenheit (F) for temperature and mile (mi) for distance. |
| metric |
Return data using metric units such as Celsius (C) for temperature and kilometer (km) for distance. |
WeatherUnit
Specific value of a given unit related to weather.
| Name | Type | Description |
|---|---|---|
| unit |
string |
Type of unit for the returned value. |
| unitType |
Unit |
An integer representing the unit type. For example, 17 for Celsius, 18 for Fahrenheit. Can be used for unit translation. For a complete list, see Weather services in Azure Maps. |
| value |
number (float) |
Rounded value. |
WeatherWindow
Forecast window for the storm
| Name | Type | Description |
|---|---|---|
| beginDateTime |
string (date-time) |
DateTime of the beginning of the window of movement, displayed in ISO8601 format. |
| beginStatus |
string |
Storm status at the beginning of the window. |
| endDateTime |
string (date-time) |
DateTime of the end of the window of movement, displayed in ISO8601 format. |
| endStatus |
string |
Storm status at the end of the window. |
| geometry | GeoJsonGeometry: |
Displayed when windowGeometry=true in request. GeoJSON object containing coordinates describing the window of movement during the specified timeframe. |
| left |
Location of the point on the left side of the window at the time of the timeframe. |
|
| right |
Location of the point on the right side of the window at the end of the timeframe. |