Versions Compared

Key

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

Table of Contents

4.1 - Start

...

search 

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

Post

searches

Expand
titleRequest...
FieldDetails
Send
startSearch
Request
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
Expand
titleResponse
FieldDetails
searchIdinteger
nullable: false

minimum: 1

4.2 - Search summary

The retrieveSearchResultssummary A GET to the searches/{searchId} endpoint is used to request a search summary for of a search. It also contains the status of a the search and can therefore be used to check whether a the search is done. 

Request:

searchIdinteger

Response:  which
Get
searches/{searchId}
Expand
titleRequest
FieldDetails
searchId*

integer

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

Expand
titleResponse
FieldDetails
Send
retrieveSearchResultssummary
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

whose phenotype cannot be explained by known haplotype

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

maxLength: 255

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

4.3 -

...

Retrieve all searches for a patient

A GET to the searches/patientSearches/{wmdaId} The retrieveSearchResultsDonors endpoint is used to retrieve search results for donors. Pagination is possible and optional filters can be provided. an overview off all searches that have been performed for a specific patient.

Get
searches/patientSearches/{wmdaId}
Expand
titleRequest
FieldDetails
wmdaId*

integer

wmdaId of patient you want to find search information for. This is NOT the patientId, but the wmdaId you received in the response body after creating your patient.

Expand
titleResponse
FieldDetails
searchId*integer
nullable: false

minimum: 1
matchEngine*integer
nullable: false

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

Enum:
Array [ 2 ]
searchType*stringEnum:
Array [ 1 ]
overallMismatches*integer
default: 0
Enum:
Array [ 8 ]
status*string
nullable: false
Enum:
Array [ 3 ]
summary*{...}
lociToBeConsidered*[...]
lastUpdated*string($date-time)
nullable: false

maxLength: 255

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

inexplicableinteger
nullable: true

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

statistics{...}
error{...}
nullable: true

4.4 - Search results - Donors

A POST to the searches/searchResults/donors endpoint is used to retrieve search results with adult donors. Pagination is possible and optional filters can be provided. If only interested in recent changes to the search results, this can be achieved using a filter on "recordLastUpdatedFrom" field.

Post
searches/searchResults/donors
Expand
titleRequest
FieldDetails
pagination{...}
searchId*integer
nullable: false

minimum: 1
filters{...}
sortBy

string
nullable: true

default: standard
Enum:
Array [ 2 ]

Expand
titleResponse
FieldDetails
paging*{...}
searchResults*[...]

4.5 - Search results - CBUs

A POST to the searches/searchResults/cbus retrieveSearchResultsDonors endpoint is used to retrieve search results with cord blood units. Pagination is possible and optional filters can be provided. If only interested in recent changes to the search results, this can be achieved using a filter on "recordLastUpdatedFrom" field.

  • searchId

Request: 

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

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

default: standard
Enum:
Array [ 2 ]

Response:

paging*
limit*integer
default: 100

minimum: 0
offset*integer
default: 0

minimum: 0

example: 0
totalCount*integer
minimum: 0

example: 2
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:
[ AV, TU, RS ]
sex*string
nullable: true
Enum:
[ M, F ]
ethnicity*string
nullable: true
Enum:
[ UK, AF, AS, CA, HI, AFNA, AFSS, ASSW, ASSO, ASCE, ASSE, ASNE, ASOC, CAEU, CAER, CANA, CAAU, HICA, HISA, MX, OT ]
idm*antiCmvStatusstring
nullable: true
Enum:
Array [ 7 ]
antiCmvDatestring($date)
nullable: true

maxLength: 10

date of CMV NAT test

cmvNatStatusstring
nullable: true
Postsearches/searchResults/cbus
Expand
titleRequest
FieldDetails
pagination{...}
searchId*integer
nullable: false

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

default: standard
Enum:
Array [ 2 ]
cmvNatDate
threeFourMismatchSortBystring
($date)

nullable: true

maxLength
default: 
10

date of CMV NAT test

abo*string
nullable: true
resolutionScoreEnum:
[ A, B, O, AB ]rhesus*
Array [ 3 ]
secondarySortBystring
nullable: true
Enum:
[ P, N ]
registryAccreditationStatus*

default
string
nullable
: 
true
tncCountEnum:
Array [
 accredited, qualified 
 2 ]
firstAccreditationYear*
Expand
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*booleanmatchingInformationDpb1*
dpb1MatchGrade*string
nullable: true
Enum:
[ P, A, G, H, X ]
tceDigest*
permissiveProbability*integer
nullable: true

minimum: 0

maximum: 100

Probability of permissive MM. Probabilities calculated with allele frequencies for DPB1, no linkage disequilibrium taken into account

nonPermissiveHostVsGraftProbability*integer
nullable: true

minimum: 0

maximum: 100

Probability for non-permissive MM in HvG direction. Probabilities calculated with allele frequencies for DPB1, no linkage disequilibrium taken into account

nonPermissiveGraftVsHostProbability*integer
nullable: true

minimum: 0

maximum: 100

Probability for Nnon-permissive MM in GvH direction. Probabilities calculated with allele frequencies for DPB1, no linkage disequilibrium taken into account

