Moodle Integration


Below you will find an example of the our Moodle integration guide that you can review.
AEFIS will supply you with a customized guide for your institution that you will be able to complete the integration with.

AEFIS Moodle Setup

(v2 – 01/04/2021)

This document covers requirements for AEFIS / Moodle integration. A Moodle Administrator working with an AEFIS integration technician can complete requirements. There may be additional personnel required for unforeseen circumstances such as client network or server restrictions.


The AEFIS Tool allows students and instructors the ability to view an AEFIS course syllabus within a related course and complete assessment forms.


  • Tool Provider URL supplied by AEFIS
  • LTI Tool Provider Key supplied by AEFIS
  • LTI Tool Provider Secret supplied by AEFIS 
  • Tool Provider Custom Parameters content supplied by AEFIS
  • AEFIS Icon URL supplied by AEFIS
  • Moodle Course Context ID provided in the Course Section file of the data feed sent to AEFIS

Data Feed requirements

  • In the Course Section file sent to AEFIS must include the following ID in the ExternalLmsId field:
    • Course ID number – This is the unique course section value provided to Moodle
      • This identifier can be found in the Moodle edit course settings page under the General heading – Course ID number

LTI Configuration

The following will create the External Learning Tool (LTI) connection between Moodle and AEFIS:

  1. Login to your Moodle account as an administrator
  2. Click Site Administration left-hand side, then go to the Plugins tab
  3. Under the Activity Modules, find External tools > Manage tools and click
  4. Click the “configure a tool manually“ hyperlink in the Add Tool box
  5. Fill out the form with the following values:
    1. Tool name: AEFIS Tools
    2. Tool URL: https://<Your Institution AEFIS_URL>/index.cfm/page/AefisFramework.login
    3. Tool Description: AEFIS is a web-based assessment management solution that facilitates the collection and application of real-time assessment data.
    4. LTI Version: LTI 1.0/1.1
    5. Consumer Key/Shared Secret:
      1. Key: Paste the following: To be provided by AEFIS
      2. Secret: Paste the following: To be provided by AEFIS
    1. Tool configuration usage: Show as preconfigured tool when adding an external tool
    2. Default launch container: Embed, without blocks
    3. Content Selection URL: https://<Your Institution AEFIS_URL>/index.cfm/page/AefisFramework.login
    4. Icon URL: https://<AEFIS_URL>/assets/images/logos/[email protected]
    5. Secure icon URL: https://<AEFIS_URL>/assets/images/logos/[email protected]
  6. Under Privacy, select “Always“ as a value of “Share launcher’s email with tool

Add the LTI Tool to Course 

The following will add the AEFIS Tools link to a course and will be available to all course users.

  1. Go to the course
  2. Turn editing on
  3. Go to the topic / week where you would like to add the tool
  4. Select “Add an activity or resource“
  5. Find “External Tool“ and select
  6. Enter a desired “Activity name“
  7. Select “AEFIS Tools” as a value of “Preconfigured tool“
  8. Click “Save and return to course“

AEFIS Moodle Integration Data Requirements

AEFIS Moodle integration data requirements detail the data required from the client LMS and SIS to relate both within the AEFIS system.

Moodle Data

The AEFIS System expects links from the Moodle LMS that contain Course ID. Since the Course ID is specific to Moodle, the Moodle Course ID for each course will need to be included in the SIS import data with related course sections.

AEFIS Moodle REST Integration

In order to activate the integration in AEFIS, the Moodle Instance needs to be configured following these steps: 

  • Log in to the Moodle instance to be configured using an account with administrator permissions. The user must be in the list of site administrators of the Moodle instance.
  • Enable web services: Go to the Advanced Features page of the Site Administration section (/admin/settings.php?section=optionalsubsystems), find the field “Enable web services” and click the checkbox. Click “Save changes” to proceed.
  • Enable protocols: Go to “Manage protocols” located under the “Plugins > Web services” sub-menu in the Site Administration section (/admin/settings.php?section=webserviceprotocols) and click “Enable” for the REST protocol. Click “Save changes” to proceed.
  • Create a specific user: A Web services user is required to represent the system controlling Moodle. Create the user on the “Add a new user” page (/user/editadvanced.php?id=-1) under the “Users > Accounts” sub-menu on the Site Administration section. Authentication Method of that user should be OAuth2.
  • Check user capabilities: Create a custom role and assign the user to that role. A role can be created under the “Users > Permissions > Define Roles” sub-menu on the Site Administration section. Click “Add a new role“ button under the “Manage roles“ tab. The new role can use Teacher as the value of “Use role or archetype“ on the role creation page. The role should have the below capabilities at least:
    • moodle/webservice:createtoken
    • moodle/webservice:managealltokens
    • moodle/webservice/rest:use
    • moodle/site:viewuseridentity
    • moodle/user:viewalldetails
    • moodle/course:view
    • mod/assign:view
    • mod/assign:viewgrades
  • Make the user a site administrator: Go to the Site administrators page located under “Users > Permissions” in the Site Administration menu. Add the user created in Step 4 as a Site administrator.
  • Create a service: Go to the External services page under the “Plugins > Web services > External services” sub-menu on the Site Administration section (/admin/settings.php?section=externalservices). Click “Add” under the Custom services table.
  • Give the service a Name and Short name, then click the “Enabled” checkbox, “Authorised users only“ checkbox, and “Can download files“ checkbox. Finally, click “Add service” to proceed.
  • Add functions to the web service: Select the required Moodle functions for the created service. On the External Services page, find the service created in the last step in the “Custom services” table. Click the “Functions” link of the created service. Next, click the “Add functions” link. Add the following functions:
    • core_course_get_courses_by_field
    • core_enrol_get_enrolled_users
    • mod_assign_get_assignments
    • gradereport_user_get_grade_items
    • mod_assign_get_submissions
  • Select a specific user for the service: Assign the user created in step 4 to the recently created service. On the External Services page, find the service created in the last step within the “Custom services” table. Click the “Authorised users” link for the service. Next, select the user and click “Add” to assign it to the service.
  • Create a token for the user/service: Under the “Plugins > Web services” sub-menu in the Site Administration section, go to the “Manage tokens” page (/admin/settings.php?section=webservicetokens). Click “Add”.
  • Next, select the User and Service, then click “Save changes” to generate the token.

Please provide the token securely to your AEFIS integration contact. This token will be used to make API calls to retrieve the necessary data for AEFIS operations.

Become an AEFIS Academy Member Engage with AEFIS Academy in a whole new way. AEFIS Academy Members earn exclusive access to unforgettable events, inspiring conversations with engaging community, and a lot more.
Do Not Show This Again!
It's Your Academy. Help us improve it!
Your feedback is vital to help build the best Academy
— and our community deserves it!

Recent Favorites

View your most recent favorited blogs, resources, events and content hubs.