Understanding Moodle web services
This section will familiarize you with web services, how they work, and when to use them.
It has always been possible to extend Moodle via code (PHP and JavaScript). Due to Moodle’s open source code base, there is no limitation on what code a developer can modify or extend. As an administrator, this was not a satisfactory situation, as you have no control over what parts of Moodle are being changed as a result, and, equally importantly, what data is being accessed or altered.
Moodle has various APIs that provide abstract layers for certain functionalities. Examples are the Privacy API, Repository API, and File API. These are great for programmers, as they reduce the amount of code that has to be rewritten. In addition to these interfaces, Moodle provides us with an ever-growing number of web services.
Important note
Web services enable other systems to perform operations inside Moodle, and vice versa.
Why would we want this? Well...