> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kombo.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Moodle LMS Integration

> Moodle connector for Kombo's LMS API

<Note>This connector is in open beta. You can freely enable it in your account.</Note>

The Moodle LMS integration allows you to sync LMS data between Moodle and your application through Kombo's unified API. The tool slug for this connector is `moodle`.

## Guides and Resources

<CardGroup cols={2}>
  <Card title="Connection Setup Guide" icon="link" href="https://help.kombo.dev/hc/en-us/articles/44938777668881-Moodle-How-do-I-link-my-account">
    Step-by-step instructions to connect your Moodle account to Kombo.
  </Card>
</CardGroup>

## General Notes

* This integration has only been tested with Moodle 5.x. Other versions may work but are not officially supported.

## Supported Features & Coverage

<Tabs>
  <Tab title="Models">
    <Accordion title="Users">
      | Field               | Notes |
      | ------------------- | ----- |
      | id                  |       |
      | remote\_id          |       |
      | changed\_at         |       |
      | remote\_deleted\_at |       |
      | first\_name         |       |
      | last\_name          |       |
      | work\_email         |       |
      | status              |       |
      | remote\_data        |       |
    </Accordion>

    <Accordion title="Skills">
      <Note>
        Skills are sourced from Moodle competencies. Each competency within a competency framework is mapped to a skill.
      </Note>

      | Field               | Notes |
      | ------------------- | ----- |
      | id                  |       |
      | remote\_id          |       |
      | changed\_at         |       |
      | remote\_deleted\_at |       |
      | name                |       |
      | remote\_created\_at |       |
      | remote\_data        |       |
    </Accordion>

    <Accordion title="Courses">
      | Field               | Notes |
      | ------------------- | ----- |
      | id                  |       |
      | remote\_id          |       |
      | changed\_at         |       |
      | remote\_deleted\_at |       |
      | remote\_created\_at |       |
      | remote\_data        |       |
    </Accordion>

    <Accordion title="Course Revisions">
      | Field               | Notes |
      | ------------------- | ----- |
      | id                  |       |
      | remote\_id          |       |
      | changed\_at         |       |
      | remote\_deleted\_at |       |
      | course\_id          |       |
      | title               |       |
      | description         |       |
      | status              |       |
      | remote\_created\_at |       |
      | remote\_data        |       |
    </Accordion>

    <Accordion title="Course Progressions">
      | Field                | Notes                                                                                                                                                                |
      | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
      | id                   |                                                                                                                                                                      |
      | remote\_id           |                                                                                                                                                                      |
      | changed\_at          |                                                                                                                                                                      |
      | remote\_deleted\_at  |                                                                                                                                                                      |
      | user\_id             |                                                                                                                                                                      |
      | course\_revision\_id |                                                                                                                                                                      |
      | status               | Moodle distinguishes between 'complete pass' and 'complete fail' (activity completed but grade below passing threshold) – both are currently unified to `COMPLETED`. |
      | completed\_at        |                                                                                                                                                                      |
      | remote\_data         |                                                                                                                                                                      |
    </Accordion>

    <Accordion title="Revision skills">
      | Field                | Notes |
      | -------------------- | ----- |
      | course\_revision\_id |       |
      | skill\_id            |       |
      | id                   |       |
      | changed\_at          |       |
      | remote\_deleted\_at  |       |
    </Accordion>
  </Tab>

  <Tab title="Actions">
    <Accordion title="Upsert courses">
      | Input Field              | Notes |
      | ------------------------ | ----- |
      | items.origin\_id         |       |
      | items.course.type        |       |
      | items.course.title       |       |
      | items.course.description |       |
      | items.course.languages   |       |
    </Accordion>

    <Accordion title="Deactivate course">
      <Note>
        This action sets the course visibility to hidden in Moodle. The course will not be visible to students but can be restored later.
      </Note>

      | Input Field | Notes |
      | ----------- | ----- |
      | course\_id  |       |
    </Accordion>

    <Accordion title="Enroll user in course">
      <Note>
        By default, the user will be enrolled in the course with a role ID 5, which is "Student" by default.
      </Note>

      | Input Field          | Notes |
      | -------------------- | ----- |
      | user\_id             |       |
      | course\_revision\_id |       |
    </Accordion>

    <Accordion title="Complete course">
      <Note>
        Completion is set by overriding all activity completion statuses in the course. If the course has completion criteria requiring all activities to be complete, this will mark the course as complete. The score is applied to all activities that have grade items configured in the course gradebook. Moodle aggregates activity grades into the course total automatically. Scoring requires the course to have at least one graded activity – courses without grade items cannot receive a score.
      </Note>

      | Input Field             | Notes |
      | ----------------------- | ----- |
      | course\_progression\_id |       |
      | completed\_at           |       |
      | score                   |       |
    </Accordion>
  </Tab>

  <Tab title="Features">
    | Feature         | Notes |
    | --------------- | ----- |
    | API Passthrough |       |
    | Scope Testing   |       |
    | Per Model Tests |       |
  </Tab>
</Tabs>
