Kodeeksempler skademelding
Generer klientkode med OpenAPI generator
Vi anbefaler å bruke en OpenAPI kodegenerator for å generere klientkode. Da kommer du rakst opp å kjøre og koden er basert på våres OpenAPI API kontrakt slik at du får forholder deg til riktige typer.
I dette eksemplet bruker vi en typescript generator
Bruk din favoritt pakkehåndterer for å installere pakken. Vi bruker PNPM.
pnpm install @hey-api/openapi-ts
Deretter er det bare å kjøre generatoren. Endre konfigurasjon til å passe med dine preferanser. Vi bruker axios som HTTP klient, derfor må vi installere hey-api modulen for denne:
pnpm install @hey-api/client-axios
Kjør generator
npx @hey-api/openapi-ts -i https://yrkesskade-ekstern-gateway.nav.no/skademelding/api/v3/api-docs -o ./client/src/api/skademelding --client @hey-api/client-axios```
Hvis genereringen var vellykket, skal du nå ha klientkoden du behøver for å kommunisere med våres Skademelding API
Mer dokumentasjon av generator:
Konfigurere generert klient
Anbefaler å sjekke ut dokumentajsonen til generator og valgt HTTP klient.
BaseUrl er spesifisert i kontrakten som som koden genereres fra så denne trenger ikke settes manuelt. Hvis dere også vil ta i bruk testmiljøet, så må dere endre denne til å peke mot testmiljøet (dev). Oversikt over URL til de ulike miljøene finner du på forsiden
import { client as skademeldingKlient } from './api/skademelding/client.gen';
skademeldingKlient.setConfig({
baseURL: "https://yrkesskade-ekstern-gateway.nav.no",
/*
// auth: Maksinporten token eller funksjon som returnerer maskinportentoken
// Eventult brukt
headers: {
Authorization: 'Bearer <MAKSINPORTEN_TOKEN>',
'x-nav-ys-kilde': '<IDENTIFIKATOR_FOR_DIN_LOESNING>'
},
*/
})
Post skademelding
await postSkademelding({
body: {
rolletype: "arbeidstaker",
"innmelder": {
"innmelderrolle": "virksomhetsrepresentant",
"norskIdentitetsnummer": "12345678910",
"paaVegneAv": "123456789"
},
"skadelidt": {
"norskIdentitetsnummer": "12345678910"
},
"skade": {
"alvorlighetsgrad": "GYLDIG_ALVORLIGHETSGRAD_FRA_KODEVERK",
"skadedeDeler": [
{
"skadeart": "GYLDIG_SKADEART_FRA_KODEVERK",
"kroppsdel": "GYLDIG_KROPPSDEL_FRA_KODEVERK"
}
]
},
"hendelsesfakta": {
"tid": {
"tidstype": "ukjent"
},
"naarSkjeddeUlykken": "iAvtaltArbeidstid",
"paavirkningsform": [
"kjemikalierEllerLoesemidler",
"stress"
],
"aarsakUlykke": [
"stukketEllerKuttet",
"skremtAvDyr"
],
"utfyllendeBeskrivelse": "string"
},
}
})