The REDCap Admin Dashboard provides a number of reports on various project and user metadata in a sortable, filterable table view. Additional user-defined reports can be included via custom SQL queries or generated by joining data across multiple REDCap projects. This data can also be downloaded as a CSV formatted file (as well as other delimited formats) and reports can optionally be shared with non-admin users in a limited format or requested externally via API calls.
The following reports are included by default:
- Projects by User (List of all users and the projects to which they have access)
- Users by Project (List of all projects and the users which have access)
- Research Projects (List of all projects that are identified as being used for research purposes)
- Development Projects (List of all projects that are in Development status)
- All Projects (List of all projects)
- External Modules by Project (List of External Modules and the projects they are enabled in)
- My Recent Projects (List of projects recently accessed by the currently logged in user)
Each report configuration is stored as a record in a dedicated REDCap project.
After downloading and enabling this module on your REDCap instance, a link to the Admin Dashboard will appear at the bottom of the Control Center sidebar. A REDCap project (created with the included template) is required before the module can properly function. Once the module is enabled on the template project, setup is complete.
NOTE: The first time this module is enabled at the project level, that project will be linked as the configuration source. Enabling on additional projects is possible (and necessary, if using the "Project Sync" feature), but the configuration PID will not change. If you need to switch to another PID for some reason, the config PID should be set to NONE in the module's system settings and enabled on the new project shortly after. The project template requires some extra customizations that are only applied under these circumstances (enabling at the project level while config PID is set to NONE).
Export options can be found in the top right corner (above the report title), though they may be hidden on a per-report, per-user (if accessed via Executive Dashboard), or per-project (if accessed via Project Sync) basis by setting the relevant option in report config. Report results can be downloaded in CSV format, JSON format, or simply copied directly to your clipboard. Exports will include all data regardless of paging, but it will also respect any active filtering.
Each report is stored as a separate record in the Admin Dashboard's configuration project. This allows for easy management, ensures any config/access changes are logged, and allows custom reports to be easily imported/exported for backup purposes or even shared with other institutions. Reports are organized into two arms, "SQL Queries" and "Project Joins", which have slightly different config options. Below is a brief description of each instrument and what options are available within them.
- Report Details: Basic metadata (report title, icon, description) and visibility settings (should the report appear in the navigation bar, should it be nested inside a folder, etc).
- SQL Query: Stores the SQL query to be run every time this report is loaded. It must be run via the "Test Query" button and saved after successfully returning results, or it will not function properly when run from the Admin Dashboard. The "Generate Column Formatting?" option will create per-column instances in the Column Formatting instrument.
- Column Formatting: A repeatable instrument containing an instance for each column returned from the SQL query. This allows each column to be customized in a number of ways: adding filters, converting results into links (e.g. project titles can be clicked to open the related project), converting common coded results into their label equivalents (e.g. project statuses), and more.
- Project Join Info: A repeatable instrument containing an instance per project ID. When this report is run, data from all projects included in the will be returned and "joined" on a chosen variable. A REDCap report ID can be optionally included to only return a subset of a project's data.
The User Access section is available in both arms and all forms are completely optional. By default, there is no way for non-superuser accounts to access Admin Dashboard reports. These instruments allow more flexibility in report access, even to non-admin users. In "Executive Dashboard" and "Project Sync" views, any column formatting that converts results into links will be ignored.
- Executive Dashboard: A repeatable instrument that can grant a user access to the "Executive Dashboard". This is considered a legacy option, and it is recommended to use the "Project Sync" feature instead, as it leverages REDCap's built-in User Rights handling for easier management.
- Project Sync: A repeatable instrument that can grant user access at the project-level. This additionally requires the Admin Dashboard module to be enabled at the project-level, and any "synced" reports (up to 5) will be available as links in the project sidebar.
- API Endpoint: This instrument allows any user with a valid API token for the Admin Dashboard config project to request report data via POST request.
NOTE: It is not recommended to edit/delete the default reports as they can be helpful examples to reference when creating your own custom reports. If you do not wish to use them, you can change their visibility settings to not appear in the Admin Dashboard's navigation bar.
- Project ID of report configuration project: This must be set for the Admin Dashboard to function. The configuration project must also use the included template.
- Use versionless URLs for easier bookmarking: This option uses REDCap's API endpoint to make URLs shorter and not require a specified version number (which would normally break bookmarks post-upgrade). This should be ideal for most users, but due to known issues with Shibboleth authentication, this feature can be disabled if dashboard pages fail to load. It will be enabled by default for most users, but will be automatically disabled (upon enabling the module itself) if the REDCap server has Shibboleth authentication enabled.
- Timeout (in milliseconds) for running queries: Max runtime for SQL queries.