Skip to main content

Immunization

Overview

The Immunization resource represents vaccination records and immunization history within the Provider Patient Access API. It provides comprehensive information about vaccines administered to patients, including vaccine details, administration dates, and healthcare providers involved.

Key Use Cases:

  • Retrieve patient vaccination history
  • Access immunization records for care coordination
  • Support public health reporting requirements
  • Track vaccine compliance and schedules

Relationships to Other Resources:

  • Patient - The individual who received the immunization
  • Practitioner - Healthcare provider who administered the vaccine
  • Organization - Healthcare organization where immunization occurred
  • Encounter - Healthcare encounter during which immunization was given

Resource Schema

Key fields in the Immunization resource:

{
"resourceType": "Immunization",
"id": "string",
"status": "completed|entered-in-error|not-done",
"vaccineCode": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/cvx",
"code": "207",
"display": "COVID-19, mRNA, LNP-S, PF, 30 mcg/0.3 mL dose"
}
]
},
"patient": {
"reference": "Patient/patient-123"
},
"occurrenceDateTime": "2023-10-15T10:30:00Z",
"recorded": "2023-10-15T10:35:00Z",
"primarySource": true,
"location": {
"reference": "Location/location-456"
},
"manufacturer": {
"display": "Pfizer-BioNTech"
},
"lotNumber": "ABC123",
"expirationDate": "2024-06-30",
"site": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v3-ActSite",
"code": "LA",
"display": "left arm"
}
]
},
"route": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration",
"code": "IM",
"display": "Injection, intramuscular"
}
]
},
"doseQuantity": {
"value": 0.3,
"unit": "mL",
"system": "http://unitsofmeasure.org",
"code": "mL"
},
"performer": [
{
"function": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v2-0443",
"code": "AP",
"display": "Administering Provider"
}
]
},
"actor": {
"reference": "Practitioner/practitioner-789"
}
}
],
"reasonCode": [
{
"coding": [
{
"system": "http://snomed.info/sct",
"code": "840539006",
"display": "Disease caused by severe acute respiratory syndrome coronavirus 2"
}
]
}
]
}

Key Fields:

  • status - Current status of the immunization
  • vaccineCode - Type of vaccine administered
  • patient - Reference to the patient who received the immunization
  • occurrenceDateTime - When the immunization occurred
  • performer - Healthcare provider who administered the vaccine

Operations

Read

Retrieve a specific immunization by ID.

GET /Immunization/{id}
Example Request
curl -X GET https://fhir.netsmartcloud.com/provider/patient-access/v2/{tenant-id}/Immunization/immunization-123 \
-H "Accept: application/fhir+json"

Search for immunizations using various criteria.

GET Method

Use GET for simple searches with parameters in the query string.

GET /Immunization?parameter=value

POST Method

Use POST for complex searches with form-encoded parameters.

POST /Immunization/_search

Search Parameters

Patient-based Search:

ParameterTypeRequiredDescriptionExample
patientreferenceYesREQUIRED The patient for the vaccination recordpatient=Patient/patient-123
datedateNoVaccination (non)-Administration Datedate=2023-10-15
performerreferenceNoThe practitioner or organization who played a role in the vaccinationperformer=Practitioner/practitioner-789
statustokenNoImmunization event statusstatus=completed
_lastUpdateddateNoWhen the resource version was last updated_lastUpdated=ge2023-01-01
_revincludespecialNoInclude resources that reference this immunization_revinclude=Provenance:target

ID-based Search:

ParameterTypeRequiredDescriptionExample
datedateNoVaccination (non)-Administration Datedate=2023-10-15
performerreferenceNoThe practitioner or organization who played a role in the vaccinationperformer=Practitioner/practitioner-789
statustokenNoImmunization event statusstatus=completed
_lastUpdateddateNoWhen the resource version was last updated_lastUpdated=ge2023-01-01
_revincludespecialNoInclude resources that reference this immunization_revinclude=Provenance:target

Common Search Patterns

Find immunizations for a patient:

GET /Immunization?patient=Patient/patient-123&_count=10

Search by date range:

GET /Immunization?patient=Patient/patient-123&date=ge2023-01-01&date=le2023-12-31

Find by performer:

GET /Immunization?patient=Patient/patient-123&performer=Practitioner/practitioner-789

Search by status:

GET /Immunization?patient=Patient/patient-123&status=completed

Find recently updated records:

GET /Immunization?patient=Patient/patient-123&_lastUpdated=ge2023-10-01

Examples

Request Examples

Search by patient
curl -X POST https://fhir.netsmartcloud.com/provider/patient-access/v2/{tenant-id}/Immunization/_search \
-H "Accept: application/fhir+json" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "patient=Patient/patient-123&_count=10"
Search by date range
curl -X POST https://fhir.netsmartcloud.com/provider/patient-access/v2/{tenant-id}/Immunization/_search \
-H "Accept: application/fhir+json" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "patient=Patient/patient-123&date=ge2023-01-01&date=le2023-12-31"
Search by performer
curl -X POST https://fhir.netsmartcloud.com/provider/patient-access/v2/{tenant-id}/Immunization/_search \
-H "Accept: application/fhir+json" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "patient=Patient/patient-123&performer=Practitioner/practitioner-789"

