Once several records have been added to the BMPI, several ways are available to retrieve this information.
We have a record for John from Community Clinic and want to find out what other records the BMPI might have for him.
We use the Get Person By Record operation, querying with the Community Clinic source system (CommunityClinic
) and internal identifier (12345
):
GET /mpi/v1/record/CommunityClinic/12345
{
"id": "a46ee8bd-9dd1-41e6-bced-f2578ce37ae0",
"records": [
{
"source": "CommunityClinic",
"identifier": "12345"
},
{
"source": "AnytownUrgentCare",
"identifier": "AZ67889"
}
],
...
}
From this response, we can find John’s Person ID (a46e...
) in the id
field.
The records
field shows the Community Clinic record (which we used to search), and also tells us that John has a record from Anytown Urgent Care with internal identifier AZ67889
.
Alternately, if we already know John’s Person ID (from some previous operation), we can use that to find out what records he has using the Get Person by ID operation.
GET /mpi/v1/person/a46ee8bd-9dd1-41e6-bced-f2578ce37ae0
{
"id": "a46ee8bd-9dd1-41e6-bced-f2578ce37ae0",
"records": [
{
"source": "CommunityClinic",
"identifier": "12345"
},
{
"source": "AnytownUrgentCare",
"identifier": "AZ67889"
}
],
...
}
Notice that the response data is identical whether querying by Person ID or by record (as in the previous example). No demographics are returned.
Less commonly, we may wish to determine if any source systems know of an individual without actually adding or updating specific records. In this case, we can use the Match Demographics operation.
POST /mpi/v1/match
{
"firstName":"John",
"lastName":"Smith",
"gender":"male",
"dob":"1/2/2003",
"street":"123 Shady Lane",
"city":"Anytown",
"zipCode":"48105"
}
{
"id": "a46ee8bd-9dd1-41e6-bced-f2578ce37ae0",
"records": [
{
"source": "CommunityClinic",
"identifier": "12345"
},
{
"source": "AnytownUrgentCare",
"identifier": "AZ67889"
}
],
...
}
Notice that the response data is identical whether querying by Person ID, by record (as in the previous example), or by demographics. No demographics are returned.