If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.


From MoodleDocs
Warning: This page is no longer in use. The information contained on the page should NOT be seen as relevant or reliable.

Note: This page is a work-in-progress. Feedback and suggested improvements are welcome. Please join the discussion on or use the page comments.

Report Builder technical documentation

We are currently working on porting Report Builder, see the Report Builder specification for more details.

The original user stories (which will no longer be followed) are available here.

Report builder has an API intended to make it easy to extend the functionality in a number of ways. The primary feature is the ability to write report sources, that allow the user to generate reports based on specific data from within moodle.

It is also possible to create new content and access restrictions, filter types, and display functions.

Beginner Topics

Intermediate Topics

Advanced Topics

Embedded Reports

  • Overview
  • Access restrictions in embedded reports
  • Embedded reports in My Reports list
  • Resetting to defaults
  • Embedded parameters


  • Common Exceptions (automatic error checks)
  • Other errors
  • Debugging tools
  • Choosing a base table / Performance
  • Performance benchmarks