Planlagte endringer for Basis-API versjon 3.x

Nedenfor listes implementerte og planlagte endringer på Basis APIet som potensielt kan påvirke konsumentløsninger.

Listen nedenfor oppsummerer API-endringer som er "Breaking" eller "Behavior”. Her er det viktig at leverandørene verifiserer og tester grundig, og sikrer eventuelle nødvendige justeringer. I tillegg er enkelte saker også markert med “New-feature“, dette er tilleggsinformasjon som ikke påvirker eksisterende løsning, men hvor det vil kreve tilpasninger når man velger å ta i bruk funksjonaliteten.

Detaljer skal være oppdatert i Simplifier.

 

 

Apr 4, 2024 Planlagte Endringer i 3.10 og 3.11, basert på tall fra 04.04.24

Jira-nr

Summary

Fix versions

Labels

What's New Text (aka Release Notes)

Jira-nr

Summary

Fix versions

Labels

What's New Text (aka Release Notes)

SFM-18921

Map discontinuation information from M5s within getMedication responses - Basis API

3.10.0

APIChange-Behavior

 

SFM-18727

Errors in sendMedication for when lookup was done on old PID

3.10.0

APIChange-Behavior

Updated GetMedication to use the new Pid in the medication bundle when the Pid in the request is old, so when we run the sendMedication it does not give an error.

SFM-17702

SFM allows sendMed with invalid PLL-id, but then this fails in the following getMedication

3.10.0

APIChange-Behavior

Defect

BasisAPI SFM shall tolerate incoming PLL with a PLL-id not being a UUID
BasisAPI SFM shall reject outgoung PLL with a PLL-id not being a valid UUID with a operationOutcome with severity=error and code=value

SFM-13488

Change getMedication bundle storage strategy

3.10.0

APIChange-NA

 

Internal issue. Related to validation between incoming and outgoing bundles in Basis

SFM-13122

[741328, 742786] As an operator I want more detailed information in the SFM logs when a token is rejected by the SFM

3.10.0

 APIChange-NA

Improved logs for the support team. Will indicate the reason for unsuccessful access.

SFM-10139

Evaluate SFM-9572 specification for mapping of discontinuation date

3.10.0

 APIChange-Behavior

This issue improves the detection of "midnight" in translation between e-resept messages and SFM, including different variations in timezones.

SFM-6660

EO1007/2020 Include discontinuation information within M5 - Basis API

3.10.0

 APIChange-Behavior

