NAV Navbar
JSON Request JSON Response Python

Introduction

// Nothing to show
// Nothing to show
// Nothing to show

The maintenance of this page is discontinued. Please refer to www.rijkswaterstaatdata.nl/waterdata for documentation, examples, help and updates of our services.

The system is intended to access/retrieve data from the distributie laag through web services. the data is accessed through five web services (three HTTP JSON web services and two WFS web service):

Webservices
MetadataService
Online Waarnemingen Service
Bulk Waarnemingen Service
Web Feature Service
Web Mapping Service

Metadata Service

The Metadata Service has one function:

Function
Ophalen Catalogus

A request for this service will provide several lists of metadata from the distributie laag. On the basis of the data in these lists, you can fill the request for other services.

OnlineWaarnemingenServices

The OnlineWaarnemingenServices has four functions:

Function
Ophalen Waarnemingen
Ophalen Laatste Waarnemingen
Ophalen Aantal Waarnemingen
Check Waarnemingen Aanwezig

With a request to the Ophalenwaarnemingen service it's possible to get all observations with the right parameters. These parameters need to relate to Aquometadata, Locatie and Periode where de observations are done. A request to the OphalenLaasteWaarnemingenService will return the last obervation. The service OphalenLaatsteWaarnemingen returns observations per grouped specified grouping on period. The CheckWaarnemingenAanwezigService returns the observations from the distributie laag wich are those that comply with the parameters provided.

BulkWaarnemingenService

The BulkWaarnemingenService has one function:

Function
Aanvragen Bulk Waarnemingen

With the AanvragenBulkWaarnemingen service an application can be made to a a server that can be downloaded from a Rijkswaterstaat server at a later time.

Web Feature Service

The Web Feature Service has two functions:

Function
Locaties
Locaties Met Laatste Waarneming

With the Mapserver, the geometry within the distributie laag is made available through Web Feature Service. Through the Web Feature Service you can find the locaties and locaties in combination with the last observation.

Web Mapping Service

The Web Mapping Service has three functions:

Function
WMS versie 1.1.0
WMS versie 1.1.1
WMS versie 1.3.0

The Mapping service responds to an xml request with a description of the layers. The Getmap service provides an image of the specified area. The Getfeature provides the details of a feature per location as an response.

Dependence

The web services depend on the distributie laag. When the distributie laag is not functioning properly, this has an influence on the functioning of the web services. Requests within all web services and the Web Feature Service make use of the Locatie, Aquometadata and Waarnemingen in the distributie laag.

Dates

If you are using dates in the request statements within the services you need to keep the following format:

Year Month Day Separator Hours Minutes Seconds Time zone
0000 00 00 T 00 00 000 00:00

For more information on the format ISO 8601

Applications

When the webservices are used it's possible to use the following applications. This is not a requirement. It's also possible to use your own applications.

Postman

Naam Link to Documentation Version
Postman https://www.getpostman.com/ 6.5.3

Postman can be used to test the POST requests to the webservices. Within Postman there different options wich can be used to make it less hard to understand the services.

Visual studio Code

Name Link to documentation Version
Visual Studio Code https://code.visualstudio.com/ darwin stable

Visual Studio Code is a tool that can be used to create different scripts and applications. Within the application its possible to install serveral modules to make it easy to use the webservices.

Tutorial Locations

//Nothing to show check Python
//Nothing to show check Python
//Nothing to show check Python

The following code shows step by step how to get a list of Locaties from the Metadatawebservice service. Within the code you get 2 csv-files

CSV- files Description
true.csv This will contain all locations with the value true(there is information)
false.csv This will contain all locations with the value false(there is no information)

Import

#within python you use the following imports
import requests
import json
import numpy as np
import pandas as pd
from datetime import datetime
import pytz
import objectpath
import time 
import datetime
from time import gmtime, strftime
// Nothing to show check Python
// Nothing to show check Python

The following imports are needed to get values from the webservice Metadataservice in python.

Webservices

#the webservices
collect_catalogus = ('https://waterwebservices.rijkswaterstaat.nl/' +
                     'METADATASERVICES_DBO/' +
                     'OphalenCatalogus/')
collect_observations = ('https://waterwebservices.rijkswaterstaat.nl/' +
                        'ONLINEWAARNEMINGENSERVICES_DBO/' +
                        'OphalenWaarnemingen')
collect_count_observations = ('https://waterwebservices.rijkswaterstaat.nl' +
                              '/ONLINEWAARNEMINGENSERVICES_DBO/CheckWaarnemingenAanwezig')
// Nothing to show check Python
// Nothing to show check Python

you need 3 different webservices:

Webservice
OphalenCatalogus
OphalenWaarnemingen
CheckWaarnemingenAanwezig

Request OphalenCatalogus

#The request for ophalencatalogus
request = {
    "CatalogusFilter": {
        "Eenheden": True,
        "Grootheden": True,
        "Hoedanigheden": True,
        "Compartimenten": True,
        "Compartimenten": True
    }
}
// Nothing to show check Python
// Nothing to show check Python

This is the request you need to define in the code:

Parameter Value Description
Eenheden true/false This will show the Eenheden.
Grootheden true/false This will show the Grootheden.
Hoedanigheden true/false This will show the Hoedanigheden.
Compartimenten true/false This will show the Compartimenten.
Parameters true/false This will show the Parameters.

Start/End date

huidige_datum = time.time()

#einddatum word nu de huidige tijd en datum ingevoerd. 
#Je kan ook je eigen datum en tijd invoeren comment deze 3 regels dan uit.
eind_datum = datetime.datetime.fromtimestamp(huidige_datum).strftime('%Y-%m-%dT%H:%M:%S')
eind_datum = pd.to_datetime(eind_datum) - pd.DateOffset(days=29)
eind_datum = str(eind_datum).replace(" ","T")+".000+01:00"

#deze is op het jaar 1900 neergezet om te kijken of er ooit gegevens zijn toegevoegt. 
#Je kan ook je eigen datums invullen gebruik wel dit format
begin_datum ="1900-01-01T00:00:00.000+01:00"

#de code voor het compartiment.
Code_compartiment = "OW"

#de code voor de eenheid.
Code_eenheid = "cm"

#hier word de lege dataframe df_locatie aangemaakt.
columns = ['Code','true/false']

df_locatie = pd.DataFrame( columns=columns)
// Nothing to show check Python
// Nothing to show check Python

Within the request for CheckWaarnemingenAanwezig you need to set the following values:

Parameter Value Description
eind_datum 0000-00-00T00:00:00.000+01:00 This is the format to define the date and time
Begin_datum 0000-00-00T00:00:00.000+01:00 This is the format to define the date and time
Compartimenten make your own list using Tutorial Values This will show the Compartimenten.
Eenheden make your own list using Tutorial Values This will show the Eenheden.

Transform JSON response

#hier word de locatie lijst gepulled van de api en in een json format opgeslagen.
resp = requests.post(collect_catalogus, json=request)
result = resp.json()

# hier word dataframe df_locaties aangemaakt.
df_locations = pd.DataFrame(result['LocatieLijst'])
// Nothing to show check Python
// Nothing to show check Python

The following code transforms the json response to an dataframe.

Check information

#voor elke regel in het dataframe df_locations 
for index, row in df_locations.iterrows():
#haal de x waarde op
    x = getattr(row, "X")

#haal de y waarde op 
    y = getattr(row, "Y")

#haal de locatie code op 
    locatie= getattr(row, "Code")

