📄️ Access API
The Access API gives you functions so you can determine what the current user is allowed to do. It also allows plugins to extend Moodle with new capabilities.
📄️ Admin settings
Moodle's configuration is stored in a mixture of the config, config_plugins, and a few other tables. These settings are edited through the administration screens, which can be accessed by going to the .../admin/index.php URL on your moodle site, or using the Administration block that appears to administrators of the Moodle front page. This page explains how the code for displaying and editing of these settings works.
📄️ Analytics API
The Analytics API allows managers to use predictions to detect trends and predict student behaviour
📄️ Availability API
The availability API controls access to activities and sections. For example, a teacher could restrict access so that an activity cannot be accessed until a certain date, or so that a section cannot be accessed unless users have a certain grade in a quiz.
🗃️ Backup API
📄️ Check API
A Check is a runtime test to make sure that something is working well. You can think of Checks as similar and complimentary to the PHPUnit and Acceptance testing but the next layer around them, and performed at run time rather than development, or build time.
📄️ Editor API
The editor API lets you control Moodle text editors. It can be found in lib/editorlib.php.
📄️ Enrolment API
The enrolment API gives access to the enrolment methods and also to enrolment plugins instances.
🗃️ External Services
📄️ Favourites API
🗃️ File API
🗃️ Forms API
📄️ Groups API
Moodle Groups are a way of expressing collections of users within a course. They may be defined by the teacher in the course participants page, or created automatically during a bulk user upload (for example, from a text file).
📄️ Output API
The Output API is responsible for visual aspects of Moodle content. This page explains how renderers, renderables, themes and templates all work together.
📄️ Plagiarism API
🗃️ Privacy API
📄️ Roles API
The Roles API is an extension of the Access API and defines a set of actions
📄️ Tag API
The Tag API allows you to assign labels to information in Moodle. This makes finding this information easier and also facilitates the grouping of similar information. The Tag API allows you to create, modify, delete and search tags in the Moodle system. The main tag related functions can be found in the tag/classes/tag.php file. For a thorough overview of all of the functions available for working with Tags please see methods in coretagtag, coretagcollection and coretagarea classes, however, the following examples should give you a general understanding of how to get started with tags.
🗃️ Task API
📄️ Time API
Internally Moodle always stores all times in unixtime format (number of seconds since epoch) which is independent of timezones.