This website provides API documentation for the careMESH National Provider Directory (Branded SEARCH). The documentation and the API responses are unique to the FHIR server defined below. Different FHIR servers may include different data sources and/or FHIR extensions.
The careMESH directory is a comprehensive, nationwide directory of US based healthcare providers and organizations. It is built from the ground up, based on the following standards:
At this time, implementation of DaVinci standards is partial and evolving, as the DaVinci standard itself is evolving.The directory is built based on regular updates from over 500 sources. These include:
The data sources that are included in this FHIR server are: All CMS Data Sources (e.g. NPPES, Medicare Care Compare, Hospital Compare...) NOTE: THIS APPLICATION IS FOR DEMO PURPOSES. IT IS CAPACITY AND RATE LIMITED AND THEREFORE CERTAIN TRANSACTIONS MAY BE SLOW OR TIME OUT.
There are two basic ways in which to access the directory. careMESH provides an interactive, user facing interface and through our FHIR based API. These are available at the following URLs for this server:
User Interface | https://cms-data.caremesh.app/ |
---|---|
API FHIR Server Root | https://cms-data.caremesh.app/4_0_0/ |
Because the careMESH Directory is a standard FHIR service, you can use any client software supporting the FHIR standard to acess it. Since FHIR is a relatively simple REST-based standard, you can also access it easily using any HTTP client library.
For most resource types, you will find interactive examples and sample code for searching and reading that resource type. These are by no means comprehensive, and in most cases you will need to supplement the code with additional authentication information before they will work. In other words, they are demonstrations of how you might implement client code for the given operation, but should not be considered ready for production.
careMESH Directory supports a variety of configurable authentication mechanisms. This document will document the specific authentication mechanisms supported for this instance of careMESH directory. That said, almost any form of authentication can be supported. Currently active supported forms include:
The following sections describe authentication strategies enabled for this directory instance:
AuditEvent resources can be searched for using an HTTP GET request
to the endpoint (i.e. /AuditEvent
).
Name | Type | Description | Examples |
---|---|---|---|
action | token | Type of action performed during the event | - |
address | string | Identifier for the network access point of the user device | - |
agent | reference | Identifier of who | - |
date | date | Time when the event was recorded | - |
entity | reference | Specific instance of resource | - |
entity-type | token | Type of entity involved | - |
_type | token | the resource type |
|
active | token | AuditEvent is active |
|
_content | string | freeform search | - |
_count | number | The number of results to return | - |
_elements | token | only return the listed elements (comma-separated) | - |
_id | token | the resource ID | - |
_tag | token | search by meta tag | - |
identifier | token | search by identifier | - |
_lastUpdated | date | resource last updated date | - |
_uuid | token | the fhir resource id | - |
reference | reference | Search by a resource that this resource references | - |
Endpoint resources can be searched for using an HTTP GET request
to the endpoint (i.e. /Endpoint
).
Name | Type | Description | Examples |
---|---|---|---|
organization | reference | search by organization id | - |
connection-type | token | Protocol/Profile/Standard to be used with this endpoint connection | - |
name | string | A name that this endpoint can be indentified by | - |
status | token | The current status of the Endpoint (usually expected to be active) | - |
_type | token | the resource type |
|
active | token | Endpoint is active |
|
_content | string | freeform search | - |
_count | number | The number of results to return | - |
_elements | token | only return the listed elements (comma-separated) | - |
_id | token | the resource ID | - |
_tag | token | search by meta tag | - |
identifier | token | search by identifier | - |
_lastUpdated | date | resource last updated date | - |
_uuid | token | the fhir resource id | - |
reference | reference | Search by a resource that this resource references | - |
The HealthcareService resource is used by careMESH to describe what services are offered by an organization at a location. The services offered may be unknown, in which case the service <code>type</code> and <code>specialty</code> lists will be empty. This should be interpreted to mean that the organization provides services at the address but the nature of the services is unknown.
HealthcareService resources can be searched for using an HTTP GET request
to the endpoint (i.e. /HealthcareService
).
Name | Type | Description | Examples |
---|---|---|---|
organization | reference | search by organization id | - |
organization-name | string | - | |
location | reference | search by location id | - |
specialty | string | search by service specialty | - |
name | string | A portion of the Healthcare service name | - |
_type | token | the resource type |
|
active | token | HealthcareService is active |
|
_content | string | freeform search | - |
_count | number | The number of results to return | - |
_elements | token | only return the listed elements (comma-separated) | - |
_id | token | the resource ID | - |
_tag | token | search by meta tag | - |
identifier | token | search by identifier | - |
_lastUpdated | date | resource last updated date | - |
_uuid | token | the fhir resource id | - |
reference | reference | Search by a resource that this resource references | - |
address-city | string | search by city | - |
address-country | string | search by country | - |
address-postalcode | string | search by postal code | - |
address-state | string | search by state | - |
address-district | string | search by county | - |
location-alias | string | The location's alias | - |
telecom | string | the value of any kind of contact | - |
token | A value in an email contact | - | |
phone | token | A value in a phone contact | - |
__npi | token | search by npi (placeholder to put npi in "_content" searches) | - |
__pac-id | token | search by identifier (placeholder to put PECOS Associate Control ID in "_content" searches) | - |
__pecos-enrollment-id | token | search by identifier (placeholder to put PECOS Enrollment ID in "_content" searches) | - |
__ccn | token | search by identifier (placeholder to put CMS Control Number (ccn) in "_content" searches) | - |
The Location resource represents a physical location at which service is provided. careMESH validates the vast majority of Locations against the USPS address database, therefore each location should represent a valid address. careMESH does not currently use the per-location contact information, so any contact information provided is purely for informational purposes and will not be used for careMESH delivery of messages. This resource is based on the FHIR R4 resource type, linked below.
Location resources can be searched for using an HTTP GET request
to the endpoint (i.e. /Location
).
Name | Type | Description | Examples |
---|---|---|---|
name | string | A portion of the location's name or alias | - |
organization | reference | search by organization id | - |
_type | token | the resource type |
|
active | token | Location is active |
|
_content | string | freeform search | - |
_count | number | The number of results to return | - |
_elements | token | only return the listed elements (comma-separated) | - |
_id | token | the resource ID | - |
_tag | token | search by meta tag | - |
identifier | token | search by identifier | - |
_lastUpdated | date | resource last updated date | - |
_uuid | token | the fhir resource id | - |
reference | reference | Search by a resource that this resource references | - |
address-city | string | search by city | - |
address-country | string | search by country | - |
address-postalcode | string | search by postal code | - |
address-state | string | search by state | - |
address-district | string | search by county | - |
telecom | string | the value of any kind of contact | - |
token | A value in an email contact | - | |
phone | token | A value in a phone contact | - |
The Media resource type is used by careMESH directory to provide a photograph of a practitioner where one is available. No other media types are supported. The resource is based on the FHIR R4 Media resource type, linked below.
Media resources can be searched for using an HTTP GET request
to the endpoint (i.e. /Media
).
Name | Type | Description | Examples |
---|---|---|---|
subject | reference | search by organization id | - |
_type | token | the resource type |
|
active | token | Media is active |
|
_content | string | freeform search | - |
_count | number | The number of results to return | - |
_elements | token | only return the listed elements (comma-separated) | - |
_id | token | the resource ID | - |
_tag | token | search by meta tag | - |
identifier | token | search by identifier | - |
_lastUpdated | date | resource last updated date | - |
_uuid | token | the fhir resource id | - |
reference | reference | Search by a resource that this resource references | - |
A careMESH directory Organization describes an organization that provides patient care, directly or indirectly. Some typical examples would include hospitals and provider practice groups. It is based on the FHIR Organization resource type, linked below.
This query gets an organization by resource ID
Method | GET |
---|---|
Path | Organization/8fd27e25-f522-5ff3-9e91-f52e7ac3e852 |
Code |
|
Result |
Click "Try it!" to see results! |
Organization resources can be searched for using an HTTP GET request
to the endpoint (i.e. /Organization
).
Name | Type | Description | Examples |
---|---|---|---|
name | string | search by name | - |
name:contains | string | search by name substring | - |
partof | reference | An organization of which this organization forms a part | - |
__preferredName | string | the preferred name for the organization | - |
type | string | the type of the organization | - |
_type | token | the resource type |
|
active | token | Organization is active |
|
_content | string | freeform search | - |
_count | number | The number of results to return | - |
_elements | token | only return the listed elements (comma-separated) | - |
_id | token | the resource ID | - |
_tag | token | search by meta tag | - |
identifier | token | search by identifier | - |
_lastUpdated | date | resource last updated date | - |
_uuid | token | the fhir resource id | - |
reference | reference | Search by a resource that this resource references | - |
address-city | string | search by city | - |
address-country | string | search by country | - |
address-postalcode | string | search by postal code | - |
address-state | string | search by state | - |
address-district | string | search by county | - |
location-alias | string | The location's alias | - |
telecom | string | the value of any kind of contact | - |
token | A value in an email contact | - | |
phone | token | A value in a phone contact | - |
__npi | token | search by npi (placeholder to put npi in "_content" searches) | - |
__pac-id | token | search by identifier (placeholder to put PECOS Associate Control ID in "_content" searches) | - |
__pecos-enrollment-id | token | search by identifier (placeholder to put PECOS Enrollment ID in "_content" searches) | - |
__ccn | token | search by identifier (placeholder to put CMS Control Number (ccn) in "_content" searches) | - |
A careMESH Practitioner is any healthcare worker. This includes the obvious (doctors and nurses), but also administrative support personnel. It is based on the FHIR Practitioner resource type, linked below.
Retrieve Dr. Sanjay Gupta by ID
Method | GET |
---|---|
Path | Practitioner/df259467-5d08-55b8-af51-50cf84f8ce3b |
Code |
|
Result |
Click "Try it!" to see results! |
Find Dr. Sanjay Gupta by first & last name
Method | GET |
---|---|
Path | Practitioner/?family=gupta&given=sanjay&address-city=atlanta |
Code |
|
Result |
Click "Try it!" to see results! |
Find all the doctors with last name "walker" in New York city
Method | GET |
---|---|
Path | Practitioner/?family=walker&address-city=new%2Byork&state=ny |
Code |
|
Result |
Click "Try it!" to see results! |
search by role (type) code for practitionerRoles that reference this one
Method | GET |
---|---|
Path | Practitioner |
Code |
|
Result |
Click "Try it!" to see results! |
Practitioner resources can be searched for using an HTTP GET request
to the endpoint (i.e. /Practitioner
).
Name | Type | Description | Examples |
---|---|---|---|
specialty | string | Search by provider specialty. Specialty can be expressed in several ways: * by code (e.g. "207Q00000X") * by system + code (e.g. "http://nucc.org/provider-taxonomy|207Q00000X") * by display name (e.g. "Family Medicine") Note that do to the presence of display names, the type is set to string. If you need an exact match on a specialty code, use the "specialty:exact" search parameter. | - |
__physician | token | limit search to physicians and podiatrists (CM Proprietary) | - |
__preferredName | string | the preferred name for the practitioner | - |
organization | reference | an organization with which the practitioner is associated | - |
location | reference | a location with which the practitioner is associated | - |
telecom | string | the value of any kind of contact | - |
token | A value in an email contact | - | |
phone | token | A value in a phone contact | - |
_type | token | the resource type |
|
active | token | Practitioner is active |
|
_content | string | freeform search | - |
_count | number | The number of results to return | - |
_elements | token | only return the listed elements (comma-separated) | - |
_id | token | the resource ID | - |
_tag | token | search by meta tag | - |
identifier | token | search by identifier | - |
_lastUpdated | date | resource last updated date | - |
_uuid | token | the fhir resource id | - |
reference | reference | Search by a resource that this resource references | - |
family | string | search by family name | - |
given | string | search by given name | - |
address-city | string | search by city | - |
address-country | string | search by country | - |
address-postalcode | string | search by postal code | - |
address-state | string | search by state | - |
address-district | string | search by county | - |
location-alias | string | The location's alias | - |
_organization-name | string | Search by an organization name | - |
primary-designator | token | Is this provider a PCP? (NY Only) | - |
program-participation | token | Public health programs this provider participates in? (NY Only) | - |
program-new-patient | token | Accepting Patients in a Program? (NY Only) | - |
custom-designation | token | search by custom designation | - |
role-title | token | Title of provider in this Practitioner Role (NY Only) | - |
direct-address | token | - | |
__npi | token | search by npi (placeholder to put npi in "_content" searches) | - |
__pac-id | token | search by identifier (placeholder to put PECOS Associate Control ID in "_content" searches) | - |
__pecos-enrollment-id | token | search by identifier (placeholder to put PECOS Enrollment ID in "_content" searches) | - |
__ccn | token | search by identifier (placeholder to put CMS Control Number (ccn) in "_content" searches) | - |
The PractitionerRole resource describes the link between a practitioner and an organization, a location, or both. In many cases, there will be contact information for the practitioner when they are working for at this combination of organization & location. This contact information should be preferred over contact information from other sources, as it is more specific. For more detail, refer to the FHIR PractitionerRole definitions linked below.
Search for all PractitionerRoles associated with Dr. Sanjay Gupta, by ID
Method | GET |
---|---|
Path | PractitionerRole/?practitioner=Practitioner%2Fdf259467-5d08-55b8-af51-50cf84f8ce3b |
Code |
|
Result |
Click "Try it!" to see results! |
Return a list of the first 10 doctors who are employed by Tampa General Hospital
Method | GET |
---|---|
Path | PractitionerRole/?organization=8fd27e25-f522-5ff3-9e91-f52e7ac3e852&_count=10 |
Code |
|
Result |
Click "Try it!" to see results! |
PractitionerRole resources can be searched for using an HTTP GET request
to the endpoint (i.e. /PractitionerRole
).
Name | Type | Description | Examples |
---|---|---|---|
specialty | string | search by provider specialty | - |
location | reference | search by location id | - |
practitioner | reference | search by practitioner id | - |
role | token | - | |
organization | reference | search by organization id | - |
family | string | search by family name | - |
given | string | search by given name | - |
_type | token | the resource type |
|
active | token | PractitionerRole is active |
|
_content | string | freeform search | - |
_count | number | The number of results to return | - |
_elements | token | only return the listed elements (comma-separated) | - |
_id | token | the resource ID | - |
_tag | token | search by meta tag | - |
identifier | token | search by identifier | - |
_lastUpdated | date | resource last updated date | - |
_uuid | token | the fhir resource id | - |
reference | reference | Search by a resource that this resource references | - |
primary-designator | token | Is this provider a PCP? (NY Only) | - |
program-participation | token | Public health programs this provider participates in? (NY Only) | - |
program-new-patient | token | Accepting Patients in a Program? (NY Only) | - |
custom-designation | token | search by custom designation | - |
role-title | token | Title of provider in this Practitioner Role (NY Only) | - |
direct-address | token | - | |
address-city | string | search by city | - |
address-country | string | search by country | - |
address-postalcode | string | search by postal code | - |
address-state | string | search by state | - |
address-district | string | search by county | - |
location-alias | string | The location's alias | - |
telecom | string | the value of any kind of contact | - |
token | A value in an email contact | - | |
phone | token | A value in a phone contact | - |
__npi | token | search by npi (placeholder to put npi in "_content" searches) | - |
__pac-id | token | search by identifier (placeholder to put PECOS Associate Control ID in "_content" searches) | - |
__pecos-enrollment-id | token | search by identifier (placeholder to put PECOS Enrollment ID in "_content" searches) | - |
__ccn | token | search by identifier (placeholder to put CMS Control Number (ccn) in "_content" searches) | - |
A SearchParameter resource specifies a search parameter that may be used on the RESTful API to search or filter on a resource. The SearchParameter resource declares: * how to refer to the search parameter from a client * how the search parameter is to be understood by the server * where in the source resource the parameter matches The search parameter resources present in the implementation guide (at each parameter's canonical URL) should be preferred over those provided by the server.
SearchParameter resources can be searched for using an HTTP GET request
to the endpoint (i.e. /SearchParameter
).
Name | Type | Description | Examples |
---|---|---|---|
_id | string | search by parameter id | - |