...
- A message identifier
- A timestamp
- What Which registry sent the information (sending registry)
- What type of response is provided by the WMDA Match Connect system
- Any failed validations detected by the Match Connect system
- A sequence number, so that the receiving registry knows if any message is missing.
| Field | Details |
|---|
| referenceMessageId* | string($uuid) |
| deliveredAtUtc* | string($date-time) Server-supplied timestamp showing UTC time of Message delivery to receiving registry's inbox queue. |
| sendingRegistry* | integer maximum: 9999 minimum: 0 maxLength: 4 minLength: 4 example: 56784-digit ION of the sending registry |
| responseType | string Enum: Array [ Warning] |
| wmdaRemarks | One or more remarks, each in its own object
| Expand |
|---|
| | Field | Details |
|---|
| remarkType | string | | description | string |
|
|
| messageSequenceNumber* | integer example:12345
Incrementing integer set by WMDA MatchConnect systems system that indicates the order in which the messages were received by the WMDA and therefore the order in which messages should be processed. Each receiving registry has its own unique sequence. |
| messageType* | string the type of message just sent by calling this endpoint |
...
With this message block, the contact information of the hub's institutions, namely Financial institutionsFinancial institutions, Transplant Centers, and Laboratories are shared with the partner hubs. Thus a partner hub partner hub has all the required contact information for the Institution contained in Donor Requests.
- Hubs are required to keep this contact information up to date.
- It’s not only useless but forbidden to give a postbox (POB) in a LAB address since this address is used for the delivery of samples. For the same reason ZIP code, City, and Country are required in the address block.
- The contactPerson is required if the INST_TYPE is ”LAB”.
- The EMDIS ID organisationId (formerly known as INST_ID) of an institution should remain stable over time and should not be assigned to different institutions.
...
| Send | Retrieve |
|---|
| addressRequest | |
| Expand |
|---|
| | Field | Details |
|---|
| organisationId* | string nullable: false maxLength: 10 minLength: 3 Organisation unique identifier for the institution. - Unique reference to an institution
- Allows local address management if needed (e.g. for other use cases) by receiving registry and backward compatibility to existing EMDIS implementations.
- Provided by the local registry system.
- Should be worldwide unique.
- Should follow the construct of hub code + local address id.
- The hub code usually are is the two-character ISO country code of the registry (e.g. NL for Netherlands)
- In the case of multiple registries in one country, a replacement code will be assigned.
- Should be provided as a user-friendly (displayable) id for use on screens and on documentation.
| | line1* | string nullable: false maxLength: 60 Address line 1 | | line2 | string nullable: true maxLength: 60 Address line 2 | | line3 | string nullable: true maxLength: 60 Address line 3 | | postalCode* | string nullable: false maxLength: 10 | | city* | string nullable: false maxLength: 40 | | country* | string nullable: false minLength: 2 maxLength: 2 2 character ISO country code ( ISO 3166-1 alpha-2) | | type* | string nullable: false minLength: 3 maxLength: 3 HUB = EMDIS Hub DON = Donor centrecenter TRA = Transplant centrecenter HAR = Harvesting centrecenter LAB = Typing laboratory FIN = Financial institution CBB = Cord Blood Bank | | contactPerson | string nullable: true maxLength: 40 Contact person. Required if type = LAB. | | phone* | string nullable: false maxLength: 20 | | fax | string nullable: true maxLength: 20 | | email | string nullable: true maxLength: 60 | | receivingRegistry* | string maximum: 9999 minimum: 0 maxLength: 4 minLength: 4 example: 12344 digit ION of the receiving registry |
|
| | Expand |
|---|
| | limit | integer default: 100
| | shouldPeek | boolean default: false
Set to true if you want messages to remain available after retrieval |
|
|
...
This endpoint allows end users to retrieve an overview of all messages that are ready to be downloaded. This information can be used to retrieve the messages from their respective *retrieve endpoints.
The chronological order of processing the messages should be arranged in the local system. This can be done by using the timestamps that are provided with the messages, as part of their meta information.
| GET |
| availableMessages |
| Expand |
|---|
| | Field | Details |
|---|
| totalMessages* | integer example: 6 Count of messages that are ready for retrieval
| | messagesReadyForRetrieval* | Array: | attachment* | integer | | alert* | integer | | updatedPatient* | integer | | ping* | integer | | textMessage* | integer | | genericRequest* | integer example: 1
| | extendedTypingRequest* | integer example: 3
| | typingResponse* | integer | | sampleRequest* | integer example: 2
| | sampleInfo* | integer | | sampleArrival* | integer | | sampleResponse* | integer | | infectiousDiseaseMarkerRequest* | integer | | infectiousDiseaseMarkerResult* | integer | | reservationRequest* | integer | | reservationResponse* | integer | | reservationRelease* | integer | | requestCancellation* | integer | | requestRejected* | integer | | resultReminder* | integer | | messageResponse* | integer | | cordBloodUnitReportRequest* | integer | | cordBloodUnitReportResponse* | integer |
|
|
|
6.7 Available Messages 2
This endpoint allows end users to retrieve an overview of all messages that are ready to be downloaded, including their corresponding sequence numbers. This information can be used to retrieve the messages from their respective *retrieve endpoints. If desired, the messages can be pulled in chronological order, given by the sequence numbers. Each "retrieve" endpoint will have the optional parameter "sequenceNumber", that allows for an indivual collection of the corresponding message(s). If that parameter is left empty all available messages are retrieved (according to the limit set in the parameters).
| GET |
| availableMessages2 |
| Expand |
|---|
| | Field | Details |
|---|
| totalMessages* | integer example: 6 Count of messages that are ready for retrieval
| | messagesReadyForRetrieval* | | Expand |
|---|
| | Field | Details |
|---|
| messageResponse | Count integer, example: 6 sequenceNumbers integer, List 1, 18
| | alert* | Count integer sequenceNumbers integer | | updatedPatient* | Count integer sequenceNumbers integer | | ping* | Count integer sequenceNumbers integer | | textMessage* | Count integer sequenceNumbers integer | | genericRequest* | Count integer sequenceNumbers integer | | extendedTypingRequest* | Count integer sequenceNumbers integer | | typingResponse* | Count integer sequenceNumbers integer | | sampleRequest* | Count integer sequenceNumbers integer | | sampleInfo* | Count integer sequenceNumbers integer | | sampleArrival* | Count integer sequenceNumbers integer | | sampleResponse* | Count integer sequenceNumbers integer | | infectiousDiseaseMarkerRequest* | Count integer sequenceNumbers integer | | infectiousDiseaseMarkerResult* | Count integer sequenceNumbers integer | | reservationRequest* | Count integer sequenceNumbers integer | | reservationResponse* | Count integer sequenceNumbers integer | | reservationRelease* | Count integer sequenceNumbers integer | | requestCancellation* | Count integer sequenceNumbers integer | | requestRejected* | Count integer sequenceNumbers integer | | resultReminder* | Count integer sequenceNumbers integer | | cordBloodUnitReportRequest* | Count integer sequenceNumbers integer | | cordBloodUnitReportResponse* | Count integer sequenceNumbers integer |
|
|
|
|
6.7 Available Messages 3
This endpoint allows end users to retrieve an array of all messages that are ready to be downloaded, including their content. This would allow a registry to call just one endpoint to collect all messages.
Limitations:
This option does not work for all applications/tooling, like defining custom API connectors in the 365 PowerPlatform. In those cases the same static structure for all call responses on a specific endpoint is not only IBP, but also required.
| GET |
| availableMessages3 |
| Expand |
|---|
| | Field | Details |
|---|
| generalInformation* | | Expand |
|---|
| | Field | Details |
|---|
| limit* | integer default: 100
| | shouldPeek | boolean default: false
| | totalCount* | integer minimum: 0 example: 1
| | remainingCount* | integer minimum: 0 | | isSuccessful* | boolean default: true
| | summary* | string maxLength: 255 example: 1 message retrieved sucessully. 0 remaining messages
|
|
| | messages* | | Expand |
|---|
| | Field | Details |
|---|
| originalMessage* | oneOf: alert ping textMessageRequest genericRequest extededTypingRequest typingResponse sampleRequest sampleArrival sampleInfo sampleResponse infectiousDiseaseMarker infectiousDiseaseMarkerResult reservationRequest reservationResponse reservationRelease requestCancellation requestRejected resultReminder cordBloodUnitReportRequest cordBloodUnitReportResponse | | metaInformation* | {...} |
|
|
|
|