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:
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.
The lms.cli.config package provides tools for working with project configuration options.
List the current configuration options.
usage: python3 -m lms.cli.config.list [-h] [--version] [--show-origin]
[--skip-header]
The `lms.cli.courses` package contains tools for interacting with LMS courses.
The `lms.cli.courses.assignments` package contains tools for interacting with LMS course assignments.
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 ...]
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]
The `lms.cli.courses.assignments.scores` package contains tools for interacting with LMS course assignment scores.
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 ...]
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]
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]
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
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 ...]
The `lms.cli.gradebook` package contains tools for interacting with LMS course gradebooks.
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]
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]
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
The `lms.cli.courses.groups` package contains tools for interacting with LMS course groups.
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
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]
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 ...]
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]
The `lms.cli.courses.groups.memberships` package contains tools for interacting with LMS course group memberships.
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 ...]
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]
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 ...]
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 ...]
The `lms.cli.courses.groupsets` package contains tools for interacting with LMS course group sets.
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
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]
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 ...]
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]
The `lms.cli.courses.groupsets.memberships` package contains tools for interacting with LMS course group set memberships.
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
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]
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
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
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]
The `lms.cli.syllabus` package contains tools for interacting with LMS course syllabus.
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]
The `lms.cli.courses.users` package contains tools for interacting with LMS course users.
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 ...]
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]
The `lms.cli.courses.users.scores` package contains tools for interacting with LMS course user scores.
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 ...]
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]
The `lms.cli.lib` package contains tools for the LMS Toolkit itself (and does not interacting with any LMS).
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
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
Get the version of the LMS Toolkit package.
usage: python3 -m lms.cli.lib.version [-h] [--version]
The `lms.cli.server` package contains tools for interacting with LMS servers outside of a course/user context.
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]