Skip to main content

Installing a New FHIR Server

Important:

This is prerelease documentation. The features described are subject to change and may not yet be available for use.

To install a new FHIR server:

Installing a New FHIR Server from FHIR Server Management

The FHIR Server Management page allows you to install a new FHIR server. A FHIR server must be first be installed, only then can it be configured.

To install a new FHIR server:

  1. Open the FHIR Server Management page.

  2. Click the + Add new server tile.

  3. Fill out the basic configuration pane as follows:

    Namespace

    Select the name of your healthcare-enabled namespace from the dropdown.

    Name

    Enter a name for your new FHIR server. Name is a required field when configuring a FHIR server on the FHIR Server Management page.

    FHIR Version

    Select a core FHIR package from the FHIR Version dropdown.

    Each package corresponds to a version of the HL7® FHIR® standard. So, for example, to configure a FHIR endpoint that supports FHIR R5, select the hl7.fhir.r5.core@5.0.0 package.

    Choosing the core FHIR package automatically populates the URL field with an appropriate endpoint.

    URL

    An endpoint URL is automatically generated when you choose a FHIR version. You can edit the endpoint’s URL if desired, but ensure that it begins with a forward-slash (/).

    Custom Packages

    From the dropdown, select any custom packages that you want your endpoint to support.

  4. Select a Data Organization Strategy and a database architecture.

    Expand the Advanced Configuration pane of the dialog and configure the following settings:

    Note:

    Additional configuration options become available in the Advanced Configuration pane once you complete the FHIR server installation procedure.

    Data Organization Strategy

    Select an interaction strategy from the dropdown.

    Use Namespace default database

    Each FHIR server has a resource database and a resource history database. The default location for each of these databases is in a subfolder of the /mgr/ folder of your installation. If you select this checkbox, you can enter a custom location for each database in the Resource Database Location and Resource History Database Location fields.

    Note:

    Because a FHIR repository can grow to a very large size, the FHIR server has a database expansion strategy built in. On disk, the FHIR resource database begins with an iris.dat file in a folder named:

    resourceDatabaseLocation/FHIRServerNamespaceX001R

    Upon expansion, additional folders containing iris.dat files are created with names that increment the number, for example:

    MYFHIRSERVERX002R

    Similarly, the first folder for a FHIR resource history database is named:

    resourceHistoryDatabaseLocation/FHIRServerNamespaceX001V

    Resource Database/Resource History Database

    If you did not select the default location for the FHIR server’s databases, edit the locations indicated in the Resource Database Location and Resource History Database Location fields. The resource history database contains previous versions of a resource; because these are not accessed as frequently, you could put this database on a slower, less expensive disk.

  5. Select your Interaction Strategy Settings.

    Which options appear under Interaction Strategy Settings in the Advanced Configuration pane depend upon which interaction strategy you selected under Data Organization Strategy. The list below describes the options available across all interaction strategies. You may see only a subset of these options in your FHIR server.

    Select values for the options that appear in the dialog, which may include:

    SMART on FHIR Capabilities

    Specify the server’s SMART on FHIR capabilities by entering them as a comma-delimited list into this field. This list does not control the functionality of the endpoint; rather, it specifies the capabilities that are returned in the JSON document when a client appends /.well-known/smart-configuration to the endpoint’s URL. For example:

    launch-ehr, context-ehr-patient, permission-patient, client-public, client-confidential-symmetric
    

    For more details about SMART on FHIR capabilities retrieved with Well-Known URIs, see FHIR Authorization Endpoint and Capabilities Discovery using Well-Known Uniform Resource Identifiers (URIs)Opens in a new tab.

    Silence search parameter indexing errors

    Select this option to prevent search parameter indexing errors from aborting FHIR resource save.

    Caution:

    Enable this setting only when strictly necessary.

    Prematurely limit the number of resources...with _max_results

    Select this option to make FHIR search queries more efficient by adding a SQL operation TOP N where N is the value of the _maxresults search result parameter.

    Caution:

    Use this setting only if you do not have PostProcessSearch() logic, since post processing filters could remove some or all of the hits from the results set, leading the query to return a number of hits fewer than _maxresults.

    Refer to the hovertext for the field on the FHIR Server Management page for additional discussion of the trade-offs in selecting this option.

    Disable FHIR Audit

    Select this option to disable FHIR auditing for this endpoint.

    Create Provenance Resources

    In a HealthShare ODS, select this option to create Provenance resources for each new record in the ODS.

    Functional List Configuration

    Note:

    The Functional List Configuration field displays only for FHIR endpoints that use or extend the HS.FHIRServer.Storage.JsonAdvSQL.InteractionsStrategy data organization strategy.

    Comma-delimited string of configurations for functional lists. Each list element is a colon-delimited string of three items:

    • functional list name — the names available in the default interactions strategy are:

      • $current-problems

      • $current-medications

      • $current-allergies

      • $current-drug-allergies

    • list subject search parameter — can be patient, subject, or source

    • list subject resource type — for example, Patient

    The default value is:

    $current-problems:patient:Patient, 
    $current-medications:patient:Patient, 
    $current-allergies:patient:Patient, 
    $current-drug-allergies:patient:Patient
    
  6. Click Create to create the server and its associated endpoint. To start over instead, click Cancel.

It takes several minutes to create a FHIR server. When the configuration is complete, additional configuration options relating to authorization and requests become available.

As part of creating a new FHIR endpoint, an external server named FHIR_Validation_Server is created to perform back-end functions related to profile validation.

Important:

If you expect to post Bundles containing 10,000 or more entries, you should increase the value of the Web Gateway Server Response Timeout parameter to avoid server timeouts interrupting your data loads.

FeedbackOpens in a new tab