To communicate with the FEWS PI SOAP Web Service, the SOAP protocol is used. This means all HTTP requests have to be using the POST method.

The soap API can be queried using the WSDL using the following URL: http://localhost:8080/FewsWebServices/fewspiservice?wsdl. Using a tool like SoapUI: https://www.soapui.org/downloads/soapui.html, the WSDL can be imported and sample SOAP requests can be generated. Some examples are given here.

SOAP getTimeSeries request

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:few="http://fewspiservice.wldelft.nl">
   <soapenv:Header/>
   <soapenv:Body>
      <few:getTimeSeries>
         <!--Optional:-->
         <few:queryParams>
            <convertDatum>?</convertDatum>
            <!--Optional:-->
            <endCreationTime>?</endCreationTime>
            <!--Optional:-->
            <endForecastTime>?</endForecastTime>
            <!--Optional:-->
            <endTime>?</endTime>
            <!--Optional:-->
            <ensembleId>?</ensembleId>
            <!--Zero or more repetitions:-->
            <externalForecastTimes>?</externalForecastTimes>
            <!--Optional:-->
            <filterId>?</filterId>
            <forecastSearchCount>?</forecastSearchCount>
            <importFromExternalDataSource>?</importFromExternalDataSource>
            <!--Zero or more repetitions:-->
            <locationIds>?</locationIds>
            <!--Zero or more repetitions:-->
            <moduleInstanceIds>?</moduleInstanceIds>
            <omitMissing>?</omitMissing>
            <!--Optional:-->
            <onlyForecasts>?</onlyForecasts>
            <onlyHeaders>?</onlyHeaders>
            <onlyManualEdits>?</onlyManualEdits>
            <!--Zero or more repetitions:-->
            <parameterIds>?</parameterIds>
            <!--Zero or more repetitions:-->
            <qualifierIds>?</qualifierIds>
            <showEnsembleMemberIds>?</showEnsembleMemberIds>
            <showStatistics>?</showStatistics>
            <showThresholds>?</showThresholds>
            <!--Optional:-->
            <startCreationTime>?</startCreationTime>
            <!--Optional:-->
            <startForecastTime>?</startForecastTime>
            <!--Optional:-->
            <startTime>?</startTime>
            <!--Zero or more repetitions:-->
            <taskRunIds>?</taskRunIds>
            <useDisplayUnits>?</useDisplayUnits>
            <!--Optional:-->
            <version>?</version>
         </few:queryParams>
      </few:getTimeSeries>
   </soapenv:Body>
</soapenv:Envelope>
 


SOAP getLocations request

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:few="http://fewspiservice.wldelft.nl">
   <soapenv:Header/>
   <soapenv:Body>
      <few:getLocations>
         <!--Optional:-->
         <few:clientId>?</few:clientId>
         <!--Optional:-->
         <few:filterId>?</few:filterId>
         <!--Optional:-->
         <few:piVersion>?</few:piVersion>
      </few:getLocations>
   </soapenv:Body>
</soapenv:Envelope>


SOAP getParameters request

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:few="http://fewspiservice.wldelft.nl">
   <soapenv:Header/>
   <soapenv:Body>
      <few:getParameters>
         <!--Optional:-->
         <few:clientId>?</few:clientId>
         <!--Optional:-->
         <few:filterId>?</few:filterId>
         <!--Optional:-->
         <few:piVersion>?</few:piVersion>
      </few:getParameters>
   </soapenv:Body>
</soapenv:Envelope>


SOAP getFilters request

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:few="http://fewspiservice.wldelft.nl">
   <soapenv:Header/>
   <soapenv:Body>
      <few:getFilters>
         <!--Optional:-->
         <few:filterId>?</few:filterId>
         <!--Optional:-->
         <few:piVersion>?</few:piVersion>
      </few:getFilters>
   </soapenv:Body>
</soapenv:Envelope>
  • No labels