Data exports

Understand the data sources available for export


Data exports allow you to directly export selected data from the Root platform. You can download export data on demand or schedule regular exports. Scheduled exports can be run on a daily, weekly or monthly basis and can drop files to an SFTP, HTTPS or S3 server. These files can then be consumed by client-side systems for collections, accounting, custom reporting, business intelligence, et cetera.

Each data export relies on an export template. The template is specific to a single product module and data source. Within the template, you can use handlebars to select the fields you'd like to include. When the platform runs the export, this template will be applied to all the data objects included in the data source, and the selected fields will each be included as a separate column in the CSV output file.


The data export tooling on Workbench

This guide describes the data sources available via the export tooling, and includes a data model illustrating how the available data objects (entities) are related. It is important to distinguish between the following two concepts:

  • Data object: An entity stored as a JSON object on the Root platform. For example, a policy, a policyholder and a claim are each stored on Root as a separate data object.
  • Data source: A collection of data objects related to a specific theme. For example, the Applications data source includes the application and policyholder objects. A data export template can only reference fields from those data objects included in the selected data source.

Data sources

The table below lists the data sources that can be selected when creating a new export template. The right-hand column lists the data objects available in each data source.

Data sourceAvailable data objects
ApplicationsApplication, Policyholder
ClaimsClaim, Policyholder, Policy
ComplaintsComplaint, Policyholder, Policy
DebiCheck mandatesDebiCheck mandate, Payment method, Policyholder
Payment methodsPayment method
Payment couponsPayment coupon
PaymentsPayment, Policyholder, Payment method
Payout requestsPayout request, Policyholder, Policy, Claim
PoliciesPolicy, Policyholder
Policy chargesPayment, Policyholder
Policy premiumsPayment, Policyholder

When editing or creating a template, you can view the available data objects and the fields included on each object by opening the "Merge vars" pane on the right-hand side of the screen.



In addition to the data objects listed above, each data export template also allows you to include certain metadata in your export. These metadata objects are included with the other merge variables and can be referenced using handlebars. Three metadata objects are supported, depending on the export type.

Row number

This is simply the row or record number in the CSV output file. You can include the row number using handlebars like this: {{ row_number }}.

Scheduled data export

This object is only relevant for scheduled (not ad hoc) data exports. It includes data on the export schedule and destination for the data export. Please see the scheduled data export object for more details an example.

You can reference the properties of the scheduled data export object using handlebars like this: {{ scheduled_data_export.type }}.

Data export run

This object contains information on the specific run that generated the data export. You can reference properties on this object like this: {{ data_export_run.completed_at }}

data_export_run_idstring. The UUID of the data export run.
scheduled_data_export_idstring. The UUID of the scheduled data export that generated the export run.
created_atstring. The ISO date representing the time that the data export run was created.
completed_atstring. The ISO date representing the time that the data export run was completed.
statusstring. The current status of the data export run. One of [in_progress, failed, complete].
string. The UUID of the data export output file, if successful.
  "data_export_run_id": "34233912-c91f-4dc9-bfed-c10d16be26af",
  "scheduled_data_export_id": "4ab082f2-864e-4bcf-bc17-75664a25f2e1",
  "created_at": "2019-03-09T08:07:59.044Z",
  "completed_at": "2019-03-09T08:08:02.178Z",
  "status": "complete",
  "file_id": "74ce9562-4242-11e9-904a-7b14ba20f082"

Data model

This diagram illustrates the relationships between the various data objects available for export.

Note: This model includes only entities available for export, and does not represent a comprehensive entity relationship diagram for the Root platform. Only a subset of the fields available on each object is shown in the diagram (specifically, the keys of related objects).


A data model for objects available via data exports

Data range

When creating a scheduled or ad hoc data export, you will need to select data range to filter the records in the export. The filter is applied to the created_at field on the data object.

The table below explains how each of the supported date range filters are applied. The table assumes the export is run at 16:00 on 2022-05-17.

Selected data rangeResult
TodayThe export will include entries created between 00:00 and 16:00 on 2022-05-17.
Week to dateThe export will include entries created between 2022-05-15 at 00:00 (the most recent Sunday) and 2022-05-17 at 00:00.
Month to dateThe export will include entries created between 2022-05-01 at 00:00 and 2022-05-17 at 00:00.
FullThe export will include will include all records (unless further filters are applied in the data export template).
Custom (e.g. from 2022-05-16 to 2022-05-17)
Only available for ad hoc exports
The export will include entries created between 2022-05-16 at 00:00 and 2022-05-17 at 00:00.
Since last run
Only available for scheduled exports
The export will include entries created between the date the last run was executed, and 2022-05-17 at 16:00.