EduLinq LMS Toolkit API Reference: latest (c477a56)

lms

The lms package contains general tools and abstractions for interacting with Learning Management Systems (LMSs) with a unified interface.

This package contains the following CLI tools:


lms.cli.*

The `lms.cli` package contains general tools for interacting with Learning Management Systems (LMSs). Each package can be invoked to list the tools (or subpackages) it contains. Each tool includes a help prompt that accessed with the `-h`/`--help` flag.


lms.cli.config.*

The lms.cli.config package provides tools for working with project configuration options.


lms.cli.config.list

List the current configuration options.

usage: python3 -m lms.cli.config.list [-h] [--version] [--show-origin]
                                      [--skip-header]

lms.cli.courses.*

The `lms.cli.courses` package contains tools for interacting with LMS courses.


lms.cli.courses.assignments.*

The `lms.cli.courses.assignments` package contains tools for interacting with LMS course assignments.


lms.cli.courses.assignments.get

Get specific assignments of a course.

usage: python3 -m lms.cli.courses.assignments.get [-h] [--version]
                                                  [--server SERVER]
                                                  [--server-type {blackboard,canvas,moodle}]
                                                  [--auth-user AUTH_USER]
                                                  [--auth-password AUTH_PASSWORD]
                                                  [--auth-token AUTH_TOKEN]
                                                  [--course COURSE]
                                                  [--format {json,table,text}]
                                                  [--include-extra-fields]
                                                  [--pretty-headers]
                                                  [--skip-headers] [--strict]
                                                  [ASSIGNMENT_QUERY ...]

lms.cli.courses.assignments.list

List the assignments of a course.

usage: python3 -m lms.cli.courses.assignments.list [-h] [--version]
                                                   [--server SERVER]
                                                   [--server-type {blackboard,canvas,moodle}]
                                                   [--auth-user AUTH_USER]
                                                   [--auth-password AUTH_PASSWORD]
                                                   [--auth-token AUTH_TOKEN]
                                                   [--course COURSE]
                                                   [--format {json,table,text}]
                                                   [--include-extra-fields]
                                                   [--pretty-headers]
                                                   [--skip-headers]

lms.cli.courses.assignments.scores.*

The `lms.cli.courses.assignments.scores` package contains tools for interacting with LMS course assignment scores.


lms.cli.courses.assignments.scores.get

Get specific scores for an assignment.

usage: python3 -m lms.cli.courses.assignments.scores.get [-h] [--version]
                                                         [--server SERVER]
                                                         [--server-type {blackboard,canvas,moodle}]
                                                         [--auth-user AUTH_USER]
                                                         [--auth-password AUTH_PASSWORD]
                                                         [--auth-token AUTH_TOKEN]
                                                         [--course COURSE]
                                                         [--assignment ASSIGNMENT]
                                                         [--format {json,table,text}]
                                                         [--include-extra-fields]
                                                         [--pretty-headers]
                                                         [--skip-headers]
                                                         [--strict]
                                                         [USER_QUERY ...]

lms.cli.courses.assignments.scores.list

List the scores for an assignment.

usage: python3 -m lms.cli.courses.assignments.scores.list [-h] [--version]
                                                          [--server SERVER]
                                                          [--server-type {blackboard,canvas,moodle}]
                                                          [--auth-user AUTH_USER]
                                                          [--auth-password AUTH_PASSWORD]
                                                          [--auth-token AUTH_TOKEN]
                                                          [--course COURSE]
                                                          [--assignment ASSIGNMENT]
                                                          [--format {json,table,text}]
                                                          [--include-extra-fields]
                                                          [--pretty-headers]
                                                          [--skip-headers]

lms.cli.courses.assignments.scores.upload-score

Upload a single score (and optional comment) for an assignment.

