FHI har laget eksempelkode som viser hvordan en integrasjon mot Legemiddelregisteret kan utvikles. Eksempelkoden er tilgjengelig i både C# og PowerShell, og demonstrerer de viktigste funksjonene for sikker dataoverføring til registeret.
Du finner eksempelkoden her:
For å få tilgang til API-et for overføring av data kreves det at avsendersystemets IP-adresse registreres i LMRs oversikt over hvitelistede adresser. Både enkeltadresser og adresseområder kan hvitelistes. Det er kun hvitelisting i produksjonsmiljøet.
Data som overføres til API-et skal være kryptert og signert (se SignertKryptertBundle).
APIet er beskyttet av HelseID og krever at klienter autentiserer seg med Client Credentials Grant.
For å få tilgang:
Institusjoner som skal overføre data til Legemiddelregisteret, må følge den definerte protokollen. Protokollen beskriver krav til overføringsfrekvens, datastruktur og sikkerhet. Du finner mer informasjon her: Protokoll for overføring av data.
For å bygge en samling med data som skal overføres må det lages en LegemiddelregisterBundle. Dette er en spesialisert FHIR Bundle-profil utviklet for innsending av data til Legemiddelregisteret. Den er begrenset til transaction-type bundles og tillater kun POST-operasjoner, noe som sikrer konsistent datahåndtering og sporbarhet. Bundlen kan kun inneholde spesifikke ressurstyper som er relevante for Legemiddelregisteret: Pasient, Helsepersonell, Legemiddel, LegemiddelAdministrasjon, Diagnose, Institusjonsopphold, Legemiddelrekvirering, Organisasjon.
Ved overføring av data skal det lages en SignertKryptertBundle, som sikrer både kryptering og signering av innholdet. Denne prosessen innebærer å komprimere, kryptere og signere en FHIR-basert LegemiddelregisterBundle før den sendes til API-et. Les mer om hvordan du oppretter en SignertKryptertBundle i denne veiledningen.
URL til Legemiddelregisterets API:
For testing av integrasjonen er det tilgjengelig to dedikerte valideringsendepunkter. Disse lagrer ingen data og er kun tilgjengelig i testmiljøet.
Validering av kryptert og signert bundle:
/fhirmottak/v1/validateLegemiddelregisterBundle - Validerer at kryptering og signering er utført korrekt, samt at innholdet i FHIR-bundelen er i henhold til spesifikasjonen. Krever ikke autentisering. Returnerer valideringsresultat som OperationOutcome.Validering av FHIR-bundle:
/fhirmottak/v1/validate - Validerer innholdet i en kryptert og signert bundle uten å lagre den. Krever HelseID-autentisering. Returnerer valideringsresultat.API-et returnerer følgende HTTP-statuskoder:
200 OK
/fhirmottak/v1: Meldingen er lagret i databasen/fhirmottak/v1/validate: Meldingen er kun validert, ikke lagret/fhirmottak/v1/validateLegemiddelregisterBundle: Returnerer OperationOutcome med valideringsresultat400 Bad Request
/fhirmottak/v1/validateLegemiddelregisterBundle: Returnerer OperationOutcome med detaljert feilinformasjon500 Internal Server Error
/fhirmottak/v1/validateLegemiddelregisterBundle: Kan returneres ved teknisk feil i FHIR-validering eller manglende FHIR R4 core specifications