FHIR Bulk Data Access Workflow

The FHIR Bulk Data workflow provides a standardized way of accessing large amounts of healthcare data at once. The Bulk Data process is sometimes referred to as an Export and is intended for backend-clients only. This means that a client will need system level scopes to be authorized for Bulk Data access. In order to initiate a Bulk Data Request, the client will need to obtain an access token. This will need to be done through the token endpoint. Please see for details on backend systems authorization workflow. After obtaining an access token, the client can make a request to the export endpoint. A Group ID is required in the request and is associated to a list of Patient IDs for the export group. An example request is shown below:


If this is a successful request, the content-location header will be returned in the response. This endpoint should be polled until a 200 response is returned. While the export process is running, 202 responses will be returned instead. When a 200 response is returned from the status endpoint (endpoint specified in the content-location header), the response body will have a list of URLs for each resource type that was requested. The client will then go to each of those URLs to view/download each file.

After a bulk data request has been started, a client may decide to cancel the request or may want to delete the data stored if no longer needed. To do this, the client must send a delete request to the URL provided in the Content-Location header. A response with an HTTP Status Code of "202 Accepted" will be returned and the API will delete the files.