usage: python3 -m lms.cli.courses.assignments.scores.upload-score
       [-h] [--version] [--server SERVER]
       [--server-type {blackboard,canvas,moodle}] [--auth-user AUTH_USER]
       [--auth-password AUTH_PASSWORD] [--auth-token AUTH_TOKEN]
       [--course COURSE] [--assignment ASSIGNMENT] [--user USER] [--strict]
       SCORE [COMMENT]

lms.cli.courses.assignments.scores.upload

Upload scores (and optional comments) for an assignment.

usage: python3 -m lms.cli.courses.assignments.scores.upload
       [-h] [--version] [--server SERVER]
       [--server-type {blackboard,canvas,moodle}] [--auth-user AUTH_USER]
       [--auth-password AUTH_PASSWORD] [--auth-token AUTH_TOKEN]
       [--course COURSE] [--assignment ASSIGNMENT] [--skip-rows SKIP_ROWS]
       [--strict]
       PATH

lms.cli.courses.get

Get a specific course.

usage: python3 -m lms.cli.courses.get [-h] [--version] [--server SERVER]
                                      [--server-type {blackboard,canvas,moodle}]
                                      [--auth-user AUTH_USER]
                                      [--auth-password AUTH_PASSWORD]
                                      [--auth-token AUTH_TOKEN]
                                      [--format {json,table,text}]
                                      [--include-extra-fields]
                                      [--pretty-headers] [--skip-headers]
                                      [--strict]
                                      [COURSE_QUERY ...]

lms.cli.courses.gradebook.*

The `lms.cli.gradebook` package contains tools for interacting with LMS course gradebooks.


lms.cli.courses.gradebook.get

Get specific entries in a course's gradebook.

usage: python3 -m lms.cli.courses.gradebook.get [-h] [--version]
                                                [--server SERVER]
                                                [--server-type {blackboard,canvas,moodle}]
                                                [--auth-user AUTH_USER]
                                                [--auth-password AUTH_PASSWORD]
                                                [--auth-token AUTH_TOKEN]
                                                [--course COURSE]
                                                [--format {json,table,text}]
                                                [--include-extra-fields]
                                                [--pretty-headers]
                                                [--skip-headers]
                                                [--assignment ASSIGNMENTS]
                                                [--user USERS]

lms.cli.courses.gradebook.list

List the gradebook for a course.

usage: python3 -m lms.cli.courses.gradebook.list [-h] [--version]
                                                 [--server SERVER]
                                                 [--server-type {blackboard,canvas,moodle}]
                                                 [--auth-user AUTH_USER]
                                                 [--auth-password AUTH_PASSWORD]
                                                 [--auth-token AUTH_TOKEN]
                                                 [--course COURSE]
                                                 [--format {json,table,text}]
                                                 [--include-extra-fields]
                                                 [--pretty-headers]
                                                 [--skip-headers]

lms.cli.courses.gradebook.upload

Upload a gradebook (as a table).

usage: python3 -m lms.cli.courses.gradebook.upload [-h] [--version]
                                                   [--server SERVER]
                                                   [--server-type {blackboard,canvas,moodle}]
                                                   [--auth-user AUTH_USER]
                                                   [--auth-password AUTH_PASSWORD]
                                                   [--auth-token AUTH_TOKEN]
                                                   [--course COURSE]
                                                   [--strict]
                                                   PATH

lms.cli.courses.groups.*

The `lms.cli.courses.groups` package contains tools for interacting with LMS course groups.


lms.cli.courses.groups.create

Create a group.

usage: python3 -m lms.cli.courses.groups.create [-h] [--version]
                                                [--server SERVER]
                                                [--server-type {blackboard,canvas,moodle}]
                                                [--auth-user AUTH_USER]
                                                [--auth-password AUTH_PASSWORD]
                                                [--auth-token AUTH_TOKEN]
                                                [--course COURSE]
                                                [--groupset GROUPSET]
                                                [--format {json,table,text}]
                                                [--include-extra-fields]
                                                [--pretty-headers]
                                                [--skip-headers]
                                                GROUP_SET_NAME

