Informasjon om innbyggers personverninnstillinger

Tjenesteoversikt

TjenesteNavn

HttpVerb

Beskrivelse

TjenesteNavn

HttpVerb

Beskrivelse

SjekkInnbyggersPiStatus

POST <system url>/personvern/v1/Personverninnstillinger/SjekkInnbyggersPiStatus

Returnerer status på en bestemt Personverninnstilling for en gitt innbygger. 

HentInnbyggersPiForPart

POST <system url>/personvern/v1/Personverninnstillinger/HentInnbyggersPiForPart

Returnerer en liste over personverninnstillinger for en bestemt innbygger som tilhører en bestemt aktør inklusiv innstillingenes status.  Merk! Denne returnerer kun status på de Personverninnstillinger der det finnes en instans hos aktuell innbygger og der denne har status "Aktiv", dvs. at den er virksom. Historikk vises derfor ikke i denne versjonen.

HentInnbyggereAktivePiForDefinisjon

POST <system url>/personvern/v1/Personverninnstillinger/HentInnbyggereAktivePiForDefinisjon

Returnerer en liste med fødselsnummer for alle innbyggere som har en aktiv personverninnstilling for en bestemt Personverninnstillingdefinisjon.

Kan benyttes for å:

  • Synkronisere initielt når man skal ha lokal kopi av alle innstillinger og holdes ajour ved replikering.

  • Kan benyttes som alternativ til replikering og lokal kopi dersom man f.eks. skal “vaske” et stort datasett mot en bestemt personverninnstilling (f.eks. reservasjon) og det er uhensiktsmessig å spørre om status for hver enkelt innbygger.

Autorisasjon og aksesstoken

Alle API’er krever at klienten på forhånd har autentisert seg mot vår Sikkerhetstjeneste og fått utstedt et aksesstoken som skal være med i tjenestekallene til det enkelte API. DigitalAktiv tjenesten krever ikke at kallet utføres i context av en innlogget bruker dvs. at det benyttes UseCase 1 (system-til-system) beskrevet her: https://helsenorge.atlassian.net/wiki/spaces/HELSENORGE/pages/24051725

SjekkInnbyggersPiStatus

Input parametre

Navn

Type

Lovlige verdier

Kommentar

Navn

Type

Lovlige verdier

Kommentar

innbyggerFnr

string

fødselsnummer (11 siffer)

Dette er fødselsnummer til innbygger det spørres på.

definisjonGuid

string

Forhåndskjent verdi

GUID som referer til en bestemt personverninnstilling. Må være kjent på forhånd av kallende system.

definisjonNavn

string

Navn på innstillingen

Beskrivende kortnavn på den forespurte personverndefinisjon. Må være kjent på forhånd av kallende system. (Denne er egentlig overflødig da GUID uansett er unik, vi har likevel valgt å ta denne med.)

partKode

string

Forhåndsavtalt verdi

Kortnavn som identifisere det aktuelle register/screeningprogram/forskningsprosjekt som eier den aktuelle personverninnstilling. Må være kjent på forhånd av kallende system. (Denne er egentlig overflødig da GUID uansett er unik, vi har likevel valgt å ta denne med.)

Eks:

{
  "innbyggerFnr":"12048645510",
   "definisjonGuid":"3FE2A80A-4200-42E2-817B-DA8A6236708A",
   "definisjonNavn":"Samtykke til oppbevaring av biomateriale",
   "partKode":"NFS"
}

Responsparametre

Navn

Type

Lovlige verdier

Kommentar

Navn

Type

Lovlige verdier

Kommentar

innbyggerFnr

string

fødselsnummer (11 siffer)

Dette er fødselsnummer til innbygger det ble spurt på (og som svaret gjelder).

definisjonGuid

string

GUID

GUID for den personverninnstilling definisjon det ble spurt på.

definisjonNavn

string

Navn på innstillingen

Beskrivende kortnavn på den forespurte personverndefinisjon.

partKode

string

Forhåndsavtalt verdi

