Решение задачи. Если кому-то интересно.
Запрос должен выглядеть следующим образом:
http://localhost/moodle/webservice/rest/server.php?wstoken=5c3f3099aa9a767fdadb1261d88f0bfb&wsfunction=core_competency_list_competency_frameworks&context[contextid]=1
protected static function get_context_parameters() { $id = new external_value( PARAM_INT, 'Context ID. Either use this value, or level and instanceid.', VALUE_DEFAULT, 0 ); $level = new external_value( PARAM_ALPHA, 'Context level. To be used with instanceid.', VALUE_DEFAULT, '' ); $instanceid = new external_value( PARAM_INT, 'Context instance ID. To be used with level', VALUE_DEFAULT, 0 ); return new external_single_structure(array( 'contextid' => $id, 'contextlevel' => $level, 'instanceid' => $instanceid, )); }Она то и вызывается в функции list_competency_frameworks: self::get_context_parameters.
Но так как у нас идет в функции list_competency_frameworks присвоение context = self::get_context_parameters.
Нам нужно в URL писать context[contextid]=1 например.