...
| Datasource name | Datasource code (ID) | Type | Original Interval | Available Parameter(s) [parameter code] | Remarks |
|---|---|---|---|---|---|
| Harmonie 4.3 | Knmi.Harmonie.43 | Model Grid, forecast | 1 hour | Air pressure [AirPressure] | Grid definition is automatically read from WIWB, so no need to define in grids.xml |
| Harmonie 4.0 | Knmi.Harmonie | Model Grid, forecast | 1 hour | Air pressure [AirPressure] | Grid definition is automatically read from WIWB, so no need to define in grids.xml |
| Harmonie 36 | Knmi.Harmonie.36 | Model Grid, forecast | 1 hour | Air Pressure [AirPressure] | Grid definition is automatically read from WIWB, so no need to define in grids.xml |
| HiRLAM | Knmi.Hirlam | Model Grid, forecast | 1 hour | Air Pressure [AirPressure] | Grid definition is automatically read from WIWB, so no need to define in grids.xml |
| KNMI AWS 10 Minutes | Knmi.AwsTenMinutes | Scalar, observed | 10 minute | Air Pressure [AirPressure] | |
| KNMI Evaporation (From Meteobase) | Knmi.FromMeteobase.Evaporation | Scalar, observed | 1 day | Evaporation [Evaporation] | |
| KNMI Reference Evaporation | Knmi.Evaporation | Scalar, observed | 1 day | Evaporation [Evaporation] | |
| KNMI Iris Stations | Knmi.IrisValidated | Scalar, observed | 1 day | Precipitation [P] | |
| KNMI Naval Reports | Knmi.Naval.Forecasts | Report, observed | 1 day | Naval reports for warnings and forecasts [Naval.Reports] | |
| Real-time international radar composite product | Knmi.International.Radar.Composite | Grid, radar | 5 minute | Precipitation [P] | Grid definition required in grids.xml. Product has no correction to data from meteo stations. |
| Real-time international radar composite product | Knmi.International.Radar.Composite.Near.Realtime Knmi.International.Radar.Composite.Near.Realtime.Test | Grid, radar | 5 minute | Precipitation [P] | Grid definition required in grids.xml. Product has only realtime correction to data from meteo stations. The *.Test product is the beta product which uses a more advanced algorithm. |
| Early reanalysis international radar composite | Knmi.International.Radar.Composite.Early.Reanalysis (Knmi.International.Radar.Composite.Early.Reanalysis.Test) | Grid, radar | 5 minute | Precipitation [P] | Grid definition required in grids.xml. Product available after 24-48 hours to enable early correction to data from meteo stations. The *.Test product is the beta product which uses a more advanced algorithm. |
| Final reanalysis international radar composite | Knmi.International.Radar.Composite.Final.Reanalysis (Knmi.International.Radar.Composite.Final.Reanalysis.Test) | Grid, radar | 5 minute | Precipitation [P] | Grid definition required in grids.xml. Product available after 30 days to enable final correction to data from meteo stations. The *.Test product is the beta product which uses a more advanced algorithm. |
| KNMI Radar Uncorrected (Real time) | Knmi.Radar.Uncorrected | Grid, radar | 5 minute | Precipitation [P] | Grid definition required in grids.xml. See below for the configuration example. |
| KNMI Regional EPS | Knmi.RegionalEps | Ensemble Scalar, forecast | 6 hour | Dewpoint Temperature [DPT] | Note that these are the ensemble member: 1: Operational/deterministicrun So it is advised to store the ensemble in a |
| KNMI Synops | Knmi.Synops | Scalar, observed | 1 hour | Air Pressure [AirPressure] | |
| KNMI Synops (From Meteobase) | Knmi.FromMeteobase.Synops | Scalar, observed | 1 hour | Precipitation [P] | |
| KNMI Waqua TS | Knmi.WaquaTs | Model Scalar, forecast | 10 minute | Astronomical Tide [AstronomicalTide] | |
| KNMI Weather Warnings | Knmi.Warnings | Warning, observed | 1 hour | Heat warning [Warning.Heat] | |
| KNMI Water Setup EPS | Knmi.WaterSetupEps | Ensemble Scalar, forecast | 6 hour | Water Surge [WaterSurge] | |
| Meteobase Makkink Evaporation | Meteobase.Evaporation.Makkink | Grid, observed | 1 day | Evaporation [Evaporation] | |
| Meteobase Pennman-Monteith Evaporation | Meteobase.Evaporation.PennmanMonteith | Grid, observed | 1 day | Evaporation [Evaporation] | |
| Meteobase Precipitation | Meteobase.Precipitation | Grid, observed | 1 hour | Precipitation [P] | |
| SATDATA3.0 Evapotranspiration | Satdata.Evapotranspiration | Model grid, forecast | 1 day | Actual evapotranspiration [Evapotran-spirationActual] | Operational product with values for day -1, 0, 1 and 2 |
| SATDATA3.0 Evapotranspiration Re-analysis | Satdata.Evapotranspiration.Reanalysis Satdata.Evapotranspiration.Reanalysis.V2 | Grid, observed | 1 day | Actual evapotranspiration [Evapotran-spirationActual] | Archive of reanalysis data: the regular product ranges from 2020-01-01 to 2022-06-01 and will not be available after 2023-04-01. The *.V2 products starts from 2012-07-24 and has a slightly improved algoritm. |
| Interim Evapotranpiration dataproduct LHM [SATDATA] | Interim.Satdata.Evapotranspiration | Grid, observed | 1 day | Actual evapotranspiration [Evapotran-spirationActual] Evapotranspiration shortage [Evapo-transpirationShortage] | |
| Knmi Waterboard Raingauges Validated | Knmi.Waterboard.Raingauges.Validated | Scalar, observed & validated | 5 minute | P.meting | Settings option "ReadQuality": true is needed to get data quality flags & data format preferably JSON |
| ECMWF Ensemble grid | Ecmwf.Ensemble.15day | Ensemble Grid, forecast | varies from 1-6 hour | Precipitation [P] | Note: this product is not yet supported |
Aggregated products
All data sources as in the table above have their original interval. If you want to import an aggregated product, the WIWB API supports that. You can aggregate every product with a multiplier of its original interval. The <timestep> configured in the Delft-FEWS import moduleInstance of that datasource will be interpreted whether you want to import the original or an aggregated product. E.g. the KNMI Radar products have an original interval of 5 minutes, so aggregation options are 10 minutes (2 x 5 minutes), 15 minutes (3 x 5 minutes) etc. As mentioned, the <timestep> definition in Delft-FEWS will be leading. Disaggregating is not supported.
The WIWB API has the default option that aggregation to larger timesteps is valid when at least one timestep is available. For example: a 5 minute timestep is aggregated to hourlies when at least one 5 minute timestep is available. For Delft-FEWS applications this is usually not the best solution. Therefore a so-called "minimumAggregationAvailability" option has been added. This value (of type double) has a valid range from 0 to 1 and indicates to the WIWB API the fraction of how much original timesteps should be available in the new timestep. Usually the value will be set to 1, as also can be seen from the below config example "aggregated radar products".
Authentication with OpenID Connect
By default the HydroNet WIWB API is protected by a user name and password, that can be specified in the import configuration.
Since 2019.02 it is possible to specify a Bearer token. This is typically used when using OpenID Connect as authentication method. To enable a bearer token as authentication mechanism, the following properties should be set:
- authentication, which is to be defined as "BearerToken"
- tokenUrl, which should direct to the URL that is used to get the BearerToken. This URL is to be set to https://login.hydronet.com/auth/realms/hydronet/protocol/openid-connect/token
| Code Block | ||||
|---|---|---|---|---|
| ||||
<string key="authentication" value="BearerToken"/> <string key="tokenUrl" value="https://login.hydronet.com/auth/realms/hydronet/protocol/openid-connect/token"/> |
Note that the username and password still has to be set in the general section to be able to login. The username is provided as the "clientId" and the password is provided as the "clientSecret".
| Code Block | ||||
|---|---|---|---|---|
| ||||
<import> <general> <importType>WIWB</importType> <serverUrl>https://wiwb.hydronet.com/api</serverUrl> <connectionTimeOutMillis>900000</connectionTimeOutMillis> <user>$MY_WIWB_CLIENT_ID$</user> <password>$MY_WIWB_CLIENT_SECRET$</password> <relativeViewPeriod unit="hour" start="-2" end="0" startOverrulable="false"/> <idMapId>IdImportWIWB_radar</idMapId> <unitConversionsId>ImportKNMIUnits</unitConversionsId> <dataFeedId>WIWB (Knmi.International.Radar.Composite 5min)</dataFeedId> <actionLogEventTypeId>Imported.IRC</actionLogEventTypeId> </general> <properties> <string key="dataSource" value="Knmi.International.Radar.Composite"/> <string key="authentication" value="BearerToken"/> <string key="tokenUrl" value="https://login.hydronet.com/auth/realms/hydronet/protocol/openid-connect/token"/> </properties> <timeSeriesSet> <moduleInstanceId>ImportWIWB</moduleInstanceId> <valueType>grid</valueType> <parameterId>P.radar</parameterId> <locationId>KNMI-RADAR</locationId> <timeSeriesType>external historical</timeSeriesType> <timeStep unit="minute" multiplier="5"/> <readWriteMode>add originals</readWriteMode> </timeSeriesSet> </import> |
Proxy Servers
When the HydroNet WIWB API connection is required to connect to the Hydronet API through a proxy like MuleSoft, additional authentication information might be required in the header. It is possible to add two additional parameters clientId and clientSecret. The default headers are X-IBM-Client-Id and X-IBM-Client-Secret, but these can be changed by configuring the respective headers.
...
| Code Block | ||
|---|---|---|
| ||
<?xml version="1.0" encoding="UTF-8"?> <flagSourceColumns xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wldelft.nl/fews https://fewsdocs.deltares.nl/schemas/version1.0/flagSourceColumns.xsd"> <column id="HI"> <storageKey>0</storageKey> <description>High Influx</description> <toolTip>A Tooltip</toolTip> <editable>true</editable> </column> <column id="FZ"> <storageKey>5</storageKey> <description>Faulty Zero</description> <toolTip>B Tooltip</toolTip> <editable>true</editable> </column> <column id="SO"> <storageKey>1</storageKey> <description>Station OutlierOutlier</description> <toolTip>C Tooltip</toolTip> <editable>true</editable> </column> </flagSourceColumns> |
...