Versions Compared

Key

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

openspecimen/rest/ng/participants/match

Use this API to find matching participants in search the OpenSpecimen database. Use HTTP POST method to invoke this API by passing below details in JSON format. The API will attempt to find matching participants based on below input parameters.database that match one or more of the matching field. Typically, you should use this API is before adding a new participant to check if the participant is already present in the database.

Parameter
Details
lastName

Last name of the participant. Used in conjunction with birthDate.

uidCountry specific
unique
social security or national ID of the participant. For example, in US, this could be SSN. In India, this could be Aadhar number / PAN etc
birthDateParticipant's date of birth. Used in conjunction with lastName.
pmiParticipant's MRN and name of site that assigned the MRN. Refer below example for the field structure.
empiEnterprise wide unique ID assigned to the participant.
reqRegInfoBoolean specifying whether the registration details of matched participants needs to be populated in response
.

...

. By default, the value of this flag is false.


http[s]:<host>:<port>/openspecimen/rest/ng/participants/match

...

Below is the example of the match participants request-response:

URLhttp[s]:<host>:<port>/openspecimen/rest/ng/participants/match
MethodPOST
content-typeapplication/json
MethodPOST
Body


Code Block
{
  "lastName" : "Dep",
  "pmi" :  {
    "mrn" : "324r6",
    "siteName" : "Lab2"
  } ,
  "uid" : "123-45-6789",
  "reqRegInfo": true
}


Response


Code Block
[
  {
    "matchedAttrs": ["pmi", "uid"]
    "participant": {  
      "lastName" : "Dep",
      "pmis" : [{ 
        "mrn" : "324r6",
        "siteName" : "Lab2"
      }],
      "uid" : "123-45-6789"
      "id" : "1",


      /** other participant attributes **/

      /* registeredCps
: [/*
 array is populated only if reqRegInfo = true in matching request */
      "registeredCps": [
        {
          "cpShortTitle": "Lung Cancer",
          "registrationDate": 1437282466892,
          "ppid": "LC-007",
          "cprId": 17018
        }
        /* other registrations, if any */
      ]
    }
]


Note:

matchedAttrs contains list of input attributes against which matching participant was found. The values could any of these ["empi" | "uid" | "pmi" | "lnameAndDob"]

Error Cases :

code
Applies to
Status Message
200All resourcesMatching request executed successfully
400All requestsInvalid input parameters. Retrying request with correct parameter values might succeed.
401All requestsAuthorization failed. User doesn’t have rights to find matching participants.
500All requestsServer error. Retrying request might not succeed.