lms.cli.courses.groups.delete

Delete a group.

usage: python3 -m lms.cli.courses.groups.delete [-h] [--version]
                                                [--server SERVER]
                                                [--server-type {blackboard,canvas,moodle}]
                                                [--auth-user AUTH_USER]
                                                [--auth-password AUTH_PASSWORD]
                                                [--auth-token AUTH_TOKEN]
                                                [--course COURSE]
                                                [--groupset GROUPSET]
                                                [--group GROUP]
                                                [--format {json,table,text}]
                                                [--include-extra-fields]
                                                [--pretty-headers]
                                                [--skip-headers]

lms.cli.courses.groups.get

Get specific group of a group set.

usage: python3 -m lms.cli.courses.groups.get [-h] [--version]
                                             [--server SERVER]
                                             [--server-type {blackboard,canvas,moodle}]
                                             [--auth-user AUTH_USER]
                                             [--auth-password AUTH_PASSWORD]
                                             [--auth-token AUTH_TOKEN]
                                             [--course COURSE]
                                             [--groupset GROUPSET]
                                             [--format {json,table,text}]
                                             [--include-extra-fields]
                                             [--pretty-headers]
                                             [--skip-headers] [--strict]
                                             [GROUP_QUERY ...]

lms.cli.courses.groups.list

List the groups of a group set.

usage: python3 -m lms.cli.courses.groups.list [-h] [--version]
                                              [--server SERVER]
                                              [--server-type {blackboard,canvas,moodle}]
                                              [--auth-user AUTH_USER]
                                              [--auth-password AUTH_PASSWORD]
                                              [--auth-token AUTH_TOKEN]
                                              [--course COURSE]
                                              [--groupset GROUPSET]
                                              [--format {json,table,text}]
                                              [--include-extra-fields]
                                              [--pretty-headers]
                                              [--skip-headers]

lms.cli.courses.groups.memberships.*

The `lms.cli.courses.groups.memberships` package contains tools for interacting with LMS course group memberships.


lms.cli.courses.groups.memberships.add

Add users to a group.

usage: python3 -m lms.cli.courses.groups.memberships.add [-h] [--version]
                                                         [--server SERVER]
                                                         [--server-type {blackboard,canvas,moodle}]
                                                         [--auth-user AUTH_USER]
                                                         [--auth-password AUTH_PASSWORD]
                                                         [--auth-token AUTH_TOKEN]
                                                         [--course COURSE]
                                                         [--groupset GROUPSET]
                                                         [--group GROUP]
                                                         [--format {json,table,text}]
                                                         [--include-extra-fields]
                                                         [--pretty-headers]
                                                         [--skip-headers]
                                                         [--strict]
                                                         USER_QUERY
                                                         [USER_QUERY ...]

lms.cli.courses.groups.memberships.list

List the membership of a group.

usage: python3 -m lms.cli.courses.groups.memberships.list [-h] [--version]
                                                          [--server SERVER]
                                                          [--server-type {blackboard,canvas,moodle}]
                                                          [--auth-user AUTH_USER]
                                                          [--auth-password AUTH_PASSWORD]
                                                          [--auth-token AUTH_TOKEN]
                                                          [--course COURSE]
                                                          [--groupset GROUPSET]
                                                          [--group GROUP]
                                                          [--format {json,table,text}]
                                                          [--include-extra-fields]
                                                          [--pretty-headers]
                                                          [--skip-headers]

lms.cli.courses.groups.memberships.set

Set users in a group to exactly match the listed users.

usage: python3 -m lms.cli.courses.groups.memberships.set [-h] [--version]
                                                         [--server SERVER]
                                                         [--server-type {blackboard,canvas,moodle}]
                                                         [--auth-user AUTH_USER]
                                                         [--auth-password AUTH_PASSWORD]
                                                         [--auth-token AUTH_TOKEN]
                                                         [--course COURSE]
                                                         [--groupset GROUPSET]
                                                         [--group GROUP]
                                                         [--format {json,table,text}]
                                                         [--include-extra-fields]
                                                         [--pretty-headers]
                                                         [--skip-headers]
                                                         [--strict]
                                                         [USER_QUERY ...]

