Servicetyper
Når en webservice konfigureres genereres der automatisk en url.
Opbygningen af url’en sker ud fra følgende kriterier, som angives i forbindelse med konfigurationen af webservicen:
- Protokol (http/https)
- Webservicetype (REST, WFS, WMS, WMTS, WCS, TMS)
- Webservicenavn
- Version af webservicen
Strukturen for den genererede url sker i overensstemmelse med følgende skema:
<scheme>://<authority>/<path>/?<parameters>
Strukturen for den samlede url sker i overensstemmelse med følgende skema, når<authority> og <path> bliver foldet ud:
<scheme>://<alias>.datafordeler.dk/<owner>/<service>/<version>/<metode>/?<parameters>
Parametre dækker over både sikkerhedsparametre, standardparametre og tjenestespecifikke parametre.
OCES certifikater
Kald med certifikater skal ikke ske til det ”normale” endpoint, men skal gå til et separat endpoint specifikt for anvendelse af certifikater.
Url vil for webservices med certifikater i i zone 0 starter med.
https://certservices.datafordeler.dk/
Url vil for webservices med certifikater i i zone 5 starter med.
https://s5-certservices.datafordeler.dk/
Se endpoint for testmiljøerne i Listen over endpoint
Brugernavn/adgangskode
Vil du benytte brugernavn/adgangskode som akkreditiver, skal parametre inkluderes i kald til tjeneste og den samlede url vil følge dette skema:
<scheme>://<alias>.datafordeler.dk/<owner>/<service>/<version>/<metode>/?username=xxx&password=yyy
Paging
Det er muligt at anvende paging for de REST-services, der er konfigureret til det.
I webservicekatalogerne vil det fremgå af de generelle informationer om registrets webservices er konfigureret til at benytte paging samt informationer om en default paging-størrelse.
Benytter du paging vil den samlede url følge dette skema:
<scheme>://<alias>.datafordeler.dk/<owner>/<service>/<version>/<metode>/?page=xxx&pagesize=yyy
Count
Antal elementer i resultatsættet returneres ved at angive parameteren count i REST kald.
Benytter du count vil den samlede url følge dette skema:
<scheme>://<alias>.datafordeler.dk/<owner>/<service>/<version>/<metode>/?count=true
Format
REST-servicen kan returnere data i formaterne JSON og XML.
Vælger du at specificere formatet, vil den samlede url følge dette skema:
<scheme>://<alias>.datafordeler.dk/<owner>/<service>/<version>/<metode>/?format=xxx
En anden mulighed er at sætte accept headeren til "application/json" eller "application/xml".
jsonpCallback
jsonpCallback: jsonp kan anvendes ved at angive jsonpCallback=xxx.
Tjenestespecifikke parametre
Nogle tjenester accepterer at en parameter består af en liste af værdier.
For de REST baserede webservices er dette understøttet ved at de enkelte værdier i listen adskilles af et ”|”-tegn (pipe karakter).
Eksempel med 4 værdier i en liste til en parameter: Værdi1|Værdi2|Værdi3|Værdi4
Webservices kan i Datafordeleren konfigureres til at kræve kvitteringer fra anvenderen.
Alle forespørgsler til en webservice vil returnere en response-header med kvitteringsID ( receipt id) og kaldet DataDistributor.ReceiptId.
For at kvittere for data skal du sende en POST anmodning til kvitteringsservicen.
https://<endpoint>.datafordeler.dk/system/receipt/1/rest?username=xxx&password=yyy
med en request body der ser ud som (json eksempel):
{ "ReceiptId":"zzz" }
hvor “zzz” angiver kvitteringsID.
Du kan hente en ticket ved at kalde denne service:
https://<endpoint>/system/getticket/1/custom?service=xxx&username=yyy&password=zzz
Tilføj owner, service, version og metode samt tjenestebrugerens brugernavn og adgangskode til url'en.
Kald url'en i din browser og du får returneret din ticket til den service, som du ønsker at kalde.
Ticket skal erstatte brugernavn og adgangskode i url'en, når du kalder din tjeneste på følgende måde:
https://<endpoint>/<owner>/<service>/<version>/<metode>/<parameters>&ticket=ttt