#Hier word de request aangemaakt. alle variabele worden automatisch ingevoerd. 
    request_aantal = {
        "AquoMetadataLijst" :[{"Compartiment":{"Code":Code_compartiment},
        "Eenheid":{"Code":Code_eenheid}}],
        "LocatieLijst" : [{"X" :x,"Y":y,"Code":locatie}],
        "Periode" : {"Begindatumtijd" : begin_datum,"Einddatumtijd": eind_datum}
    }
// Nothing to show check Python
// Nothing to show check Python

To check if a location has information you need to send a new request to CheckWaarnemingAanwezig. The code will do it for every location in a for loop.

Parameter Value Description
eind_datum 0000-00-00T00:00:00.000+01:00 This is the format to define the date and time
Begin_datum 0000-00-00T00:00:00.000+01:00 This is the format to define the date and time
Compartimenten make your own list using Tutorial Values This will show the Compartimenten.
Eenheden make your own list using Tutorial Values This will show the Eenheden.

Response to dataframe

#hier word een nieuwe statement uitgevoerd op check aantal waarnemingen 
#om te kijken of de request een response geeft met waardes
    resp = requests.post(collect_count_observations, json=request_aantal)
    result_aantal = resp.json()

#hier word in het resultaat gezocht naar het object waarnemingen aanwezig
    jsonnn_tree = objectpath.Tree(result_aantal)
    resultaat =  tuple(jsonnn_tree.execute('$..WaarnemingenAanwezig'))
    resultaat = resultaat[0]

#als de waarde van de api true is 
    if resultaat == "true":
        lijst = pd.DataFrame([[locatie,resultaat]], columns=('Code','true/false'))
        df_locatie = df_locatie.append(lijst)

#als de waarde van de api false is 
    elif resultaat == "false":
        lijst = pd.DataFrame([[locatie,resultaat]], columns=('Code','true/false'))
        df_locatie = df_locatie.append(lijst)
// Nothing to show check Python
// Nothing to show check Python

within the for loop you need to check if there are values. The response and the location wil be send to the right dataframe.

Table Description
true.csv This will contain all locations with the value true(there is information)
false.csv This will contain all locations with the value false(there is no information)

Dataframe to csv

#de waarde van resultaat en de code an de locatie word vervolgens toevegoegd 
#aan een nieuwe dataframe ofwel de true ofwel de false
df_true = df_locatie.loc[df_locatie['true/false'] == "true"]
df_false = df_locatie.loc[df_locatie[ 'true/false'] == "false"]

# Zowel voor true als voor false word een csv bestand aangemaakt 
#en worden de gegevens weggeschreven.

# Create a Pandas Excel writer using XlsxWriter as the engine.
writer = pd.ExcelWriter('true.xlsx', engine='xlsxwriter')

# Convert the dataframe to an XlsxWriter Excel object.
df_true.to_excel(writer, sheet_name='Sheet1')

# Close the Pandas Excel writer and output the Excel file.
writer.save()

writer = pd.ExcelWriter('false.xlsx', engine='xlsxwriter')

# Convert the dataframe to an XlsxWriter Excel object.
df_false.to_excel(writer, sheet_name='Sheet1')

# Close the Pandas Excel writer and output the Excel file.
writer.save()
// Nothing to show check Python
// Nothing to show check Python 

This will send all your dataframes wich you created to 2 different csv files:

Table Description
true.csv This will contain all locations with the value true(there is information).
false.csv This will contain all locations with the value false(there is no information).

Tutorial Values

// Nothing to show
// Nothing to show
// Nothing to show

The following tutorial will show multiple lists. Within the these lists you will see the following parameters.

Sheets Description Value
Grootheden This list Grootheden that can be used in the webservices True/False
Parameters This list Parameters that can be used in the webservices True/False
Compartimenten This list Compartimenten that can be used in the webservices True/False
Hoedanigheden This list Hoedanigheden that can be used in the webservices True/False
Eenheden This list Eenheden that can be used in the webservices True/False
BemonsteringsApparaten This list BemonsteringsApparaten that can be used in the webservices True/False
BemonsteringsMethoden This list BemonsteringsMethoden that can be used in the webservices True/False
BemonsteringsSoorten This list BemonsteringsSoorten that can be used in the webservices True/False
BioTaxon This list BioTaxon that can be used in the webservices True/False
BioTaxon_Compartimenten This list BioTaxon_Compartimenten that can be used in the webservices True/False
MeetApparaten This list MeetApparaten that can be used in the webservices True/False
MonsterBewerkingsMethoden This list MonsterBewerkingsMethoden that can be used in the webservices True/False
Organen This list Organen that can be used in the webservices True/False
PlaatsBepalingsApparaten This list PlaatsBepalingsApparaten that can be used in the webservices True/False
Typeringen This list Typeringen that can be used in the webservices True/False
WaardeBepalingstechnieken This list WaardeBepalingstechnieken that can be used in the webservices True/False
WaardeBepalingsmethoden This list WaardeBepalingsmethoden that can be used in the webservices True/False
WaardeBewerkingsmethoden This list WaardeBewerkingsmethoden that can be used in the webservices True/False

Imports

import requests
import json
import pandas as pd
// Nothing to show
// Nothing to show

The following imports are needed to get values from the webservice Metadataservice in python and use this tutorial.

Request


collect_catalogus = ('https://waterwebservices.rijkswaterstaat.nl/METADATASERVICES_DBO/OphalenCatalogus/')


# get station information from DDL (metadata uit Catalogus)
request = {  
"CatalogusFilter":
    { 
    "Grootheden" :True,
    "Parameters":True,
    "Compartimenten":True,
    "Hoedanigheden":True,
    "Eenheden":True,
    "BemonsteringsApparaten" :True,
    "BemonsteringsMethoden":True,
    "BemonsteringsSoorten":True,
    "BioTaxon":True,
    "BioTaxon_Compartimenten":True,
    "MeetApparaten":True,
    "MonsterBewerkingsMethoden":True,
    "Organen":True,
    "PlaatsBepalingsApparaten":True,
    "Typeringen":True,
    "WaardeBepalingstechnieken":True,
    "WaardeBepalingsmethoden":True,
    "WaardeBewerkingsmethoden":True
    }

}
// Nothing to show check Python
// Nothing to show check Python

This code is the request that is needed to send to the webservice.

Response

resp = requests.post(collect_catalogus, json=request)
result = resp.json()



# print all variables in the catalogus
df_metadata = pd.io.json.json_normalize(result['AquoMetadataLijst']).set_index('AquoMetadata_MessageID')

# Create new frames with all values
df_Compartiment = df_metadata.drop_duplicates(subset=['Compartiment.Code'])
df_Compartiment = df_Compartiment[['Compartiment.Code','Compartiment.Omschrijving']]

df_Parameters = df_metadata.drop_duplicates(subset=['Parameter.Code'])
df_Parameters = df_Parameters[['Parameter.Code','Parameter.Omschrijving']]

df_Eenheden = df_metadata.drop_duplicates(subset=['Eenheid.Code'])
df_Eenheden = df_Eenheden[['Eenheid.Code','Eenheid.Omschrijving']]

df_Grootheden = df_metadata.drop_duplicates(subset=['Grootheid.Code'])
df_Grootheden = df_Grootheden[['Grootheid.Code','Grootheid.Omschrijving']]

df_Hoedanigheden = df_metadata.drop_duplicates(subset=['Hoedanigheid.Code'])
df_Hoedanigheden = df_Hoedanigheden[['Hoedanigheid.Code','Hoedanigheid.Omschrijving']]