Kortnavn som identifisere det aktuelle register/screeningprogram/forskningsprosjekt som eier den aktuelle personverninnstilling.

typePi

string

Type personverninnstilling

Kan ha en av følgende verdier:

  • samtykke

  • reservasjon

  • tilgangsbegrensning

status

string

Status

Kan ha en av følgende verdier:

  • piIkkeAktiv (Betyr: Dersom Samtykke: Ikke samtykket; dersom reservasjon: Ingen Reservasjon satt, dersom Tilgangsbegrensning: Ingen tilgangsbegrensning satt.)

  • piAktiv (Betyr: Dersom Samtykke: Har samtykket; dersom reservasjon: Reservasjon satt, dersom Tilgangsbegrensning: Tilgangsbegrensning satt.

innbyggerTbMetadata

JSON

Struktur med metadata for tilgangsbegrensning

(C=Conditional). Er kun med dersom definisjonen er av type tilgangsbegrensning

Eks (samtykke):

{
   "innbyggerFnr":"12048645510",
   "definisjonGuid":"3FE2A80A-4200-42E2-817B-DA8A6236708A",
   "definisjonNavn":"Samtykke til oppbevaring av biomateriale",
   "partKode":"NFS",
   "typePi": “samtykke”,
   "status":"piAktiv"
}

Eks (reservasjon):

{
   "innbyggerFnr":"12048645510",
   "definisjonGuid":"3FE2A80A-4200-42E2-817B-DA8A6236708A",
   "definisjonNavn":"Reservasjon mot lagring av helseopplysninger",
   "partKode":"PDMR",
   "typePi": “reservasjon”,
   "status":"piIkkeAktiv"
}



Metadata knyttet til en instans av en tilgangsbegrensning (variabler som settes av innbygger)

Navn

Type

Kommentar

Navn

Type

Kommentar

type

string

Kan ha en av følgende verdier:

  • helsepersonell

  • helseforetak

nummer

string

HPR-nummer eler organisasjonsnummer

navn

string

Sammensatt navn på helsepersonell eller foretakets navn

Eks (tilgangsbegrensning):

{ "innbyggerTbMetadata": [ { "type": "Helsepersonell", "nummer": "4128168", "navn": "Linda Ingrid Telle" }, {      "type":"helsepersonell",      "nummer":"1234567",      "navn":"Per Olsen"    } ], "innbyggerFnr": "27047706365", "definisjonGuid": "67af5fcd-a4a0-4d58-bd2f-ffa77406421d", "definisjonNavn": "Blokkere tilgang for utvalgt helsepersonell", "partKode": "nilar", "typePi": "tilgangsbegrensning", "status": "piAktiv" }


HentInnbyggersPiForPart

Input parametre

Navn

Type

Lovlige verdier

Kommentar

Navn

Type

Lovlige verdier

Kommentar

innbyggerFnr

string

fødselsnummer (11 siffer)

Dette er fødselsnummer til innbygger det spørres på.

partKode

string

Forhåndskjent verdi

Kortnavn som identifisere det aktuelle register/screeningprogram/forskningsprosjekt som eier den aktuelle personverninnstilling.

Eks:

{
   "innbyggerFnr":"12048645510",
   "partKode":"NFS"
}

Responsparametre

Navn

Type

Kommentar



Navn

Type

Kommentar



innbyggerFnr

string

fødselsnummer (11 siffer)

Dette er fødselsnummer til innbygger det ble spurt på (og som svaret gjelder).

partKode

string

Forhåndskjent verdi

Kortnavn som identifisere det aktuelle register/screeningprogram/forskningsprosjekt som eier den aktuelle personverninnstilling.

funnet

boolean

Denne vil alltid være med i retur. 

"true" dersom minst en aktiv personverninnstilling ble funnet for innbygger tilhørende den parten det forespørres på.

personvernInnstillinger

array

JSON-struktur

En liste med de aktive personverninnstillinger som finnes for aktuell innbygger knyttet til den aktuelle part.

  • definisjonGuid

  • type

  • status

  • string

  • int

  • string

  • Forhåndskjent verdi

  • En av tre verdier

  • Alltid "piAktiv"

  • GUID til personverninnstilling definisjonen.

  • 1=samtykke, 2=reservasjon eller 3=tilgangsbegrensning

  • (Egentlig unødvendig, men tas med for eventuelle framtidige utvidelser)

Eks:

"innbyggerFnr":"12048645510",  "partKode":"NFS", "personvernInnstillinger": [  {    "definisjonGuid":"3FE2A80A-4200-42E2-817B-DA8A6236708A",    "definisjonNavn":"Samtykke til oppbevaring av biomateriale",    "typePi":1,    "status":"piAktiv"  },  {      "definisjonGuid":"f379375-ac8c-49af-b9a2-f01240052986",      "definisjonNavn":"Reservasjon mot bruk uten separat tillatelse",      "typePi":2,      "status":"piAktiv"    }] }