Response Examples

Successful Search Response

Immunization Search Bundle
{
"resourceType": "Bundle",
"type": "searchset",
"total": 2,
"entry": [
{
"resource": {
"resourceType": "Immunization",
"id": "immunization-123",
"status": "completed",
"vaccineCode": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/cvx",
"code": "207",
"display": "COVID-19, mRNA, LNP-S, PF, 30 mcg/0.3 mL dose"
}
]
},
"patient": {
"reference": "Patient/patient-123"
},
"occurrenceDateTime": "2023-10-15T10:30:00Z",
"recorded": "2023-10-15T10:35:00Z",
"primarySource": true,
"manufacturer": {
"display": "Pfizer-BioNTech"
},
"lotNumber": "ABC123",
"expirationDate": "2024-06-30",
"site": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v3-ActSite",
"code": "LA",
"display": "left arm"
}
]
},
"route": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration",
"code": "IM",
"display": "Injection, intramuscular"
}
]
},
"doseQuantity": {
"value": 0.3,
"unit": "mL",
"system": "http://unitsofmeasure.org",
"code": "mL"
},
"performer": [
{
"function": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v2-0443",
"code": "AP",
"display": "Administering Provider"
}
]
},
"actor": {
"reference": "Practitioner/practitioner-789"
}
}
]
}
}
]
}

Individual Immunization Response

Single Immunization Resource
{
"resourceType": "Immunization",
"id": "immunization-456",
"status": "completed",
"vaccineCode": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/cvx",
"code": "141",
"display": "Influenza, seasonal, injectable"
}
]
},
"patient": {
"reference": "Patient/patient-123"
},
"occurrenceDateTime": "2023-09-20T14:15:00Z",
"recorded": "2023-09-20T14:20:00Z",
"primarySource": true,
"manufacturer": {
"display": "Sanofi Pasteur"
},
"lotNumber": "FLU2023-456",
"expirationDate": "2024-07-31",
"site": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v3-ActSite",
"code": "RA",
"display": "right arm"
}
]
},
"route": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration",
"code": "IM",
"display": "Injection, intramuscular"
}
]
},
"doseQuantity": {
"value": 0.5,
"unit": "mL",
"system": "http://unitsofmeasure.org",
"code": "mL"
},
"performer": [
{
"function": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v2-0443",
"code": "AP",
"display": "Administering Provider"
}
]
},
"actor": {
"reference": "Practitioner/practitioner-456"
}
}
],
"reasonCode": [
{
"coding": [
{
"system": "http://snomed.info/sct",
"code": "6142004",
"display": "Influenza"
}
]
}
]
}

Empty Result Set

No Immunizations Found
{
"resourceType": "Bundle",
"type": "searchset",
"total": 0,
"entry": []
}

Integration Patterns

Common Workflows

1. Patient Immunization History

# Step 1: Get all immunizations for patient
GET /Immunization?patient=Patient/patient-123

# Step 2: Filter by date range for recent vaccines
GET /Immunization?patient=Patient/patient-123&date=ge2023-01-01

# Step 3: Get specific immunization details
GET /Immunization/immunization-123

2. Vaccine Compliance Check

# Step 1: Get patient demographics
GET /Patient/patient-123

# Step 2: Get immunization history
GET /Immunization?patient=Patient/patient-123&status=completed

# Step 3: Check for specific vaccine types
GET /Immunization?patient=Patient/patient-123&vaccine-code=207
  • Patient - The individual who received the immunization
  • Practitioner - Healthcare provider who administered the vaccine
  • Organization - Healthcare organization where immunization occurred
  • Encounter - Healthcare encounter during which immunization was given

Include Parameters

Use _include and _revinclude to fetch related resources:

# Get immunizations with patient details
GET /Immunization?patient=Patient/patient-123&_include=Immunization:patient

# Get immunizations with performer details
GET /Immunization?patient=Patient/patient-123&_include=Immunization:performer

Error Handling

The Immunization resource follows standard FHIR error handling patterns. For detailed error responses and troubleshooting guidance, see the Common Errors page.

Immunization-Specific Error Scenarios

  • 404 Not Found: Immunization ID doesn't exist or record is not accessible
  • 400 Bad Request: Invalid search parameters or malformed date formats
  • Empty Results: No immunizations match the search criteria

Troubleshooting Tips

  • No Results for Patient: Verify patient reference format and ensure patient exists
  • Date Format Issues: Ensure dates are in YYYY-MM-DD or ISO 8601 format
  • Performer Problems: Verify practitioner/organization references are valid
  • Performance Issues: Use _count parameter to limit result sets

Supported Profiles