df_BemonsteringsApparaten = df_metadata.drop_duplicates(subset=['BemonsteringsApparaat.Code'])
df_BemonsteringsApparaten = df_BemonsteringsApparaten[['BemonsteringsApparaat.Code','BemonsteringsApparaat.Omschrijving']]

df_BemonsteringsMethoden = df_metadata.drop_duplicates(subset=['BemonsteringsMethode.Code'])
df_BemonsteringsMethoden = df_BemonsteringsMethoden[['BemonsteringsMethode.Code','BemonsteringsMethode.Omschrijving']]

df_BemonsteringsSoorten = df_metadata.drop_duplicates(subset=['BemonsteringsSoort.Code'])
df_BemonsteringsSoorten = df_BemonsteringsSoorten[['BemonsteringsSoort.Code','BemonsteringsSoort.Omschrijving']]

df_BioTaxon = df_metadata.drop_duplicates(subset=['BioTaxon.Code'])
df_BioTaxon = df_BioTaxon[['BioTaxon.Code','BioTaxon.Omschrijving']]

df_BioTaxon_Compartimenten = df_metadata.drop_duplicates(subset=['BioTaxon_Compartiment.Code'])
df_BioTaxon_Compartimenten= df_BioTaxon_Compartimenten[['BioTaxon_Compartiment.Code','BioTaxon_Compartiment.Omschrijving']]

df_MeetApparaten = df_metadata.drop_duplicates(subset=['MeetApparaat.Code'])
df_MeetApparaten = df_MeetApparaten[['MeetApparaat.Code','MeetApparaat.Omschrijving']]

df_MonsterBewerkingsMethoden = df_metadata.drop_duplicates(subset=['MonsterBewerkingsMethode.Code'])
df_MonsterBewerkingsMethoden = df_MonsterBewerkingsMethoden[['MonsterBewerkingsMethode.Code','MonsterBewerkingsMethode.Omschrijving']]

df_Organen= df_metadata.drop_duplicates(subset=['Orgaan.Code'])
df_Organen = df_Organen[['Orgaan.Code','Orgaan.Omschrijving']]

df_PlaatsBepalingsApparaten = df_metadata.drop_duplicates(subset=['PlaatsBepalingsApparaat.Code'])
df_PlaatsBepalingsApparaten = df_PlaatsBepalingsApparaten[['PlaatsBepalingsApparaat.Code','PlaatsBepalingsApparaat.Omschrijving']]

df_Typeringen= df_metadata.drop_duplicates(subset=['Typering.Code'])
df_Typeringen= df_Typeringen[['Typering.Code','Typering.Omschrijving']]

df_WaardeBepalingstechnieken= df_metadata.drop_duplicates(subset=['WaardeBepalingstechniek.Code'])
df_WaardeBepalingstechnieken= df_WaardeBepalingstechnieken[['WaardeBepalingstechniek.Code','WaardeBepalingstechniek.Omschrijving']]

df_WaardeBepalingsmethoden= df_metadata.drop_duplicates(subset=['WaardeBepalingsmethode.Code'])
df_WaardeBepalingsmethoden= df_WaardeBepalingsmethoden[['WaardeBepalingsmethode.Code','WaardeBepalingsmethode.Omschrijving']]

df_WaardeBewerkingsmethoden= df_metadata.drop_duplicates(subset=['WaardeBewerkingsmethode.Code'])
df_WaardeBewerkingsmethoden= df_WaardeBewerkingsmethoden[['WaardeBewerkingsmethode.Code','WaardeBewerkingsmethode.Omschrijving']]

# Create a Pandas Excel writer using XlsxWriter as the engine.
writer = pd.ExcelWriter('Values.xlsx', engine='xlsxwriter')

# Convert the dataframe to an XlsxWriter Excel object.
df_Parameters.to_excel(writer, sheet_name='Parameters')
df_Compartiment.to_excel(writer, sheet_name='Compartimenten')
df_Eenheden.to_excel(writer, sheet_name='Eenheden')
df_Hoedanigheden.to_excel(writer, sheet_name='Hoedanigheden')
df_Grootheden.to_excel(writer, sheet_name='Grootheden')
df_BemonsteringsApparaten.to_excel(writer, sheet_name='BemonsteringsApparaten')
df_BemonsteringsMethoden.to_excel(writer, sheet_name='BemonsteringsMethoden')
df_BemonsteringsSoorten.to_excel(writer, sheet_name='BemonsteringsSoorten')
df_BioTaxon.to_excel(writer, sheet_name='BioTaxon')
df_BioTaxon_Compartimenten.to_excel(writer, sheet_name='BioTaxon_Compartimenten')
df_MeetApparaten.to_excel(writer, sheet_name='MeetApparaten')
df_MonsterBewerkingsMethoden.to_excel(writer, sheet_name='MonsterBewerkingsMethoden')
df_Organen.to_excel(writer, sheet_name='Organen')
df_PlaatsBepalingsApparaten.to_excel(writer, sheet_name='PlaatsBepalingsApparaten')
df_Typeringen.to_excel(writer, sheet_name='Typeringen')
df_WaardeBepalingstechnieken.to_excel(writer, sheet_name='WaardeBepalingstechnieken')
df_WaardeBepalingsmethoden.to_excel(writer, sheet_name='WaardeBepalingsmethoden')
df_WaardeBewerkingsmethoden.to_excel(writer, sheet_name='WaardeBewerkingsmethoden')

# Close the Pandas Excel writer and output the Excel file.
writer.save()
// Nothing to show check Python
// Nothing to show check Python

The following code will take the response and split all the values into 18 different Sheets:

Sheets Description
Grootheden This list Grootheden that can be used in the webservices
Parameters This list Parameters that can be used in the webservices
Compartimenten This list Compartimenten that can be used in the webservices
Hoedanigheden This list Hoedanigheden that can be used in the webservices
Eenheden This list Eenheden that can be used in the webservices
BemonsteringsApparaten This list BemonsteringsApparaten that can be used in the webservices
BemonsteringsMethoden This list BemonsteringsMethoden that can be used in the webservices
BemonsteringsSoorten This list BemonsteringsSoorten that can be used in the webservices
BioTaxon This list BioTaxon that can be used in the webservices
BioTaxon_Compartimenten This list BioTaxon_Compartimenten that can be used in the webservices
MeetApparaten This list MeetApparaten that can be used in the webservices
MonsterBewerkingsMethoden This list MonsterBewerkingsMethoden that can be used in the webservices
Organen This list Organen that can be used in the webservices
PlaatsBepalingsApparaten This list PlaatsBepalingsApparaten that can be used in the webservices
Typeringen This list Typeringen that can be used in the webservices
WaardeBepalingstechnieken This list WaardeBepalingstechnieken that can be used in the webservices
WaardeBepalingsmethoden This list WaardeBepalingsmethoden that can be used in the webservices
WaardeBewerkingsmethoden This list WaardeBewerkingsmethoden that can be used in the webservices

Metadataservice

The metadata services web service unlocks the distribution layer metadata. On the basis of the request, a response is build on the basis of the request that is send with the given parameters. It is important to note that the metadata is not a 1 to 1 copy of how the data is saved in the distribution layer. It's a collection of data based on the parameters in the request that is requested to the service.

OphalenCatalogus