HentInnbyggereAktivePiForDefinisjon

Input parametre

Navn

Type

Lovlige verdier

Kommentar

Navn

Type

Lovlige verdier

Kommentar

definisjonGuid

string

Forhåndskjent verdi

GUID som referer til en bestemt personverninnstilling. Må være kjent på forhånd av kallende system.

partKode

string

Forhåndsavtalt verdi

Kortnavn som identifisere det aktuelle register/screeningprogram/forskningsprosjekt som eier den aktuelle personverninnstilling. Må være kjent på forhånd av kallende system.

pagingReference

int

Verdi fås i respons.

Skal være med i request i etterfølgende kall dersom det er behov for paging, og kan være med i første request, men må da ha verdien 0.

Eks (første kall):

{    "definisjonGuid":"3FE2A80A-4200-42E2-817B-DA8A6236708A",     "partKode":"NFS" }

eller

Responsparametre

Navn

Type

Lovlige verdier

Kommentar

Navn

Type

Lovlige verdier

Kommentar

definisjonGuid

string

GUID

GUID for den personverninnstilling definisjon det ble spurt på.

definisjonNavn

string

Navn på innstillingen

Beskrivende kortnavn på den forespurte personverndefinisjon.

partKode

string

Forhåndsavtalt verdi

Kortnavn som identifisere det aktuelle register/screeningprogram/forskningsprosjekt som eier den aktuelle personverninnstilling.

typePi

string

Type personverninnstilling

Kan ha en av følgende verdier:

  • samtykke

  • reservasjon

  • tilgangsbegrensning

pagingReference

int

Dersom den har verdien 0, trenger det ikke å gjøres flere kall. Dersom annen verdi, må det gjøres etterfølgende kall med angitt pagingReference.

Nytt kall må gjøres med pagingReference så lenge denne er større enn verdien “0”.

personvernInnstillinger

 

  • innbyggerFnr

  • innbyggerTbMetadata

JSON liste

 

  • string

  • JSON

 

 

  • Gyldig fødselsnummer

  • Struktur med metadata for tilgangsbegrensning

En liste med alle de innbygger som har en aktiv instans (aktiv reservasjon, samtykke eller tilgangsbegrensning)

  • Alltid med i liste elementet

  • (C=Conditional). Er kun med dersom definisjonen er av type tilgangsbegrensning

Eks (samtykke evt. reservasjon):

 

Eks (tilgangsbegrensning):

Respons ved feil

Alle tjenester i API'ene har følgende logikk for HTTP-respons:

  • Statuskode når kallet er utført ok: 200 

  • Statuskode ved feil internt på Helsenorge: 500

  • Statuskode ved feil i request: 400

  • Statuskode ved manglende tilganger: 403

  • Statuskode ved feil eller manglende autorisasjon: 401

Ved HTTP-statuskoder som tilsier at det har oppstått en feil returneres også en respons med feilkode og feilmelding.

Eks:
{
  "Code": "SEC-110000",
  "Message": "Token is expired or invalid"
}