⚠Due to planned maintenance you will experience short (<30 min) downtime between 08:00 - 08:30 CET.
Table of Contents | ||
---|---|---|
|
3.1 - Patient
...
Identification
A patientId may be provided when registering a new patient in WMDA Search & Match. Upon registration, a wmdaId will be assigned and returned. The wmdaId itself is guaranteed to be globally unique, though it cannot guarantee that the same patient is not identified with another wmdaId. registered by multiple organisations using the same patientId or with different patientId's within the same organisation. The wmdaId must be used to identify the patient in all calls to the Search, Match & Connect (SMC) service after the initial patient registration.
...
Identifier | Description |
---|---|
patientId |
Risk of nullable is that duplicate patients may be created. Some transplant centers or patient registries may have concerns with sharing a patientId before the point of donor request. If we make patientId required then we should also consider enforcing uniqueness. Decision on nullability deferred to the business requirements group. Proposal: Make patientId required where possible. WMDA office to investigate making mandatory in existing Search & Match Service. If there are legitimate reasons not to (amongst TCs or other), we can add a requirement that the patientId become required at the point of request
|
wmdaId |
|
...
|
...
3.2 - Create Patient
3.2 - Create PatientThe CreatePatientRequest A POST to the patients endpoint is used to submit a patient to the Search & Match Service. This call returns a wmdaId for the patient.
CreatePatientRequest (/api/v2/patients)
Changes to be considered:
Post | |||||||
---|---|---|---|---|---|---|---|
patients | |||||||
|
|
3.3 - Update Patient
|
...
3.3 - Update Patient
The UpdatePatientRequest A PUT to the patients endpoint is used to update a patient with the Search & Match Service. An update to search relevant information, such as HLA, ethnicity or pool will result in a refresh of the search.
UpdatePatientRequest (/api/v2/patients)
Changes to be considered:
Put | |||||||
---|---|---|---|---|---|---|---|
patients | |||||||
|
|
3.4 - Register Patient
...
The registerPatientRequest is used to register a patient with a partner registry. This message accompanies all requests.
Proposal: Entire payload may be sent by the sending registry. The central hub can review the contents and update any relevant values that are (already) stored in the Search & Match system. The response of the api will provide results (fields / values) of the updates made.
RegisterPatientRequest
Same payload as UpdatePatientRequest (/api/v2/patients). Additional fields to be considered:
...
string
nullable: false
...
string
nullable: false
3.5 - Update Registered Patient
...
The updateRegisteredPatientRequest is used to update a registered patient with a partner registry.
TODO: Discuss whether we need this message. Does the requesting registry take responsibility for sending updates to the partners it wants OR does SMC take responsibility for updating patients with all registries with which the patient has been shared?
UpdateRegisteredPatientRequest
Same payload as RegisterPatientRequest.
3.5/6 - Update Patient Status
...
UpdatePatientStatusRequest
The updatePatientStatusRequest is used to communicate changes in patient status.
Statuses permitted in EMDIS are PRE, ACT, SUS, STP. PRE / ACT may have some relevance to Search & Match Service. SUS / STP may have relevance to Search, Match & Connect.
From EMDIS semantics:
"After the status has been set to suspended (SUS), the transplant centre is fully responsible for pending requests. If a transplant centre is no longer interested in a certain pending request, the request has to be cancelled by the transplant centre by means of a REQ_CAN message. If the transplant centre does not explicitly cancel a pending request, the request will be processed normally by the requested hub.
After the status has been set to stopped (STP), all pending requests but WOR_REQ are cancelled automatically at the remote hub. In this case, no REQ_CAN messages have to be sent by the transplant centre. The only way to reactivate the patient is a PAT_UPD / PAT_STAT message pair. The PAT_UPD is necessary since it cannot be guaranteed that the patient information is still stored at the remote hub. It is up to each hub how long patient information is retained after the search was stopped.
However, it makes no sense to delete a patient who is in workup. Patient searches are sometimes not stopped at remote hubs although the search is not really active any more. This wastes time for matching and gives bad statistics about search length and search counts.
All hubs are strongly encouraged to monitor their international searches closely and stop or suspend them if not longer needed. The searched hub is allowed to send reminder faxes with patients without activities to the patient’s hub."
Fields for consideration:
...
string
nullable: false
...
string
nullable: false
...
integer
nullable: false
...
string
nullable: true
...
string
nullable: false
...
string
nullable: true
|
3.4 - Update Patient Status
A PUT to the patients/status endpoint is used to update a patient's search status with the Search & Match Service. Allowable status values are SUS, PRE, ACT and STP. A new patient is defaulted to the new (NEW) state. Under the NEW state, searches must be requested explicitly. When doing so, the patient is moved to the PRE state. Under the ACT state, searches will be kept up to date automatically. SUS will stop automatic updates to searches, but results will remain for 42 days. STP will terminate the search and delete all search results.
Include Page | ||||
---|---|---|---|---|
|
Put | ||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
patients/status | ||||||||||||||||||||||||||
|
3.5 - Retrieve Patient
A GET to the patients endpoint is used to retrieve an individual patient's information from the Search & Match Service.
Get | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
patients | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
3.6 - Retrieve Patient(s)
A GET to the patients/list endpoint is used to retrieve multiple patient's information from the Search & Match Service. You may define a page size, a specific page number, a series of allowable statuses and may limit to only patients assigned to you.
Post | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
patients/list | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
3.7 - Assign User To Patient
A PUT to the patients/user endpoint is used to assign a particular user name to a patient within the Search & Match Service.
Put | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
patients/user | ||||||||||||||||||||||
|
3.8 - Register Patient
There is no registerPatientRequest endpoint. A patient is registered with a partner registry at the time of request in the form of an embedded Patient block - described in the Admin chapter.
3.9 - Update Registered Patient (PAT_UPD)
The updateRegisteredPatient message is used to update a registered patient with a partner registry.
Send (Post) | Retrieve (Post) | ||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
updateRegisteredPatient | updateRegisteredPatientRetrieve | ||||||||||||||||||||||||||||||||||||||||||||
|
|
3.10 - Patient Flows
PlantUML Render Macro | ||
---|---|---|
| ||
participant "Patient Registry" as PR control "Match-Connect" as MC control "Search & Match\nService" as SM participant "Donor Registry" as DR skinparam SequenceMessageAlign center skinparam dpi 92 == Register Patient == PR -> SM : Create Patient activate SM #FFBBBB SM -> PR : Return WMDA Patient ID deactivate SM == Modify Patient == PR -> SM : Update Patient PR -> SM : Assign User To Patient == Retrieve Patient(s) == PR -> SM : Retrieve Patients activate SM #FFBBBB SM -> PR : Return One or More Patients deactivate SM == Making Requests == PR -[#dodgerblue]> DR : <color #dodgerblue> Request a Donor (patient embedded) </color> PR -[#dodgerblue]> DR : <color #dodgerblue> Update Registered Patient </color> |
3.11 - Patient Life Cycle
Include Page | ||||
---|---|---|---|---|
|
3.7 - Register Patient with local partners
3.8 - Replace EMDIS PAT_UPD msg
...