View as Markdown
Moodle icon

Moodle ACTION

Duplicate a Course

Duplicates an existing course, creating a new course with optional settings. See the documentation
  • Action
  • Writes data
  • API key
  • SDK
  • MCP

IMPLEMENTATION

Call this tool

Connect a user's Moodle account once, then configure and run Duplicate a Course from your backend or agent.

import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const result = await pd.actions.run({
  id: "moodle-duplicate-course",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    moodle: { authProvisionId: "apn_xxxxxxx" },
    courseId: "Course ID",
    fullname: "Full Name",
  },
})

console.log(result)

SCHEMA

Inputs

Pipedream supplies the connected account. Your application provides the operation-specific values below. Dynamic inputs are resolved against that user's account.

Duplicate a Course inputs
Property Type Description
courseId Course ID string
The ID of the course to duplicate
Required Dynamic
fullname Full Name string
The full name for the duplicated course
Required
shortname Short Name string
The short name for the duplicated course
Required
categoryId Category ID string
The category in which to place the duplicated course
Required Dynamic
visible Visible boolean
Whether the duplicated course should be visible to students
Optional

REFERENCE

Tool details

Behavior hints are published with the component in the Pipedream registry and surface as MCP tool annotations, so an agent can reason about a tool before it calls it.

Registry key
moodle-duplicate-course
Version
0.0.1
App
Moodle
Authentication
API key
Read-only
No
Destructive
No
Open world
Yes