Skip to content

Practitioner Role


PractitionerRole covers the recording of the location and types of services that Practitioners are able to provide for an organization.

The role, specialty, Location telecom and HealthcareService properties can be repeated if required in other instances of the PractitionerRole. Some systems record a collection of service values for a single location, others record the single service and the list of locations it is available. Both are acceptable options for representing this data. Where availability, telecom, or other details are not the same across all healthcare services, or locations a separate PractitionerRole instance should be created.

Each Practitioner supports next elements:

  • an associated organization
  • an associated practitioner
  • a role
  • a specialty
  • an associated location
  • contact information
  • a communication endpoint

Profile specific implementation guidance:

  • At least one of the following elements must be present:
  • PractitionerRole.practitioner
  • PractitionerRole.organization
  • PractitionerRole.healthcareService
  • PractitionerRole.location
  • The PractitionerRole.endpoint is where a Direct address may be represented.
  • Clients can request servers return the Practitioner resource and Endpoint resources by using _include.

Must support elements, mandatory and optional search parameters

Practitioner must support these elements:

  • practitioner
  • organization
  • code
  • specialty
  • location
  • telecom
  • system
  • value
  • endpoint

PractitionerRole response will be provided in JSON (refers to Capability Statement) format as per FHIR standard R4 version.

The following search parameters and search parameter combinations SHALL be supported (mandatory):

The syntax used to describe the interactions is described here.

SHALL support searching practitioner role by specialty using the specialty search parameter: - including optional support for these _include parameters: PractitionerRole:endpoint,PractitionerRole:practitioner

GET [base url]/PractitionerRole?specialty={system|}[code]

SHALL support searching practitioner role by practitioner name and identifier using chained parameters using the practitioner search parameter:

  • including support for these chained parameters: practitioner.identifier,
  • including optional support for these _include parameters: PractitionerRole:endpoint,PractitionerRole:practitioner
GET [base]/PractitionerRole?practitioner={Type/}[id]

The response to any search operation is always a list of resources in a Bundle or an Operation Outcome.

PractitionerRole By Specialty

Search for PractitionerRole by specialty.


GET [base url]/PractitionerRole?specialty={system|}[code]


  • [base url] - FHIR base url
  • {system|} - The system for the specialty, e.g.
  • {code} - specialty code in the system, e.g. 208D0000X


The Authorization token SHALL be obtained during Authentication and Authorization process. Goto Authentication and Authorization for further details.

Header Type Required/Optional Value
Authorization string required 'Bearer'


Code Description Comment
200 OK The request was processed successfully
400 Bad request Invalid request parameters or FHIR operation outcome resource returned
401 Unauthorized This code indicates that the client request has not been completed because it lacks valid authentication credentials for the requested resource
404 no Route matched with those values The request was able to communicate with a given server, but the server could not find what was requested
500 Internal Server Error The server has encountered a situation it doesn't know how to handle


curl --location --request GET '|208D0000X' \
--header 'Authorization: Bearer fe1cd986-1ac7-4c26-b8b3-d632a48408fd'