Get a patient list
/fhir/r4/{query_endpoint_alias}/Patient
This path retrieves a list of patients that meet supplied query parameters.
The Oracle Health Clinical Data Exchange engine has an enterprise master patient index (EMPI), which uses the search matrix algorithm when matching patients to your search criteria.
Each patient is matched for each item on the following list:
- LN: Patient last name
- FN: Patient first name
- DOB: Patient date of birth
- SSN: Social Security Number
- Address: Concatenation of AddressLine1, AddressLine2 and sub-rule evaluation of Postal Code values
- Phone: Phone number provided, can be mobile, home, or work
The following list is ranked in priority from highest to lowest:
| LN | FN | DOB | SSN | Address | Phone | Result |
|---|---|---|---|---|---|---|
| yes | yes | yes | yes | yes | yes | yes |
| yes | yes | yes | yes | yes | no | yes |
| yes | yes | yes | yes | no | yes | yes |
| yes | yes | yes | yes | no | no | yes |
| yes | yes | yes | no | yes | yes | |
| exact | yes | |||||
| yes | yes | yes | no | yes | no | |
| exact | yes | |||||
| yes | yes | yes | no | no | yes | |
| exact | yes | |||||
| yes | yes | yes | no | no | no | |
| exactAndMaxFreq(0.001) | exact | unknown | postalMatches | yes | ||
| exactAndMaxFreq(0.001) | exact | unknown | address1Matches | yes | ||
| exactAndMaxFreq(0.0.0001) | exact | unknown | yes | |||
| exactAndMinLNFNDOBUnqProb(99.0) | exact | unknown | unknown | unknown | yes | |
| yes | yes | no | yes | yes | yes | yes |
| yes | yes | no | yes | yes | no | yes |
| yes | yes | no | yes | no | yes | yes |
| yes | yes | no | yes | no | no | yes |
| yes | yes | no | no | yes | yes | |
| yearMatches | yes | |||||
| yes | yes | no | no | yes | no | |
| exact | exact | yearMatches | unknown | unknown | yes | |
| yes | yes | no | no | no | yes | |
| yearMatches | unknown | yes | ||||
| yes | no | yes | yes | yes | yes | |
| exact | yes | |||||
| yes | no | yes | yes | yes | no | |
| exact | yes | |||||
| yes | no | yes | yes | no | yes | |
| exactAndMinLNFNDOBUnqProb(99.9) | exact | unknown | unknown | yes |
Sub-rules are the only rule sets that can make use of the following functions (normal rules are only YES/NO):
- Unknown: If the field is unknown rather than a known, different value
- yearMatches: Year of DOB value matches
- maxlev(x): Custom Levenshtein evaluation tolerance
- exact: Fields are exact character match
- exactAndMaxFreq(x): If fields are exact match and the content occurs in less than x-value percent of total patient population
- postalMatches: Postal code of the address field matches
Request
-
address: string
Specify the address of the patient.
-
address-city: string
Specify the city of the patient.
-
address-country: string
Specify the country code of the patient.
-
address-postalcode: string
Specify the postal code of the patient.
-
address-state: string
Specify the state of the patient.
-
birthdate: string(date)
Specify the birth date of the patient.
- Must not be provided with a time component. -
family: string
Specify the last name of the patient.
-
given: string
Specify the given name of the patient.
-
identifier: string
Specify the identifier of the patient.
- If MRN is used as an identifier, other parameters do not apply.
- Searches are conducted against a specified system.
- The patient's MRN and SSN is supported. The format includes the assigning authority and the value separated by a vertical bar (|).
For example, aa|value.
SSN: http://hl7.org/fhir/sid/us-ssn|XXXXXXXXX
MRN: 891c71549f4a4bb439b4de8a532f155c_2.16.840.1.113883.3.995.10.1.1|8133.
-
name: string
Specify the last name of the patient.
-
phone: string
Specify the phone of the patient.
-
authorization(required): string
This string contains the credentials to authenticate a consumer to the service. This value should be the OAuth 2.0 bearer token.
Response
- application/fhir+json
200 Response
Success
- The response would include all the entries matched.
-
X-Request-Id: string
Oracle troubleshooting identifier
-
opc-request-id: string
Oracle troubleshooting identifier
object-
address:
array address
Minimum Number of Items:
1Unique Items Required:true -
birthdate:
string(date)
Minimum Length:
1The patient's date of birth. -
communication:
array communication
Minimum Number of Items:
1Unique Items Required:trueA language that may be used to communicate with the patient about their health -
deceased:
object deceased
-
gender:
string
Minimum Length:
1Allowed Values:[ "male", "female" ]The patient's gender. -
id:
string
The unique global patient ID that identifies a patient across all providers in the network.
-
identifier:
array identifier
Minimum Number of Items:
1Unique Items Required:trueThe list of unique identifiers across all the providers and the associated Social Security numbers (SSNs) are returned. The supported system is http://terminology.hl7.org/CodeSystem/v2-0203. -
maritalStatus:
CodeableConcept
-
name:
array name
Minimum Number of Items:
1Unique Items Required:true -
resourceType:
string
The resource type is Patient.
-
telecom:
array telecom
{
"resourceType": "Patient",
"id": "2586450001",
"identifier": [
{
"use": "usual",
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v2-0203",
"code": "MR",
"display": "Medical record number"
}
]
},
"system": "891c71549f4a4bb439b4de8a532f155c_2.16.840.1.113883.3.995.10.1.1",
"value": "8133"
},
{
"use": "SSN",
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v2-0203",
"code": "SS"
}
],
"text": "SSN"
},
"system": "http://hl7.org/fhir/sid/us-ssn",
"value": "991123333"
}
],
"name": [
{
"use": "official",
"family": "PEREZ",
"given": [
"JUAN"
]
}
],
"telecom": [
{
"system": "phone",
"value": "123-123-1234",
"use": "home"
}
],
"gender": "male",
"birthdate": "1985-07-09",
"deceasedBoolean": true,
"deceasedDateTime": "2015-02-14T13:42:00Z",
"maritalStatus": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v3-MaritalStatus",
"code": "M"
}
]
},
"address": [
{
"use": "home",
"text": "1234, SAMPLE ROAD CITYTOWN, ST 56789",
"line": [
"1234, SAMPLE ROAD"
],
"city": "CITYTOWN",
"state": "ST",
"postalCode": "56789"
}
],
"communication": [
{
"language": {
"coding": [
{
"system": "urn:ietf:bcp:47",
"code": "nl-NL",
"display": "Dutch"
}
]
},
"preferred": true
}
]
}
array1truearray1trueobject-
deceasedBoolean:
boolean
-
deceasedDateTime:
string(date)
Minimum Length:
1The date and time of death.
array1trueobject-
extension:
array extension
-
id:
string
The unique ID for inter-element referencing.
object-
city:
string
The name of city, town, and so on.
-
country:
string
The country (for example, can be an ISO 3166 two-letter or three-letter code).
-
district:
string
The district name (also known as the county).
-
line:
array line
The street name, number, direction, P.O. Box, and so on.
-
period:
Period
-
postalcode:
string
The postal code for the area.
-
state:
string
The subunit of the country (abbreviations are accepted).
-
type:
string
postalphysicalboth
-
use:
string
The purpose of this address.
homeworktempoldbilling
object-
url:
string
Minimum Length:
1Identifies the meaning of the extension. -
value:
string
Minimum Length:
1The value of the extension.
arrayobject-
end:
string(date-time)
The end time with an inclusive boundary.
-
start:
string(date-time)
The starting time with an inclusive boundary.
object-
language:
CodeableConcept
-
preferred:
boolean
The language preference indicator.
objectobject-
period:
Period
-
system:
string
The namespace for the identifier value (URI).
-
type:
CodeableConcept
-
use:
string
usualofficialtempsecondaryold(if known)
-
value:
string
The value that is unique.
object-
coding:
array coding
A reference to a code defined by a terminology system.
-
text:
string
The plain text representation of the concept.
arrayobject-
code:
string
Minimum Length:
1The symbol in syntax defined by the system. -
display:
string
Minimum Length:
1The representation defined by the system. -
system:
string
Minimum Length:
1The identity of the terminology system. -
userSelected:
boolean
If this coding was chosen directly by the user.
-
version:
string
Minimum Length:
1The version of the system, if relevant.
object-
family:
string
The family name (often called the surname).
-
given:
array given
The given name (not always the first name). Includes middle names.
-
period:
Period
-
prefix:
array prefix
-
suffix:
array suffix
-
text:
string
The text representation of the full name.
-
use:
string
usualofficialtempnicknameanonymousoldmaiden
arrayarray-
Array of:
string
The parts that come before the name.
object-
system(required):
string
The telecommunication system that is used to contact the patient.
-
use(required):
string
The use of the patient's telecommunications.
-
value:
string
The actual point of contact value. This value is the current phone number or email address.