Reference: Purge Deleted, Hard Delete, and Subscription Status
Reference of purge-deleted, hard-delete, and Subscription status operations modeled in the current service standard.
Collection purge-deleted operations
The current standard models $purgeDeleted operations (not $purge).
FHIR R4:
- POST /api/fhir/r4/Condition/$purgeDeleted
- POST /api/fhir/r4/Device/$purgeDeleted
- POST /api/fhir/r4/DiagnosticReport/$purgeDeleted
- POST /api/fhir/r4/Encounter/$purgeDeleted
- POST /api/fhir/r4/Endpoint/$purgeDeleted
- POST /api/fhir/r4/Group/$purgeDeleted
- POST /api/fhir/r4/Location/$purgeDeleted
- POST /api/fhir/r4/Observation/$purgeDeleted
- POST /api/fhir/r4/Organization/$purgeDeleted
- POST /api/fhir/r4/Patient/$purgeDeleted
- POST /api/fhir/r4/Practitioner/$purgeDeleted
- POST /api/fhir/r4/PractitionerRole/$purgeDeleted
- POST /api/fhir/r4/Provenance/$purgeDeleted
- POST /api/fhir/r4/RelatedPerson/$purgeDeleted
- POST /api/fhir/r4/ServiceRequest/$purgeDeleted
- POST /api/fhir/r4/Specimen/$purgeDeleted
FHIR R6:
- POST /api/fhir/r6-ballot4/Device/$purgeDeleted
- POST /api/fhir/r6-ballot4/DeviceAssociation/$purgeDeleted
- POST /api/fhir/r6-ballot4/Encounter/$purgeDeleted
- POST /api/fhir/r6-ballot4/Location/$purgeDeleted
- POST /api/fhir/r6-ballot4/Observation/$purgeDeleted
- POST /api/fhir/r6-ballot4/Patient/$purgeDeleted
- POST /api/fhir/r6-ballot4/Practitioner/$purgeDeleted
- POST /api/fhir/r6-ballot4/PractitionerRole/$purgeDeleted
- POST /api/fhir/r6-ballot4/Provenance/$purgeDeleted
- POST /api/fhir/r6-ballot4/Subscription/$purgeDeleted
- POST /api/fhir/r6-ballot4/SubscriptionTopic/$purgeDeleted
Send before as Parameters.parameter.valueDateTime and optional limit as Parameters.parameter.valueInteger in an application/fhir+json FHIR Parameters request body. Do not send these operation inputs as query parameters.
{
"resourceType": "Parameters",
"parameter": [
{ "name": "before", "valueDateTime": "2026-01-01T00:00:00Z" },
{ "name": "limit", "valueInteger": 25 }
]
}
Instance hard-delete operations
Hard delete is modeled as POST /api/fhir/{r4|r6-ballot4}/{Resource}/{rid}/$hardDelete for supported resources in R4 and R6.
See the resource-specific delete-api-fhir-*-hard-delete.dita operation pages for per-resource details.
Subscription status operations (R6)
- GET /api/fhir/r6-ballot4/Subscription/$status
- GET /api/fhir/r6-ballot4/Subscription/{rid}/$status
For collection status requests, optional query parameters include status and id. Repeat id to request multiple logical IDs.
Both operations return a FHIR search-set Bundle containing SubscriptionStatus resources. A request that matches no current Subscription returns HTTP 200 with an empty search-set Bundle. SubscriptionStatus is an operation result, not a separately managed CRUD resource.
Status Codes
| Code | Meaning |
|---|---|
| 200 | The operation completed successfully. Purge-deleted and hard-delete operations return an OperationOutcome; Subscription status operations return a search-set Bundle containing SubscriptionStatus results. |