lms.cli.courses.groups.memberships.subtract

Subtract users from a group.

usage: python3 -m lms.cli.courses.groups.memberships.subtract
       [-h] [--version] [--server SERVER]
       [--server-type {blackboard,canvas,moodle}] [--auth-user AUTH_USER]
       [--auth-password AUTH_PASSWORD] [--auth-token AUTH_TOKEN]
       [--course COURSE] [--groupset GROUPSET] [--group GROUP]
       [--format {json,table,text}] [--include-extra-fields]
       [--pretty-headers] [--skip-headers] [--strict]
       USER_QUERY [USER_QUERY ...]

lms.cli.courses.groupsets.*

The `lms.cli.courses.groupsets` package contains tools for interacting with LMS course group sets.


lms.cli.courses.groupsets.create

Create a group set.

usage: python3 -m lms.cli.courses.groupsets.create [-h] [--version]
                                                   [--server SERVER]
                                                   [--server-type {blackboard,canvas,moodle}]
                                                   [--auth-user AUTH_USER]
                                                   [--auth-password AUTH_PASSWORD]
                                                   [--auth-token AUTH_TOKEN]
                                                   [--course COURSE]
                                                   [--format {json,table,text}]
                                                   [--include-extra-fields]
                                                   [--pretty-headers]
                                                   [--skip-headers]
                                                   GROUP_SET_NAME

lms.cli.courses.groupsets.delete

Delete a group set.

usage: python3 -m lms.cli.courses.groupsets.delete [-h] [--version]
                                                   [--server SERVER]
                                                   [--server-type {blackboard,canvas,moodle}]
                                                   [--auth-user AUTH_USER]
                                                   [--auth-password AUTH_PASSWORD]
                                                   [--auth-token AUTH_TOKEN]
                                                   [--course COURSE]
                                                   [--groupset GROUPSET]
                                                   [--format {json,table,text}]
                                                   [--include-extra-fields]
                                                   [--pretty-headers]
                                                   [--skip-headers]

lms.cli.courses.groupsets.get

Get specific group sets of a course.

usage: python3 -m lms.cli.courses.groupsets.get [-h] [--version]
                                                [--server SERVER]
                                                [--server-type {blackboard,canvas,moodle}]
                                                [--auth-user AUTH_USER]
                                                [--auth-password AUTH_PASSWORD]
                                                [--auth-token AUTH_TOKEN]
                                                [--course COURSE]
                                                [--format {json,table,text}]
                                                [--include-extra-fields]
                                                [--pretty-headers]
                                                [--skip-headers] [--strict]
                                                [GROUP_SET_QUERY ...]

lms.cli.courses.groupsets.list

List the group sets of a course.

usage: python3 -m lms.cli.courses.groupsets.list [-h] [--version]
                                                 [--server SERVER]
                                                 [--server-type {blackboard,canvas,moodle}]
                                                 [--auth-user AUTH_USER]
                                                 [--auth-password AUTH_PASSWORD]
                                                 [--auth-token AUTH_TOKEN]
                                                 [--course COURSE]
                                                 [--format {json,table,text}]
                                                 [--include-extra-fields]
                                                 [--pretty-headers]
                                                 [--skip-headers]

lms.cli.courses.groupsets.memberships.*

The `lms.cli.courses.groupsets.memberships` package contains tools for interacting with LMS course group set memberships.


lms.cli.courses.groupsets.memberships.add

Add users to a group set.