// Nothing to show check JSON
"CatalogusFilter":
    { 
    "Grootheden" :True,
    "Parameters":True,
    "Compartimenten":True,
    "Hoedanigheden":True,
    "Eenheden":True,
    "BemonsteringsApparaten" :True,
    "BemonsteringsMethoden":True,
    "BemonsteringsSoorten":True,
    "BioTaxon":True,
    "BioTaxon_Compartimenten":True,
    "MeetApparaten":True,
    "MonsterBewerkingsMethoden":True,
    "Organen":True,
    "PlaatsBepalingsApparaten":True,
    "Typeringen":True,
    "WaardeBepalingstechnieken":True,
    "WaardeBepalingsmethoden":True,
    "WaardeBewerkingsmethoden":True
    }

}

{"AquoMetadataLijst": [
 {
    "AquoMetadata_MessageID": 1,
    "Parameter_Wat_Omschrijving": "Waterhoogte Oppervlaktewater t.o.v. Mean Sea Level in cm",
    "Eenheid": {
        "Code": "cm",
        "Omschrijving": "centimeter"
    },
    "Grootheid": {
        "Code": "WATHTE",
        "Omschrijving": "Waterhoogte"
    },
        "Hoedanigheid": {
        "Code": "MSL",
        "Omschrijving": "t.o.v. Mean Sea Level"
    }
 },
Methode Content-Type URL
POST application/json https://waterwebservices.rijkswaterstaat.nl/METADATASERVICES_DBO/OphalenCatalogus/
Attributes Values Description
Grootheden make your own list using Tutorial Values This list Grootheden that can be used in the webservices
Parameters make your own list using Tutorial Values This list Parameters that can be used in the webservices
Compartimenten make your own list using Tutorial Values This list Compartimenten that can be used in the webservices
Hoedanigheden make your own list using Tutorial Values This list Hoedanigheden that can be used in the webservices
Eenheden make your own list using Tutorial Values This list Eenheden that can be used in the webservices
BemonsteringsApparaten make your own list using Tutorial Values This list BemonsteringsApparaten that can be used in the webservices
BemonsteringsMethoden make your own list using Tutorial Values This list BemonsteringsMethoden that can be used in the webservices
BemonsteringsSoorten make your own list using Tutorial Values This list BemonsteringsSoorten that can be used in the webservices
BioTaxon make your own list using Tutorial Values This list BioTaxon that can be used in the webservices
BioTaxon_Compartimenten make your own list using Tutorial Values This list BioTaxon_Compartimenten that can be used in the webservices
MeetApparaten make your own list using Tutorial Values This list MeetApparaten that can be used in the webservices
MonsterBewerkingsMethoden make your own list using Tutorial Values This list MonsterBewerkingsMethoden that can be used in the webservices
Organen make your own list using Tutorial Values This list Organen that can be used in the webservices
PlaatsBepalingsApparaten make your own list using Tutorial Values This list PlaatsBepalingsApparaten that can be used in the webservices
Typeringen make your own list using Tutorial Values This list Typeringen that can be used in the webservices
WaardeBepalingstechnieken make your own list using Tutorial Values This list WaardeBepalingstechnieken that can be used in the webservices
WaardeBepalingsmethoden make your own list using Tutorial Values This list WaardeBepalingsmethoden that can be used in the webservices
WaardeBewerkingsmethoden make your own list using Tutorial Values This list WaardeBewerkingsmethoden that can be used in the webservices

OnlineWaarnemingenservice

The Onlinewaarnemingen unlocks the distribution layer observations. Based on the request there observations and information about the number of observations collected and returned.

Operations
OphalenWaarnemingen
OphalenLaatsteWaarnemingen
OphalenAantalWaarnemingen
CheckWaarnemingenAanwezig.

OphalenWaarnemingen

// Nothing to show check JSON
{"AquoPlusWaarnemingMetadata":
 {"AquoMetadata":{"Compartiment":
    {"Code":"OW"},
        "Eenheid":{"Code":"cm"},
        "MeetApparaat":{"Code":"109"},
        "Grootheid":{"Code":"Hm0"}}},
        "Locatie":{"X":518882.333320247,"Y":5760829.11729589,"Code":"EURPFM"},
        "Periode":{"Begindatumtijd":"2012-01-27T09:00:00.000+01:00",
                   "Einddatumtijd":"2012-01-27T09:01:00.000+01:00"}}
    }
} 
{"WaarnemingenLijst":[
    {"Locatie":{"Locatie_MessageID":78411364,"Coordinatenstelsel":"25831","X":518882.333320247,"Y":5760829.11729589,"Naam":"Europlatform","Code":"EURPFM"},
    "MetingenLijst":[{"Tijdstip":"2012-01-27T09:00:00.000+01:00",
    "Meetwaarde":{"Waarde_Numeriek":152.0},
    "WaarnemingMetadata":{"StatuswaardeLijst":["Ongecontroleerd"],
    "BemonsteringshoogteLijst":["-999999999"],
    "ReferentievlakLijst":["NVT"],
    "OpdrachtgevendeInstantieLijst":["RIKZMON_GOLVEN"],
    "KwaliteitswaardecodeLijst":["00"]}}],
    "AquoMetadata":{"AquoMetadata_MessageID":31234076,
    "Parameter_Wat_Omschrijving":"Significante golfhoogte uit energiespectrum van 30-500 mHz Oppervlaktewater cm",
    "BemonsteringsApparaat":{"Code":"NVT","Omschrijving":
    "Waarde is niet van toepassing"},
    "BemonsteringsMethode":{"Code":"NVT","Omschrijving":
    "Waarde is niet van toepassing"},
    "BemonsteringsSoort":{"Code":"01","Omschrijving":"Rechtstreekse meting"},
    "BioTaxon":{"Code":"NVT","Omschrijving":"NVT"},
    "BioTaxon_Compartiment":{"Code":"NVT","Omschrijving":"NVT"},
    "Compartiment":{"Code":"OW","Omschrijving":"Oppervlaktewater"},
    "Eenheid":{"Code":"cm","Omschrijving":"centimeter"},
    "Grootheid":{"Code":"Hm0","Omschrijving":"Significantegolfhoogte uit energiespectrum van 30-500 mHz"},
    "Hoedanigheid":{"Code":"NVT","Omschrijving":"Waardeis niet van toepassing"},
    "MeetApparaat":{"Code":"109","Omschrijving":"Radar"},
    "MonsterBewerkingsMethode":{"Code":"NVT","Omschrijving":"Waarde is niet van toepassing"},
    "Orgaan":{"Code":"NVT","Omschrijving":"Waarde is nietvan toepassing"},
    "Parameter":{"Code":"NVT","Omschrijving":"Waarde isniet van toepassing"},
    "PlaatsBepalingsApparaat":{"Code":"NVT","Omschrijving":
    "Waarde is niet van toepassing"},
    "Typering":{"Code":"NVT","Omschrijving":"Waarde is nietvan toepassing"},
    "WaardeBepalingstechniek":{"Code":"NVT","Omschrijving
    ":"Waarde is niet van toepassing"},
    "WaardeBepalingsmethode":{"Code":"other:F046","Omschrijving":"Freq/tijd analyse energie en richtingen, methodeCIC/GLFPAR"},
    "WaardeBewerkingsmethode":{"Code":"NVT","Omschrijving":"Waarde is niet van toepassing"}}}],
    "Succesvol":true
    }
}

A sample request for retrieving observations in a certain period, which meet the specified Aquometadata, Locaties and Waarnemingen parameters.

Methode Content-Type URL
POST application/json https://waterwebservices.rijkswaterstaat.nl/ONLINEWAARNEMINGENSERVICES_DBO/OphalenWaarnemingen
Attribute Value Description
Eenheden List using Tutorial Values This will show the Eenheden.
Grootheden List using Tutorial Values This will show the Grootheden.
Hoedanigheden List using Tutorial Values This will show the Hoedanigheden.
Compartimenten List using Tutorial Values This will show the Compartimenten.
Parameters List using Tutorial Values This will show the Parameters.
Meetapparaten List using Tutorial Values This list Meetapparaten that can be used in the webservices
Locatie List using Tutorial locations This will show the locations with and without data.
Periode 0000-00-00T00:00:00.000+01:00 Time in the format

