You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 27 Next »

4.1 - Start search

The startSearch endpoint is used to submit a search request to the Search & Match Service.  This call returns a searchId for the search. 

Send

startSearch

wmdaId*integer
example: 123456

nullable: false
matchEngine*integer
nullable: false

Unique identifier of match engine used in the search. Allowed: 2 (HAP-E), 3 (ATLAS).

Enum:
Array [ 2 ]
searchType*string
example: DR
Enum:
Array [ 2 ]
overallMismatchesinteger
default: 0
Enum:
Array [ 8 ]
lociToBeConsidered[...]
isCbuAbLowDrb1HighResolutionboolean
default: false

nullable: true
searchIdinteger
nullable: false

minimum: 1

4.2 - Search summary

The retrieveSearchResultssummary endpoint is used to request a search summary for a search. It also contains the status of a search and can therefore be used to check whether a search is done. 

Send
retrieveSearchResultssummary
searchId*integer
patient{...}
searchId*integer
nullable: false

minimum: 1
searchType*stringEnum:
Array [ 1 ]
matchEngine*integer
nullable: false

Unique identifier of match engine used in the search. Allowed: 2 (HAP-E), 3 (ATLAS).

Enum:
Array [ 2 ]
overallMismatches*integer
default: 0
Enum:
Array [ 8 ]
status*string
nullable: false
Enum:
Array [ 3 ]
summary*{...}
inexplicable*integer
nullable: true

Total number of donors which phenotype cannot be explained by known haplotype

statistics*{...}
error*{...}
nullable: true
lociToBeConsidered[...]
lastUpdatedstring($date-time)
nullable: false

maxLength: 255

needed to help determine when patient can be automatically moved to STP state


4.3 - Search results - Donors

The retrieveSearchResultsDonors endpoint is used to retrieve search results for donors. Pagination is possible and optional filters can be provided. 

Send
retrieveSearchResultsDonors
pagination{...}
searchId*integer
nullable: false

minimum: 1
filters{...}
sortBystring
nullable: true

default: standard
Enum:
Array [ 2 ]
paging*{...}
searchResults*[...]

4.4 - Full report - Donors

The retrieveFullReportDonors endpoint is used to retrieve all available information for a specific donor in a search result. 

Send
retrieveSearchResultsDonors
searchResultsIdinteger

{

searchIdinteger
nullable: false

minimum: 1
searchTypestringEnum:
Array [ 1 ]
matchDurationinteger
minimum: 0

nullable: true

example: 30

time in seconds that the search took to run on the matching engine

patient{...}
donor{...}

}

integer
nullable: false

minimum: 1

4.5 - Search results - CBUs

The retrieveSearchResultsDonors endpoint is used to retrieve search results for cord blood units. Pagination is possible and optional filters can be provided. 

Send
retrieveSearchResultsCBUs

Request

searchIdinteger
nullable: false

minimum: 1
pagination

{

offsetinteger($int32)
default: 0
limitinteger($int32)
default: 100

Maximum number of records per page.

}

searchId*integer
nullable: false

minimum: 1
filters

{

description:

The search parameters used for finding search results.

mismatchLocusAllowed[...]
dpb1MatchGrade[...]
donorRegistryIon[...]
registryAccreditationStatus[...]
sex[...]
cmvStatus[...]
abo[...]
isSelectedboolean
nullable: true

default: null

example: false

Filter for only returning donors/CBUs marked as selected

onlyRecordsWithDrb1boolean
nullable: true

default: false

example: false

Do no use - Obsolete. Filter for whether or not to return donors without DRB1 typing. Replaced by requiredTypedLoci

requiredTypedLoci[...]
inexplicablestring
nullable: true

default: null

example: OnlyInexplicable

Filter for only returning donors/CBUs marked as selected

Enum:
Array [ 4 ]
status[...]
allowedMismatchedAlleles{...}
minimumTncCountnumber
example: 1140000000

nullable: true
minimumCd34Countnumber
example: 3900000

nullable: true
cbbAccreditationStatus[...]

}

sortBystring
nullable: true

default: standard
Enum:
[ standard, sumOfProbabilities ]
threeFourMismatchSortBystring
nullable: true

default: resolutionScore
Enum:
[ none, resolutionScore, standard (not yet available) ]
secondarySortBystring
nullable: true