Now when a user does a sendMedication and includes discontinuation in a medication that has recall info, the discontinuation data will be included in the M5 sent
In getMedication the discontinuation is already being mapped from M5 or other options and is being returned like so:
{
"extension": [
{
"url": "timedate",
"valueDateTime": "2024-02-15T10:17:2

SFM-6215

As the Basis API I want proper error handling when attempting to forward messages from RF

3.10.0

 APIChange-Behavior

 

A cronjob scheduler was implemented to run every 2 minutes (Configurable).
When basefhir receives async messages from basefhir they are processed and then forwarded to helseplattformen, when the forwarding fails the message is put in a Pending state.
The retry mechanism pics up all pending messages and retries to forward them to helseplattformen, when the maximum retry count (configurable) is reached the message will be put in a Failed state.

Every step is logged.

Database queries supplied in comment for updating retryCount and state for messages, to be able to keep on or stop trying to forward them.

SFM-18856

AS Multidose doctor using Helseplattformen I want to do sendMedication without createPLL=true

3.10.0

 APIChange-NewFeature

 

Solves the requested non-standard multidose behaviour by Helseplattformen (MD doctor can do updates without sending M25.1)

SFM-19183

sendMedication fails for practitioner that is blocked in RF

3.10.0

 APIChange-NA

Defect, will probably be included in 3.10

SFM-19174

sendMedication fails for patient without FNR

3.10.0

 APIChange-NA

Defect, will probably be included in 3.10

SFM-19027

GET Task for base-fhir does not work without timezone information

3.10.0

 APIChange-Breaking

 

 

Defect

This might be a breaking change if vendors have previously sent timestamp without timezone information, adding the APIChange-Breaking label to be sure. 

SFM-18848

reimbursementcode not found for papirresepts in getMed

3.11.0

APIChange-Behavior

Defect

SFM inkluderer nå med refusjonskode for papirresepter i getMedication

SFM-18770

Questions from M25.2 are not included in getMed if a M25.3 has been sent afterwards

3.11.0

APIChange-Behavior

Defect

Fikset en feil der spørsmål ikke ble returnert selv om de var ubesvart dersom det hadde kommet en M25.3 fra MD-apotek

SFM-18327

Basis API / GetMedication returns confusing recallstatus=false

3.10.0

APIChange-Behavior

Defect

SFM-18338

AS an EPJ using BASIS I want information on Multidose responsibility even if no M25.x messages are available

3.10.0

APIChange-Behavior

Updated the medication bundle in the get medication method, to return the special case where there are no m25 messages but there is a multidose pharmacy or doctor, where now it will return the information in the m9.12 in the pll info section.

Added to the list Apr 5, 2024

 

 

 

 

 

 

 

 

 

Dec 18, 2023 Nå skal ny versjon av 3.9 være tilgjengelig i test3 og test4.

Jira-nr

Summary

Fix versions

Labels

What's New Text (aka Release Notes)

Jira-nr

Summary

Fix versions

Labels

What's New Text (aka Release Notes)

SFM-17745

AS EPJ using Basis i want to be able to show sender and timestamp for latest messages of each M25.x type

3.9.0-beta.2

APIChange-Breaking

getMedication will return one sfm-PLLinfo record for each M25.x message from RF/KJ. Affects "multidose" patients. Detailed info will be presented in simplifier
NOTE: depending on EHR implementation, this MIGHT be a "breaking" issue. An updated version of sfm-MedicationComposition should be adatpded.
Information on multidose responsibility in the "M25.1" element will be parsed from M9.12 info. (e.g. updated information from RF)

SFM-17233

As a doctor on Helseplattformen I do not want to have to do a new getMedication before a sendMedication just because a nurse did a getMedication after me

3.9.0-beta.1

APIChange-Behavior

APIChange-NewFeature

Validation for sendmedication is now done by fetching the latest GetMedicationBundle that has a value in the RfLookupTime column and comparing the compositionIdentifier. This essentially filters out any getmedications performed by nurses. As before the if the latest medicationBundle is from a sendMedication, that will still be picked up and validated against.

What changes here is that a doctor can send sendMedication over and over again after doing an initial getMedication even if a nurse does a getMedication in the mean time. The threshold for a valid getmedication still applies and is validated against. The doctor will need to do a new getmed if the time since his last getmed passes over the valid threshold.

SFM-17224

As the SFM basis API I want to authenticate an organization, without user information, when fetching a Task list from RF (M9.21)

3.9.0-beta.2

APIChange-NewFeature

BaseFhir task endpoint is now accepting organization tokens without any user information

SFM-17223

SFM shall use the latest version of M9.11 against RF, and receive latest version of M9.12

3.9.0-beta.1

APIChange-Behavior

Updated info from RF on multidose responsibility, including necessary id's for pharmacy.

SFM-15521

Comment PLL (support comment from both M25.1 and M25.2)

3.9.0-beta.1

APIChange-Breaking

Improved multidose. Related to SFM-17745
Added new structure for general comment in lib list with type and text

SFM-15345

fullUrl returns "Organization" for all ressources

3.3.0-alpha.211

APIChange-Behavior

Rettet en feil i url som mottas i retur ved søk i FHIR-API

SFM-15072

Update organization request can possibly cause entry in ClientIdentities table in config do be deleted

3.4.0

APIChange-Behavior

Rettet en feil der en oppdatering av organisasjon som manglet sfm-id fjernet en linje i ClientIdentities tabellen

SFM-14813

As the Basis API I do not want to send recalls (M5) for resepter that cannot be recalled (support 780535 HP)

3.9.0-beta.2

APIChange-Behavior

Unnecesary warnings/errors to end user will be avoided by this improvement. No implementation changes required.

SFM-14734

Invalid Magistrell medication is causing an error during sendMedication

3.1.0

APIChange-Behavior

 

SFM returnerer nå en bedre feilmelding dersom sendMedication for en magistrell forskrivning mangler mengde eller navn

SFM-14687

SFM Server fails reading a Enh Id with spaces

3.2.0

APIChange-Behavior

 

SFM will now reject organization create and update with wihte-space in identifier strings (note that this was accepted, but caused problems, hence a NA change)

SFM-14151

AllergyIntolerance in getMedication does not include <Atc> element in <Legemiddelreaksjon>

3.0.0-beta.15

APIChange-Behavior

Fixed according to specification.
”Merkevare/DrugTradeName should include both id and atc when it’s available. When it’s an excipient/hjelpestoff allergy the atc should not be included”

SFM-13406

reseptdate not included in getMed for recalled resepts when KJ lookup is done

3.0.0-beta.11

APIChange-Behavior

 

Reseptdate is included when KJ lookup is done

SFM-13257

As SFM Basis I want to reject $sendMedication from MD doctor when it is not immediately preceeded by $getMedication

3.0.0-beta.13

APIChange-Behavior

 

Extended control due to complexity issues

SFM-13256

As SFM Basis I want to reject $sendMedication from MD doctor where createPLL is not true

3.0.0-beta.13

APIChange-Behavior

 

Extended control due to complexity issues

SFM-13174

No validation error is returned when recalling the same bandaprescription twice in sendMedication

3.0.0-beta.11

APIChange-Behavior

400 validation error is returned if such case occur

SFM-12247

As an EPJ I do not want the SFM to reject diagnosis codes that the SFM does not already know

3.2.0

APIChange-Behavior

SFM vil nå kunne motta diagnosekoder fra forskjellige kodeverk selv om SFM ikke kjenner kodeverket fra tidligere

SFM-11299

[API] sfm-Practitioner and sfm-Person resources are limited to 10 results

3.0.0-beta.3

APIChange-Behavior

sfm-Practitioner and sfm-Person resource search in Datashare now returns number of matches according to FHIR spec

SFM-11287

EO1004/2020: As an EPJ I want to communicate additional instructions using the additionalInstruction and patientInstruction elements in sfm-MedicationStatement

3.0.0-beta.3

APIChange-Behavior

SFM will now support flow of MedicationStatement/dosage/additionalInstruction to and from EPJ in $getMedication and $sendMedication using the new fields in the extended M1 and M25.1 messages. Note: cardinality rules are more specfic than the profile indicates

SFM-11018

As a security champion I would suggest reviewing the validation of M25.1 messages sent

3.2.0

APIChange-Behavior

SFM er utvidet med skjemavalidering for M25.1 meldinger

SFM-10088

As a FHIR API I want to use updated sfm-reseptamendment and sfm-administration profiles with spelling errors fixed

3.0.0-beta.4

APIChange-Breaking

 

Updated version of following profiles included:
https://simplifier.net/R4Medication/SfmDispenceinfo

  • corrected spelling on cancellation and cancellationid + other minor changes

https://simplifier.net/R4Medication/SfmAdministrering

  • added more administration details, added system fixedURI for admBy, - corrected spelling: mddispensed

https://simplifier.net/R4Medication/SfmBandaPrescription

  • corrected spelling on earliestdispense and reimbursementparagraph

  • spelling changes in "short" and "definition" only

  • spelling changes in description only. Minor auto cardinality ajustment

  • spelling changes in "short" only. Auto cardinality adjustment

  • auto: binding strength added for medication. - spelling change on description

  • no actual change. Derived from embedded extension delivereysummary, and only in "definition". Auto cardinality ajustments

  • automatic cardinality ajustments only

  • new filename on extension, no other change

Note: Forge tool implies some cardinality changes from omitted/implicit to explicit when updating profiles.
Note: obvious change of version and date is not mentioned above.

SFM-9642

AS an EPJ I want the FHIR "bundle.total" parameter to be correctly set when searching

3.0.0-beta.3

APIChange-Behavior

Corrected search response Bundle.total according to FHIR specification

SFM-9400

As the Basis API I do not want to try to send the same M1 multiple times to RF

3.9.0-beta.2

APIChange-Behavior

Unnecesary warnings/errors to end user will be avoided by this improvement. No implementation changes required.

SFM-9290

[API] Calling sendMedication with a missing medicationStatement results in a 500 error

3.0.0-beta.13

APIChange-Behavior

This is a fix: The sendMedication without medication statement return correct error message.

SFM-9153

[API] M25.1 gets rejected due to invalid RefToParent when two sendMedications are sent succesively

3.0.0-beta.13

APIChange-Behavior

This is a fix: Succesive sendMedications behaves in a correct manner from SFM to RF

SFM-7190

As an EPJ I want to receive an administration plan for a specified period within an sfm-MedicationStatement

3.0.0-beta.3

APIChange-Behavior

New content in sfm-lib-list to support detailed dosing

SFM-7105

As the SFM I want to use renewal information in an updated M9.6 to link renewed resepter

3.0.0-beta.3

APIChange-Behavior

 

$getMedication now returns linked prescriptions in a chain as specified even when a lookup in KJ is not available.

SFM-6453

EO1004/2020: As an EPJ I want the Basis API to map dosing information from M1/25.1 message extensions to $getMedication results

3.0.0-beta.3

APIChange-Behavior

 

When extension in received M1 or M25.1 is avalable, The following mapping applies to sfm-MedicationStatement:
Dosering/ForholdsregelInntak populates dosage.additionalInstruction.coding
Dosering/Tilleggstekst populates dosage.additionalInstruction.text
Dosering/Doseringstekst populates dosage.text

SFM-6452

EO1004/2020: As an EPJ I want the Basis API to send dosage text and additional instructions in structured form in M1 and M25.1 when $sendMedication is called

3.0.0-beta.3

APIChange-Behavior

$sendMedication now includes information from dosage text and dosage additional instructions in M1 and M25.1 message extensions.
dosage.additionalInstruction.coding populates Dosering/ForholdsregelInntak
dosage.patientInstruction populates Dosering/Tilleggstekst
dosage.text populates Dosering/Doseringstekst
DSSN is populated according to current specification

SFM-6215

As the Basis API I want proper error handling when attempting to forward messages from RF

3.9.0-beta.2

APIChange-Behavior

 

A cronjob scheduler was implemented to run every 2 minutes (Configurable).
When basefhir receives async messages from basefhir they are processed and then forwarded to helseplattformen, when the forwarding fails the message is put in a Pending state.
The retry mechanism pics up all pending messages and retries to forward them to helseplattformen, when the maximum retry count (configurable) is reached the message will be put in a Failed state.

Every step is logged.

Database queries supplied in comment for updating retryCount and state for messages, to be able to keep on or stop trying to forward them.

SFM-6030

As an EPJ I want the sfm-PLLinfo returned by $getMedication to contain information about multidose pharmacy

3.9.0-beta.2

APIChange-Breaking

 

SFM will ensure updated information about Multidose responsible pharmacy in getMedication for multidose patients.
SFM will ensure updated information about Multidose responsible pharmacy in full SFM for multidose patients.

SFM-16716

The use of stopdate as timedate in sfm-discontinuation in getMedication is not correct

3.0.0-beta.4

APIChange-Behavior

 

Rettet en feil på format på seponeringsdato i Basis API

Added to the list: Apr 5, 2024