⚠Due to planned maintenance you will experience short (<30 min) downtime between 08:00 - 08:30 CET.
3.1 - Patient Identification
A patientId may be provided when registering a new patient. Upon registration, a wmdaId will be assigned and returned. The wmdaId itself is guaranteed to be globally unique, though it cannot guarantee that the patient is not identified with another wmdaId. The wmdaId must be used to identify the patient in all calls to the Search, Match & Connect (SMC) service after the initial patient registration.
Patient Identifiers
Identifier | Description |
---|---|
patientId |
TODO: Discuss whether patientId should be made required within createPatientRequest and updatePatientRequest 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. |
wmdaId |
|
3.2 - Create Patient (Send Patient)
The CreatePatientRequest is used to submit a patient to the Search & Match Service. This call returns a wmdaId for the patient.
CreatePatientRequest (/api/v2/patients)
Patient Identification | patientId | string nullable: true |
Patient HLA | hla | HLA |
Patient Diagnosis | diagnosis | DiagnosisRequest |
Patient Disease Phase | diseasePhase | string nullable: true |
Patient IDMs | idm | IdmRequest |
Patient Date of Birth | dateOfBirth | string($date-time) nullable: true |
Patient Ethnicity | ethnicity | string nullable: true |
Patient's Country Code | poolCountryCode | string nullable: true |
Patient Transplant Centre | transplantCentreId | string nullable: true |
Patient Blood Group | abo | string nullable: true |
Patient Rhesus | rhesus | string nullable: true |
Patient Weight | weight | integer($int32) nullable: true |
Patient Sex | sex | string nullable: true |
Consent | legalTerms | boolean (If you keep the legalTerms value at "false" or don't send it when creating a new patient, you have indicated you will not comply with legal terms and therefore are not allowed to store a pId. In that case the pId is set to the same value as the wmdaId. This behaviour mirrors the behaviour in the web GUI of WMDA Search & Match. If you click on the "No, I don't have consent" button you are also not allowed to store a patient ID or comment.) |
Expected response:
WMDA Patient Identification | wmdaId | string |
3.3 - Update Patient
The UpdatePatientRequest is used to update a patient with the Search & Match Service.
UpdatePatientRequest
Patient Identification | patientId | string |
WMDA Patient Identification | wmdaId | string |
Patient HLA | hla | HLA |
Patient Diagnosis | diagnosis | DiagnosisRequest |
Patient Disease Phase | diseasePhase | string nullable: true |
Patient IDMs | idm | IdmRequest |
Patient Date of Birth | dateOfBirth | string($date-time) nullable: true |
Patient Ethnicity | ethnicity | string nullable: true |
Patient's Country Code | poolCountryCode | string nullable: true |
Patient Transplant Centre | transplantCentreId | string nullable: true |
Patient Blood Group | abo | string nullable: true |
Patient Rhesus | rhesus | string nullable: true |
Patient Weight | weight | integer($int32) nullable: true |
Patient Sex | sex | string nullable: true |
Consent | legalTerms | boolean (If you keep the legalTerms value at "false" or don't send it when creating a new patient, you have indicated you will not comply with legal terms and therefore are not allowed to store a pId. In that case the pId is set to the same value as the wmdaId. This behaviour mirrors the behaviour in the web GUI of WMDA Search & Match. If you click on the "No, I don't have consent" button you are also not allowed to store a patient ID or comment.) |
3.4 - Register Patient.
The registerPatientRequest is used to register a patient with a partner registry. This message accompanies all requests.
RegisterPatientRequest
Sending Registry | regSend | string |
Receiving Registry | regReceive | string |
Patient Identification | patientId | string |
WMDA Patient Identification | wmdaId | string |
Patient HLA | hla | HLA |
Patient Diagnosis | diagnosis | DiagnosisRequest |
Patient Disease Phase | diseasePhase | string nullable: true |
Patient IDMs | idm | IdmRequest |
Patient Date of Birth | dateOfBirth | string($date-time) nullable: true |
Patient Ethnicity | ethnicity | string nullable: true |
Patient's Country Code | poolCountryCode | string nullable: true |
Patient Transplant Centre | transplantCentreId | string nullable: true |
Patient Blood Group | abo | string nullable: true |
Patient Rhesus | rhesus | string nullable: true |
Patient Weight | weight | integer($int32) nullable: true |
Patient Sex | sex | string nullable: true |
Consent | legalTerms | boolean (If you keep the legalTerms value at "false" or don't send it when creating a new patient, you have indicated you will not comply with legal terms and therefore are not allowed to store a pId. In that case the pId is set to the same value as the wmdaId. This behaviour mirrors the behaviour in the web GUI of WMDA Search & Match. If you click on the "No, I don't have consent" button you are also not allowed to store a patient ID or comment.) |
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
Sending Registry | regSend | string |
Receiving Registry | regReceive | string |
Patient Identification | patientId | string |
WMDA Patient Identification | wmdaId | string |
Patient HLA | hla | HLA |
Patient Diagnosis | diagnosis | DiagnosisRequest |
Patient Disease Phase | diseasePhase | string nullable: true |
Patient IDMs | idm | IdmRequest |
Patient Date of Birth | dateOfBirth | string($date-time) nullable: true |
Patient Ethnicity | ethnicity | string nullable: true |
Patient's Country Code | poolCountryCode | string nullable: true |
Patient Transplant Centre | transplantCentreId | string nullable: true |
Patient Blood Group | abo | string nullable: true |
Patient Rhesus | rhesus | string nullable: true |
Patient Weight | weight | integer($int32) nullable: true |
Patient Sex | sex | string nullable: true |
Consent | legalTerms |