9  Reports

To export reports via API you will need the ‘Report ID’ of your desired report. You can find the ‘Report ID’ of the report you want to export by going into your REDCap project and selecting ‘Data Export, Reports, and Stats’, then ‘My Reports & Exports’.

9.1 Exporting Raw Reports

In this example, we will export the ‘Cases in October 2023’ report as seen in the image above.

redcap_report()

%%capture
%%R
cases_oct_2023 <- redcap_report(
    redcap_uri = url, 
    token = token, 
    report_id = 2178
)$data

export_report()

project.export_report(report_id='2178', format_type='df', raw_or_label='raw').reset_index().head(7)
record_id redcap_event_name redcap_repeat_instrument redcap_repeat_instance first_name last_name phone_num zip_code dob age ... symptoms_yesno symptom_onset symptoms_exp symptom_notes test_yesno test_positive_yesno test_positive_date test_upload prior_covid_yesno prior_covid_date
0 1 notifications_arm_1 NaN NaN NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
1 1 personal_info_arm_1 NaN NaN John Doe (999) 999-9999 98105.0 2006-04-11 18.0 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
2 1 case_intake_arm_1 NaN 1.0 NaN NaN NaN NaN NaN NaN ... 1.0 2023-10-09 1,2,7 NaN 1.0 1.0 2023-10-10 test_api_export_image.png 0.0 NaN
3 2 notifications_arm_1 NaN NaN NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
4 2 personal_info_arm_1 NaN NaN Jane Doe (999) 999-9999 98105.0 1994-06-29 29.0 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
5 2 case_intake_arm_1 NaN 2.0 NaN NaN NaN NaN NaN NaN ... 1.0 2021-06-05 1,2,3,4,5,7,8,9 NaN 1.0 1.0 2021-06-07 test_api_export_pdf.pdf 0.0 NaN
6 2 case_intake_arm_1 NaN 1.0 NaN NaN NaN NaN NaN NaN ... 1.0 2023-10-11 1,2,8 NaN 1.0 1.0 2023-10-12 test_api_export_pdf.pdf 1.0 2021-06-06

7 rows × 23 columns

9.2 Exporting Labeled Reports

Reports can also be exported as labeled data.

%%capture
%%R
cases_oct_2023_labeled <- redcap_report(
    redcap_uri = url, 
    token = token,
    report_id = 2178, 
    raw_or_label = 'label'
)$data

project.export_report(report_id='2178', format_type='df', raw_or_label='label').reset_index().head(7)
record_id redcap_event_name redcap_repeat_instrument redcap_repeat_instance first_name last_name phone_num zip_code dob age ... symptoms_yesno symptom_onset symptoms_exp symptom_notes test_yesno test_positive_yesno test_positive_date test_upload prior_covid_yesno prior_covid_date
0 1 Notifications NaN NaN NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
1 1 Personal Info NaN NaN John Doe (999) 999-9999 98105.0 2006-04-11 18.0 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
2 1 Case Intake NaN 1.0 NaN NaN NaN NaN NaN NaN ... Yes 2023-10-09 Sore Throat,Cough,Congestion NaN Yes Yes 2023-10-10 test_api_export_image.png No NaN
3 2 Notifications NaN NaN NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
4 2 Personal Info NaN NaN Jane Doe (999) 999-9999 98105.0 1994-06-29 29.0 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
5 2 Case Intake NaN 2.0 NaN NaN NaN NaN NaN NaN ... Yes 2021-06-05 Sore Throat,Cough,Shortness of Breath,Chest Pa... NaN Yes Yes 2021-06-07 test_api_export_pdf.pdf No NaN
6 2 Case Intake NaN 1.0 NaN NaN NaN NaN NaN NaN ... Yes 2023-10-11 Sore Throat,Cough,Fever NaN Yes Yes 2023-10-12 test_api_export_pdf.pdf Yes 2021-06-06

7 rows × 23 columns

Note: Exporting labeled headers only works when format_type='csv'. See Section 20.4 for more information.