Overview
DTN Nautical API delivers high-quality marine weather forecast and hindcast data.
Data sources used for the Nautical API
The data source for the Nautical API is DTN Nautical MeteoBase (NMB) that combines the largest intake of available weather models, interpreted and enriched by DTN in-house meteorologists. This is also the source of data used in SPOS.
Value proposition of the Nautical API
The value proposition of the Nautical API is as listed in the following table, which emphasizes where DTN adds value to core data.
Parameter | Value added |
---|---|
Accuracy | Accuracy NMB enhances the strong points of input models and reduces the weak points. As a result, it outperforms input models. |
Reliability | Model mixing. |
Skill | Model mixing. |
Uncertainty | Uncertainty Using ensemble data. |
Spatial resolution | Spatial resolution High-resolution wave forecasts, fine mesh grids. |
Uniqueness | Derived parameters, risk wind speed. Consistent with SPOS. |
Practical use examples of the Nautical API
The Nautical API can be used in the following domains as listed in the following table.
Domain | Practical use examples |
---|---|
Shipping |
|
Offshore |
|
Using credentials
When you have your client credentials, request an access token from the authorization server as follows:
POST /accounts/identity/connect/token HTTP/1.1
Host: api.routeguard.eu
Authorization: Basic {ClientSecret}
Content-Type: String
cache-control: no-cache
grant_type=password&username={Username}&password={password}&scope=web default rights claims openid
Use Case: Request marine weather parameters by location
You can request marine weather parameters for one or more location and timestamp combinations. When setting the
timestamp value in the request body, make sure that the value falls within the range from one year in the past up
until nine days in the future.
Table 5-22 lists the required API endpoint, body examples, and the HTTP method used.
API endpoint | https://nautical.weather.mg/search? |
Body example |
|
Method | POST |
Request parameters
To request marine weather parameters for a location, supply the following items in the body of your API
call.
Note: When you provide a location for anywhere on land, the API does not return any weather
parameters for this location.
Parameter | Description | Data type |
---|---|---|
locatedAt | This required parameter sets the location (defined as a latitude and a longitude) for which the marine weather data is requested. | Array, required |
validAt | This sets the date for which the marine weather data is requested in the standard ISO 08601 notation. | String, required |
Sample response
The following is a sample response.
All parameters provided in the response are valid for a single location (as specified with
locatedAt) and a specific time (as specified with validAt). Because the timestamp is in the past,
this is a hindcast.
{
"items": [
{
"locatedAt": [
-27.97,
-49.8078
],
"validAt": "2018-05-02T00:00Z",
"source": "hindcast",
"airPressureInHectoPascal": 1009.09,
"windSpeedInKnots": 20,
"windDirectionInDegrees": 160,
"seaHeightInMeters": 1.43,
"seaPeriodInSeconds": 5,
"swellDirectionInDegrees": 240,
"swellHeightInMeters": 1.6,
"swellPeriodInSeconds": 9,
"visibilityCode": 0,
"visibility": "Good",
"weatherCode": 1,
"weather": "Partly cloudy",
"precipitationProbabilityInPercent": 1,
"heightOf500HectoPascalLevelInMeters": 5380,
"seaTemperatureInCelsius": 6,
"airTemperatureInCelsius": 3,
"windSpeedAt50MetersInKnots": 22,
"windDirectionAt50MetersInDegrees": 160,
"icingClass": 0,
"icing": "None",
"riskWindSpeedInKnots": 21,
"windGustInKnots": 25,
"windGustAt50MetersInKnots": 28,
"totalWaveHeightInMeters": 2.2,
"totalWaveDirectionInDegrees": 240,
"riskWaveHeightInMeters": 2.4,
"seaCurrentSpeedInKnots": 0.41,
"seaCurrentDirectionInDegrees": 200
}
]
}
Response definitions
The table below describes each item in the response.
Response item | Description | Data type |
---|---|---|
locatedAt | The requested location in GEOJSON (Longitude, Latitude). | Float |
validAt | The requested date and time. | String |
source | Description of the source type: forecast or hindcast. | String |
windSpeedInKnots | The speed of the wind at 10 meters above sea level (in knots), averaged over 10 minutes. | Integer |
windDirectionInDegrees | The direction from which the wind is blowing at 10 meters above sea level (in degrees). | Integer |
riskWindSpeedInKnots | Wind speed with a 10% exceedance probability (at 10 meters above sea level, in knots). | Integer |
windGustInKnots | The highest speed of the wind at 10 meters above sea level during the given hour, averaged over 3 seconds (in knots). | Integer |
windSpeedAt50MetersInKnots | Equivalent of windSpeedInKnots, but at 50 meters above sea level. | Integer |
windDirectionAt50MetersInDegrees | Equivalent of windDirectionInDegrees, but at 50 meters above sea level. | Integer |
windGustAt50MetersInKnots | Equivalent of windGustInKnots, but at 50 meters above sea level. | Integer |
seaHeightInMeters | The significant height of the wind waves (in meters). | Integer |
seaPeriodInSeconds | The mean period of the wind waves (in seconds). | Integer |
swellDirectionInDegrees | The mean direction from which swell waves are coming (in degrees). | Integer |
swellHeightInMeters | The significant height of swell waves (in meters). | Integer |
swellPeriodInSeconds | The mean period of swell waves (in seconds). | Integer |
totalWaveDirectionInDegrees | The mean direction from which all waves are coming (in degrees). | Integer |
totalWaveHeightInMeters | The total significant wave height, i.e. of all waves (in meters). | Integer |
riskWaveHeightInMeters | The total significant wave height with a 10% exceedance probability (in meters). | Float |
seaCurrentSpeedInKnots | The mean speed with which water is moving at sea surface level (in knots). | Float |
seaCurrentDirectionInDegrees | The mean direction into which water is moving at sea surface level (in degrees). | Integer |
seaTemperatureInCelsius | The water temperature at sea or lake surface (in degrees Celsius). | Integer |
airTemperatureInCelsius | The air temperature at 2 meters height above surface level (in degrees Celsius). | Integer |
airPressureInHectoPascal | The air pressure reduced to mean sea level (in hectoPascal). | Integer |
heightOf500HectoPascalLevelInMeters | The height of the 500 hPa pressure level (in geopotential meters). | Integer |
precipitationProbabilityInPercent | The likelihood that precipitation will occur during the given hour (percentage). | Integer |
visibilityCode |
Index of severity of visibility loss for a ship in this area. Possible values are: |
Integer |
visibility | The textual description of the visibility code. | Text |
weatherCode |
Index of the weather type in the area. Possible values are: |
Integer |
weather | The textual description of the weather code. | Text |
icingClass | Index of the severity of the growth of ice on a ship in this area. | Integer |
icing | The textual description of the Icing class. | Text |