usage: python3 -m lms.cli.courses.groupsets.memberships.add
       [-h] [--version] [--server SERVER]
       [--server-type {blackboard,canvas,moodle}] [--auth-user AUTH_USER]
       [--auth-password AUTH_PASSWORD] [--auth-token AUTH_TOKEN]
       [--course COURSE] [--groupset GROUPSET] [--group GROUP]
       [--format {json,table,text}] [--include-extra-fields]
       [--pretty-headers] [--skip-headers] [--skip-rows SKIP_ROWS] [--strict]
       PATH

lms.cli.courses.groupsets.memberships.list

List the membership of a group set.

usage: python3 -m lms.cli.courses.groupsets.memberships.list
       [-h] [--version] [--server SERVER]
       [--server-type {blackboard,canvas,moodle}] [--auth-user AUTH_USER]
       [--auth-password AUTH_PASSWORD] [--auth-token AUTH_TOKEN]
       [--course COURSE] [--groupset GROUPSET] [--format {json,table,text}]
       [--include-extra-fields] [--pretty-headers] [--skip-headers]

lms.cli.courses.groupsets.memberships.set

Set membership for a group set.

usage: python3 -m lms.cli.courses.groupsets.memberships.set
       [-h] [--version] [--server SERVER]
       [--server-type {blackboard,canvas,moodle}] [--auth-user AUTH_USER]
       [--auth-password AUTH_PASSWORD] [--auth-token AUTH_TOKEN]
       [--course COURSE] [--groupset GROUPSET] [--group GROUP]
       [--format {json,table,text}] [--include-extra-fields]
       [--pretty-headers] [--skip-headers] [--skip-rows SKIP_ROWS] [--strict]
       PATH

lms.cli.courses.groupsets.memberships.subtract

Subtract users from a group set.

usage: python3 -m lms.cli.courses.groupsets.memberships.subtract
       [-h] [--version] [--server SERVER]
       [--server-type {blackboard,canvas,moodle}] [--auth-user AUTH_USER]
       [--auth-password AUTH_PASSWORD] [--auth-token AUTH_TOKEN]
       [--course COURSE] [--groupset GROUPSET] [--group GROUP]
       [--format {json,table,text}] [--include-extra-fields]
       [--pretty-headers] [--skip-headers] [--skip-rows SKIP_ROWS] [--strict]
       PATH

lms.cli.courses.list

List courses.

usage: python3 -m lms.cli.courses.list [-h] [--version] [--server SERVER]
                                       [--server-type {blackboard,canvas,moodle}]
                                       [--auth-user AUTH_USER]
                                       [--auth-password AUTH_PASSWORD]
                                       [--auth-token AUTH_TOKEN]
                                       [--format {json,table,text}]
                                       [--include-extra-fields]
                                       [--pretty-headers] [--skip-headers]

lms.cli.courses.syllabus.*

The `lms.cli.syllabus` package contains tools for interacting with LMS course syllabus.


lms.cli.courses.syllabus.get

Get a course's syllabus.

usage: python3 -m lms.cli.courses.syllabus.get [-h] [--version]
                                               [--server SERVER]
                                               [--server-type {blackboard,canvas,moodle}]
                                               [--auth-user AUTH_USER]
                                               [--auth-password AUTH_PASSWORD]
                                               [--auth-token AUTH_TOKEN]
                                               [--course COURSE]

lms.cli.courses.users.*

The `lms.cli.courses.users` package contains tools for interacting with LMS course users.


lms.cli.courses.users.get

Get specific users of a course.

usage: python3 -m lms.cli.courses.users.get [-h] [--version] [--server SERVER]
                                            [--server-type {blackboard,canvas,moodle}]
                                            [--auth-user AUTH_USER]
                                            [--auth-password AUTH_PASSWORD]
                                            [--auth-token AUTH_TOKEN]
                                            [--course COURSE]
                                            [--format {json,table,text}]
                                            [--include-extra-fields]
                                            [--pretty-headers]
                                            [--skip-headers] [--strict]
                                            [USER_QUERY ...]

