Mobile web services
Moodle comes with a built-in web service designed for mobile applications. It is required to run the official Mobile app. Enable it only if you want people to use the official app or if a third party app explicitly requires it.
Enabling mobile web services
A site administrator first must enable mobile web services:
- In Administration > Site administration > Plugins > Web services > Mobile
- Check "Enable mobile web services" and then
- Click Save.
That's it! No other steps required.
The rest of this document explains the "behind the scenes".
What happens when the service is enabled
Enabling the mobile web services will automatically:
- enable the web services system (Administration > Site administration > Advanced features)
- enable the built-in external service called 'Mobile web services' - you should see this new mobile service listed as enabled
- enable the xml-rpc protocol (for backward compatibility with unmaintained My Moodle app)
- enable the rest protocol
- allow the 'webservice/xmlrpc:use' capability for authenticated user role
- allow the 'webservice/rest:use' capability for authenticated user role
In Moodle 2.9 - 2.9.2, when mobile web services are enabled, the security overview report default role for all users check will have status 'Critical' due to the webservice capabilities being allowed for the authenticated user role. This erroneous message is no longer displayed in Moodle 2.9.3 onwards.
Disabling mobile web services
When you uncheck 'Enable mobile web services', it will automatically:
- disable the external service called 'Mobile web services'.
- if 'Mobile web services' was the only external service enabled:
- disable the web services system
- disable the xml-rpc protocol
- disable the rest protocol
- remove the 'webservice/xmlrpc:use' capability for authenticated user role
- remove the 'webservice/rest:use' capability for authenticated user role