Overview
DTN Point Observation API delivers high-quality weather observation data via https://point-observation.weather.mg. The API can be requested for weather stations, or relevant locations / cities.
Data sources used for the Point Observation API
A dense network of reliable weather condition measurements is crucial for the accurate reporting and forecasting of weather on a (hyper)local scale. This is especially important for short-term weather forecasts (the next few hours) and alerting when adverse weather is occurring or approaching. DTN therefore invests significantly to ensure a dense network of weather condition measurements is available. The available networks include:
- The general World Meteorological Organization (WMO) data set for weather stations world-wide.
- Specific data sets from WMO to ensure additional stations and a higher frequency of measurements are available.
- Country-specific data sets for secondary professional weather station networks.
- DTN own network of weather stations in Germany, Switzerland, Liechtenstein, and Luxemburg.
Value proposition of the Point Observation API
The value proposition of the Point Observation API is as listed in the following table, which emphasizes where DTN adds value to core data.
Parameter | Value added |
---|---|
Coverage |
|
Spatial resolution |
|
Completeness |
|
Frequency |
|
Unique |
|
Reliability |
|
Request URL Builder
Parameters
The list of standard weather parameters for the point Observation API is included below while the potential parameters available are listed here.
Parameter listing | Basic | Standard | Industry | Gap filling industry package |
---|---|---|---|---|
Temperature parameters | ||||
airTemperatureInCelsius | 3-h | 1-h | 1-h | Y |
dewPointTemperatureInCelsius | 3-h | 1-h | 1-h | Y |
relativeHumidityInPercent | 3-h | 1-h | 1-h | Y |
airTemperatureNearGroundInCelsius | n/a | 1-h | 1-h | n/a |
maxAirTemperatureInCelsius | 12-h | 12-h | 12-h | n/a |
minAirTemperatureInCelsius | 12-h | 12-h | 12-h | n/a |
feelsLikeTemperatureInCelsius | n/a | 1-h | 1-h | n/a |
Wind parameters | ||||
windSpeedInMeterPerSecond | 3-h | 1-h | 1-h | Y |
windDirectionInDegree | 3-h | 1-h | 1-h | Y |
maxWindGustInMeterPerSecond | n/a | 1-h | 1-h | n/a |
Precipitation and weather code parameters | ||||
weathercodeTraditional | 3-h | 1-h | 1-h | n/a |
pastWeatherCode | 6-h | 6-h | 6-h | n/a |
Weathercode/Icon-Mapping 12-h | n/a | |||
freshSnowfallInCentimeter | n/a | 24-h | 24-h | n/a |
snowDepthInCentimeter | n/a | 12-h | 12-h | n/a |
precipitationAmountInMillimeter PTxH | 12-h | 1-h | 1-h | n/a |
Cloud, radiation and sunshine parameters | ||||
sunshineDurationInMinutes PTxH | 24-h | 24-h | 24-h | n/a |
totalCloudCoverInOcta | n/a | 1-h | 1-h | Y |
effectiveCloudCoverInOcta PT0S | 3-h | 1-h | 1-h | Y |
globalRadiationInJoulePerSquareCentimeter | n/a | 1-h | 1-h | n/a |
averageGlobalRadiationInWattPerSquareMeter | n/a | 1-h | 1-h | n/a |
Daily sum global radiation | n/a | 24-h | 24-h | n/a |
evaporationPenmanInMillimeter | 24-h | 24-h | n/a | |
Other parameters | ||||
visibilityInMeter | n/a | 1-h | 1-h | n/a |
airPressureAtSeaLevelInHectoPascal | n/a | 1-h | 1-h | Y |
Station Metadata
When requesting for observation using locatedAt, adding "meteoGroupStationId" in the "fields" parameter will include a stationId information together with observation data in the response
Sample Request:
https://point-observation.weather.mg/observation/hourly?fields=airTemperatureInCelsius,meteoGroupStationId&locatedAt=6.669,53.58&observedPeriod=PT0S
Sample Response:
{
"observations": [
{
"locatedAt": [
6.669,
53.58
],
"meteoGroupStationId": "6510110",
"observedFrom": "2021-04-07T01:00:00+02:00",
"observedUntil": "2021-04-07T01:00:00+02:00",
"observedPeriod": "PT0S",
"airTemperatureInCelsius": 2.6
},
{
"locatedAt": [
6.669,
53.58
],
"meteoGroupStationId": "6510110",
"observedFrom": "2021-04-07T02:00:00+02:00",
"observedUntil": "2021-04-07T02:00:00+02:00",
"observedPeriod": "PT0S",
"airTemperatureInCelsius": 2.9
},
{
"locatedAt": [
6.669,
53.58
],
"meteoGroupStationId": "6510110",
"observedFrom": "2021-04-07T03:00:00+02:00",
"observedUntil": "2021-04-07T03:00:00+02:00",
"observedPeriod": "PT0S",
"airTemperatureInCelsius": 2.8
}
]
}
Formatting
A sample request using the Point-Observation API looks like this:
https://point-observation.weather.mg/observation/hourly?fields=airTemperatureInCelsius&locatedAt=13.2,52.4&observedPeriod=PT0S
The above request will return current air temperature, in degrees Celsius, for the city of Berlin, Germany, starting 3 hours before the time the request was received. The returned data will be formatted in JSON, and will look like this:
{
"observations": [
{
"locatedAt": [
13.2,
52.4
],
"observedFrom": "2019-04-24T13:00:00+02:00",
"observedUntil": "2019-04-24T13:00:00+02:00",
"observedPeriod": "PT0S",
"airTemperatureInCelsius": 20.4
},
{
"locatedAt": [
13.2,
52.4
],
"observedFrom": "2019-04-24T14:00:00+02:00",
"observedUntil": "2019-04-24T14:00:00+02:00",
"observedPeriod": "PT0S",
"airTemperatureInCelsius": 21.4
},
{
"locatedAt": [
13.2,
52.4
],
"observedFrom": "2019-04-24T15:00:00+02:00",
"observedUntil": "2019-04-24T15:00:00+02:00",
"observedPeriod": "PT0S",
"airTemperatureInCelsius": 22.7
}
]
}
Nitty-Gritty
For more detailed information on this API, check us out on Bitbucket.