Convert - Combine FHIR Bundles (R4)

POST /convert/v1/combinefhirr4bundles/:patientID

This operation aggregates information retrieved from prior Convert API requests into a single entry.

Inputs and Outputs

The input is a newline-delimited JSON list of FHIR R4 Bundles, with each entry a bundle retrieved from the conversion operations.

The output is a single FHIR R4 Bundle containing the merged data from the input. OperationOutcomes from the input bundles are not carried forward. The combined bundle will contain a new OperationOutcome resource detailing the results (including warnings or errors) of the conversion process.

Processing Considerations

The following nuances should be considered when using the Combine Bundles API:

Demographic Reconciliation

When there are conflicts in demographic data, the system will attempt to reconcile the values. For demographics that support multiple values (such as names, addresses, and telephone numbers), the value from the most recent bundle will be used as the current value. Others will be designated as prior values. For demographics that support only a single value, the system will store an ‘unknown’ code (e.g., gender) or blank value (e.g., race) if it cannot resolve the conflict.

Identifier Propagation

Whenever possible, the system maintains continuity of resource identifiers between the inputs and outputs. This allows traceability from the combined FHIR bundle back to the original records.

Example

Try It
Try out the operations, with examples, in the Developer Portal Sandbox.
Sample Input
{"resourceType":"Bundle","type":"searchset","entry":[...]}
{"resourceType":"Bundle","type":"searchset","entry":[...]}

FHIR Bundles are verbose, so the output below just shows a small sample to illustrate how the data is structured. For a more complete example, try out the API in the Developer Portal Sandbox, or refer to the FHIR Specification.

Sample Output
{
  "resourceType": "Bundle",
  "type": "searchset",
  "entry": [
    {
      "resource": {
        "resourceType": "Patient",
        ... (patient fields)
      }
    },
    {
      "resource": {
        "resourceType": "Encounter",
        ... (encounter fields)
      }
    },
    ...
    {
      "resource": {
        "resourceType": "OperationOutcome",
        "issue": [
          ... (any processing issues)
      }
    }
  ]
}