Remote course web service

General plugins (Local) ::: local_remote_courses
Maintained by Charles Fulton, Andrew Zito
This local module provides a web service which returns a given user's courses based on username.

Remote course web service v1.1.0

Moodle 2.7, 2.8, 2.9, 3.0, 3.1
Released: Saturday, July 16, 2016, 11:16 PM

Remote course web service

This local module provides a web service which returns a given user's courses based on username. It returns the courses sorted by access time, with the most recently-accessed course at the top. You may also configure it to return term information. The standard use case is to create deep links to courses in one Moodle installation in another Moodle installation.


To use this service you will need to create the following:

  1. A web service on a Moodle installation
  2. A user with sufficient permissions to use the web service
  3. A token for that user

See Using web services in the Moodle documentation for information about creating and enabling web services. The user will need the following capabilities in addition to whichever protocol you enable:

  • moodle/course:view
  • moodle/course:viewhiddencourses
  • moodle/course:viewparticipants

There is a setting for extracting a term code from the course idnumber using a regular expression. For example, the regular expression /[0-9]+\.([0-9]+)/ would extract "201610" from "999999.201610".


  • Moodle 2.7 (build 2014051200 or later)


Copy the remote_courses folder into your /local directory and visit your Admin Notification page to complete the installation.


Charles Fulton (

Version information

Version build number
Version release name
Can be updated to
v1.2.0 (2016080200), v3.1.0 (2017080300), v3.3.0 (2018091200)
Stable version
MD5 Sum
Supported software
Moodle 2.7, Moodle 2.8, Moodle 2.9, Moodle 3.0, Moodle 3.1

Version control information

Version control system (VCS)
VCS repository URL
VCS branch
VCS tag

Default installation instructions for plugins of the type General plugins (Local)

  1. Make sure you have all the required versions.
  2. Download and unpack the module.
  3. Place the folder in the "local" subdirectory.
  4. Visit to finish the installation.