Microreact
Last updated
Last updated
is a tool for open data visualization and sharing for genomic epidemiology.
It is possible to integrate Epicollect5 with Microreact using as a bridge between the two platforms.
We are going to use the as an example. The project must be public.
Using the Epicollect5 API endpoints, we can get all the entries (1000 at a time) for that project using the following URL: ()
https://five.epicollect.net/api/export/entries/ec5-demo-project?format=csv&headers=false&per_page=1000
We are passing a few parameters:
format=csv
as we need the entries in csv format.
headers=false
as we do not want the column headers. We are going to use custom headers to fit .
per_page=1000
to get the maximum number of entries on a single request (1000)as export responses are paginated. Google Sheets could give an error if requesting too many entries though.
We created a public viewable spreadsheet .
The first thing to do is to leave the first row empty for the time being, and click on cell A2.
We are going to use the following formula in that cell:
=IMPORTDATA("https://five.epicollect.net/api/export/entries/ec5-demo-project?format=csv&headers=false&per_page=1000")
passing the URL described above. \
Now it is time to add the custom headers. Microreact requires a column id
to uniquely identify each row. With data coming from Epicollect5, that will always be the most left column.
You can use a downloaded csv from Epicollect5 as a reference if you do not remember your headers. After adding them manually, we have:
Important: if you have Date or Time questions, you have to set the format for those columns, otherwise by default they get converted to numbers (Google trying to be smart here).
To do that, select the Date or Time columns, click on Format > Number and pick Date or Time.
Now the sheet is ready to be published. Go to File > Publish to the web...
It needs to be published as comma-separated values (csv) and we need to grab the generated link to use on Microreact
To refresh the data set automatically (so when new entries are added to Epicollect5, they appear on the sheet) we can set an auto refresh to one minute or one hour. Go to File > Spreadsheet settings
On the calculation tab, select "On change and every minute" (or hour)
We are ready to head off to Microreact with the url we just generated:
https://docs.google.com/spreadsheets/d/1akzXZRR-aQYwv12d0TMKtWGeWPrOajFGp3QzLQttZwE/pub?output=csv
Please notice the "output=csv". If your url does not have that, check your publish settings.
Paste the project url where it says CSV file and click on "Continue (without tree)"
Enter some basic project details and click on "Create Project"
The project is generated!
The URL to get the entries for a public project is always the same, just the project slug will be different. For another project, we would just need to replace theec5-demo-project
slug with the new one. You can find each project slug in the of your project details page, or by just looking at the URL in your browser on your project home page.
We also need to specify latitude
and longitude
columns if we want to view the data on a map.
On the , click Upload:
The project is currently hosted at