Grensesnittdokumentasjon Grensesnittene mellom Legemiddelverket og de andre eresept-aktørene - Webservice FEST for internett og Norsk Helsenett (NHN) 22.10.2014 Antall sider: 8
2 av 7 Innhold 1 Innledning 3 Formål 3 Omfang 3 2 FEST sin rolle i eresept 3 3 FEST (WCF) 4 Nedlasting av FEST 4 GetM30 5 Parametre 5 m30response 5 4 FEST (asmx) 6 Kode-eksempel på konsumering av tjeneste 6 m30response 6 5 Kommunikasjon 7 6 Sikkerhet 7 7 Melding av feil 7
3 av 7 1 Innledning Formål Hensikten med dokumentet er å gjøre aktuelle aktører i stand til å utvikle grensesnitt og kommunisere med Legemiddelverket i henhold til gjeldende spesifikasjoner. Omfang Dette dokumentet dekker grensesnittet til webservice for FEST på internett og på Norsk Helsenett (NHN) 2 FEST sin rolle i eresept Kort om FEST sin rolle i eresept M30 er FEST-meldingen (overføring av informasjon fra Legemiddelverkets FEST-grunnlag) Forskriver - allmenn Apotek Journalsyste Farmapro Forskriver - sykehus Kurvesystem/ journalsystem FEST Ardis Bandasjist Pasient mineresepter.no interaksjoner.no mobile løsninger, apper Helfo
4 av 7 3 FEST (WCF) FEST er implementert som en standard, synkron web service som følger «Envelope Request-Response Message Exchange Pattern». Tjenesten er selvbeskrivende i den forstand at man for eksempel kan åpne internett adressen i en nettleser og se hvilke operasjoner som er tilgjengelige samt formatet på «request» og «response». Tjenesten har en metode GetM30 med to parametre og svarer med en m30response. Vær obs på at tjenesten bruker WS-adressering. Følgende må være med i headeren på SOAP-requesten: <soap:header xmlns:wsa="http://www.w3.org/2005/08/addressing"> <wsa:action>http://www.slv.no/20131008/festservice250/getm30</wsa:action> <wsa:to>https://fest.legemiddelverket.no/fest/festservice250.svc</wsa:to> </soap:header> Versjonering av tjenesten ligger i navnet på tjenesten: FestService240 vil si versjon 0 av M30 versjon 2.4. For M30 versjon 2.5 vil det komme en ny tjeneste FestService250 og etterfølgende eventuelt FestService251 ved endringer i M30 XSD skjemaet. Nedlasting av FEST Fest er tilgjengelig som en web-service som følger protokollen SOAP. (Både SOAP 1.1 og SOAP 1.2 støttes). Miljø Versjon Domene (DNS) Web-service Filtre NHN - NHN - NHN Internett - Internett - Internett NHN staging* 2.4 frontend-fest.nhn.no Fest/FestService240.svc Farmalogg, Rekvirent inkl. 2.5.0 frontend-fest.nhn.no Fest/FestService250.svc Farmalogg, Rekvirent inkl. 2.5.1 frontend-fest.nhn.no Fest/FestService251.svc Institusjon 2.4 fest.legemiddelverket.no Fest/FestService240.svc Farmalogg, Rekvirent inkl. 2.5.0 fest.legemiddelverket.no Fest/FestService250.svc Farmalogg, Rekvirent inkl. 2.5.1 fest.legemiddelverket.no Fest/FestService251.svc Institusjon 2.4 frontend-fest.nhn.no FestStaging/FestService240.svc Rekvirent inkl. inkrementelt, Veterinær, NAV NHN 2.5.0 frontend-fest.nhn.no FestStaging/FestService250.svc Rekvirent inkl.
5 av 7 Miljø Versjon Domene (DNS) Web-service Filtre staging* inkrementelt, Veterinær, NAV NHN - test 2.4 frontend-fest-test.nhn.no TestFest/FestService240.svc Farmalogg, Rekvirent inkl. NHN - test 2.5.0 frontend-fest-test.nhn.no TestFest/FestService250.svc Farmalogg, Rekvirent inkl. NHN test 2.5.1 frontend-fest-test.nhn.no TestFest/FestService251.svc Institusjon Internett - 2.4 festtest.legemiddelverket.no TestFest/FestService240.svc test Internett - test Internett test 2.5.0 festtest.legemiddelverket.no 2.5.1 festtest.legemiddelverket.no TestFest/FestService250.svc TestFest/FestService251.svc *Staging betyr at den eksponerer data før den offisielle versjon blir publisert. Farmalogg, Rekvirent inkl. Farmalogg, Rekvirent inkl. Institusjon GetM30 Parametre Filter En enum med den «varianten» av FEST-meldingen man ønsker: Farmalogg, Rekvirent, Bandasjist,, Institusjon SistOppdatert Brukes for å få et inkrementelt uttrekk av data. Kan kun brukes sammen med filteret Rekvirent. Angir at man ønsker en inkrementell FEST-melding som inneholder en serie med endringer. Hvis den mottatte FEST-meldingens HentetDato <> SistOppdatert så må man gjenta kallet, nå med HentetDato som parameter for å få neste serie med inkrementelle endringer. Slik må kallet gjentas inntil HentetDato = SistOppdatert. Vær obs på at navnet «HentetDato» på det første elementet i FEST-meldingen er noe misvisende. Det denne datoen sier noe om er hvor gamle data meldingen er basert på, ikke når den ble lastet ned. m30response <xs:complextype name="m30response"> <xs:sequence> <xs:element name="m30message" type="slv.fest.data.m30.v250.fest"/> <xs:element name="returkode" type="kith:cs"/> </xs:sequence> </xs:complextype> M30Message Returkode Mulige returkoder: FEST-meldingen. Hvorvidt M30-anmodningen var vellykket, se tabellen under. Selv om V=1 så kan M30Message være tom.
6 av 7 V (verdi) DN (beskrivelse) 1 OK 8 Uventet feil 4 FEST (asmx) Vil bli støttet frem til 1. juli 2014. Hos driftsleverandøren Ikomm (på Norsk helsenett): Miljø Nett IP Domene (DNS) Web-service FEST v2 NHN 91.186.93.37 frontend-fest.nhn.no Festv20Service/FestWS.asmx FEST v2 test NHN 91.186.93.38 frontend-fest-test.nhn.no FESTv20ServiceTest/FestWS.asmx Kode-eksempel på konsumering av tjeneste FestService.FestService240Client service = new FestService.FestService240Client(); FestService.M30Response response = service.getm30(festservice.filterenum.rekvirent, null); string returkode = response.returkode.dnfield; FestService.FEST m30 = response.m30message; <xs:complextype name="m30request"> <xs:sequence> <xs:element name="sistoppdatert" type="xs:datetime" minoccurs="0"/> <xs:element name="filter" type="kith:cs"/> <xs:element name="m30versjon" type="xs:string"/> </xs:sequence> M30Versjon Filter SistOppdatert Den versjonen av M30-skjemaet man ønsker at FEST-meldingen skal følge. Følgende versjoner støttes i : Versjon 2.4: http://www.kith.no/xmlstds/eresept/m30/2011-01-01 Den «varianten» av FEST-meldingen man ønsker. Per september 2009 har V-attributtet tre mulige verdier: RekvirentNAV, BNU og VRS (men VRS er kun tilgjengelig for VRS). DN-attributtet har ingen betydning. Kan kun brukes sammen med filteret RekvirentNAV. Angir at man ønsker en inkrementell FEST-melding som inneholder alle endringer siden en FEST-melding med den angitte datoen som HentetDato. Vær obs på at navnet «HentetDato» på det første elementet i FEST-meldingen er noe misvisende. Det denne datoen sier noe om er hvor gamle data meldingen er basert på, ikke når den ble lastet ned. m30response <xs:complextype name="m30response"> <xs:sequence> <xs:element name="m30message" type="xs:string"/> <xs:element name="m30versjon" type="xs:string"/> <xs:element name="returkode" type="kith:cs"/>
7 av 7 </xs:sequence> </xs:complextype> M30Message M30Versjon Returkode Mulige returkoder: V (verdi) FEST-meldingen. Skjemaet som denne FEST-meldingen følger. Hvorvidt M30-anmodningen var vellykket, se tabellen under. DN (beskrivelse) 1 OK 2 Et gyldig filter må angis som innparameter 3 Et gyldig namespace må angis som versjonsnummer. GetAvailableVersions returnerer de versjoner som er støttet av tjenesten 4 Ugyldig filter spesifisert 5 Ugyldig innkommende dato 6 Kan ikke opprette kontakt med FEST-databasen 7 Angitt M30 versjon tilbys ikke av tjenesten 8 Uventet feil Det benyttes ikke AppRec i forbindelse med FEST. 5 Kommunikasjon Legemiddelverket støtter kun UTF-8. Signerte dokumenter må være «base 64»-kodet. 6 Sikkerhet Webservice som WCF er sikret med https. Forbindelsen til FEST (asmx) er ukryptert http. 7 Melding av feil Feil meldes til fest@legemiddelverket.no.