notDeterminedProbability*integer
nullable: true

minimum: 0

maximum: 100

Probability for Not Determinable permissiveness. Probabilities calculated with allele frequencies for DPB1, no linkage disequilibrium taken into account

mismatches*
locus*string
nullable: true

locus where the mismatch is

Enum:
[ A, B, C, DRB1, DQB1, DPB1, DPA1, DQA1, DRB2, DRB3, DRB4, DRB5 ]
position*integer
nullable: true

position of the mismatch (chromosome 1 or 2)

Enum:
[ 1, 2 ]
type*string
nullable: true

type of mismatch

Enum:
[ ANTIGEN, ALLELE ]
searchResultRecordState*string
nullable: false

default: Existing
Enum:
[ Existing, New, Updated, Deleted ]
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

grid*string
nullable: true

maxLength: 19

minLength: 19

example: 9991012070433202000
donorId*string
nullable: true

example: ABC1234

maxLength: 25
donorType*string
nullable: false
Enum:
[ D, B ]
lastContactDate*string($date)
nullable: true

minLength: 10

maxLength: 10
marrowDonationsCount*integer
nullable: true

example: 0
pbscDonationsCount*integer
nullable: true

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

maxLength: 10

example: 1961-05-27
hla*
a*
field1*string
maxLength: 20

example: 01:01
field2*string
nullable: true

maxLength: 20

example: 02:01
b*
field1*string
maxLength: 20

example: 01:01
field2*string
nullable: true

maxLength: 20

example: 02:01
c*
field1*string
maxLength: 20

example: 01:01
field2*string
nullable: true

maxLength: 20

example: 02:01
dpa1*
field1*string
maxLength: 20

example: 01:01
field2*string
nullable: true

maxLength: 20

example: 02:01
dpb1*
field1*string
maxLength: 20

example: 01:01
field2*string
nullable: true

maxLength: 20

example: 02:01
dqa1*
field1*string
maxLength: 20

example: 01:01
field2*string
nullable: true

maxLength: 20

example: 02:01
dqb1*
field1*string
maxLength: 20

example: 01:01
field2*string
nullable: true

maxLength: 20

example: 02:01
drb1*
field1*string
maxLength: 20

example: 01:01
field2*string
nullable: true

maxLength: 20

example: 02:01
drb3*
field1*string
maxLength: 20

example: 01:01
field2*string
nullable: true

maxLength: 20

example: 02:01
drb4*
field1*string
maxLength: 20

example: 01:01
field2*string
nullable: true

maxLength: 20

example: 02:01
drb5*
field1*string
maxLength: 20

example: 01:01
field2*string
nullable: true

maxLength: 20

example: 02:01

}]

4.4 - Full report - Donors

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

...

Request:

  • searchResultsId 

Response:

searchIdinteger
nullable: false

minimum: 1
searchTypestringEnum:
[ DR ]
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{...}
donor
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

grid*string
nullable: true

maxLength: 19

minLength: 19

example: 9991012070433202000
donorId*string
nullable: true

example: ABC1234

maxLength: 25
donorType*string
nullable: false
Enum:
Array [ 2 ]
lastContactDate*string($date)
nullable: true

minLength: 10

maxLength: 10
marrowDonationsCount*integer
nullable: true

example: 0
pbscDonationsCount*integer
nullable: true

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

maxLength: 10

example: 1961-05-27
donorAttributestring
maxLength: 3

nullable: true
kir{...}
weightinteger
nullable: true

minimum: 1

maximum: 999

example: 76
heightinteger
nullable: true

minimum: 1

maximum: 999

example: 161
collectionTypestring
nullable: true

Collection type, i.e. the willingness of the donor to donate in a specific manner. M = Marrow P = PBSC B = Both PBSC & Marrow

Enum:
Array [ 3 ]
transfusionsCountinteger
nullable: true

example: 1
pregnanciesCountinteger
nullable: true

example: 2
reservedPatientIdstring
nullable: true

example: 1234222ss
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*{...}
ccr5*string
nullable: true
Enum:
Array [ 3 ]
lastMedicalCheckupDatestring($date)
nullable: true

minLength: 10

maxLength: 10
registry*{...}

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. 

...

  • searchId

{

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: 

{

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*{...}

}]

}

titleResponse
FieldDetails
paging*{...}
searchResults*[...]

4.6 - Mark selected donor

A POST to the searches/selected/donors endpoint is used to select a donor. This endpoint can be used to highlight a donor of interest.

Post
searches/selected/donors
Expand
titleRequest
FieldDetails
wmdaId

integer

wmdaId of patient you want to find search information for. This is NOT the patientId, but the wmdaId you received in the response body after creating your patient.

gridstring
nullable: true

maxLength: 19

minLength: 19

example: 9991012070433202000
setAsSelected

boolean
nullable: false

set (true) or unset (false) the indicated grid or cordId as a selected stem cell source for this patient

Expand
titleResponse
N/A

4.7 - Mark selected CBU

A POST to the searches/selected/cbus endpoint is used to select a donor. This endpoint can be used to highlight a CBU of interest.

