WIP på förslag för ny resurs i caseStatus för att returnera statusar på ärenden på ett (subset) nationellt format. Den nationella specen är på svenska, därav är även API:et på svenska.
För PoC:en antar vi att status endast kommer att frågas på ärenden i Ecos2.
Request / Response
Förslag på request:
Kräver att vi letar reda på alla caseInstanceId’s för en person / organisation.
Fördel: Enklare för klienter
Nackdel: Vi måste leta reda på alla ärenden, hantering av personuppgifter ( ? )
{ "anropandeSystem": "något system", "huvudman": "165565491461", "externAnvandare": "197001011234" }
Alternativt förslag på request (utökning med key-value-lista, där mottagaren (vi) har specificerat vilka nycklar och värden som är aktuella.) för att möjliggöra att skicka in data som inte annars passar in i API:et:
Kan bli stökigt att köra GET vid många ärenden, eller undvika anropande system att göra ett anrop per ärende. I sådana fall kan en POST användas och är “lagligt” enligt spec, typ… I detta fall aggregerar tjänsten caseStatus / oepStatus alla ärenden till _ett_ response, enligt den nationella specen.
Fördel: Sändande system håller reda på ärenden, slipper hantering av personuppgifter
Nackdel: Stökigare för klienter, utökning av spec, kan bli många varianter av key-value-par.
{ "anropandeSystem": "något system", "externAnvandare": "197001011234", "flexibeltFaltMedBraNamn": [ { "externalCaseId": "externalCaseId-1" }, { "externalCaseId": "externalCaseId-2" } ] }
Tredje alternativ:
Fördel: Sändande system håller reda på ärenden, slipper hantering av personuppgifter
Nackdel: Utökning av spec, ett anrop per ärendestatus
{ "anropandeSystem": "något system", "arendenummer": "externalCaseId-1" }
Förslag på response:
{ "metadata": { "huvudman": "165565491460", "externAnvandare": "197001011234", "hamtatDatum": "2021-09-29T13:05:00+01:00" }, "kundhandelser": [ { "kundhandelseId": "externalCaseId-1", "handelserubrik": "Text som kortfattat beskriver händelsen.", "handelsebeskrivning": "En ännu längre text som beskriver ärendet med fler detaljer.", "kundhandelsekategori": "Åtgärd krävs", "registreradTidpunkt": "2021-09-25T12:05:20+01:00" }, { "kundhandelseId": "externalCaseId-2", "handelserubrik": "Text som kortfattat beskriver händelsen.", "handelsebeskrivning": "En ännu längre text som beskriver ärendet med fler detaljer.", "kundhandelsekategori": "Föreläggande", "registreradTidpunkt": "2021-09-24T11:01:10+01:00" } ] }
Förklaring
request
parameter | typ | förklaring | Extra-info / kommentar |
---|---|---|---|
anropandeSystem | String | Namn på anropande system | |
externAnvandare | String | Den externa användare som utför förfrågan, kan vara personnummer eller organisationsnummer. | |
huvudman | String | Person eller organisation som det skall hämtas uppgifter om. |
response → metadata
parameter | typ | förklaring | Extra-info / kommentar |
---|---|---|---|
huvudman | String | Person eller organisation som det skall hämtas uppgifter om. | |
externAnvandare | String | Den externa användare som utför förfrågan, kan vara personnummer eller organisationsnummer. | |
hamtatDatum | DateTime | Datum när kundhändelserna hämtades, kanske inte oerhört nödvändig men är med i specen. | ISO8601: “YYYY-MM-DDThh:mm:ssTZD” / “2021-09-29T13:05:00+01:00” |
response → kundhandelser
parameter | typ | förklaring | Extra-info / kommentar |
---|---|---|---|
handelserubrik | String | Kortfattad beskrivning för ärendet | |
handelsebeskrivning | String | Ännu längre beskrivande text för ärendet | Behövs denna? |
kundhandelseId | String |
| Skall enligt spec vara unikt överallt, är |
kundhandelsekategori | String | Typ av händelse för ärendet | Möjliga värden: Mottagningskvittens, Beslut, Föreläggande, |
registreradTidpunkt | DateTime | Startdatum för ärendet | Kan tas från klasen |
ToDo
Förklaring till möjliga värden i parametern
kundhandelsekategori
för att kunna mappa, se nästa punkt.Mappning av värden:
från Ecos2 till
kundhandelsekategori, handelserubrik, handelsebeskrivning
Vad skall användas i
kundhandelseId
,externalCaseId
?