Edurep:SMB SOAP: verschil tussen versies

Uit Kennisnet Developers Documentatie
Naar navigatie springen Naar zoeken springen
(update en delete)
(→‎Endpoints: change wsdl locatie)
Regel 3: Regel 3:
 
== Endpoints ==
 
== Endpoints ==
 
* SMB: http://smb.edurep.kennisnet.nl/smdBroker/ws
 
* SMB: http://smb.edurep.kennisnet.nl/smdBroker/ws
* SMB SOAP WSDL: http://www.kennisnet.nl/wsdl/smd/1.0/smd.wsdl
+
* SMB SOAP WSDL: http://wsdl.kennisnet.nl/smd/1.0/smd.wsdl
   
 
== Insert ==
 
== Insert ==

Versie van 3 jun 2015 08:46

Door middel van het SOAP protocol kan men een SMO in Edurep toevoegen, verwijderen of wijzigen. Alleen geautoriseerde gebruikers mogen hun eigen SMO's aanbieden, wijzigen of verwijderen.

Endpoints

Insert

Voorbeeldcode om een nieuw SMO in te schieten. Bij een insert is het meegeven van een smoId niet verplicht. Wanneer deze niet wordt meegegeven, wordt een smoId aangemaakt door ons. Het patroon hiervan is: <supplierId>.<volgnummer>.

Request

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
                  xmlns:smd="http://xsd.kennisnet.nl/smd/1.0/" 
                  xmlns:hreview="http://xsd.kennisnet.nl/smd/hreview/1.0/">
  <soapenv:Header/>
  <soapenv:Body>
    <smd:insertSMO>
      ...
      <!-- hier staat het smo record -->
      ...
    </smd:insertSMO>
  </soapenv:Body>
</soapenv:Envelope>

Response

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
  <soapenv:Header/>
  <soapenv:Body>
    <smd:response xmlns:smd="http://xsd.kennisnet.nl/smd/1.0/"  xmlns:hreview="http://xsd.kennisnet.nl/smd/hreview/1.0/">>
      <smd:status>ok</smd:status>
      <smd:responseSmo>
        ...
        <!-- hier staat het ingevoerde smo record -->
        ...
      </smd:responseSmo>
      <smd:requestSmo>
        ...
        <!-- hier staat het ingevoerde smo record -->
        ...
      </smd:requestSmo>
    </smd:response>
  </soapenv:Body>
</soapenv:Envelope>

Update

Wijzigt een bestaande SMO in SMB door middel van SOAP. De smoId en supplierId van in te schieten SMO moet daarbij overeenkomen met de te wijzigen SMO.

Request

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
                  xmlns:smd="http://xsd.kennisnet.nl/smd/1.0/" 
                  xmlns:hreview="http://xsd.kennisnet.nl/smd/hreview/1.0/">
  <soapenv:Header/>
  <soapenv:Body>
    <smd:updateSMO>
      ...
      <!-- hier staat het smo record -->
      ...
    </smd:updateSMO>
  </soapenv:Body>
</soapenv:Envelope>

Response

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
  <soapenv:Header/>
  <soapenv:Body>
    <smd:response xmlns:smd="http://xsd.kennisnet.nl/smd/1.0/"  xmlns:hreview="http://xsd.kennisnet.nl/smd/hreview/1.0/">>
      <smd:status>ok</smd:status>
      <smd:responseSmo>
        ...
        <!-- hier staat het ingevoerde smo record -->
        ...
      </smd:responseSmo>
      <smd:requestSmo>
        ...
        <!-- hier staat het ingevoerde smo record -->
        ...
      </smd:requestSmo>
    </smd:response>
  </soapenv:Body>
</soapenv:Envelope>

Delete

Verwijdert een bestaande SMO in SMB. Het meegeven van een smoId en supplierId is voldoende.

Request

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
                  xmlns:smd="http://xsd.kennisnet.nl/smd/1.0/">
 <soapenv:Header/>
 <soapenv:Body>
  <smd:deleteSMO>
   <smd:smo>
    <smd:smoId>smo.id.001</smd:smoId>
    <smd:supplierId>Teleblik</smd:supplierId>
   </smd:smo>
  </smd:deleteSMO>
 </soapenv:Body>
</soapenv:Envelope>

Response

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
  <soapenv:Header/>
  <soapenv:Body>
    <smd:response xmlns:smd="http://xsd.kennisnet.nl/smd/1.0/"  xmlns:hreview="http://xsd.kennisnet.nl/smd/hreview/1.0/">>
      <smd:status>ok</smd:status>
      <smd:responseSmo>
        ...
        <!-- hier staat het verwijderde smo record -->
        ...
      </smd:responseSmo>
    </smd:response>
  </soapenv:Body>
</soapenv:Envelope>

Foutmeldingen

Dit onderdeel beschrijft de foutmeldingen die kunnen voorkomen bij het inschieten van SMO records.

Voorbeeld

<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
  <soap-env:Header/>
  <soap-env:Body>
    <smd:errorResponse xmlns:smd="http://xsd.kennisnet.nl/smd/1.0/" xmlns:hreview="http://xsd.kennisnet.nl/smd/hreview/1.0/">
      <smd:error>
        <smd:code>2000</smd:code>
        <smd:description>SupplierId is unknown</smd:description>
      </smd:error>
      <smd:status>error</smd:status>
      <smd:requestSmo>
        <hreview:hReview>
          <hreview:description>test review</hreview:description>
        </hreview:hReview>
        <smd:supplierId>niet bestaand</smd:supplierId>
      </smd:requestSmo>
    </smd:errorResponse>
  </soap-env:Body>
</soap-env:Envelope>

Foutcodes

foutcode beschrijving (en) beschrijving (nl)
1000 SmoId is not unique. De smoId is niet uniek.
1001 SmoId is empty. De smoId is leeg.
1002 SmoId prefix is wrong. De smoId prefix is onjuist.
2000 SupplierId is unknown De supplierId bestaat niet.
2001 SupplierId is empty. De supplierId is leeg.
3000 Can't find the smo with the given id. Bij verwijdering of wijziging moet het smoId bestaan in SMB.
4000 Method not supported. Methode niet ondersteund.
5000 The request is not valid. Request is ongeldig en niet 4000, of 5001 t/m 5009.
5001 At least one of the elements 'rating', 'description' or 'tags' should be present. Geen van de velden tags, rating en review is aanwezig of ingevuld.
5002 The info element is missing. Het info element ontbreekt.
5004 The review is too long. De SMO mag niet meer dan 1000 tekens bevatten.
5005 The specified URI is incorrect De URI in het info element is onjuist.
5006 The URI is empty. Het info element is leeg.
5007 The rating values for best and worst are equal De inhoud van het worst en best element zijn gelijk aan elkaar.
5008 The rating value is out of range. De waardering valt buiten het opgegeven bereik.
5009 The delete request is invalid. Only smoId and supplierId may be specified. Een delete verzoek moet slechts een smoId en supplierId bevatten.
5010 The dtreviewed is invalid. Expected YYYY-MM-DDThh:mm:ssZ. Het dtreviewed veld moet voldoen aan het volgende formaat: YYYY-MM-DDThh:mm:ssZ.
7000 Your IP-address is not in allowed range. IP-adres leverancier valt niet binnen toegestaan bereik.
9998 Request can't be parsed. De xml kan niet worden geparst.
9999 Unknown error. Onbekende fout, geen van bovenstaande.