OphalenLaatsteWaarnemingen

//Nothing to show check JSON
{"AquoPlusWaarnemingMetadataLijst":[{"AquoMetadata":{"Compartiment":{"Code":"OW"},"Eenheid":{"Code":"cm"},
    "Grootheid":{"Code":"H1/3"}}}],
    "LocatieLijst":[{"X":518882.333320247,"Y":5760829.11729589,"Code":"EURPFM"
    }]
}
{"WaarnemingenLijst":[
{"Locatie":{"Locatie_MessageID":78411364,"Coordinatenstelsel":"25831","X":518882.333320247,"Y":5760829.11729589,"Naam":"Euro platform","Code":"EURPFM"},
"MetingenLijst":[{"Tijdstip":"2012-01-31T23:50:00.000+01:00",
"Meetwaarde":{"Waarde_Numeriek":230.0},
"WaarnemingMetadata":{"StatuswaardeLijst":["Ongecontroleerd"],
"BemonsteringshoogteLijst":["-999999999"],
"ReferentievlakLijst":["NVT"],"OpdrachtgevendeInstantieLijst":["RIKZMON_GOLVEN"],
"KwaliteitswaardecodeLijst":["00"]}}],
"AquoMetadata":{
"AquoMetadata_MessageID":86395137,
"Parameter_Wat_Omschrijving":"Gemiddelde golfhoogte uithoogste 1/3 deel van de golven Oppervlaktewater cm",
"BemonsteringsApparaat":{"Code":"NVT","Omschrijving":
"Waarde is niet van toepassing"},
"BemonsteringsMethode":{"Code":"NVT","Omschrijving":
"Waarde is niet van toepassing"},
"BemonsteringsSoort":{"Code":"01","Omschrijving":"Rechtstreekse meting"},
"BioTaxon":{"Code":"NVT","Omschrijving":"NVT"},
"BioTaxon_Compartiment":{"Code":"NVT","Omschrijving":"NVT"},
"Compartiment":{"Code":"OW","Omschrijving":"Oppervlaktewater"},
"Eenheid":{"Code":"cm","Omschrijving":"centimeter"},
"Grootheid":{"Code":"H1/3","Omschrijving":"Gemiddelde golfhoogte uit hoogste 1/3 deel van de golven"},
"Hoedanigheid":{"Code":"NVT","Omschrijving":"Waardeis niet van toepassing"},
"MeetApparaat":{"Code":"109","Omschrijving":"Radar"},
"MonsterBewerkingsMethode":{"Code":"NVT","Omschrijving":"Waarde is niet van toepassing"},
"Orgaan":{"Code":"NVT","Omschrijving":"Waarde is niet van toepassing"},
"Parameter":{"Code":"NVT","Omschrijving":"Waarde is niet van toepassing"},
"PlaatsBepalingsApparaat":{"Code":"NVT","Omschrijving":
"Waarde is niet van toepassing"},
"Typering":{"Code":"NVT","Omschrijving":"Waarde is niet van toepassing"},
"WaardeBepalingstechniek":{"Code":"NVT","Omschrijving
":"Waarde is niet van toepassing"},
"WaardeBepalingsmethode":{"Code":"other:F046","Omschrijving":"Freq/tijd analyse energie en richtingen, methode CIC/GLFPAR"},
"WaardeBewerkingsmethode":{"Code":"NVT","Omschrijving":"Waarde is niet van toepassing"}}},
{"Locatie":{"Locatie_MessageID":78411364,"Coordinatenstelsel":"25831","X":518882.333320247,"Y":5760829.11729589,"Naam":"Euro platform","Code":"EURPFM"},
"MetingenLijst":[{"Tijdstip":"2012-01-31T23:50:00.000+01:00",
"Meetwaarde":{"Waarde_Numeriek":220.0},
"WaarnemingMetadata":{
"StatuswaardeLijst":["Ongecontroleerd"],
"BemonsteringshoogteLijst":["-999999999"],
"ReferentievlakLijst":["NVT"],
"OpdrachtgevendeInstantieLijst":["RIKZMON_GOLVEN"],
"KwaliteitswaardecodeLijst":["00"]}}],
"AquoMetadata":{
"AquoMetadata_MessageID":83052418,
"Parameter_Wat_Omschrijving":"Gemiddelde golfhoogte uit hoogste 1/3 deel van de golven Oppervlaktewater cm",
"BemonsteringsApparaat":{"Code":"NVT","Omschrijving":
"Waarde is niet van toepassing"},
"BemonsteringsMethode":{"Code":"NVT","Omschrijving":
"Waarde is niet van toepassing"},
"BemonsteringsSoort":{"Code":"01","Omschrijving":"Rechtstreekse meting"},
"BioTaxon":{"Code":"NVT","Omschrijving":"NVT"},
"BioTaxon_Compartiment":{"Code":"NVT","Omschrijving":"NVT"},
"Compartiment":{"Code":"OW","Omschrijving":"Oppervlaktewater"},
"Eenheid":{"Code":"cm","Omschrijving":"centimeter"},
"Grootheid":{"Code":"H1/3","Omschrijving":"Gemiddelde golfhoogte uit hoogste 1/3 deel van de golven"},
"Hoedanigheid":{"Code":"NVT","Omschrijving":"Waardeis niet van toepassing"},
"MeetApparaat":{"Code":"108","Omschrijving":"Golfmeetboei"},
"MonsterBewerkingsMethode":{"Code":"NVT","Omschrijving":"Waarde is niet van toepassing"},
"Orgaan":{"Code":"NVT","Omschrijving":"Waarde is niet van toepassing"},
"Parameter":{"Code":"NVT","Omschrijving":"Waarde is niet van toepassing"},
"PlaatsBepalingsApparaat":{"Code":"NVT","Omschrijving":
"Waarde is niet van toepassing"},
"Typering":{"Code":"NVT","Omschrijving":"Waarde is niet van toepassing"},
"WaardeBepalingstechniek":{"Code":"NVT","Omschrijving

The following is a sample request for retrieving the last observation that is requested with the specified Aquometadata, Locaties and Waarnemingen parameters.

Methode Content-Type URL
POST application/json https://waterwebservices.rijkswaterstaat.nl/ONLINEWAARNEMINGENSERVICES_DBO/OphalenLaatsteWaarnemingen
Attribute Description Value
Compartimenten make your own list using Tutorial Values This list Compartimenten that can be used in the webservices
Eenheden make your own list using Tutorial Values This list Eenheden that can be used in the webservices
Grootheden make your own list using Tutorial Values This list Grootheden that can be used in the webservices
LocatieLijst List using Tutorial locations This will show the locations with and without data.

CheckWaarnemingenAanwezig

//Nothing to show check JSON
{"AquoMetadataLijst" :
    [{"Compartiment":{"Code":"OW"},"Eenheid":{"Code":"cm"}}],
    "LocatieLijst" : [{"X" :518882.333320247,"Y" :5760829.11729589,"Code":"EURPFM"}],
    "Periode" : {"Begindatumtijd" : "2012-01-16T14:00:00.000+01:00","Einddatumtijd": "2012-01-16T16:00:00.000+01:00"
    }
}
{
    "Succesvol":true,
    "WaarnemingenAanwezig":"true"
    }

When there are no Values:
{
    "Succesvol":true,
    "WaarnemingenAanwezig":"false"
}


Below is a sample request for checking if there are observations for one certain period that meet the specified Aquometadata, Locaties and Waarnemingen parameters.

Methode Content-Type URL
POST application/json https://waterwebservices.rijkswaterstaat.nl/ONLINEWAARNEMINGENSERVICES_DBO/CheckWaarnemingen
Atrribute Value Description
Compartimenten make your own list using Tutorial Values This list Compartimenten that can be used in the webservices
Eenheden make your own list using Tutorial Values This list Eenheden that can be used in the webservices
Periode 0000-00-00T00:00:00.000+01:00 Time in the format
LocatieLijst List using Tutorial locations This will show the locations with and without data.

OphalenAantalWaarnemingen

//Nothing to show Check JSON
{"AquoMetadataLijst" :
    [{"Compartiment":{"Code":"OW"},"Eenheid":{"Code":"cm"}}],
    "Groeperingsperiode" : "Week",
    "LocatieLijst" : [{"X" :518882.333320247,"Y" :5760829.11729589,"Code":"EURPFM"}],
    "Periode" : {"Begindatumtijd" : "2012-01-16T14:00:00.000+01:00","Einddatumtijd": "2012-01-16T16:00:00.000+01:00"
    }
}
{"AantalWaarnemingenPerPeriodeLijst":[
{"AquoMetadata":{"AquoMetadata_MessageID":30064212,
"Parameter_Wat_Omschrijving":"Significante golfhoogte uitenergiespectrum van 30-500 mHz Oppervlaktewater cm",
"BemonsteringsApparaat":{"Code":"NVT","Omschrijving":
"Waarde is niet van toepassing"},
"BemonsteringsMethode":{"Code":"NVT","Omschrijving":
"Waarde is niet van toepassing"},
"BemonsteringsSoort":{"Code":"01","Omschrijving":"Rechtstreekse meting"},
"BioTaxon":{"Code":"NVT","Omschrijving":"NVT"},
"BioTaxon_Compartiment":{"Code":"NVT","Omschrijving":"NVT"},
"Compartiment":{"Code":"OW","Omschrijving":"Oppervlaktewater"},
"Eenheid":{"Code":"cm","Omschrijving":"centimeter"},
"Grootheid":{"Code":"Hm0","Omschrijving":"Significantegolfhoogte uit energiespectrum van 30-500 mHz"},
"Hoedanigheid":{"Code":"NVT","Omschrijving":"Waarde is niet van toepassing"},
"MeetApparaat":{"Code":"108","Omschrijving":"Golfmeetboei"},
"MonsterBewerkingsMethode":{"Code":"NVT","Omschrijving":"Waarde is niet van toepassing"},
"Orgaan":{"Code":"NVT","Omschrijving":"Waarde is niet van toepassing"},
"Parameter":{"Code":"NVT","Omschrijving":"Waarde is niet van toepassing"},
"PlaatsBepalingsApparaat":{"Code":"NVT","Omschrijving":
"Waarde is niet van toepassing"},
"Typering":{"Code":"NVT","Omschrijving":"Waarde is niet van toepassing"},
"WaardeBepalingstechniek":{"Code":"NVT","Omschrijving
":"Waarde is niet van toepassing"},
"WaardeBepalingsmethode":{"Code":"other:F046","Omschrijving":"Freq/tijd analyse energie en richtingen, methode CIC/GLFPAR"},
"WaardeBewerkingsmethode":{"Code":"NVT","Omschrijving":"Waarde is niet van toepassing"}},
"Locatie":{"Locatie_MessageID":78411364,"Coordinatenstelsel":"25831","X":518882.333320247,"Y":5760829.11729589,"Naam":"Euro platform","Code":"EURPFM"},
"AantalMetingenPerPeriodeLijst":[{"Groeperingsperiode":{"Jaarnummer":2012,"Week":3},"AantalMetingen":21}]
},

The following is an example request for retrieving the number of observations about a certain one period that met the specified Aquometadata, Locaties and Waarnemingen parameters, grouped over a certain grouping period.

Methode Content-Type URL
POST application/json https://waterwebservices.rijkswaterstaat.nl/ONLINEWAARNEMINGENSERVICES_DBO/OphalenAantalWaarnemingen
Attribute Value Description
Compartimenten make your own list using Tutorial Values This list Compartimenten that can be used in the webservices
Eenheden make your own list using Tutorial Values This list Eenheden that can be used in the webservices
Periode 0000-00-00T00:00:00.000+01:00 Time in the format
LocatieLijst List using Tutorial locations This will show the locations with and without data.

BulkWaarnemingService

The BulkWaarnemingenService has one function:

Function
AanvragenBulkWaarnemingen

AanvragenBulkWaarnemingen

//Nothing to show Check JSON
{"Zoekvraag":{"AquoMetadataLijst" :
[{"Grootheid" : {"Code" : "H1/3"},"Eenheid" : {"Code" : "cm"}},{"Compartiment":{"Code" :"OW"},
"Eenheid" : {"Code" :"%"},"Grootheid" : {"Code" :"VERDGGD"},"Parameter" : {"Code" :"O2"}},
{"Compartiment":{"Code" :"OW"},"Eenheid" : {"Code" :"mg/l"},"Parameter" : {"Code" : "O2"}}],"LocatieLijst":[{"X":742469.913149676,"Y":5940708.14824459,"Code" :"HUIBGOT"},{"X":595875.376191307,"Y" : 5790952.82210343,"Code" :"NOORDWK2"},{"X":571670.054611366,"Y":5822651.05560318,"Code" :"IJMDMNTSPS"}],"Periode":{"Begindatumtijd" : "2009-01-01T00:00:00.000+01:00","Einddatumtijd" : "2011-12-31T23:59:59.999+01:00"}},"Email_succes":{"From" :"info@rws.nl","To" : "aanvrager@rws.nl","Subject" : "Aanvraag bestandwaarnemingen","Body" : "Uw bestand met waarnemingen kunt u downloaden via {link_bestand}."},"Email_fout":{"From" :
"info@rws.nl","To" : "aanvrager@rws.nl", "Subject" : "Aanvraag niet gelukt" ,"Body" : "Uw aanvraag voor het bestand
met waarnemingen is mislukt."}, "Email_bevestiging":{"From" :"info@rws.nl","To": "aanvrager@rws.nl","Subject" : "Bevestiging van aanvraag",
"Body":"Uw aanvraag is ontvangen. U ontvangt binnen 24 uur een e-mail met daarin een link voor hetdownloaden van de aanvraag."}}
{
    "Aanvraagcode":"20130207_3",
    "Datumtijdaanvraag":"2013-02-07T10:17:22.814+01:00",
    "Zoekvraag":{
    "AquoMetadataLijst":[
        {"AquoMetadata_MessageID":0,
        "Eenheid":{"Code":"cm"},
        "Grootheid":{"Code":"H1/3"}},
        {"AquoMetadata_MessageID":0,
        "Compartiment":{"Code":"OW"},
        "Eenheid":{"Code":"%"},
        "Grootheid":{"Code":"VERDGGD"},
        "Parameter":{"Code":"O2"}},
        {"AquoMetadata_MessageID":0,
        "Compartiment":{"Code":"OW"},
        "Eenheid":{"Code":"mg/l"},
        "Parameter":{"Code":"O2"}}],
        "LocatieLijst":[
            {"Locatie_MessageID":0,"X":742469.913149676,"Y":5940708.14824459,"Code":"HUIBGOT"},
            {"Locatie_MessageID":0,"X":595875.376191307,"Y":5790952.82210343,"Code":"NOORDWK2"},
            {"Locatie_MessageID":0,"X":571670.054611366,"Y":5822651.05560318,"Code":"IJMDMNTSPS"}],
            "Periode":{"Begindatumtijd":"2009-01-01T00:00:00.000+01:00","Einddatumtijd":"2011-12-31T23:59:59.999+01:00"}},
            "Email_succes":{"From":"info@rws.nl","To":"aanvrager@rws.nl","Subject":"Aanvraag bestandwaarnemingen","Body":"Uw bestand met waarnemingen kunt u downloaden via {link_bestand}."},"Email_fout":{"From":"info@rws.nl","To":"aanvrager@rws.nl","Subject":"Aanvraag niet gelukt","Body":"Uw aanvraag voor het bestand met waarnemingen is mislukt."},"Email_bevestiging":{"From" : "info@rws.nl","To":
            "aanvrager@rws.nl", "Subject" : "Bevestiging vanaanvraag","Body":"Uw aanvraag is ontvangen. U ontvangt binnen 24 uur een e-mail met daarin een link voor het downloaden van de aanvraag."},
        "Succesvol":true}

On the right there is a sample request for requesting a Bulk Waarnemingen. This service is different of the other web services. This has to do with the fact that there is no information about the observations returned immediately. The request is actually parked in the distribution web services database after which this data is collected at a later date. This data is based on <<<<<<< HEAD various settings are collected after which a compressed file is generated. When this is

file is created the applicant is informed that it can be dodwnloaded from a remote location.

various settings that are collected after which a compressed file is generated. When this file is created the applicant is informed that it can be downloaded from a remote location.

65d24c24c031bd6f4074f9bc364ca626a3ec3844 A valid e-mail address must be provided for this purpose. A valid e-mail address meets the next regulssar expression (within quotes):

"^ [a-zA-Z0-9 .% -] + @ [a-zA-Z0-9 .% -] + . [a-zA-Z] {2 , 4} $ ".

Methode Content-Type URL
POST application/json https://waterwebservices.rijkswaterstaat.nl/BulkWaarnemingenSERVICES_DBO/AanvragenBulkWaarnemingen
Attribute Value Description
Grootheden make your own list using Tutorial Values This list Grootheden that can be used in the webservices
Eenheden make your own list using Tutorial Values This list Eenheden that can be used in the webservices
Compartimenten make your own list using Tutorial Values This list Compartimenten that can be used in the webservices
LocatieLijst List using Tutorial locations This will show the locations with and without data.

WebFeatureServices

There are two available WFS features for the distribution layer:

Function
Locaties
LocatiesMetLaatsteWaarneming

Locaties

//Nothing to show Check JSON
<wfs:GetFeature
    xmlns:wfs="http://www.opengis.net/wfs"
    service="WFS" version="1.1.0"
    outputFormat="GML3"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.opengis.net/wfshttp://schemas.opengis.net/wfs/1.1.0/wfs.xsd">
    <wfs:QueryTypeName="feature:locaties"
    srsName="EPSG:25831"
    xmlns:feature="http://mapserver.gis.umn.edu/mapserver">
    </wfs:Query></wfs:GetFeature>
    <?xml version='1.0' encoding="ISO-8859-1" ?>
    <wfs:FeatureCollection xmlns:ms="http://mapserver.gis.umn.edu/mapserver"
    xmlns:gml="http://www.opengis.net/gml"
    xmlns:wfs="http://www.opengis.net/wfs"
    xmlns:ogc="http://www.opengis.net/ogc"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://mapserver.gis.umn.edu/mapserver
    http://test.intranet.rijkswaterstaat.nl/services/geoservicesupdate/distributielaag_waterportaal?SERVICE=WFS&amp;VERSION=1.1.0&
    amp;REQUEST=DescribeFeatureType&amp;TYPENAME=feature:locaties&amp;OUTPUTFORMAT=SFE_XMLSCHEMA http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.1.0/wfs.xsd">
    <gml:boundedBy>
    <gml:Envelope srsName="EPSG:25831">
    <gml:lowerCorner>595875.376191 5790952.822103</gml:lowerCorner>
    <gml:upperCorner>595875.376191 5790952.822103</gml:upperCorner>
    </gml:Envelope>
    </gml:boundedBy>
    <gml:featureMember>
    <ms:locaties gml:id="locaties.195068918">
    <gml:boundedBy>
    <gml:Envelope srsName="EPSG:25831">
    <gml:lowerCorner>595875.376191 5790952.822103</gml:lowerCorner>
    <gml:upperCorner>595875.376191 5790952.822103</gml:upperCorner>
    </gml:Envelope>
    </gml:boundedBy>
    <ms:msGeometry>
    <gml:Point srsName="EPSG:25831">
    <gml:pos>595875.376191 5790952.822103</gml:pos>
    </gml:Point>
    </ms:msGeometry>
    <ms:LOCATIE_MESSAGEID>195068918</ms:LOCATIE_MESSAGEID>
    <ms:NAAM>Noordwijk 2 km uit de kust</ms:NAAM>
    <ms:CODE>NOORDWK2</ms:CODE>
    <ms:OMSCHRIJVING></ms:OMSCHRIJVING>
    <ms:BEMONSTERINGSAPPARAATCODE>70</ms:BEMONSTERINGSAP
    PARAATCODE>
    <ms:BEMONSTERINGSMETHODECODE>NVT</ms:BEMONSTERINGS
    METHODECODE>
    <ms:BEMONSTERINGSSOORTCODE>02</ms:BEMONSTERINGSSOORTCODE>
    <ms:BIOTAXONCODE>NVT</ms:BIOTAXONCODE>
    <ms:BIOTAXON_COMPARTIMENTCODE>NVT</ms:BIOTAXON_COMPARTIMENTCODE>
    <ms:COMPARTIMENTCODE>OW</ms:COMPARTIMENTCODE>
    <ms:EENHEIDCODE>mg/l</ms:EENHEIDCODE>
    <ms:GROOTHEIDCODE>NVT</ms:GROOTHEIDCODE>
    <ms:HOEDANIGHEIDCODE>NVT</ms:HOEDANIGHEIDCODE>
    <ms:MEETAPPARAATCODE>NVT</ms:MEETAPPARAATCODE>
    <ms:MONSTERBEWERKINGSMETHODECODE>NVT</ms:MONSTERBEWERKINGSMETHODECODE>
    <ms:ORGAANCODE>NVT</ms:ORGAANCODE>
    <ms:PARAMETERCODE>O2</ms:PARAMETERCODE>
    <ms:PLAATSBEPALINGSAPPARAATCODE>NVT</ms:PLAATSBEPALINGSAPPARAATCODE>
    <ms:TYPERINGCODE>NVT</ms:TYPERINGCODE>
    <ms:WAARDEBEPALINGSTECHNIEKCODE>NVT</ms:WAARDEBEPALINGSTECHNIEKCODE>
    <ms:WAARDEBEPALINGSMETHODECODE>ZINTUIGLIJK</ms:WAARDEBEPALINGSMETHODECODE>
    <ms:WAARDEBEWERKINGSMETHODECODE>NVT</ms:WAARDEBEWERKINGSMETHODECODE>
    </ms:locaties>
    </gml:featureMember>
    </wfs:FeatureCollection>

On the right is a sample request for calling the Locations WFS. In the message body of the POST request you can build a filter to get the desired result.

Methode Content-Type URL
POST application/json https://waterwebservices.rijkswaterstaat.nl/services/distributielaagWFS/distributielaag_dbo?SERVICE=WFS&VERSION=1.1.0&REQUEST=GetCapabilities

LocatiesMetLaatsteWaarneming

//Nothing to show Check JSON
    <wfs:GetFeature
    xmlns:wfs="http://www.opengis.net/wfs"
    service="WFS" version="1.1.0"
    outputFormat="GML3"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.opengis.net/wfshttp://schemas.opengis.net/wfs/1.1.0/wfs.xsd"><wfs:Query
    typeName="feature:locatiesmetlaatstewaarneming" srsName="EPSG:25831"
    xmlns:feature="http://mapserver.gis.umn.edu/mapserver">
    </wfs:Query>
    </wfs:GetFeature>
    <?xml version='1.0' encoding="ISO-8859-1" ?>
    <wfs:FeatureCollection xmlns:ms="http://mapserver.gis.umn.edu/mapserver"
    xmlns:gml="http://www.opengis.net/gml"
    xmlns:wfs="http://www.opengis.net/wfs"
    xmlns:ogc="http://www.opengis.net/ogc"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://mapserver.gis.umn.edu/mapserverhttp://test.intranet.rijkswaterstaat.nl/services/geoservicesupdate/distributielaag_waterportaal?SERVICE=WFS&amp;VERSION=1.1.0&amp;REQUEST=DescribeFeatureType&ampTYPENAME=feature:locatiesmetlaatstewaarneming&amp;OUTPUTFORMAT=SFE_XMLSCHEMA
    http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.1.0/wfs.xsd">
    <gml:boundedBy>
    <gml:Envelope srsName="EPSG:25831">
    <gml:lowerCorner>518882.333320 5760829.117296</gml:lowerCorner>
    <gml:upperCorner>518882.333320 5760829.117296</gml:upperCorner>
    </gml:Envelope>
    </gml:boundedBy>
    <gml:featureMember>
    <ms:locatiesmetlaatstewaarneming
    gml:id="locatiesmetlaatstewaarneming.195068918">
    <gml:boundedBy>
    <gml:Envelope srsName="EPSG:25831">
    <gml:lowerCorner>518882.333320 5760829.117296</gml:lowerCorner>
    <gml:upperCorner>518882.333320 5760829.117296</gml:upperCorner>
    </gml:Envelope>
    </gml:boundedBy>
    <ms:msGeometry>
    <gml:Point srsName="EPSG:25831">
    <gml:pos>518882.333320 5760829.117296</gml:pos>
    </gml:Point>
    </ms:msGeometry>
    <ms:WAARNEMING_ID>195068918</ms:WAARNEMING_ID>
    <ms:NAAM>Euro platform</ms:NAAM>
    <ms:CODE>EURPFM</ms:CODE>
    <ms:OMSCHRIJVING></ms:OMSCHRIJVING>
    <ms:STATUSWAARDE>Ongecontroleerd</ms:STATUSWAARDE>
    <ms:BEMONSTERINGSHOOGTE>-100</ms:BEMONSTERINGSHOOGTE>
    <ms:REFERENTIEVLAK>NVT</ms:REFERENTIEVLAK>
    <ms:OPDRACHTGEVENDE_INSTANTIE>RIKZMON_GOLVEN</ms:OPDRACHTGEVENDE_INSTANTIE>
    <ms:KWALITEITSWAARDE_CODE>00</ms:KWALITEITSWAARDE_CODE>
    <ms:WAARDE_LAATSTE_METING>230</ms:WAARDE_LAATSTE_METING>
    <ms:TIJDSTIP_LAATSTE_METING>2013-01-31T23:50:00.000+01:00</ms:TIJDSTIP_LAATSTE_METING>
    <ms:PARAMETER_WAT_OMSCHRIJVING>Gemiddelde golfhoogte uithoogste 1/3 deel van de golven Oppervlaktewatercm</ms:PARAMETER_WAT_OMSCHRIJVING>
    <ms:BEMONSTERINGSAPPARAATCODE>NVT</ms:BEMONSTERINGSAPPARAATCODE>
    <ms:BEMONSTERINGSMETHODECODE>NVT</ms:BEMONSTERINGSMETHODECODE>
    <ms:BEMONSTERINGSSOORTCODE>01</ms:BEMONSTERINGSSOORTCODE>
    <ms:BIOTAXONCODE>NVT</ms:BIOTAXONCODE>
    <ms:BIOTAXON_COMPARTIMENTCODE>NVT</ms:BIOTAXON_COMPARTIMENTCODE>
    <ms:COMPARTIMENTCODE>OW</ms:COMPARTIMENTCODE>
    <ms:EENHEIDCODE>cm</ms:EENHEIDCODE>
    <ms:GROOTHEIDCODE>H1/3</ms:GROOTHEIDCODE>
    <ms:HOEDANIGHEIDCODE>NVT</ms:HOEDANIGHEIDCODE>
    <ms:MEETAPPARAATCODE>109</ms:MEETAPPARAATCODE>
    <ms:MONSTERBEWERKINGSMETHODECODE>NVT</ms:MONSTERBEWERKINGSMETHODECODE>
    <ms:ORGAANCODE>NVT</ms:ORGAANCODE>
    <ms:PARAMETERCODE>NVT</ms:PARAMETERCODE>
    <ms:PLAATSBEPALINGSAPPARAATCODE>NVT</ms:PLAATSBEPALINGSAPPARAATCODE>
    <ms:TYPERINGCODE>NVT</ms:TYPERINGCODE>
    <ms:WAARDEBEPALINGSTECHNIEKCODE>NVT</ms:WAARDEBEPALINGSTECHNIEKCODE>
    <ms:WAARDEBEPALINGSMETHODECODE>other:F046</ms:WAARDEBEPALINGSMETHODECODE>
    <ms:WAARDEBEWERKINGSMETHODECODE>NVT</ms:WAARDEBEWERKINGSMETHODECODE>
    </ms:locatiesmetlaatstewaarneming>
    </gml:featureMember>
    </wfs:FeatureCollection>

The following is a sample request for calling the Locations with the LocatiesMetLaatsteWaarneming WFS. In the message body of the POST request you can build a filter in order to obtain the desired result.

Methode Content-Type URL
POST application/json https://waterwebservices.rijkswaterstaat.nl/services/distributielaagWFS/distributielaag_dbo?SERVICE=WFS&VERSION=1.1.0&REQUEST=GetFeature&TYPENAME=locatiesmetlaatstewaarneming&Maxfeatures=50

Version

Below de modules that are used in the tutorials. If you want to use the tutorials you need these modules.

Python

# Nothing to show
// Nothing to show
# Nothing to show

Module Description Version Link
requests Requests is an elegant and simple HTTP library for Python 2.20.0 link to documentation
JSON JSON (JavaScript Object Notation), specified by RFC 7159 3.6.0 link to documentation
NumPy NumPy is the fundamental package for scientific computing with Python link to documentation
pandas pandas is an open source, BSD-licensed library providing high-performance, easy-to-use data structures and data analysis tools for the Python programming language 0.23.4 link to documentation
datetime The datetime module supplies classes for manipulating dates and times in both simple and complex ways. 3.7 link to documentation
Pytz pytz brings the Olson tz database into Python. 2018.5 link to documentation
objectpath ObjectPath is a query language similar to XPath or JSONPath, but much more powerful thanks to embedded arithmetic calculations, comparison mechanisms and built-in functions. 0.5 link to documentation

Errors

The Webservices uses the following error codes:

COMING SOON !