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 v3.1.0

Moodle 3.1, 3.2, 3.3, 3.4
Released: Friday, August 4, 2017, 8:53 PM

Remote course web service

Build Status

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 3.1 (build 2016052300 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 from
v1.1.0 (2016071600), v1.2.0 (2016080200)
Can be updated to
v3.3.0 (2018091200)
Stable version
MD5 Sum
Supported software
Moodle 3.1, Moodle 3.2, Moodle 3.3, Moodle 3.4

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.