Master Person Management Public API v1
Health Data Intelligence Master Person Management is the Health Data Intelligence enterprise master person index (EMPI) solution that enables you to link and obtain the linked medical records for an individual. The records are linked to create a holistic view of a person and to allow providers to have a fuller set of information to act on and contextualize decisions.
The records are linked using the Health Data Intelligence Master Person Management algorithm, which analyzes the probability that multiple source person records represent the same person. If the algorithm determines that they do, the system links the records.
The Health Data Intelligence Master Person Management API enables retrieving the master persons for a set of source persons and the linked source persons for a master person. Master persons can include records that are not processed into the Longitudinal Record service as patients based on your configured identification rules.
Glossary
- Data Partition: A logically related set of data that is processed by the Health Data Intelligence Master Person Management algorithm. Source person data that is processed by the platform data ingestion services is published to one or more data partitions, which then can be connected to a master person index. The data partitions are the same as those used elsewhere on the Health Data Intelligence platform. See the Data Partitions resource on the Data Sources API page for more information.
- Master Person: A set of linked source person records, all of which were determined to represent the same real-world person.
- Master Person Index: A set of master persons. Each index is owned by a single tenant, but tenants can grant authorization to share indexes with other tenants.
- Source Person: A patient record in a particular data partition. Source persons originate from the data sources that contribute person-centric data to the Health Data Intelligence platform.
URL: https://cernerdemo.api.us-1.healtheintent.com/master-person-management/v1
Retrieve the master persons for given source persons
Example Request:
require 'httparty' # Using HTTParty 0.16.2
require 'json'
headers = {
'Authorization' => '<auth_header>',
'Accept' => 'application/json'
}
result = HTTParty.get('https://cernerdemo.api.us-1.healtheintent.com/master-person-management/v1/indexes/1424e81d-8cea-4d6b-b140-d6630b684a58/master-person-lookup?dataPartitionId=0bb04aaf-b411-40b8-98d1-957ed04df7bc&sourcePersonId=7A85FAFB60FF0453938767BEA1398E89526E12AB_2206', headers: headers)
print JSON.pretty_generate(result)
# You can also use wget
curl -X GET https://cernerdemo.api.us-1.healtheintent.com/master-person-management/v1/indexes/1424e81d-8cea-4d6b-b140-d6630b684a58/master-person-lookup?dataPartitionId=0bb04aaf-b411-40b8-98d1-957ed04df7bc&sourcePersonId=7A85FAFB60FF0453938767BEA1398E89526E12AB_2206 \
-H 'Authorization: {auth_header}' \
-H 'Accept: application/json'
Example response
{
"items": [
{
"id": "00f67ffa-2e04-4947-b9d7-78b9eddb41b4",
"sourcePerson": {
"id": "7A85FAFB60FF0453938767BEA1398E89526E12AB_2206",
"dataPartitionId": "0bb04aaf-b411-40b8-98d1-957ed04df7bc"
}
}
]
}
GET /indexes/{indexId}/master-person-lookup
Parameters
Parameter | In | Type | Required | Default | Description | Accepted Values |
---|---|---|---|---|---|---|
indexId | path | string | true | N/A | The ID of the master person index. | - |
dataPartitionId | query | string | true | N/A | The ID of the data source. | - |
sourcePersonId | query | string | true | N/A | The unique ID of the person in the source system. The request may have upto a 100 sourcePersonIds. | - |
Response Statuses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | MasterPersonMappings |
400 | Bad Request | Bad request | Error |
401 | Unauthorized | Unauthorized | Error |
403 | Forbidden | Forbidden | Error |
404 | Not Found | Not found | Error |
Retrieve all the source persons for a master person
Example Request:
require 'httparty' # Using HTTParty 0.16.2
require 'json'
headers = {
'Authorization' => '<auth_header>',
'Accept' => 'application/json'
}
result = HTTParty.get('https://cernerdemo.api.us-1.healtheintent.com/master-person-management/v1/indexes/1424e81d-8cea-4d6b-b140-d6630b684a58/master-person/aa0698c6-b536-11e9-a2a3-2a2ae2dbcce4/source-persons', headers: headers)
print JSON.pretty_generate(result)
# You can also use wget
curl -X GET https://cernerdemo.api.us-1.healtheintent.com/master-person-management/v1/indexes/1424e81d-8cea-4d6b-b140-d6630b684a58/master-person/aa0698c6-b536-11e9-a2a3-2a2ae2dbcce4/source-persons \
-H 'Authorization: {auth_header}' \
-H 'Accept: application/json'
Example response
{
"items": [
{
"dataPartitionId": "877307a0-b5f5-4a01-9d4b-9fead6bcf788",
"id": "3019123"
}
],
"totalResults": 21,
"firstLink": "https://cernerdemo.api.us-1.healtheintent.com/master-person-management/v1/indexes/1424e81d-8cea-4d6b-b140-d6630b684a58/master-person/aa0698c6-b536-11e9-a2a3-2a2ae2dbcce4/source-persons?offset=0&limit=20",
"lastLink": "https://cernerdemo.api.us-1.healtheintent.com/master-person-management/v1/indexes/1424e81d-8cea-4d6b-b140-d6630b684a58/master-person/aa0698c6-b536-11e9-a2a3-2a2ae2dbcce4/source-persons?offset=20&limit=20",
"prevLink": "https://cernerdemo.api.us-1.healtheintent.com/master-person-management/v1/indexes/1424e81d-8cea-4d6b-b140-d6630b684a58/master-person/aa0698c6-b536-11e9-a2a3-2a2ae2dbcce4/source-persons?offset=0&limit=20",
"nextLink": "https://cernerdemo.api.us-1.healtheintent.com/master-person-management/v1/indexes/1424e81d-8cea-4d6b-b140-d6630b684a58/master-person/aa0698c6-b536-11e9-a2a3-2a2ae2dbcce4/source-persons?offset=20&limit=20"
}
GET /indexes/{indexId}/master-person/{id}/source-persons
Parameters
Parameter | In | Type | Required | Default | Description | Accepted Values |
---|---|---|---|---|---|---|
indexId | path | string | true | N/A | The ID of the master person index. | - |
id | path | string | true | N/A | The ID of the master person whose source persons need to be retrieved. | - |
Response Statuses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | DataPartitionPeople |
400 | Bad Request | Bad request | Error |
401 | Unauthorized | Unauthorized | Error |
403 | Forbidden | Forbidden | Error |
404 | Not Found | Not found | Error |
Schema Definitions
Master Person Mappings
Name | Type | Required | Description | Accepted Values |
---|---|---|---|---|
items | [Master Person Mapping] | true | A list of master person IDs in an index for a data partition ID and an array of source person IDs. | - |
Master Person Mapping
Name | Type | Required | Description | Accepted Values |
---|---|---|---|---|
id | String | true | The ID of the master person. | - |
sourcePerson | [Data Partition Person] | true | The data partition person for whom the master person is being requested. | - |
Data Partition Person
Name | Type | Required | Description | Accepted Values |
---|---|---|---|---|
dataPartitionId | String | true | The ID of the source data partition. | - |
id | String | true | The unique ID of the source person in the source data partition. | - |
Data Partition People
Name | Type | Required | Description | Accepted Values |
---|---|---|---|---|
items | [Data Partition Person] | true | A list of data partition person. | - |
totalResults | String | true | The total number of results for the specified parameters. | - |
firstLink | String | true | The first page of results. | - |
nextLink | String | false | The next page of results. | - |
lastLink | String | true | The last page of results. | - |
prevLink | String | false | The previous page of results. | - |