SKILL

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
Read the complete original documentation ↗

Requirements

  • Only the author’s Skill metadata is included. Read the full instructions to check dependencies, licensing and conditions of use.

A small first task

先阅读原作者说明,再决定是否在自己的 AI 工具中使用。

Instructions for your AI tool

Author documentation is not live verification by this site. Without evidence, we do not mark a resource as compatible, safe or free.

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.