default: tncCount
Enum:
[ tncCount, cd34Count ]

Response

searchIdinteger
nullable: false

minimum: 1
paging*
limit*integer
default: 100

minimum: 0
offset*integer
default: 0

minimum: 0
totalCount*integer
minimum: 0
searchResults*

[
minItems: 0

id*integer
nullable: false

example: 5176
donorRegistryIon*integer
nullable: false

minimum: 1000

maximum: 9999

example: 1234
abbreviation*string
example: NL-WMDA

maxLength: 24
haplotypeFrequencySetId*integer
nullable: true

minimum: 0

example: 15
status*string
nullable: false
Enum:
Array [ 3 ]
sex*string
nullable: true
Enum:
Array [ 2 ]
ethnicity*string
nullable: true
Enum:
Array [ 21 ]
idm*{...}
abo*string
nullable: true
Enum:
Array [ 4 ]
rhesus*string
nullable: true
Enum:
Array [ 2 ]
registryAccreditationStatus*string
nullable: true
Enum:
Array [ 2 ]
firstAccreditationYear*number
minimum: 1990

maximum: 2100

nullable: true

example: 2019
matchClass*string
example: 9/10

nullable: false
nmdpGrade*string
maxLength: 5

example: MPPMP

nullable: true

A - high-res match on ARD, P - probable match, M - sure Mismatch

zeroMismatchProbability*integer
minimum: 0

maximum: 100

nullable: true
oneMismatchProbability*integer
nullable: true

minimum: 0

maximum: 100
twoMismatchProbability*integer
nullable: true

minimum: 0

maximum: 100
aLocusMatchProbability*integer
nullable: true

minimum: 0

maximum: 100
bLocusMatchProbability*integer
nullable: true

minimum: 0

maximum: 100
cLocusMatchProbability*integer
nullable: true

minimum: 0

maximum: 100
drLocusMatchProbability*integer
nullable: true

minimum: 0

maximum: 100
dqLocusMatchProbability*integer
nullable: true

minimum: 0

maximum: 100
inexplicable*boolean
matchingInformationDpb1*{...}
mismatches*[...]
searchResultRecordState*string
nullable: false

default: Existing
Enum:
Array [ 4 ]
searchResultRecordStateUpdatedAt*string($date-time)
nullable: true

maxLength: 255

date and time when the last change was registered in the system

isSelected*boolean
nullable: true

true when this record has been marked as a selected

resolutionScore*number
minimum: 0

maximum: 100

nullable: true

example: 54
resolutionString*string
minLength: 5

maxLength: 5

example: AP-A-

nullable: true

A - high-res P - low or intermediate, - no typing

cordId*string
nullable: true

maxLength: 25

example: 9991012070433202000
donorType*stringEnum:
Array [ 1 ]
collectionDate*string($date)
minLength: 10

maxLength: 10

nullable: true

example: 2021-05-27
volume*integer
example: 25

nullable: true
tncCount*number
example: 1140000000

nullable: true
cd34Count*number
example: 3900000

nullable: true
viability*integer
minimum: 0

maximum: 100

example: 97

nullable: true
attachedSegmentsCount*integer
nullable: true

minimum: 0

maximum: 99

example: 2
bankManufacturerIdWmda*integer
example: 5432

nullable: true
cbbAccreditationStatus*string
nullable: true
Enum:
Array [ 3 ]
hla*{...}

4.6 - Full report - CBUs

The retrieveFullReportCBUs endpoint is used to retrieve all available information for a specific CBU in a search result. 

Send
retrieveFullReportCBUs

Request

searchIdinteger
nullable: false

minimum: 1
searchResultsId

integer

Unique identifier of the search.  Can be determined by retrieving patient search summary

Response

searchIdinteger
nullable: false

minimum: 1
searchIdinteger
nullable: false

minimum: 1
searchType

string

Enum:
[ CB ]

matchDurationinteger
minimum: 0

nullable: true

example: 30

time in seconds that the search took to run on the matching engine

patient
patientId*string
maxLength: 17

nullable: true

example: P1234XX

Organisation unique identifier for patient. Cannot be set unless "legalTerms" is set to "true". Do not use real names here.

status*string
nullable: false
Enum:
Array [ 5 ]
hla*{...}
idm*{...}
dateOfBirth*string($date)
nullable: true

maxLength: 10

example: 1961-05-27
diagnosis*{...}
diseasePhase*string
nullable: true
Enum:
Array [ 48 ]
ethnicity*string
nullable: true
Enum:
Array [ 21 ]
poolCountryCode*string
maxLength: 2

pattern: ^[A-Z]{2}

nullable: true

example: NL

ISO 3166-1 alpha-2 Country Code (capitalized)

transplantCentreId*string
maxLength: 10

nullable: true

example: TC X
abo*string
nullable: true
Enum:
Array [ 4 ]
rhesus*string
nullable: true
Enum:
Array [ 2 ]
weight*integer
nullable: true

minimum: 1

maximum: 999

example: 76
sex*string
nullable: true
Enum:
Array [ 2 ]
legalTerms*boolean
nullable: true

default: false

example: true

If not set to true, then patientId will not be stored.

wmdaId*integer
example: 123456

nullable: false
lastUpdated*string($date-time)
nullable: false

maxLength: 255

needed to help determine when patient can be automatically moved to STP state

lastViewed*string($date-time)
nullable: false

maxLength: 255

needed for sorting patients in the patient list

assignedUserName*string
minLength: 4

maxLength: 100

nullable: true

example: janethesearchcoordinator@lunarregistry.com

typically the e-mail address of the user

registry{...}
cbu
id*integer
nullable: false

example: 5176
donorRegistryIon*integer
nullable: false

minimum: 1000

maximum: 9999

example: 1234
abbreviationstring
example: NL-WMDA

maxLength: 24
haplotypeFrequencySetId*integer
nullable: true

minimum: 0

example: 15
status*string
nullable: false
Enum:
Array [ 3 ]
sex*string
nullable: true
Enum:
Array [ 2 ]
ethnicity*string
nullable: true
Enum:
Array [ 21 ]
idm*{...}
abo*string
nullable: true
Enum:
Array [ 4 ]
rhesus*string
nullable: true
Enum:
Array [ 2 ]
registryAccreditationStatus*string
nullable: true
Enum:
Array [ 2 ]
firstAccreditationYear*number
minimum: 1990

maximum: 2100

nullable: true

example: 2019
matchClass*string
example: 9/10

nullable: false
nmdpGrade*string
maxLength: 5

example: MPPMP

nullable: true

A - high-res match on ARD, P - probable match, M - sure Mismatch

zeroMismatchProbability*integer
minimum: 0

maximum: 100

nullable: true
oneMismatchProbability*integer
nullable: true

minimum: 0

maximum: 100
twoMismatchProbability*integer
nullable: true

minimum: 0

maximum: 100
aLocusMatchProbability*integer
nullable: true

minimum: 0

maximum: 100
bLocusMatchProbability*integer
nullable: true

minimum: 0

maximum: 100
cLocusMatchProbability*integer
nullable: true

minimum: 0

maximum: 100
drLocusMatchProbability*integer
nullable: true

minimum: 0

maximum: 100
dqLocusMatchProbability*integer
nullable: true

minimum: 0

maximum: 100
inexplicable*boolean
matchingInformationDpb1*{...}
mismatches*[...]
searchResultRecordState*string
nullable: false

default: Existing
Enum:
Array [ 4 ]
searchResultRecordStateUpdatedAt*string($date-time)
nullable: true

maxLength: 255

date and time when the last change was registered in the system

isSelected*boolean
nullable: true

true when this record has been marked as a selected

resolutionScore*number
minimum: 0

maximum: 100

nullable: true

example: 54
resolutionString*string
minLength: 5

maxLength: 5

example: AP-A-

nullable: true

A - high-res P - low or intermediate, - no typing

cordIdstring
nullable: true

maxLength: 25

example: 9991012070433202000
donorType*string
nullable: false
Enum:
Array [ 2 ]
collectionDatestring($date)
minLength: 10

maxLength: 10

nullable: true

example: 2021-05-27
volume*integer
example: 25

nullable: true
tncCount*number
example: 1140000000

nullable: true
cd34Count*number
example: 3900000

nullable: true
viability*integer
minimum: 0

maximum: 100

example: 97

nullable: true
attachedSegmentsCountinteger
nullable: true

minimum: 0

maximum: 99

example: 2
bankManufacturerIdWmda*integer
example: 5432

nullable: true
cbbAccreditationStatus*string
nullable: true
Enum:
Array [ 3 ]
localIdstring
example: 12345ABC

nullable: true
bagIdstring
example: ABCDE1234

nullable: true
dateOfBirth*string($date)
nullable: true

maxLength: 10

example: 1961-05-27
processingDatestring($date)
nullable: true

minLength: 10

maxLength: 10
processingMethodstring
nullable: true

HES = Hydroxy-Ethyl-Starch, DGS = Density Gradient Separation, CEN = Centrifuge, FIL = Filtration, FIC = FICOL, PER = PERCOL, OTH = Other

Enum:
Array [ 7 ]
processingMethodTypestring
nullable: true
Enum:
Array [ 5 ]
freezeDatestring($date)
nullable: true
freezeMethodstring
nullable: true
Enum:
Array [ 2 ]
reservedPatientIdstring
nullable: true

example: 1234222ss
productModificationsstring
nullable: true
Enum:
Array [ 7 ]
bagTypestring
nullable: true
Enum:
Array [ 4 ]
bagsCountinteger
minimum: 1

maximum: 99

example: 2

nullable: true
bankDistributionIdWmdainteger
nullable: true

example: 1234
bacterialCultureResultsstring
nullable: true

P = Positive N = Negative D = Not done

Enum:
Array [ 3 ]
fungalCultureResultsstring
nullable: true

P = Positive N = Negative D = Not done

Enum:
Array [ 3 ]
hemoglobinopathyScreeningStatusstring
nullable: true

DN = "Screening done, normal results" DU = "Screening done, unusual findings" NS = "No screening done" CD = "Can be done at time of release" NC = "Cannot be done" DT = "Thalassemia" DD = "Drepanocytosis"

Enum:
Array [ 7 ]
viabilityCellTypestring
nullable: true

type of cell tested for viability

Enum:
Array [ 3 ]
viabilityMethodstring
nullable: true

7A = 7AAD PI = Propidium Iodide TB = Trypan Blue OT = Other

Enum:
Array [ 4 ]
viabilityDatestring($date)
nullable: true
volumeFrozen*integer
example: 25

nullable: true
tncFrozenCount*number
example: 1020000000

nullable: true
cd34FrozenCount*number
example: 3700000

nullable: true
cfuFrozenCountinteger
nullable: true

minimum: 10000

maximum: 99990000

Total count of colony forming units (post processing, prior to cryopreservation)

mncFrozenCount*number
example: 430000000

nullable: true
ccr5string
nullable: true
Enum:
Array [ 3 ]
kir{...}
plasmaAliquotsCountinteger
minimum: 0

maximum: 99

nullable: true

Number of plasma aliquots available

redCellAliquotsCountinteger
minimum: 0

maximum: 99

nullable: true

Number of red cell fraction aliquots

nucleatedRbcFrozenCountinteger
minimum: 0

maximum: 9999000000

nullable: true

Total number of nucleated red blood cells (post processing, prior to cryopreservation)

serumAliquotsCountinteger
minimum: 0

maximum: 99

nullable: true
serumQuantitynumber
minimum: 0

maximum: 99.9

nullable: true
plasmaQuantitynumber
minimum: 0

maximum: 99.9

nullable: true
ctCompletionDatestring($date)
maxLength: 10
ctSampleTypestring
nullable: true

maxLength: 2

AS = CBU Contiguous Attached Segment, WB = Whole Blood Sample, RC = Red Cell Fraction (pellet), FP = Blood Spotted Filter Paper, ED = Extracted DNA

Enum:
Array [ 5 ]
dnaSamplesAvailableboolean
nullable: true
otherSamplesAvailableboolean
nullable: true
donorAttributestring
maxLength: 3

nullable: true
statusEndDatestring($date)
maxLength: 10

nullable: true
statusReasonstring
nullable: true

DO = Donor is too old, DD = Donor died, MR = Medical reasons, PR = Personal reasons, TX = After transplantation, MO = Donor has moved, UC = Unable to contact donor, OT = Other reasons, TQ = Typing questionable, UK = Unknown

Enum:
Array [ 10 ]
hla*{...}
mic{...}
registry{...}
cbb{...}
maternalInfo{...}


4.7 - Suggested use of API endpoints

Below is a diagram indicated the suggested use of some of the API endpoints. More API endpoints are available and the API implementer may choose to implement the endpoints in another order. 



  • No labels