moodle-external-api-development
Create custom external web service APIs for Moodle LMS. Use when implementing web services for course management, user tracking, quiz operations, or custom plugin functionality. Covers parameter validation, database operations, error handling, service registration, and Moodle coding standards.
Target: Software development & testing. Automatically collected · unverified.
Excerpt from the author’s documentation
Extracted from a fixed version of SKILL.md in its original language. This is the author’s documentation; installation, compatibility and runtime results have not been verified by this site.
Read the original English text
Topics in the source
- Moodle External API Development
- When to Use This Skill
- Core Architecture Pattern
- Step-by-Step Implementation
- Step 1: Create the External API Class File
- Step 2: Define Input Parameters
- Step 3: Implement Business Logic
- Step 4: Define Return Structure
This skill guides you through creating custom external web service APIs for Moodle LMS, following Moodle's external API framework and coding standards. Creating custom web services for Moodle plugins Implementing REST/AJAX endpoints for course management Building APIs for quiz operations, user tracking, or reporting Exposing Moodle functionality to external applications Developing mobile app backends using Moodle Moodle external APIs follow a strict three-method pattern: 1. executeparameters() - Defines input parameter structure 2. execute() - Contains business logic 3. executereturns() - Defines return structure Location: /local/yourplugin/classes/external/yourapiname.php Key Points: Class must extend externalapi Namespace follows: localpluginname\external or modmodname\external Include the security check: defined('MOODLEINTERNAL') || die(); Require externallib.php for base classes Common Parameter Types: PARAMINT - Integers PARAMTEXT - Plain text (HTML stripped) PARAMRAW - Raw text (no cleaning) PARAMBOOL - Boolean values PARAMFLOAT - Floating point numbers PARAMALPHANUMEXT - Alphanumeric with extended chars Structures: externalvalue - Single value externalsinglestructure - Objec
This is an excerpt. Refer to the complete source and its current requirements.
- Source repository
- davila7/claude-code-templates
- Source file
- cli-tool/components/skills/development/moodle-external-api-development/SKILL.md
- Fixed revision
- 21be197f100a12b8d0dd9a211cc244c8179f84d3
Sources and evidence
This record was collected automatically. Its documentation, suitability and runtime behavior have not been manually verified.
Author: davila7/claude-code-templates · original repository metadata. Documentation review: Not reviewed. Last source check: 2026-11-09T14:01:44.530Z.
Categories are inferred from names, descriptions and paths. They do not establish compatibility.
License and attribution
MIT. Third-party content and copyright remain with their authors. Refer to the original license and terms.
Original license ↗Synchronization, copying and user-reported success do not mark a resource as runtime-tested.
Limitations and notes
- Collecting metadata does not mean this site has installed, adapted, runtime-tested or security-reviewed the resource.