FHIR Practitioner

Base Path: /fhir/1.0/Practitioner

Version: 2.3.0

The FHIR Practitioner API allows you to search for and look up practitioners so that they can be correctly attributed to the activities they were involved in. The endpoint provides the ability to:

  • Retrieve all Practitioner resources that match a search criteria.
  • Retrieve one or more Practitioner resources based on their resource ID.

The data returned in this API is subject to privacy and permissions settings, refer to the Working with Privacy guide to learn how this might affect your application.

This API is based on the DSTU2 release of the FHIR standard, for more information on this API refer to the official FHIR documentation.

Authorization: OAuth 2.0 Bearer token is required to access the resources of this API. Once signed up, credentials and URL to access the OAuth API can be found on My Apps Page.


Methods

Search for Practitioners

GET /fhir/1.0/Practitioner/

This method returns details of practitioners that match the supplied search criteria. Practitioner searches may be performed by supplying one of the following minimum criteria. Either:

  • __id_, or
  • identifier, or
  • At least name with one (or more) of the following optional filters:
    • address-city
    • address-state
    • specialty
    • qualification


Parameters

Name

Type

Data Type

Description


Name:

_id

optional

Type:

query

Data Type:

array

Description:

The id of the Practitioner resource. A comma separated list of resource ids can be used to retrieve multiple practitioners. This parameter cannot be combined with other search parameters (e.g. name, specialty, ...) in a single request.


Sample Value: MRSW23ZOOBZG65TJMRSXEQDDNRUW42LDMFWC24DPOJ2GC3BNOVZWK4Q



Name:

identifier

optional

Type:

query

Data Type:

array

Description:

The identifier for the practitioner which consists of practitioner identifier namespace, also known as the system, and identifier, separated using a URL encoded | character i.e. %7c. A comma separated list of identifiers can be used to search for multiple practitioners. This parameter cannot be combined with other search parameters (e.g. name, specialty, ...) in a single request.


Sample Value: clinical-portal-user|demo.provider



Name:

name

optional

Type:

query

Data Type:

string

Description:

Fragment of either family or given name of the Practitioner to search for


Sample Value: demo provider



Name:

address-city

optional

Type:

query

Data Type:

string

Description:

A city specified in an address of the Practitioner to search for


Sample Value: Latrobe



Name:

address-state

optional

Type:

query

Data Type:

string

Description:

A state specified in an address of the Practitioner to search for


Sample Value: PA



Name:

specialty

optional

Type:

query

Data Type:

string

Description:

Practitioner's specialty at an organization to search for. A text based search is supported when appending the :text modifier to the parameter name (specialty:text). Otherwise, a combined <system>|<code> value is expected. The system part of the value is optional.


Sample Value: specialty-coding-system|specialty-code



Name:

qualification

optional

Type:

query

Data Type:

string

Description:

Practitioner's qualification obtained by training or certification to search for. A text based search is supported when appending the :text modifier to the parameter name (qualification:text). Otherwise, a combined <system>|<code> value is expected. The system part of the value is optional.


Sample Value: qualification-coding-system|qualification-code



Name:

_count

optional

Type:

query

Data Type:

integer

Description:

The maximum number of search results to return. If this parameter is not provided or is over 25, the maximum number of returned results will be 25.


Sample Value: 25


Responses


application/json+fhir

200

Returns a FHIR Bundle containing 0..* OperationOutcome resources and 0..* Practitioner resources


application/json+fhir

400

This code is returned when the query contains one or more invalid parameters, e.g using incorrectly formatted identifiers.

Sample Requests

Search by Resource ID
curl -X GET "https://api.orionhealth.io/fhir/1.0/Practitioner/?_id=MRSW23ZOOBZG65TJMRSXEQDDNRUW42LDMFWC24DPOJ2GC3BNOVZWK4Q" \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <Access Token>'
Search by Identifier
curl -X GET "https://api.orionhealth.io/fhir/1.0/Practitioner/?identifier=clinical-portal-user%7Cdemo.provider" \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <Access Token>'
Search by Demographics
curl -X GET "https://api.orionhealth.io/fhir/1.0/Practitioner/?name=demo provider&address-city=Latrobe&address-state=PA&specialty=specialty-coding-system%7Cspecialty-code&qualification=qualification-coding-system%7Cqualification-code" \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <Access Token>'

Search for Practitioners

POST /fhir/1.0/Practitioner/_search

This method returns details of practitioners that match the supplied search criteria. This is the secure alternative to the GET search. Practitioner searches may be performed by supplying one of the following minimum criteria. Either:

  • __id_, or
  • identifier, or
  • At least name with one (or more) of the following optional filters:
    • address-city
    • address-state
    • specialty
    • qualification


Parameters

Name

Type

