For Developers
Implementation Details
Our integration with Moodle requires the installation of a plugin that we wrote and maintain.
This document explains how we interpret and organize Moodle data using our custom plugin. Keep in mind that some features reflect how Edlink processes Moodle data, rather than Moodle's own design.
Entity Mapping
Edlink | Moodle | Notes |
---|---|---|
Districts | Root Category | The main Moodle category (ID 1 ) is treated as a district in Edlink. |
Schools | Categories | Other categories below the root are treated as schools in Edlink. |
Courses | Courses | Moodle courses are mapped to Edlink courses. |
Classes | Courses | Moodle courses are also treated as classes. |
People | Users | Moodle users (e.g., students, teachers) are converted into Edlink people. |
Enrollments | Enrollments | Enrollments link users to courses or classes. |
Assignments | Assignments | -- |
Work Submissions | Submissions | -- |
Integration Notes
- Plugin Use:
- The Edlink plugin enables OAuth2-based synchronization between Moodle and Edlink.
- It also facilitates access to both standard and custom Moodle APIs.
- Web Service API:
- Some data, like assignments, is fetched through Moodle's web service APIs using a generated token.
- Token management includes auto-refresh and secure storage.
- Data Transformation:
- Moodle’s hierarchy of categories and courses is interpreted to fit Edlink's district, school, class, and course structure.
- User data, like names and emails, is standardized to align with Edlink’s schema.
If you encounter additional issues or need assistance with specific configurations, please contact Edlink support or your Customer Success Manager.