Moodle API
El CMS Moodle disposa d'una API per accedir a les seves funcions internes i afegir funcionalitat com, per exemple, crear cursos automàticament des d'un script.
La API és accessible de diferents maneres (SOAP, REST, etc.) de les quals ens interessa REST.
Per activar-la haurem de seguir les passes (són unes quantes) que s'indica dintre del mateix moodle, a la secció:
Site Administration -> Plugins -> Web Services -> Overview
Un cop hagueu creat un rol i usuari amb els permisos adequats per a la API, finalment podeu seguir les passes descrites a la web per accedir a la API:
- Demanar token
- Executar funció
Explicat aquí:
https://docs.moodle.org/dev/Creating_a_web_service_client
Ai! però dona un error.
Can not find data record in database table external_functions.
Es veu que passa quan creem una nova funció personalitzada a la API. Cal actualitzar unes taules, i això no passa automàticament.
Per forçar l'actualització de les funcions aquí suggereixen elevar la versió de version.php i així el moodle automàticament farà un upgrade.
http://stackoverflow.com/questions/38891022/moodle-custom-service-creation-issue
Un cop fet l'upgrade simulat, tindrem disponible la nova funció.