HealthcareService — detail: care offer directory
A concrete healthcare service delivered by an Organization at a Location: cardiology consultation, pediatric ER, screening centre.
Role in the care offer directory
HealthcareService is the grain of the care offer. Where Organization describes "who" and Location describes "where," HealthcareService describes "what": service type, specialty, available slots, access conditions, appointment policy. This is the resource that populates healthcare facility search engines (FR Annuaire santé, US NPI Registry, etc.).
Key fields
| Field | Cardinality | Role |
|---|---|---|
active | 0..1 | Service open or closed. |
providedBy | 0..1 | Operating Organization. |
category | 0..* | Service category (Adoption, Counselling, ...). |
type | 0..* | Precise SNOMED type. |
specialty | 0..* | Medical specialty. |
location | 0..* | Locations where service is delivered. |
name | 0..1 | Commercial name. |
telecom | 0..* | Contacts. |
eligibility | 0..* | Access conditions. |
appointmentRequired | 0..1 | Appointment required. |
availableTime | 0..* | Opening hours (days, ranges). |
notAvailable | 0..* | Exceptional closures. |
eligibility and conditions
The eligibility block describes who may access the service: "children
under 18 only," "referral by primary care physician required (coordinated care
pathway)," "long-term-condition status required." Text field with code and
comment.
Example: cardiology consultation
{
"resourceType": "HealthcareService",
"id": "consultation-cardio-saint-louis",
"active": true,
"providedBy": { "reference": "Organization/hopital-saint-louis" },
"category": [{
"coding": [{
"system": "http://terminology.hl7.org/CodeSystem/service-category",
"code": "8",
"display": "Counselling"
}]
}],
"type": [{
"coding": [{ "system": "http://snomed.info/sct", "code": "394579002", "display": "Cardiology" }]
}],
"specialty": [{
"coding": [{ "system": "http://snomed.info/sct", "code": "394579002", "display": "Cardiology" }]
}],
"location": [{ "reference": "Location/cardio-3rd-floor" }],
"name": "Cardiology consultation — Saint-Louis Hospital",
"comment": "Outpatient consultations by appointment only.",
"telecom": [{
"system": "phone",
"value": "+33142495252",
"use": "work"
}],
"eligibility": [{
"code": { "text": "Referral by primary care physician required (coordinated care pathway)" }
}],
"appointmentRequired": true
} Common pitfalls
- Confusion with Location — Location = the room / building; HealthcareService = the service taking place there.
- Missing category — without
category, the service is not filterable in directory engines. - No specialty — for medical services,
specialtyis crucial for matching against patient needs. - Overly generic availableTime — prefer multiple blocks per weekday rather than a single catch-all block.