Oppdatere innsendt oppgave

Oppdatere innsendt oppgave

Oppdater status på oppgave med forenklet API

Det er mulig å oppdatere en oppgave hvis det skulle oppstå et behov for det etter at den er sendt ut. Det kan f.eks være hvis det er behov for å gjøre beskrivelsen tydeligere eller fristen må flyttes som konsekvens av at timen eller operasjonen det er en forberedelse for blir flyttet. I noen tilfeller er det også behov for at aktør selv oppdaterer status. Mange vil aldri ha behov for å endre oppgaver etter det er sendt, men hvis det skulle skje en utilsiktet feil ved oppgaven som blir sendt ut er denne funksjonen også det som må brukes for å kunne håndtere og rydde opp i en slik situasjon. Derfor må alle som tar i bruk oppgavefunksjonaliteten på Helsenorge også være forberedt og klar til å kunne bruke denne.

Oppgaver som allerede er innsendt kan oppdateres når visse kriterier er oppfylt. For innbygger vil endringer som gjøres komme til syne i en endringslogg som vises i tilknytning til selve oppgaven.

Det er to måter å oppdatere oppgaver på:

  • Via forenklet API for ren statusoppdatering

  • Via FHIR Patch for oppdatering av et større utvalg attributter på oppgaven

På denne siden beskrives enkel oppdatering av status.

Oppdatering av status på oppgave - forenklet API

Helseaktører har behov for å oppdatere status på oppgaver som utføres av innbygger utenfor Helsenorge, f.eks angi at en oppgave er påbegynt eller utført.

Det er kun oppgaver som har status “Aktiv” (ready) eller “Påbegynt” (in progress) på Helsenorge som kan oppdateres. Innbygger varsles ikke når operasjonen er gjennomført.

Tjenesten er av typen REST og oppdaterer kun status, men gir også mulighet for å sende med begrunnelse av statusendringen.

For endring av andre attributter eller ved behov for varsling av endringer må FHIR Patch benyttes (se https://helsenorge.atlassian.net/wiki/x/AYBCaw ).

Regler for oppdatering av status

Følgende begrensninger/forretningsregler er definert på Helsenorge for når status kan oppdateres:

  • Oppdateringen er initiert av innbygger, dvs som resultat av innbyggers handlinger

    • Eller oppgaven er av ulike årsaker ikke lenger relevant å utføre (kansellert, feilregistrert)

  • Status kan ikke oppdateres dersom:

    • Status på Helsenorge = “completed”', “cancelled” eller “entered-in-error” (Task.status)

    • Oppgavens gyldighet er passert, dvs. nåværende tidspunkt er etter det siste av:

      • Regulær frist (Task.restriction.periode.end)

      • Gyldighetsperiode utover regulær frist (Task.restriction)

        • http://helsenorge.no/fhir/StructureDefinition/hn-task-deadline

Status-attributtet i FHIR Task er beskrevet i detalj her: FHIR Task - Oppgave

Detaljer om API-et

Tjenesten benytter system-til-system kommunikasjon, og det kreves at klienten har tilgang til å skrive til løsningsområdet.

Tjenesten konsumerer og produserer application/json.

HTTP metode og rute

POST [baseUrl]/oppgaverest/v1/OppdaterStatus

BaseUrl er til aktuelt Helsenorge-system. Se mer her: Testmiljøer og endepunkter - Helsenorge - Helsenorge dokumentasjon

Request

Requestmodell: OppdaterOppgaveStatusRequest

Parameternavn

Type

Beskrivelse

Parameternavn

Type

Beskrivelse

fnr

string

Innbyggers fødselsnummer, ‘eier’ av oppgaven, påkrevd

oppgaveGuid

guid

Id på oppgaven som skal oppdateres, påkrevd

status

string

Ny status, påkrevd

statusReason

string

Forklaring på f.eks kansellering av oppgave. Ikke påkrevd, maks 250 tegn.

Verdier som aksepteres for status (case sensitiv):

  • “in-progress”

  • "completed"

  • "cancelled"

  • "entered-in-error"

Eksempel:

{ "fnr": "24916298869", "oppgaveGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "status": "cancelled", "statusReason": “Årsak til kansellering" }

HTTP statuskoder

  • 200 OK: Status oppdatert

  • 204 No Content: Status er lik allerede lagret status på oppgaven og request statusReason er null/empty

  • 400 Bad Request: Ugyldig payload/valideringsfeil

  • 401/403: Mangler autorisasjon