Provider Search Public API v2
The Oracle Health Data Intelligence Provider Search service enables you to search for provider personnel and organizations using configured workflows. V2 accepts a JSON POST body containing search criteria, pagination, and ordering controls.
A workflow can use parameter-based search or configured algorithms. When an algorithm qualifies for a request, the workflow uses its algorithmic ranking. See Ordering and Name Relevance for name-based searches when no algorithm qualifies.
URL: https://cernerdemo.api.us-1.healtheintent.com/provider-search/v2
The V1 GET search endpoints remain available. Use the Provider Search API V1 to manage workflows, workflow versions, algorithms, and their configuration. V2 provides the two search operations documented on this page.
Search Request
Both search operations require a JSON object in the request body. Authentication and workflow authorization use the same platform mechanism as V1.
| Header |
Required |
Value |
| Authorization |
true |
The authorization header for the caller. |
| Content-Type |
true |
application/json |
| Accept |
Recommended |
application/json |
Request Controls
| Name |
Type |
Required |
Description |
| filter |
object |
false |
Search criteria in a root AND object. See Filter Criteria. |
| page |
object |
false |
Pagination controls. |
| page.limit |
integer |
false |
Maximum results per page, from 1 to 100. Send a JSON integer, not a string or fractional number. |
| page.offset |
integer |
false |
Zero-based number of results to skip, from 0 to 2147483647. Send a JSON integer. |
| orderBy |
array of objects |
false |
A nonempty, ordered list of sort fields and directions. Each entry requires field and direction. |
| orderBy[].field |
string |
true, for each entry |
name or providerRelationshipScore. |
| orderBy[].direction |
string |
true, for each entry |
asc or desc. |
| includeProviders |
boolean |
false |
Organization search only. When true, includes associated personnel in items[].providerPersonnels. This controls response expansion; provider criteria still filter organization eligibility when expansion is omitted. |
Omitting filter applies no caller-supplied filter. Send explicit pagination values when you need a particular page size. An omitted orderBy uses the workflow’s default ordering described under Ordering and Name Relevance.
Filter Criteria
The current release supports a root AND containing criteria, including nested AND expressions. All criteria must match. Arbitrary OR combinations are not supported in this release.
For an exact criterion, multiple entries in values represent a union: any value can match. Repeated source-attribute criteria in AND require every value group to match. For example, one criterion whose values array contains both Refer From and Refer To matches either value; two criteria with one value each require both values.
| Criterion type |
Required properties |
Description |
field |
type, field, match, values |
Uses a supported field and its match mode from the endpoint’s field table below. values is a nonempty array of strings. |
text |
type, query |
Broad text search across the existing V1 q fields. query is a nonblank string. This is not an exact field filter. |
alias |
type, match, aliasSystem, aliasValue |
Matches an identity alias using match set to exact. Both the system and value are required. |
geoDistance |
type, match, origin, radius |
Matches locations within a radius using match set to within. See Geographic Search. |
sourceAttribute |
type, attributeName, match, values |
Organization search only. Matches an organization’s source attributes using match set to exact. |
organizationSourceAttribute |
type, attributeName, match, values |
Personnel search only. Matches the assigning organization’s source attributes using match set to exact. |
For both source-attribute criterion types, attributeName must be ORGANIZATION_TYPE or ORGANIZATION_ASSOCIATION_TYPE. values must contain one or more nonblank strings. Classification values are separate array entries, such as Refer From and Refer To; do not send one pipe-delimited value.
Personnel Search Fields
| Field names |
Match |
Description |
name, givenName, familyName |
partial |
Provider personnel name. Use name for canonical full-name relevance. |
id, specialtyId, healthcareServiceId, serviceTypeId, serviceCategoryId, networkId, payerId, planId, locationId, organizationId, linkPersonnelId |
exact |
Entity identifiers. Multiple values in one criterion use union semantics. |
language, gender, state, postalCode |
exact |
Language, gender, or location eligibility. Gender codes are male, female, other, and unknown. |
specialtyName, healthcareServiceName, serviceTypeName, serviceCategoryName, networkName, payerName, planName, locationName, city, organizationName |
partial |
Names of related services, networks, locations, or assigning organizations. |
Organization Search Fields
| Field names |
Match |
Description |
name, specialtyName, networkName, payerName, planName, locationName, city |
partial |
Organization name or names associated with its provider relationships. |
id, specialtyId, networkId, payerId, planId, locationId, linkOrganizationId |
exact |
Entity identifiers. Multiple values in one criterion use union semantics. |
state, postalCode |
exact |
Organization location eligibility. |
providerPersonnelGender, providerPersonnelLanguage |
exact |
Eligibility of associated provider personnel. Gender codes are male, female, other, and unknown. |
providerPersonnelName |
partial |
Name of associated provider personnel. |
One associated provider must satisfy all supplied provider-personnel criteria. An organization with no associated providers, or with no single provider satisfying the complete expression, is excluded. When includeProviders is true and provider-personnel criteria are supplied, providerPersonnels contains the matching personnel.
Ordering and Name Relevance
Filtering determines eligibility before ordering and pagination. Use orderBy to request a supported sort field and direction. To use the default name-relevance behavior, omit orderBy.
For personnel search in a non-algorithmic workflow, a name criterion ranks eligible providers by how closely their names match the supplied text. This also applies when a workflow has algorithms but none meets its activation conditions. Other criteria, such as specialtyName and organizationName, narrow eligibility without contributing to the provider-name score. When an algorithm qualifies, its existing algorithmic ranking applies.
For organization search without a qualifying algorithm, the default behavior depends on the name criteria:
| Name criteria |
Eligibility and ordering |
name only |
Matches organization names and retains organization-name ordering. |
name and providerPersonnelName |
Both must match. Organization-name ordering remains primary. |
providerPersonnelName only |
Requires a matching associated provider and orders organizations by their best associated-provider name relevance. |
Workflow activation conditions can depend on alias criteria. Include an alias criterion only when the identity filter is intended; it can activate a configured algorithm and therefore change ranking.
Provider Personnel Search
Search Provider Personnel
POST /workflows/{workflowId}/provider-personnel-search
Returns provider personnel satisfying the search criteria. This example searches for a provider named Julie at a practice site matching Baseline, where the assigning organization is External and has either the Refer From or Refer To association.
All organizationSourceAttribute criteria must match one assigning-organization relationship. Values from different assigning organizations cannot be combined to satisfy the expression.
Example Request:
require 'httparty'
require 'json'
headers = {
'Authorization' => '<auth_header>',
'Content-Type' => 'application/json',
'Accept' => 'application/json'
}
body = JSON.parse(<<~JSON)
{
"filter": {
"AND": [
{
"type": "field",
"field": "name",
"match": "partial",
"values": [
"Julie"
]
},
{
"type": "field",
"field": "organizationName",
"match": "partial",
"values": [
"Baseline"
]
},
{
"type": "organizationSourceAttribute",
"attributeName": "ORGANIZATION_TYPE",
"match": "exact",
"values": [
"External"
]
},
{
"type": "organizationSourceAttribute",
"attributeName": "ORGANIZATION_ASSOCIATION_TYPE",
"match": "exact",
"values": [
"Refer From",
"Refer To"
]
}
]
},
"page": {
"limit": 20,
"offset": 0
}
}
JSON
result = HTTParty.post(
'https://cernerdemo.api.us-1.healtheintent.com/provider-search/v2/workflows/{workflowId}/provider-personnel-search',
headers: headers,
body: body.to_json
)
print JSON.pretty_generate(result)
curl -X POST 'https://cernerdemo.api.us-1.healtheintent.com/provider-search/v2/workflows/{workflowId}/provider-personnel-search' \
-H 'Authorization: {auth_header}' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
--data-binary @- <<'JSON'
{
"filter": {
"AND": [
{
"type": "field",
"field": "name",
"match": "partial",
"values": [
"Julie"
]
},
{
"type": "field",
"field": "organizationName",
"match": "partial",
"values": [
"Baseline"
]
},
{
"type": "organizationSourceAttribute",
"attributeName": "ORGANIZATION_TYPE",
"match": "exact",
"values": [
"External"
]
},
{
"type": "organizationSourceAttribute",
"attributeName": "ORGANIZATION_ASSOCIATION_TYPE",
"match": "exact",
"values": [
"Refer From",
"Refer To"
]
}
]
},
"page": {
"limit": 20,
"offset": 0
}
}
JSON
Example response
{
"items": [
{
"id": "11f185063881e20395a8bb4ee73b1ec2",
"name": {
"text": "Sheets MD, Julie",
"family": "Sheets",
"given": [
"Julie"
],
"suffix": [
"MD"
]
},
"aliases": [
{
"system": "MILLENNIUM",
"type": "ID",
"value": "4601845"
}
],
"providerRelationships": [
{
"assigningOrganization": {
"id": "11f185063af77671a7033521ce9a80e5",
"name": "Baseline Practice",
"telecoms": [
{
"system": "PHONE",
"value": "(816) 555-0104",
"use": "WORK",
"rank": 1
}
],
"aliases": [
{
"system": "MILLENNIUM",
"type": "ID",
"value": "88003"
}
],
"sourceAttributes": [
{
"name": "ORGANIZATION_TYPE",
"values": [
"External"
]
},
{
"name": "ORGANIZATION_ASSOCIATION_TYPE",
"values": [
"Employed",
"Refer From",
"Refer To"
]
}
]
}
}
],
"gender": {
"code": "female",
"system": "http://hl7.org/fhir/administrative-gender",
"display": "Female"
},
"communications": [
{
"code": {
"codings": [
{
"code": "en-US",
"system": "BCP-47",
"display": "English (United States)"
}
],
"text": "English"
}
}
]
}
],
"totalResults": 1,
"page": {
"limit": 20,
"offset": {
"current": 0,
"first": 0,
"previous": null,
"next": null,
"last": 0
}
}
}
Personnel Search Parameters
Personnel Search Response Statuses
| Status |
Description |
Schema |
| 200 |
Search completed. |
PersonnelResult |
| 400 |
Invalid JSON, filter, pagination, or ordering. |
Error |
| 401 |
Authentication failed. |
Error |
| 403 |
The caller is not authorized for the workflow or tenant. |
Error |
See Error Handling for additional platform responses.
Provider Organization Search
Search Provider Organizations
POST /workflows/{workflowId}/provider-organization-search
Returns provider organizations satisfying the search criteria. This example requires an External organization with either the Refer From or Refer To association and at least one female provider who communicates in English. It expands the response to include matching providers.
Example Request:
require 'httparty'
require 'json'
headers = {
'Authorization' => '<auth_header>',
'Content-Type' => 'application/json',
'Accept' => 'application/json'
}
body = JSON.parse(<<~JSON)
{
"filter": {
"AND": [
{
"type": "sourceAttribute",
"attributeName": "ORGANIZATION_TYPE",
"match": "exact",
"values": [
"External"
]
},
{
"type": "sourceAttribute",
"attributeName": "ORGANIZATION_ASSOCIATION_TYPE",
"match": "exact",
"values": [
"Refer From",
"Refer To"
]
},
{
"type": "field",
"field": "providerPersonnelGender",
"match": "exact",
"values": [
"female"
]
},
{
"type": "field",
"field": "providerPersonnelLanguage",
"match": "exact",
"values": [
"English"
]
}
]
},
"page": {
"limit": 20,
"offset": 0
},
"includeProviders": true,
"orderBy": [
{
"field": "name",
"direction": "asc"
}
]
}
JSON
result = HTTParty.post(
'https://cernerdemo.api.us-1.healtheintent.com/provider-search/v2/workflows/{workflowId}/provider-organization-search',
headers: headers,
body: body.to_json
)
print JSON.pretty_generate(result)
curl -X POST 'https://cernerdemo.api.us-1.healtheintent.com/provider-search/v2/workflows/{workflowId}/provider-organization-search' \
-H 'Authorization: {auth_header}' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
--data-binary @- <<'JSON'
{
"filter": {
"AND": [
{
"type": "sourceAttribute",
"attributeName": "ORGANIZATION_TYPE",
"match": "exact",
"values": [
"External"
]
},
{
"type": "sourceAttribute",
"attributeName": "ORGANIZATION_ASSOCIATION_TYPE",
"match": "exact",
"values": [
"Refer From",
"Refer To"
]
},
{
"type": "field",
"field": "providerPersonnelGender",
"match": "exact",
"values": [
"female"
]
},
{
"type": "field",
"field": "providerPersonnelLanguage",
"match": "exact",
"values": [
"English"
]
}
]
},
"page": {
"limit": 20,
"offset": 0
},
"includeProviders": true,
"orderBy": [
{
"field": "name",
"direction": "asc"
}
]
}
JSON
Example response
{
"items": [
{
"id": "11f185063af77671a7033521ce9a80e5",
"name": "Baseline Practice",
"aliases": [
{
"system": "MILLENNIUM",
"type": "ID",
"value": "88003"
}
],
"sourceAttributes": [
{
"name": "ORGANIZATION_TYPE",
"values": [
"External"
]
},
{
"name": "ORGANIZATION_ASSOCIATION_TYPE",
"values": [
"Employed",
"Refer From",
"Refer To"
]
}
],
"telecoms": [
{
"system": "PHONE",
"value": "(816) 555-0104",
"use": "WORK",
"rank": 1
}
],
"providerPersonnels": [
{
"id": "11f185063881e20395a8bb4ee73b1ec2",
"name": {
"text": "Sheets MD, Julie",
"family": "Sheets",
"given": [
"Julie"
],
"suffix": [
"MD"
]
},
"aliases": [
{
"system": "MILLENNIUM",
"type": "ID",
"value": "4601845"
}
],
"providerRelationships": [
{
"assigningOrganization": {
"id": "11f185063af77671a7033521ce9a80e5",
"name": "Baseline Practice",
"telecoms": [
{
"system": "PHONE",
"value": "(816) 555-0104",
"use": "WORK",
"rank": 1
}
],
"aliases": [
{
"system": "MILLENNIUM",
"type": "ID",
"value": "88003"
}
],
"sourceAttributes": [
{
"name": "ORGANIZATION_TYPE",
"values": [
"External"
]
},
{
"name": "ORGANIZATION_ASSOCIATION_TYPE",
"values": [
"Employed",
"Refer From",
"Refer To"
]
}
]
}
}
],
"gender": {
"code": "female",
"system": "http://hl7.org/fhir/administrative-gender",
"display": "Female"
},
"communications": [
{
"code": {
"codings": [
{
"code": "en-US",
"system": "BCP-47",
"display": "English (United States)"
}
],
"text": "English"
}
}
]
}
]
}
],
"totalResults": 1,
"page": {
"limit": 20,
"offset": {
"current": 0,
"first": 0,
"previous": null,
"next": null,
"last": 0
}
}
}
Organization Search Parameters
Organization Search Response Statuses
| Status |
Description |
Schema |
| 200 |
Search completed. |
OrganizationResult |
| 400 |
Invalid JSON, filter, pagination, or ordering. |
Error |
| 401 |
Authentication failed. |
Error |
| 403 |
The caller is not authorized for the workflow or tenant. |
Error |
See Error Handling for additional platform responses.
Search Examples
These JSON bodies use the same POST endpoints and headers shown above.
Canonical Provider Name
Send this body to personnel search to find Sheets MD, Julie. Omit orderBy to use default name relevance when no algorithm qualifies. Additional criteria can narrow eligibility without adding to the name-relevance score.
{
"filter": {
"AND": [
{
"type": "field",
"field": "name",
"match": "partial",
"values": [
"Sheets MD, Julie"
]
}
]
},
"page": {
"limit": 20,
"offset": 0
}
}
Organization and Associated Provider Names
Send this body to organization search. Both the organization name and an associated provider name must match. Organization-name ordering remains primary, and the expanded personnel list contains matching providers.
{
"filter": {
"AND": [
{
"type": "field",
"field": "name",
"match": "partial",
"values": [
"Baseline"
]
},
{
"type": "field",
"field": "providerPersonnelName",
"match": "partial",
"values": [
"Julie"
]
}
]
},
"page": {
"limit": 20,
"offset": 0
},
"includeProviders": true
}
To search solely by associated provider name, omit the name criterion. When no algorithm qualifies and orderBy is omitted, organizations are ordered by their best associated-provider name relevance.
Require Both Organization Associations
Send this body to organization search to require both Refer From and Refer To. Both criteria must match the same organization’s source attribute. To filter personnel by the assigning organization instead, change each criterion’s type to organizationSourceAttribute and use the personnel search endpoint.
{
"filter": {
"AND": [
{
"type": "sourceAttribute",
"attributeName": "ORGANIZATION_ASSOCIATION_TYPE",
"match": "exact",
"values": [
"Refer From"
]
},
{
"type": "sourceAttribute",
"attributeName": "ORGANIZATION_ASSOCIATION_TYPE",
"match": "exact",
"values": [
"Refer To"
]
}
]
},
"page": {
"limit": 20,
"offset": 0
}
}
Identity Alias
Send this body to organization search to match an identity alias. Both aliasSystem and aliasValue are required. Use source-attribute criteria for organization classifications.
{
"filter": {
"AND": [
{
"type": "alias",
"match": "exact",
"aliasSystem": "MILLENNIUM",
"aliasValue": "88003"
}
]
},
"page": {
"limit": 20,
"offset": 0
}
}
Broad Text Search
Send this body to either search endpoint for the broad search previously requested with the V1 q parameter. To search specifically by provider name, use the personnel name field criterion instead.
{
"filter": {
"AND": [
{
"type": "text",
"query": "Cardiology"
}
]
},
"page": {
"limit": 20,
"offset": 0
}
}
Geographic Search
A geoDistance criterion accepts an origin containing both numeric latitude and longitude, or a postal-code origin containing a string value. Supply a radius with numeric value and unit set to mi. The match value is within.
Send this body to either endpoint to search within 25 miles of the supplied coordinates:
{
"filter": {
"AND": [
{
"type": "geoDistance",
"match": "within",
"origin": {
"latitude": 40.0423,
"longitude": -75.6323
},
"radius": {
"value": 25,
"unit": "mi"
}
}
]
},
"page": {
"limit": 20,
"offset": 0
}
}
For a postal-code origin, use this body:
{
"filter": {
"AND": [
{
"type": "geoDistance",
"match": "within",
"origin": {
"value": "19020"
},
"radius": {
"value": 25,
"unit": "mi"
}
}
]
},
"page": {
"limit": 20,
"offset": 0
}
}
Both endpoints return items, totalResults, and page. totalResults is the number of matching results before pagination. The response page.offset is an object containing numeric page positions; the request page.offset is a single integer.
| Response field |
Description |
| page.limit |
The page size applied to the request. |
| page.offset.current |
The offset of the current page. |
| page.offset.first |
The first page’s offset, 0. |
| page.offset.previous |
The previous page’s offset, or null when there is no previous page. |
| page.offset.next |
The next page’s offset, or null when there is no next page. |
| page.offset.last |
The offset of the last page. |
To retrieve the next page, resubmit the same filter, limit, ordering, and expansion controls, changing only the request’s page.offset to the response’s page.offset.next. Stop when next is null. V2 uses these offsets instead of V1 pagination links.
For example, a result set of 45 organizations with a page size of 20 has offsets 0, 20, and 40. On the second page, the response pagination is:
{
"limit": 20,
"offset": {
"current": 20,
"first": 0,
"previous": 0,
"next": 40,
"last": 40
}
}
Organization Source Attributes
Organization classification metadata is represented by sourceAttributes, an array of objects containing name and values. Identity aliases, such as a Millennium ID, remain in aliases.
| Search endpoint |
Response location |
Filter criterion type |
| Organization |
items[].sourceAttributes |
sourceAttribute |
| Personnel |
items[].providerRelationships[].assigningOrganization.sourceAttributes |
organizationSourceAttribute |
The Provider API V2 supports reading, creating, and updating source attributes on provider organizations. Provider Search currently supports exact classification filters for ORGANIZATION_TYPE and ORGANIZATION_ASSOCIATION_TYPE.
Error Handling
Invalid requests return 400 Bad Request, including malformed JSON, a body that is not an object, unsupported filters, missing criterion properties, invalid source-attribute values, and invalid pagination or ordering. Correct the request before retrying it. The public error envelope contains an integer HTTP status code, a message, and optional errorDetails.
For example, a JSON array instead of an object produces:
{
"code": 400,
"message": "Bad Request",
"errorDetails": [
{
"message": "body must be a JSON object"
}
]
}
Authentication and authorization failures return 401 or 403. The platform can also return 415 for an unsupported media type, 429 for rate or concurrency limits, and 5xx for service failures. Send Content-Type: application/json, honor Retry-After when supplied, and use bounded retry with backoff for retryable failures. Use the HTTP status and error code rather than parsing prose messages.
Migrating from V1
| V1 request or response |
V2 equivalent |
GET /provider-search/v1/workflows/{workflowId}/provider-personnel-search |
POST /provider-search/v2/workflows/{workflowId}/provider-personnel-search with a JSON body. |
GET /provider-search/v1/workflows/{workflowId}/provider-organization-search |
POST /provider-search/v2/workflows/{workflowId}/provider-organization-search with a JSON body. |
| Search query parameters |
Supported typed criteria inside filter.AND. Use the endpoint-specific field and match tables. |
q |
A text criterion with query. |
aliasSystem and aliasValue |
One alias criterion containing both values. |
| Organization classification alias values |
sourceAttribute for organizations, or organizationSourceAttribute for personnel. |
| Latitude/longitude or postal code with distance |
A geoDistance criterion with origin and radius. |
limit and offset |
page.limit and page.offset in the body. |
orderBy |
An array of objects containing field and direction. |
includeProviders |
A top-level boolean on organization search only. |
| Pagination links |
Numeric offsets in the response page.offset object. |
Keep the existing authorization header and add Content-Type: application/json. Compare results for your configured workflows before moving an integration to V2.
Schema Definitions
PersonnelResult
| Name |
Type |
Required |
Description |
Accepted Values |
| totalResults |
integer(int32) |
true |
Total number of matching results before pagination. |
- |
| page |
Page |
true |
Pagination details for this response. |
- |
| items |
[V2ProviderPersonnel] |
true |
The matching personnel on this page. |
- |
Page
| Name |
Type |
Required |
Description |
Accepted Values |
| limit |
integer(int32) |
true |
The page size applied to the request. |
- |
| offset |
Offset |
true |
Numeric page positions for this response. |
- |
Offset
| Name |
Type |
Required |
Description |
Accepted Values |
| current |
integer(int32) |
true |
The current page offset. |
- |
| first |
integer(int32) |
true |
The first page offset, 0. |
- |
| last |
integer(int32) |
true |
The last page offset. |
- |
| previous |
integer(int32)\ |
null |
true |
The previous page offset, or null when unavailable. |
| next |
integer(int32)\ |
null |
true |
The next page offset, or null when unavailable. |
V2ProviderPersonnel
| Name |
Type |
Required |
Description |
Accepted Values |
| id |
string |
true |
The unique ID of the Oracle Health Data Intelligence provider personnel entity. |
- |
| name |
Name |
false |
The name associated with the provider personnel entity. |
- |
| gender |
GenderCode |
false |
The gender of the provider personnel entity. |
- |
| age |
integer(int32) |
false |
The age of the provider personnel entity. |
- |
| communications |
[Communication] |
false |
The language or languages the provider personnel entity can use in patient communication. |
- |
| photo |
Photo |
false |
The image associated with the provider personnel entity. |
- |
| telecoms |
[DemographicTelecom] |
false |
The contact details for the provider personnel entity that apply to all roles. |
- |
| qualifications |
[Qualification] |
false |
The certification, licenses, or training associated with the provider personnel entity that pertain to the provision of care. |
- |
| link |
Link |
false |
A reference to another personnel entity who is identified as the same person described in this provider personnel entity. See the Personnel section on the Personnel API v1 page for more information. |
- |
| isPcp |
boolean |
false |
Indicates whether the provider personnel entity is a primary care physician (PCP). |
- |
| aliases |
[V2Alias] |
false |
Identity aliases for this entity. |
- |
| providerRelationships |
[V2ProviderRelationships] |
false |
The provider personnel relationships. |
- |
Name
| Name |
Type |
Required |
Description |
Accepted Values |
| text |
string |
false |
The text representation of the full name. |
- |
| family |
string |
false |
The family name or surname of the provider personnel entity. |
- |
| given |
[string] |
false |
The given names of the provider personnel entity, including the middle name. |
- |
| prefix |
[string] |
false |
The prefix of the name. |
- |
| suffix |
[string] |
false |
The suffix of the name. |
- |
GenderCode
| Name |
Type |
Required |
Description |
Accepted Values |
| code |
string |
true |
The unique ID of the gender code. The following values are available: male, female, other, and unknown. |
male, female, other, unknown |
| system |
string |
true |
The ID of the coding system associated with the code. |
- |
| display |
string |
false |
The human-readable representation of the gender code. |
Male, Female, Other, Unknown |
Communication
| Name |
Type |
Required |
Description |
Accepted Values |
| code |
Language |
true |
The language code the practitioner can use in patient communication. |
- |
Language
| Name |
Type |
Required |
Description |
Accepted Values |
| codings |
[LanguageCode] |
true |
A list of codified values from a standard code system. |
- |
| text |
string |
false |
The text representation of a language. |
- |
LanguageCode
| Name |
Type |
Required |
Description |
Accepted Values |
| code |
string |
true |
The unique ID of the language code. |
- |
| system |
string |
true |
The ID of the coding system associated with the language code. |
- |
| display |
string |
false |
A human-readable representation of the language code. |
- |
Photo
| Name |
Type |
Required |
Description |
Accepted Values |
| contentType |
string |
true |
The mime type of the content. The following values are possible: IMAGE/JPG, IMAGE/JPEG, IMAGE/GIF, and IMAGE/PNG. |
IMAGE/JPG, IMAGE/JPEG, IMAGE/GIF, IMAGE/PNG |
| url |
string |
true |
The reference to the physical location of the photo. |
- |
| title |
string |
false |
The name of the photo. |
- |
DemographicTelecom
| Name |
Type |
Required |
Description |
Accepted Values |
| system |
string |
true |
The system associated with the contact point for a provider personnel entity. The following values are available: EMAIL, PHONE, FAX, SMS, URL, DIRECT, and OTHER. |
EMAIL, PHONE, FAX, SMS, URL, DIRECT, OTHER |
| value |
string |
true |
The contact point details for a provider personnel entity. If you specify a value, system is required. |
- |
| use |
string |
false |
The purpose for which the contact details can be used. The following values are available: HOME, MOBILE, OLD, TEMP, and WORK. |
HOME, MOBILE, OLD, TEMP, WORK |
| rank |
integer(int32) |
false |
The rank based on other provided telecoms. This must be a numeric value that is greater than zero. Telecoms without a rank are considered equal to other unranked telecoms. Ranked telecoms are ordered above unranked telecoms. |
- |
Qualification
| Name |
Type |
Required |
Description |
Accepted Values |
| identifier |
string |
false |
The ID for this qualification for the provider personnel entity. |
- |
| type |
Code |
false |
Indicates whether this qualification is associated with a degree, training, certification, or license. |
- |
| text |
string |
true |
The text associated with the qualification. |
- |
| code |
QualificationCode |
false |
The code associated with the qualification. |
- |
| period |
Period |
false |
The time period during which the qualification is valid. |
- |
| reverificationDate |
string |
false |
The date when the qualification must be reverified, in ISO 8601 formatting with precision ranging from YYYY to YYYY-MM-DD. |
- |
| issuer |
QualificationIssuer |
false |
The organization that regulates and issues the qualification. You can use either the name or reference. |
- |
Code
| Name |
Type |
Required |
Description |
Accepted Values |
| code |
string |
true |
The unique ID of the code. |
- |
| display |
string |
false |
A human-readable representation of the code. |
- |
| system |
string |
true |
The ID of the coding system that gives meaning to the code. |
- |
QualificationCode
| Name |
Type |
Required |
Description |
Accepted Values |
| codings |
[Code] |
false |
A list of codified values from a standard code system. |
- |
| text |
string |
false |
The text that represents the consolidated display of different codings inside the code object. |
- |
Period
| Name |
Type |
Required |
Description |
Accepted Values |
| start |
string |
false |
The start date of the effective period of the qualification, in ISO 8601 format with precision ranging from YYYY to YYYY-MM-DD. |
- |
| end |
string |
false |
The end date of the effective period of the qualification, in ISO 8601 format with precision ranging from YYYY to YYYY-MM-DD. |
- |
QualificationIssuer
| Name |
Type |
Required |
Description |
Accepted Values |
| name |
string |
false |
The name of the issuer. |
- |
| reference |
string |
false |
The reference associated with the issuer. |
- |
Link
| Name |
Type |
Required |
Description |
Accepted Values |
| target |
Target |
true |
No description |
- |
Target
| Name |
Type |
Required |
Description |
Accepted Values |
| id |
string |
true |
The unique ID of the targeted provider personnel reference. |
- |
| display |
string |
false |
The name of the provider personnel entity. |
- |
V2Alias
| Name |
Type |
Required |
Description |
Accepted Values |
| system |
string |
true |
The authority responsible for assigning the alias value. Alias values are unique within this system namespace but not across systems. |
- |
| value |
string |
true |
The unique ID of the alias associated with the system or assigning authority. |
- |
| type |
string |
false |
The source-system alias type. |
- |
V2ProviderRelationships
| Name |
Type |
Required |
Description |
Accepted Values |
| locations |
[Location] |
false |
The name of a location where the provider personnel entity offers care. |
- |
| telecoms |
[DemographicTelecom] |
false |
The contact details for the provider personnel relationship. |
- |
| networks |
[Network] |
false |
The list of networks with which the provider personnel entity has a contractual relationship to provide services. |
- |
| specialties |
[Specialty] |
false |
The specialties of the provider personnel entity. |
- |
| healthcareServices |
[HealthcareService] |
false |
The healthcare services associated with the provider personnel entity. |
- |
| acceptingPatients |
boolean |
false |
Indicates whether the provider personnel entity is accepting patients. |
- |
| providerRelationshipScore |
[ProviderRelationshipScore] |
false |
The custom score based on the algorithm’s factors calculated for each provider. A provider relationship score is calculated for each role and location of the provider. The highest provider relationship score calculated for each provider is used to identify the ranking of providers in the ordered search result based on the filter conditions applied in the search request. |
- |
| assigningOrganization |
V2Organization |
false |
The organization assigning the provider relationship. |
- |
Location
| Name |
Type |
Required |
Description |
Accepted Values |
| id |
string |
true |
The unique ID of the location. |
- |
| name |
string |
false |
The name of the location. |
- |
| text |
string |
false |
The consolidated display of location name and fully formatted address. |
- |
| use |
string |
false |
The purpose of the address. The following values are possible: HOME, BILLING, OLD, TEMP, WORK, and PRIMARY. |
HOME, BILLING, OLD, TEMP, WORK, PRIMARY |
| lines |
[string] |
false |
An ordered list of address lines indicating the house number, apartment number, street name, street direction, PO Box number, and similar address information. |
- |
| city |
string |
false |
The name of the city, town, or village. |
- |
| state |
string |
false |
The state or other subunit of a country. |
- |
| country |
string |
false |
The nation specified for this address. |
- |
| postalCode |
string |
false |
The region defined by the postal service for this address. |
- |
| telecoms |
[DemographicTelecom] |
false |
The contact details for the location. |
- |
| geoLocation |
GeoLocation |
false |
The geographic location of a location for this address. |
- |
| distance |
Distance |
false |
The distance of this provider location from a specified point. |
- |
| managingOrganization |
ManagingOrganization |
false |
The organization responsible for the provisioning and upkeep of the location. This organization can also be used as part of the organizational hierarchy where this location provides services. |
- |
| aliases |
[Alias] |
false |
The aliases of the provider location. |
- |
GeoLocation
| Name |
Type |
Required |
Description |
Accepted Values |
| latitude |
number(float) |
true |
The latitude coordinate of the location. In ISO 6709 format, the standard representation of geographic point location by coordinates, the format, and precision ranges from +/-DD.DDDD to +/-DD.DDDDDD. |
- |
| longitude |
number(float) |
true |
The longitude coordinate of the location. In ISO 6709, the standard representation of geographic point location by coordinates, the format, and precision ranges from +/-DD.DDDD to +/-DD.DDDDDD. |
- |
Distance
| Name |
Type |
Required |
Description |
Accepted Values |
| value |
number(float) |
true |
The actual value of the distance. A unit is required if a value is provided. |
- |
| unit |
string |
true |
The unit that represents the distance. The following values are possible: mi, yd, ft, in, km, m, cm, mm, nm. |
mi, yd, ft, in, km, m, cm, mm, nm |
ManagingOrganization
| Name |
Type |
Required |
Description |
Accepted Values |
| id |
string |
true |
The unique ID of the provider organization. |
- |
| name |
string |
false |
The name of the provider organization. |
- |
| aliases |
[Alias] |
false |
The aliases of the provider organization. |
- |
Alias
| Name |
Type |
Required |
Description |
Accepted Values |
| system |
string |
true |
The authority responsible for assigning the alias value. Alias values are unique within this system namespace but not across systems. |
- |
| type |
string |
false |
The type of alias. The following values are available: SPI, NPI, DEA, TAX, SL, EXTERNAL, UPIN, USER, and UNKNOWN. |
SPI, NPI, DEA, TAX, SL, EXTERNAL, UPIN, USER, UNKNOWN |
| value |
string |
true |
The unique ID of the alias associated with the system or assigning authority. |
- |
Network
| Name |
Type |
Required |
Description |
Accepted Values |
| id |
string |
true |
The unique ID for the provider network. |
- |
| name |
string |
false |
The name of the provider network. |
- |
| payer |
Payer |
true |
The payers associated with the network. |
- |
| plan |
Plan |
true |
The plan for which a network is defined. |
- |
| relationshipType |
string |
false |
The type of contractual relationship the provider has with the specified provider network. |
- |
Payer
| Name |
Type |
Required |
Description |
Accepted Values |
| id |
string |
true |
The unique ID of the provider personnel payer. |
- |
| name |
string |
false |
The name of the provider personnel payer. |
- |
Plan
| Name |
Type |
Required |
Description |
Accepted Values |
| id |
string |
true |
The unique ID of the plan. |
- |
| name |
string |
false |
The name of the plan. |
- |
Specialty
| Name |
Type |
Required |
Description |
Accepted Values |
| id |
string |
true |
The unique ID of the specialty. |
- |
| name |
string |
false |
The name of the specialty. |
- |
| taxonomy |
Taxonomy |
true |
The taxonomy ID and taxonomy name that is related to the provider specialty. |
- |
| isPrimary |
boolean |
false |
Indicates whether a specialty is the primary specialty. |
- |
Taxonomy
| Name |
Type |
Required |
Description |
Accepted Values |
| id |
string |
true |
The unique ID of the taxonomy. |
- |
| name |
string |
true |
The name of the taxonomy. |
- |
HealthcareService
| Name |
Type |
Required |
Description |
Accepted Values |
| id |
string |
true |
The unique ID of the healthcare service. |
- |
| name |
string |
false |
The name of the healthcare service. |
- |
| serviceType |
ServiceType |
false |
The service type associated with the healthcare service. |
- |
| serviceCategory |
ServiceCategory |
false |
The service category associated with the healthcare service. |
- |
ServiceType
| Name |
Type |
Required |
Description |
Accepted Values |
| id |
string |
true |
The unique ID of the service type. |
- |
| name |
string |
false |
The name of the service type. |
- |
ServiceCategory
| Name |
Type |
Required |
Description |
Accepted Values |
| id |
string |
true |
The unique ID of the service category. |
- |
| name |
string |
false |
The name of the service category. |
- |
ProviderRelationshipScore
| Name |
Type |
Required |
Description |
Accepted Values |
| score |
integer(int32) |
false |
The composite score of the provider personnel relationship. |
- |
| calculatedBy |
CalculatedBy |
false |
The algorithm used to calculate the provider relationship composite score. |
- |
| basis |
[Basis] |
false |
Indicates the concept that has a direct relation to the provider relationship score calculation. |
- |
CalculatedBy
| Name |
Type |
Required |
Description |
Accepted Values |
| id |
string |
true |
The unique ID of the provider search algorithm. |
- |
| title |
string |
false |
The title of the provider search algorithm. |
- |
| factors |
[Factor] |
false |
The group of individual components that contribute to calculating the provider relationship score as part of the provider search outcomes. |
- |
Factor
| Name |
Type |
Required |
Description |
Accepted Values |
| id |
string |
true |
The unique ID of the algorithm factor. |
- |
| title |
string |
false |
The title of the algorithm factor. |
- |
| score |
integer(int32) |
true |
The score calculated for the algorithm factor. |
- |
Basis
| Name |
Type |
Required |
Description |
Accepted Values |
| id |
string |
true |
The unique provider location ID that has a direct relation to the provider relationship score calculation. |
- |
| kind |
string |
true |
The name of the concept with a direct relation to the provider relationship score calculation. |
- |
V2Organization
| Name |
Type |
Required |
Description |
Accepted Values |
| id |
string |
true |
The unique ID for the provider organization. |
- |
| name |
string |
false |
The name of the provider organization. |
- |
| telecoms |
[DemographicTelecom] |
false |
The contact details for the provider organization relationship. |
- |
| aliases |
[V2Alias] |
false |
Identity aliases for this entity. |
- |
| sourceAttributes |
[SourceAttribute] |
false |
Source-system attributes associated with this organization. |
- |
SourceAttribute
| Name |
Type |
Required |
Description |
Accepted Values |
| name |
string |
true |
The source attribute name. |
- |
| values |
[string] |
true |
The individual values of the source attribute. |
- |
OrganizationResult
| Name |
Type |
Required |
Description |
Accepted Values |
| totalResults |
integer(int32) |
true |
Total number of matching results before pagination. |
- |
| page |
Page |
true |
Pagination details for this response. |
- |
| items |
[V2ProviderOrganization] |
true |
The matching organizations on this page. |
- |
V2ProviderOrganization
| Name |
Type |
Required |
Description |
Accepted Values |
| id |
string |
true |
The unique ID for the provider organization. |
- |
| name |
string |
false |
The name of the provider organization. |
- |
| telecoms |
[DemographicTelecom] |
false |
The contact details for the provider organization entity that apply to all roles. |
- |
| link |
Link |
false |
A reference to another organization entity who is identified as the same person described in this provider organization entity. See the Organization section on the Organization API v1 page for more information. |
- |
| providerRelationships |
[OrganizationProviderRelationships] |
false |
The specific set of an organization’s relationships to locations, specialties, networks, and services that they may perform at an organization. |
- |
| partOf |
PartOf |
false |
The parent or owning organization. |
- |
| aliases |
[V2Alias] |
false |
Identity aliases for this entity. |
- |
| sourceAttributes |
[SourceAttribute] |
false |
Source-system attributes associated with this organization. |
- |
| providerPersonnels |
[V2ProviderPersonnel] |
false |
Associated personnel included when includeProviders is true; filtered by supplied provider-personnel criteria. |
- |
OrganizationProviderRelationships
| Name |
Type |
Required |
Description |
Accepted Values |
| locations |
[Location] |
false |
The name of a location where the provider organization entity offers care. |
- |
| telecoms |
[DemographicTelecom] |
false |
The contact details for the provider organization relationship. |
- |
| networks |
[Network] |
false |
The list of networks with which the provider organization entity has a contractual relationship to provide services. |
- |
| specialties |
[Specialty] |
false |
The specialties of the provider organization entity. |
- |
| providerRelationshipScore |
[ProviderRelationshipScore] |
false |
The custom score based on the algorithm’s factors calculated for each provider. A provider relationship score is calculated for each role and location of the provider. The highest provider relationship score calculated for each provider is used to identify the ranking of providers in the ordered search result based on the filter conditions applied in the search request. |
- |
| acceptingPatients |
boolean |
false |
Indicates whether the provider organization entity is accepting patients. |
- |
PartOf
| Name |
Type |
Required |
Description |
Accepted Values |
| id |
string |
false |
The ID of the parent organization. |
- |
| display |
string |
false |
The display name of the parent organization. |
- |
| aliases |
[Alias] |
false |
The aliases of the parent organization. |
- |
postWorkflowsWorkflowidProviderOrganizationSearch
| Name |
Type |
Required |
Description |
Accepted Values |
| filter |
object |
false |
A root AND containing the supported Filter Criteria. Organization search uses sourceAttribute; personnel search uses organizationSourceAttribute. |
- |
| page |
object |
false |
Pagination object with optional limit (1-100) and non-negative offset. |
- |
| » limit |
integer(int32) |
false |
Maximum number of results to return (1-100). |
- |
| » offset |
integer(int32) |
false |
Zero-based number of results to skip, from 0 to 2147483647. |
- |
| orderBy |
[object] |
false |
A nonempty array of sort objects. Each contains a supported field and an asc or desc direction. |
- |
| » field |
string |
true |
The field to sort by. |
name, providerRelationshipScore |
| » direction |
string |
true |
Sort direction. |
asc, desc |
| includeProviders |
boolean |
false |
When true, include the provider personnel associated with each returned organization. |
- |
Error
| Name |
Type |
Required |
Description |
Accepted Values |
| code |
integer(int32) |
true |
The HTTP response status code that represents the error. |
- |
| message |
string |
true |
A human-readable description of the error. |
- |
| errorDetails |
[ErrorDetail] |
false |
A list of additional error details. |
- |
ErrorDetail
| Name |
Type |
Required |
Description |
Accepted Values |
| domain |
string |
false |
A subsystem or context where an error occurred. |
- |
| reason |
string |
false |
A codified value that represents the specific error that caused the current error status. |
- |
| message |
string |
false |
A human-readable description of an error. |
- |
| locationType |
string |
false |
The location or type of the field that caused an error. |
query, header, path, formData, body |
| location |
string |
false |
The name of the field that caused an error. |
- |
postWorkflowsWorkflowidProviderPersonnelSearch
| Name |
Type |
Required |
Description |
Accepted Values |
| filter |
object |
false |
A root AND containing the supported Filter Criteria. Organization search uses sourceAttribute; personnel search uses organizationSourceAttribute. |
- |
| page |
object |
false |
Pagination object with optional limit (1-100) and non-negative offset. |
- |
| » limit |
integer(int32) |
false |
Maximum number of results to return (1-100). |
- |
| » offset |
integer(int32) |
false |
Zero-based number of results to skip, from 0 to 2147483647. |
- |
| orderBy |
[object] |
false |
A nonempty array of sort objects. Each contains a supported field and an asc or desc direction. |
- |
| » field |
string |
true |
The field to sort by. |
name, providerRelationshipScore |
| » direction |
string |
true |
Sort direction. |
asc, desc |