Web services overview
It has always been possible to extend Moodle via code (PHP and JavaScript). Due to Moodle's open source code base, there can be no limitation to what code a developer is able to modify or extend. For you as an administrator, this was not a satisfactory situation, as you have no control over what parts of Moodle are being changed and, equally important, what data is being accessed or altered.
Moodle has a number of APIs that provide an abstract layer for certain functionalities. Examples of this are the Portfolio API, Repository API, and the File API. These are great for programmers as they reduce the amount of code that has to be re-written. In addition to these interfaces, Moodle also provides us with an ever growing number of web services.
Tip
Web services enable other systems to perform operations inside Moodle.
Why would we want this? Well, there are three main scenarios we can think of:
- Other systems in your organization, for instance, the HR system, have to...