Skip to content

PractitionerRole

Overview

The PractitionerRole resource links practitioners to organizations, locations, and specialties. It describes the roles a practitioner plays at an organization, including their specialty, location, and availability.

FHIR R4 Specification

See the official HL7 specification: https://hl7.org/fhir/R4/practitionerrole.html

Supported Fields

Field Type Description
id string Logical ID of the resource
meta Meta Resource metadata including versionId and lastUpdated
identifier Identifier[] Business identifiers
active boolean Whether role is currently active
period Period Period during which role is valid
practitioner Reference(Practitioner) The practitioner
organization Reference(Organization) The organization
code CodeableConcept[] Role codes (doctor, nurse, etc.)
specialty CodeableConcept[] Medical specialties
location Reference(Location)[] Practice locations
healthcareService Reference(HealthcareService)[] Services provided
telecom ContactPoint[] Role-specific contact info
availableTime BackboneElement[] Times available
notAvailable BackboneElement[] Times not available
availabilityExceptions string Exceptions to availability

Search Parameters

Parameter Type Description Example
_id token Resource ID _id=pr-001
identifier token Business identifier identifier=PR-12345
practitioner reference Practitioner reference practitioner=Practitioner/123
organization reference Organization reference organization=Organization/456
role token Role code role=doctor
specialty token Specialty code specialty=394814009
active token Active status active=true
location reference Location reference location=Location/789
telecom token Contact information telecom=555-1234
date date Period start date date=ge2024-01-01

Examples

Create a PractitionerRole

curl -X POST http://localhost:8080/baseR4/PractitionerRole \
  -H "Content-Type: application/fhir+json" \
  -d '{
    "resourceType": "PractitionerRole",
    "active": true,
    "period": {"start": "2020-01-01"},
    "practitioner": {
      "reference": "Practitioner/practitioner-001",
      "display": "Dr. Jane Smith"
    },
    "organization": {
      "reference": "Organization/organization-001",
      "display": "General Hospital"
    },
    "code": [{
      "coding": [{
        "system": "http://terminology.hl7.org/CodeSystem/practitioner-role",
        "code": "doctor",
        "display": "Doctor"
      }]
    }],
    "specialty": [{
      "coding": [{
        "system": "http://snomed.info/sct",
        "code": "394814009",
        "display": "General practice"
      }]
    }],
    "location": [{
      "reference": "Location/location-001",
      "display": "Main Building"
    }],
    "telecom": [
      {"system": "phone", "value": "555-123-4567", "use": "work"},
      {"system": "email", "value": "dr.smith@hospital.org"}
    ],
    "availableTime": [{
      "daysOfWeek": ["mon", "tue", "wed", "thu", "fri"],
      "availableStartTime": "08:00:00",
      "availableEndTime": "17:00:00"
    }]
  }'

Search PractitionerRoles

# By practitioner
curl "http://localhost:8080/baseR4/PractitionerRole?practitioner=Practitioner/123"

# By organization
curl "http://localhost:8080/baseR4/PractitionerRole?organization=Organization/456"

# By specialty
curl "http://localhost:8080/baseR4/PractitionerRole?specialty=http://snomed.info/sct|394814009"

# Active roles
curl "http://localhost:8080/baseR4/PractitionerRole?active=true"

# Combined: active roles at specific organization
curl "http://localhost:8080/baseR4/PractitionerRole?organization=Organization/456&active=true"

With _include

# Include practitioner
curl "http://localhost:8080/baseR4/PractitionerRole?_include=PractitionerRole:practitioner"

# Include organization
curl "http://localhost:8080/baseR4/PractitionerRole?_include=PractitionerRole:organization"

# Include location
curl "http://localhost:8080/baseR4/PractitionerRole?_include=PractitionerRole:location"

Role Codes

Code Display
doctor Doctor
nurse Nurse
pharmacist Pharmacist
researcher Researcher
teacher Teacher/Educator
ict ICT Professional

Common Specialties (SNOMED CT)

Code Display
394814009 General practice
394802001 General medicine
394579002 Cardiology
394585009 Obstetrics and gynecology
394537008 Pediatrics
394576009 Surgery