Post
searches/selected/cbus
Expand
titleRequest
FieldDetails
wmdaId

integer

wmdaId of patient you want to find search information for. This is NOT the patientId, but the wmdaId you received in the response body after creating your patient.

cordId

string
nullable: true
maxLength: 25
example: 9991012070433202000

cordId of the CBU.

donorRegistryIoninteger
nullable: false

minimum: 1000

maximum: 9999

example: 1234
setAsSelected

boolean
nullable: false

set (true) or unset (false) the indicated grid or cordId as a selected stem cell source for this patient

Expand
titleResponse
N/A

4.8 - Get list of registries that appear in search results

A GET to the searches/{searchId}/searchResults/registries endpoint is used to retrieve an overview off all the registries that appear in the search results of a specific donor search.

Get
searches/{searchId}/searchResults/registries
Expand
titleRequest
FieldDetails
searchId*

integer

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

Expand
titleResponse
FieldDetails
registries*

{...}

Array of unique registry IONs with their abbreviation and name

4.9 - Get list of cord blood banks that appear in search results

A GET to the searches/{searchId}/searchResults/cbbs endpoint is used to retrieve an overview off all the registries that appear in the search results of a specific donor search.

Get
searches/{searchId}/searchResults/cbbs
Expand
titleRequest
FieldDetails
searchId*

integer

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

Expand
titleResponse
FieldDetails
cbbs*

{...}

Array of unique cbbs bank manufacterer IDs with their abbreviation and name

4.10 - Full report - Donors

A GET to the searches/donors/{searchResultsId} endpoint retrieves all available information of a specific donor in a search result. 

Get
searches/donors/{searchResultsId}
Expand
titleRequest
FieldDetails
searchResultsId*

integer

Unique identifier of the donor within a search result. This is the "id" field within searchResult

Expand
titleResponse
FieldDetails
searchIdinteger
nullable: false

minimum: 1
searchTypestring
Enum:
Array [ 1 ]
matchDurationinteger
minimum: 0

nullable: true

example: 30

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

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

4.11 - Full report - CBUs

A GET to the searches/cbus/{searchResultsId} endpoint retrieves all available information of a specific CBU in a search result. 

Get
searches/cbus/{searchResultsId}
Expand
titleRequest
Field

Details

searchResultsId*

integer

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

Expand
titleResponse
FieldDetails
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

search{...}
patient{...}
cbu{...}

4.12 - Refresh all searches for a patient

A POST to the searches/refreshAllPatientSearches endpoint is used to restart all searches for this patient and retrieve the new results.

Post

searches/refreshAllPatientSearches

Expand
titleRequest...
FieldDetails
wmdaId*integer
example: 123456

nullable: false
Expand
titleResponse
N/A

4.13 - Restart a single search

A POST to the searches/searchResultsRefresh endpoint is used to restart all searches for this patient and retrieve the new results.

Post

searches/searchResultsRefresh

Expand
titleRequest...
FieldDetails
searchId*integer
example: 123456

nullable: false
Expand
titleResponse
FieldDetails
newSearchIdinteger
example: 123457

nullable: false

4.14 - Suggested use of API endpoints

Below is a diagram indicating 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. 

PlantUML Macro
titleSuggested use of API endpoints
@startuml
<style>
diamond {
    BackgroundColor #ccf
  }
</style>

#palegreen:repeat:request token from 'https://login.microsoftonline.com/{tenantId}/oauth2/token';
repeat while (Valid bearer token from the Patient and Search API?) is (no)
->yes;
#palegreen:create patient: POST /patients;
#lightblue:HTTP201 created: Response body contains 'wmdaId' for this patient;
#palegreen:Start search for patient using wmdaId POST to /searches;
#lightblue:repeat:HTTP201 created: Response body contains 'searchId' for this patient;
#palegreen:repeat:Check search status: GET to /searches/{wmdaId};
backward: running;
repeat while (What is the 'status' in the response body?)
:completed;
split
#gold:Donor;
#AntiqueWhite:Retrieve search results: POST to /searches/searchResults/donors;
#pink:Pick one or more donors;
#AntiqueWhite:Use 'id' field for that donor to perform GET to
 /searches/donors/{searchResultsId} to get full report for this donor;
split again
#gold:CBU;
#AntiqueWhite:Retrieve search results: POST to /searches/searchResults/cbus;
#pink:Pick one or more CBUs;
#AntiqueWhite:Use 'id' field for that donor to perform GET to 
/searches/cbus/{searchResultsId} to get full report for this CBU;
split again
#gold:ADCU;
#AntiqueWhite:Retrieve search results: POST to /searches/searchResults/adcus;
#pink:Pick one or more ADCUs;
#AntiqueWhite:Use 'id' field for that donor to perform GET to
 /searches/adcus/{searchResultsId} to get full report for this ADCU;
endsplit
split
#palegreen:Refresh all searches for a patient: POST to /searches/refreshAllPatientSearches;
split again
#palegreen:Refresh single search: POST to /searches/searchResultsRefresh;

@enduml
 


4.6 - Full report - CBUs

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

...

  • searchResultsId

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. 

...