Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Note: The concept of the REF_CODE field used in EMDIS is replaced by the GUID referenceMessageId assigned by the central system to each message. The Message Response is supposed to be using the GUID referenceMessageId of the original message as the Reference ID in its structure.

...

Send (Post)Retrieve (Post)
MessageResponse
Expand
titleRequest...
FieldDetails
organisationResponse
Expand
title...
FieldDetails
retrievedAtUtc*string($date-time)

Server-supplied timestamp showing time of Message retrieval and storage in organisation's own systems

referenceMessageId*string($uuid)
responseType*

string

Enum:
Array [ 3 ]

remark

string


Expand
titleResponse...
FieldDetails
wmdaResponseEmbedded WMDA Response Block
Expand
titleRequest...
limitinteger
default: 100

shouldPeekboolean
default: false

Set to true if you want messages to remain available after retrieval

messageSequenceNumber

integer
e
xamplet: 12345

Optional field to request a message with a specific messageSequenceNumber. If that message (no longer) exists then no message will be returned.

Expand
titleResponse...
FieldDetails
generalInformation*Embedded General Information Block
originalMessage{...}
metaInformationEmbedded Meta Block

...

Note: Since Warnings are going to be automated, we must keep Text Messages as the only means for user communication left.

Message structure:

Send (Post)Retrieve (Post)
textMessageRequest
Expand
titleRequest...
Field

Details

text*requestingRegistryReferenceCode

string
nullablemaxLength: 15
example:XX12345

text*

string
nullable: true

Text. Message for a human at receiving registry.

receivingRegistry*string
maximum: 9999

minimum: 0

maxLength: 4

minLength: 4

example: 1234

4 digit ION of the receiving registry

patient*Patient ID
donor*Donor ID
Expand
titleResponse...
FieldDetails
wmdaResponseEmbedded WMDA Response Block
Expand
titleRequest...
limitinteger
default: 100

shouldPeekboolean
default: false

Set to true if you want messages to remain available after retrieval

messageSequenceNumber

integer
e
xamplet: 12345

Optional field to request a message with a specific messageSequenceNumber. If that message (no longer) exists then no message will be returned.

Expand
titleResponse...
FieldDetails
generalInformation*Embedded General Information Block
originalMessage{...}
metaInformationEmbedded Meta Block

...

Message structure:

SendRetrieve (Post)

AlertRetrieve
Alerts can only be sent by the WMDA's central system
Expand
titleRequest...
limitinteger
default: 100

shouldPeekboolean
default: false

Set to true if you want messages to remain available after retrieval

messageSequenceNumber

integer
e
xamplet: 12345

Optional field to request a message with a specific messageSequenceNumber. If that message (no longer) exists then no message will be returned.

Expand
titleResponse...
FieldDetails
generalInformation*Embedded General Information Block
originalMessage*
Expand
title...
FieldDetails
levelstring

alert level. enums may change

Enum:
Array [ 3 ]
statusstring

check later

Enum:
Array [ 2 ]
messagemessageTextstring
maxLength: 1024

example: WMDA will do maintenance on SMC system on the weekend of 10 march
metaInformation*Embedded Meta Block

6.5 Alert Update message

...

Message structure:

SendRetrieve (Post)

AlertUpdateRetrieve
Alert updates can only be sent by the WMDA's central system
expand
Expand
titleRequest...
limitinteger
default: 100

shouldPeekboolean
default: false

Set to true if you want messages to remain available after retrieval

messageSequenceNumber

integer
e
xamplet: 12345

Optional field to request a message with a specific messageSequenceNumber. If that message (no longer) exists then no message will be returned.

Expand
titleResponse..titleResponse...
FieldDetails
generalInformation*Embedded General Information Block
originalMessage*
Expand
title...
FieldDetails
alertReferenceIdentifierstring($uuid)
levelstring

alert level. enums may change

Enum:
Array [ 3 ]
statusstring

check later

Enum:
Array [ 2 ]
messagestring
maxLength: 1024

example: WMDA will do maintenance on SMC system on the weekend of 10 march
metaInformationEmbedded Meta Block

6.6 Available Messages

The available messages endpoint is used for retrieving an array of This endpoint allows end users to retrieve an overview of all messages that are ready to be downloaded. This information can then be used to retrieve the messages from their respective *retrieve endpoints.

Message structure:

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.

SendRetrieveavailableMessagesN/A
GET
availableMessages
Expand
title
Request
Response...
No parameters specified
Field
Expand
titleResponse...
FieldDetails
Details
totalMessages*integer
example: 6
Count
totalMessagesinteger
total sum
of messages that are ready for retrieval

messageTypestring

the message type

Enum:
Array [ 23 ]
numberOfMessagesinteger
number 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
titleResponse...
FieldDetails
totalMessages*integer
example: 6
Count of messages that are ready for retrieval
messagesReadyForRetrieval*
Expand
title...
FieldDetails
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
titleResponse...
FieldDetails
generalInformation*
Expand
title...
FieldDetails
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
title...
FieldDetails
originalMessage*

oneOf:

alert
ping
textMessageRequest
genericRequest
extededTypingRequest
typingResponse
sampleRequest
sampleArrival
sampleInfo
sampleResponse
infectiousDiseaseMarker
infectiousDiseaseMarkerResult
reservationRequest
reservationResponse
reservationRelease
requestCancellation
requestRejected
resultReminder
cordBloodUnitReportRequest
cordBloodUnitReportResponse

metaInformation*

{...}