lms.cli.courses.users.list

List the users of a course.

usage: python3 -m lms.cli.courses.users.list [-h] [--version]
                                             [--server SERVER]
                                             [--server-type {blackboard,canvas,moodle}]
                                             [--auth-user AUTH_USER]
                                             [--auth-password AUTH_PASSWORD]
                                             [--auth-token AUTH_TOKEN]
                                             [--course COURSE]
                                             [--format {json,table,text}]
                                             [--include-extra-fields]
                                             [--pretty-headers]
                                             [--skip-headers]

lms.cli.courses.users.scores.*

The `lms.cli.courses.users.scores` package contains tools for interacting with LMS course user scores.


lms.cli.courses.users.scores.get

Get specific scores for a user.

usage: python3 -m lms.cli.courses.users.scores.get [-h] [--version]
                                                   [--server SERVER]
                                                   [--server-type {blackboard,canvas,moodle}]
                                                   [--auth-user AUTH_USER]
                                                   [--auth-password AUTH_PASSWORD]
                                                   [--auth-token AUTH_TOKEN]
                                                   [--course COURSE]
                                                   [--user USER]
                                                   [--format {json,table,text}]
                                                   [--include-extra-fields]
                                                   [--pretty-headers]
                                                   [--skip-headers] [--strict]
                                                   [ASSIGNMENT_QUERY ...]

lms.cli.courses.users.scores.list

List the scores for a user.

usage: python3 -m lms.cli.courses.users.scores.list [-h] [--version]
                                                    [--server SERVER]
                                                    [--server-type {blackboard,canvas,moodle}]
                                                    [--auth-user AUTH_USER]
                                                    [--auth-password AUTH_PASSWORD]
                                                    [--auth-token AUTH_TOKEN]
                                                    [--course COURSE]
                                                    [--user USER]
                                                    [--format {json,table,text}]
                                                    [--include-extra-fields]
                                                    [--pretty-headers]
                                                    [--skip-headers]

lms.cli.lib.*

The `lms.cli.lib` package contains tools for the LMS Toolkit itself (and does not interacting with any LMS).


lms.cli.lib.generate-test-data

Generate test data by starting the specified server and running all tests in this project.

usage: python3 -m lms.cli.lib.generate-test-data [-h] [--version]
                                                 [--server-output-file SERVER_OUTPUT_PATH]
                                                 [--server-stop-command SERVER_STOP_COMMAND]
                                                 [--startup-skip-identify]
                                                 [--startup-wait STARTUP_WAIT_SECS]
                                                 RUN_SERVER_COMMAND

lms.cli.lib.verify-test-data

Verify test data by starting the specified server and testing HTTP exchanges against it.

usage: python3 -m lms.cli.lib.verify-test-data [-h] [--version]
                                               [--server-output-file SERVER_OUTPUT_PATH]
                                               [--server-stop-command SERVER_STOP_COMMAND]
                                               [--startup-skip-identify]
                                               [--startup-wait STARTUP_WAIT_SECS]
                                               RUN_SERVER_COMMAND
                                               TEST_DATA_DIR

lms.cli.lib.version

Get the version of the LMS Toolkit package.

usage: python3 -m lms.cli.lib.version [-h] [--version]

lms.cli.server.*

The `lms.cli.server` package contains tools for interacting with LMS servers outside of a course/user context.


lms.cli.server.identify

Attempt to identify the backend of the target server.

usage: python3 -m lms.cli.server.identify [-h] [--version] [--server SERVER]
                                          [--server-type {blackboard,canvas,moodle}]
                                          [--auth-user AUTH_USER]
                                          [--auth-password AUTH_PASSWORD]
                                          [--auth-token AUTH_TOKEN]
1"""
2The `lms` package contains general tools and abstractions for
3interacting with Learning Management Systems (LMSs) with a unified interface.
4"""
5
6__version__ = '1.1.9'