This tutorial gives an overview of some of the features of Smile CDR, and it shows you how to manage and configure it for a few basic tasks.
There are three general scenarios to be considered when following this tutorial. While most of what follows is applicable to all three, there will be sections that differ between scenarios or don't apply at all. Take a moment to identify which scenario applies to you, and follow along accordingly.
Public Test Server – Catch this bus if you'll be making use of Smile CDR's Public Test Server's FHIR endpoint at
Self-Hosted Instance – Cycle at your own pace if you'll be working with a Self-Hosted Instance of Smile CDR. By default, your FHIR endpoint's base URL will be
Cloud-Hosted Demo Instance – Ride in style if you've been set up with a Cloud-Hosted Demo Instance of Smile CDR. Use the base URL that you were provided, which should look something like
https://example.smilecdr.com:8000/. Your demo instance of Smile CDR is pre-seeded with the test data and configuration required to complete this tutorial. If you have any questions about the setup or would like your configuration reset, please let us know!
– The rest of this page is only relevant for self-hosted instances. Feel free to keep reading or skip ahead to FHIR Basics!
– Complete this page before before moving on to the next section.
If you haven't already, the first thing to do is to start Smile CDR. From the root directory of your installation, do the following:
$ bin/smilecdr start (...starting messages...) Smile, we are up and running!
The next thing is to sign into the Web Admin Console. This console can be used by administrators to configure almost all aspects of the system. Access the console using the following URL: http://localhost:9100
To log into the console, enter your admin credentials. In a fresh self-hosted instance the username will be
admin, and the password will be
password. You should change these credentials before using Smile CDR in production with real data.
For security and by default, the server will reject anonymous access to the FHIR endpoint. For the purposes of this tutorial, we will enable it.
In the console, click on
User Manager. This will take you to a screen that looks something like the following:
Note the user named
ANONYMOUS. This is the user whose permissions are assessed when an anonymous request is made to the server. If this user does not have the
FHIR Client (Superuser) permission as shown in the screenshot above, do the following:
Modifyto edit the
ROLE_FHIR_CLIENT_SUPERUSER. This role grants the anonymous user the necessary permissions to perform any standard FHIR client operation.
Saveat the top and wait a moment for the change to propagate.
Next we will upload a set of example resources to the server. We will be uploading a collection of generated synthetic data that is realistic enough for the purposes of this tutorial.
Note: Depending on your system, this may take about 20 minutes.
From the root directory of your installation, do the following:
$ bin/smileutil upload-sample-dataset -e http://localhost:8000/ (...uploading...) INFO Upload complete