Data Type

Description


Name:

Content-Type

required

Type:

header

Data Type:

string

Description:

Specifies how to encode the form data. The Content-Type value must be application/x-www-form-urlencoded


Sample Value: application/x-www-form-urlencoded



Name:

_id

optional

Type:

formData

Data Type:

array

Description:

The id of the Practitioner resource. A comma separated list of resource ids can be used to retrieve multiple practitioners. This parameter cannot be combined with other search parameters (e.g. name, specialty, ...) in a single request.


Sample Value: MRSW23ZOOBZG65TJMRSXEQDDNRUW42LDMFWC24DPOJ2GC3BNOVZWK4Q



Name:

identifier

optional

Type:

formData

Data Type:

array

Description:

The identifier for the practitioner which consists of practitioner identifier namespace, also known as the system, and identifier, separated using a URL encoded | character i.e. %7c. A comma separated list of identifiers can be used to search for multiple practitioners. This parameter cannot be combined with other search parameters (e.g. name, specialty, ...) in a single request.


Sample Value: clinical-portal-user|demo.provider



Name:

name

optional

Type:

formData

Data Type:

string

Description:

Fragment of either family or given name of the Practitioner to search for


Sample Value: demo provider



Name:

address-city

optional

Type:

formData

Data Type:

string

Description:

A city specified in an address of the Practitioner to search for


Sample Value: Latrobe



Name:

address-state

optional

Type:

formData

Data Type:

string

Description:

A state specified in an address of the Practitioner to search for


Sample Value: PA



Name:

specialty

optional

Type:

formData

Data Type:

string

Description:

Practitioner's specialty at an organization to search for. A text based search is supported when appending the :text modifier to the parameter name (specialty:text). Otherwise, a combined <system>|<code> value is expected. The system part of the value is optional.


Sample Value: specialty-coding-system|specialty-code



Name:

qualification

optional

Type:

formData

Data Type:

string

Description:

Practitioner's qualification obtained by training or certification to search for. A text based search is supported when appending the :text modifier to the parameter name (qualification:text). Otherwise, a combined <system>|<code> value is expected. The system part of the value is optional.


Sample Value: qualification-coding-system|qualification-code



Name:

_count

optional

Type:

formData

Data Type:

integer

Description:

The maximum number of search results to return. If this parameter is not provided or is over 25, the maximum number of returned results will be 25.


Sample Value: 25


Responses


application/json+fhir

200

Returns a FHIR Bundle containing 0..* OperationOutcome resources and 0..* Practitioner resources


application/json+fhir

400

This code is returned when the query contains one or more invalid parameters, e.g using incorrectly formatted identifiers.

Sample Requests

Search by Resource ID
curl -X POST "https://api.orionhealth.io/fhir/1.0/Practitioner/_search" \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <Access Token>' \
-H 'Content-Type: application/x-www-form-urlencoded' \
-d '_id=MRSW23ZOOBZG65TJMRSXEQDDNRUW42LDMFWC24DPOJ2GC3BNOVZWK4Q'
Search by Identifier
curl -X POST "https://api.orionhealth.io/fhir/1.0/Practitioner/_search" \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <Access Token>' \
-H 'Content-Type: application/x-www-form-urlencoded' \
-d 'identifier=clinical-portal-user%7Cdemo.provider'
Search by Demographics
curl -X POST "https://api.orionhealth.io/fhir/1.0/Practitioner/_search" \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <Access Token>' \
-H 'Content-Type: application/x-www-form-urlencoded' \
-d 'name=demo provider' \
-d 'address-city=Latrobe' \
-d 'address-state=PA' \
-d 'specialty=specialty-coding-system%7Cspecialty-code' \
-d 'qualification=qualification-coding-system%7Cqualification-code'

Retrieve a single Practitioner

GET /fhir/1.0/Practitioner/{id}

This method returns the Practitioner resource matching the requested resource ID.


Parameters

Name

Type

Data Type

Description


Name:

id

required

Type:

path

Data Type:

string

Description:

The id of the Practitioner resource


Sample Value: MRSW23ZOOBZG65TJMRSXEQDDNRUW42LDMFWC24DPOJ2GC3BNOVZWK4Q


Responses


application/json+fhir

200

Returns a Practitioner resource matching the the requested resource ID.


application/json+fhir

400

This code is returned when the resource ID is empty or not valid.


application/json+fhir

404

No Practitioner resource found with the requested resource ID.


application/json+fhir

422

The practitioner ID is not in the correct format.

Sample Request

curl -X GET "https://api.orionhealth.io/fhir/1.0/Practitioner/MRSW23ZOOBZG65TJMRSXEQDDNRUW42LDMFWC24DPOJ2GC3BNOVZWK4Q" \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <Access Token>'