caccl-api
Version:
A class that defines a set of smart Canvas endpoints that actually behave how you'd expect them to.
9,532 lines • 163 kB
HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>assignment - Documentation</title>
<script src="scripts/prettify/prettify.js"></script>
<script src="scripts/prettify/lang-css.js"></script>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link type="text/css" rel="stylesheet" href="styles/prettify.css">
<link type="text/css" rel="stylesheet" href="styles/jsdoc.css">
<script src="scripts/nav.js" defer></script>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<input type="checkbox" id="nav-trigger" class="nav-trigger" />
<label for="nav-trigger" class="navicon-button x">
<div class="navicon"></div>
</label>
<label for="nav-trigger" class="overlay"></label>
<nav style="border-right: 2px solid #ccc; padding-bottom: 25px;" >
<h2><a style="font-size: 30px;" href="index.html">CACCL API</a></h2><h3>Endpoint Functions</h3><ul><li><a href="api.account.html">api.account</a><ul class='methods'><li data-type='method'><a href="api.account.html#get">get</a></li><li data-type='method'><a href="api.account.html#list">list</a></li><li data-type='method'><a href="api.account.html#listAdmins">listAdmins</a></li><li data-type='method'><a href="api.account.html#listCourses">listCourses</a></li></ul></li><li><a href="api.conversation.html">api.conversation</a><ul class='methods'><li data-type='method'><a href="api.conversation.html#create">create</a></li></ul></li><li><a href="api.course.html">api.course</a><ul class='methods'><li data-type='method'><a href="api.course.html#get">get</a></li><li data-type='method'><a href="api.course.html#getUser">getUser</a></li><li data-type='method'><a href="api.course.html#listDesignerEnrollments">listDesignerEnrollments</a></li><li data-type='method'><a href="api.course.html#listDesigners">listDesigners</a></li><li data-type='method'><a href="api.course.html#listEnrollments">listEnrollments</a></li><li data-type='method'><a href="api.course.html#listObserverEnrollments">listObserverEnrollments</a></li><li data-type='method'><a href="api.course.html#listObservers">listObservers</a></li><li data-type='method'><a href="api.course.html#listStudentEnrollments">listStudentEnrollments</a></li><li data-type='method'><a href="api.course.html#listStudents">listStudents</a></li><li data-type='method'><a href="api.course.html#listTAs">listTAs</a></li><li data-type='method'><a href="api.course.html#listTeachers">listTeachers</a></li><li data-type='method'><a href="api.course.html#listTeachingTeamMemberEnrollments">listTeachingTeamMemberEnrollments</a></li><li data-type='method'><a href="api.course.html#listTeachingTeamMembers">listTeachingTeamMembers</a></li><li data-type='method'><a href="api.course.html#listUsers">listUsers</a></li><li data-type='method'><a href="api.course.html#migrateContent">migrateContent</a></li><li data-type='method'><a href="api.course.html#updatePublishState">updatePublishState</a></li></ul></li><li><a href="api.course.analytics.html">api.course.analytics</a><ul class='methods'><li data-type='method'><a href="api.course.analytics.html#getStudentMessagingData">getStudentMessagingData</a></li><li data-type='method'><a href="api.course.analytics.html#getStudentParticipationData">getStudentParticipationData</a></li><li data-type='method'><a href="api.course.analytics.html#getStudentSummary">getStudentSummary</a></li><li data-type='method'><a href="api.course.analytics.html#listAssignmentSummaries">listAssignmentSummaries</a></li><li data-type='method'><a href="api.course.analytics.html#listDailyActivitySummaries">listDailyActivitySummaries</a></li><li data-type='method'><a href="api.course.analytics.html#listStudentSummaries">listStudentSummaries</a></li></ul></li><li><a href="api.course.announcement.html">api.course.announcement</a><ul class='methods'><li data-type='method'><a href="api.course.announcement.html#create">create</a></li><li data-type='method'><a href="api.course.announcement.html#list">list</a></li></ul></li><li><a href="api.course.app.html">api.course.app</a><ul class='methods'><li data-type='method'><a href="api.course.app.html#addByClientId">addByClientId</a></li><li data-type='method'><a href="api.course.app.html#addByXML">addByXML</a></li><li data-type='method'><a href="api.course.app.html#addRedirect">addRedirect</a></li><li data-type='method'><a href="api.course.app.html#get">get</a></li><li data-type='method'><a href="api.course.app.html#getAssignmentLaunchURL">getAssignmentLaunchURL</a></li><li data-type='method'><a href="api.course.app.html#getMetadata">getMetadata</a></li><li data-type='method'><a href="api.course.app.html#getNavLaunchURL">getNavLaunchURL</a></li><li data-type='method'><a href="api.course.app.html#hideFromNav">hideFromNav</a></li><li data-type='method'><a href="api.course.app.html#list">list</a></li><li data-type='method'><a href="api.course.app.html#moveToTopOfNavMenu">moveToTopOfNavMenu</a></li><li data-type='method'><a href="api.course.app.html#remove">remove</a></li><li data-type='method'><a href="api.course.app.html#showInNav">showInNav</a></li><li data-type='method'><a href="api.course.app.html#updateMetadata">updateMetadata</a></li></ul></li><li><a href="api.course.assignment.html">api.course.assignment</a><ul class='methods'><li data-type='method'><a href="api.course.assignment.html#create">create</a></li><li data-type='method'><a href="api.course.assignment.html#createOverride">createOverride</a></li><li data-type='method'><a href="api.course.assignment.html#createSubmissionComment">createSubmissionComment</a></li><li data-type='method'><a href="api.course.assignment.html#createTextSubmission">createTextSubmission</a></li><li data-type='method'><a href="api.course.assignment.html#createURLSubmission">createURLSubmission</a></li><li data-type='method'><a href="api.course.assignment.html#delete">delete</a></li><li data-type='method'><a href="api.course.assignment.html#deleteOverride">deleteOverride</a></li><li data-type='method'><a href="api.course.assignment.html#get">get</a></li><li data-type='method'><a href="api.course.assignment.html#getOverride">getOverride</a></li><li data-type='method'><a href="api.course.assignment.html#getSubmission">getSubmission</a></li><li data-type='method'><a href="api.course.assignment.html#list">list</a></li><li data-type='method'><a href="api.course.assignment.html#listAllSubmissions">listAllSubmissions</a></li><li data-type='method'><a href="api.course.assignment.html#listGradeableStudents">listGradeableStudents</a></li><li data-type='method'><a href="api.course.assignment.html#listOverrides">listOverrides</a></li><li data-type='method'><a href="api.course.assignment.html#listSubmissions">listSubmissions</a></li><li data-type='method'><a href="api.course.assignment.html#update">update</a></li><li data-type='method'><a href="api.course.assignment.html#updateGrade">updateGrade</a></li><li data-type='method'><a href="api.course.assignment.html#updateGrades">updateGrades</a></li><li data-type='method'><a href="api.course.assignment.html#updateOverride">updateOverride</a></li></ul></li><li><a href="api.course.assignmentGroup.html">api.course.assignmentGroup</a><ul class='methods'><li data-type='method'><a href="api.course.assignmentGroup.html#create">create</a></li><li data-type='method'><a href="api.course.assignmentGroup.html#delete">delete</a></li><li data-type='method'><a href="api.course.assignmentGroup.html#get">get</a></li><li data-type='method'><a href="api.course.assignmentGroup.html#list">list</a></li><li data-type='method'><a href="api.course.assignmentGroup.html#update">update</a></li></ul></li><li><a href="api.course.discussionTopic.html">api.course.discussionTopic</a><ul class='methods'><li data-type='method'><a href="api.course.discussionTopic.html#create">create</a></li><li data-type='method'><a href="api.course.discussionTopic.html#delete">delete</a></li><li data-type='method'><a href="api.course.discussionTopic.html#list">list</a></li><li data-type='method'><a href="api.course.discussionTopic.html#listEntries">listEntries</a></li><li data-type='method'><a href="api.course.discussionTopic.html#updatePublishState">updatePublishState</a></li></ul></li><li><a href="api.course.file.html">api.course.file</a><ul class='methods'><li data-type='method'><a href="api.course.file.html#list">list</a></li></ul></li><li><a href="api.course.folder.html">api.course.folder</a><ul class='methods'><li data-type='method'><a href="api.course.folder.html#list">list</a></li></ul></li><li><a href="api.course.gradebookColumn.html">api.course.gradebookColumn</a><ul class='methods'><li data-type='method'><a href="api.course.gradebookColumn.html#create">create</a></li><li data-type='method'><a href="api.course.gradebookColumn.html#delete">delete</a></li><li data-type='method'><a href="api.course.gradebookColumn.html#get">get</a></li><li data-type='method'><a href="api.course.gradebookColumn.html#list">list</a></li><li data-type='method'><a href="api.course.gradebookColumn.html#listEntries">listEntries</a></li><li data-type='method'><a href="api.course.gradebookColumn.html#update">update</a></li><li data-type='method'><a href="api.course.gradebookColumn.html#updateEntries">updateEntries</a></li><li data-type='method'><a href="api.course.gradebookColumn.html#updateEntry">updateEntry</a></li></ul></li><li><a href="api.course.group.html">api.course.group</a><ul class='methods'><li data-type='method'><a href="api.course.group.html#create">create</a></li><li data-type='method'><a href="api.course.group.html#delete">delete</a></li><li data-type='method'><a href="api.course.group.html#get">get</a></li><li data-type='method'><a href="api.course.group.html#listUsers">listUsers</a></li><li data-type='method'><a href="api.course.group.html#updateMembers">updateMembers</a></li></ul></li><li><a href="api.course.groupSet.html">api.course.groupSet</a><ul class='methods'><li data-type='method'><a href="api.course.groupSet.html#create">create</a></li><li data-type='method'><a href="api.course.groupSet.html#delete">delete</a></li><li data-type='method'><a href="api.course.groupSet.html#get">get</a></li><li data-type='method'><a href="api.course.groupSet.html#list">list</a></li><li data-type='method'><a href="api.course.groupSet.html#listGroups">listGroups</a></li></ul></li><li><a href="api.course.module.html">api.course.module</a><ul class='methods'><li data-type='method'><a href="api.course.module.html#list">list</a></li></ul></li><li><a href="api.course.navMenuItem.html">api.course.navMenuItem</a><ul class='methods'><li data-type='method'><a href="api.course.navMenuItem.html#list">list</a></li><li data-type='method'><a href="api.course.navMenuItem.html#update">update</a></li></ul></li><li><a href="api.course.page.html">api.course.page</a><ul class='methods'><li data-type='method'><a href="api.course.page.html#create">create</a></li><li data-type='method'><a href="api.course.page.html#delete">delete</a></li><li data-type='method'><a href="api.course.page.html#get">get</a></li><li data-type='method'><a href="api.course.page.html#list">list</a></li><li data-type='method'><a href="api.course.page.html#update">update</a></li></ul></li><li><a href="api.course.quiz.html">api.course.quiz</a><ul class='methods'><li data-type='method'><a href="api.course.quiz.html#create">create</a></li><li data-type='method'><a href="api.course.quiz.html#createEssayQuestion">createEssayQuestion</a></li><li data-type='method'><a href="api.course.quiz.html#createMultipleChoiceQuestion">createMultipleChoiceQuestion</a></li><li data-type='method'><a href="api.course.quiz.html#createShortAnswerQuestion">createShortAnswerQuestion</a></li><li data-type='method'><a href="api.course.quiz.html#createSubmission">createSubmission</a></li><li data-type='method'><a href="api.course.quiz.html#delete">delete</a></li><li data-type='method'><a href="api.course.quiz.html#get">get</a></li><li data-type='method'><a href="api.course.quiz.html#getQuizStudentReport">getQuizStudentReport</a></li><li data-type='method'><a href="api.course.quiz.html#getSubmission">getSubmission</a></li><li data-type='method'><a href="api.course.quiz.html#list">list</a></li><li data-type='method'><a href="api.course.quiz.html#listQuestions">listQuestions</a></li><li data-type='method'><a href="api.course.quiz.html#listSubmissions">listSubmissions</a></li><li data-type='method'><a href="api.course.quiz.html#update">update</a></li><li data-type='method'><a href="api.course.quiz.html#updateQuestionGrades">updateQuestionGrades</a></li></ul></li><li><a href="api.course.rubric.html">api.course.rubric</a><ul class='methods'><li data-type='method'><a href="api.course.rubric.html#createFreeFormGradingRubricInAssignment">createFreeFormGradingRubricInAssignment</a></li><li data-type='method'><a href="api.course.rubric.html#get">get</a></li><li data-type='method'><a href="api.course.rubric.html#list">list</a></li></ul></li><li><a href="api.course.section.html">api.course.section</a><ul class='methods'><li data-type='method'><a href="api.course.section.html#get">get</a></li><li data-type='method'><a href="api.course.section.html#list">list</a></li></ul></li><li><a href="api.enrollmentTerm.html">api.enrollmentTerm</a></li><li><a href="api.other.html">api.other</a><ul class='methods'><li data-type='method'><a href="api.other.html#endpoint">endpoint</a></li></ul></li><li><a href="api.user.html">api.user</a><ul class='methods'><li data-type='method'><a href="api.user.html#listCourses">listCourses</a></li><li data-type='method'><a href="api.user.html#listEmails">listEmails</a></li><li data-type='method'><a href="api.user.html#search">search</a></li></ul></li><li><a href="api.user.self.html">api.user.self</a><ul class='methods'><li data-type='method'><a href="api.user.self.html#getProfile">getProfile</a></li><li data-type='method'><a href="api.user.self.html#listCourses">listCourses</a></li></ul></li></ul><h3>Global</h3><ul><li><a href="global.html#DateHandlingType">DateHandlingType</a></li><li><a href="global.html#dayOfWeekToNumber">dayOfWeekToNumber</a></li></ul>
</nav>
<div id="main">
<section>
<header>
<h2>
<span class="ancestors"><a href="api.course.html">.course</a>.</span>
assignment
</h2>
</header>
<article>
<div class="container-overview">
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="ECatCourse_ECatAssignment.js.html">ECatCourse/ECatAssignment.js</a>, <a href="ECatCourse_ECatAssignment.js.html#line2">line 2</a>
</li></ul></dd>
</dl>
<div class="description usertext">Functions for interacting with assignments within courses</div>
</div>
<h3 class="subsection-title">Methods</h3>
<h4 class="name" id="create"><span class="type-signature">(async) </span>create<span class="signature">(opts<span class="signature-attributes">opt</span>, config<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<CanvasAssignment>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="ECatCourse_ECatAssignment.js.html">ECatCourse/ECatAssignment.js</a>, <a href="ECatCourse_ECatAssignment.js.html#line232">line 232</a>
</li></ul></dd>
<dt class="tag-author">Author:</dt>
<dd class="tag-author">
<ul>
<li>Gabe Abrams</li>
</ul>
</dd>
</dl>
<div class="description usertext">
Creates a Canvas assignment
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>opts</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">object containing all arguments
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>courseId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>default course id</code>
</td>
<td class="description last">Canvas course Id to
create an assignment in</td>
</tr>
<tr>
<td class="name"><code>name</code></td>
<td class="type">
<span class="param-type">string</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>Unnamed Assignment</code>
</td>
<td class="description last">The name of the
assignment</td>
</tr>
<tr>
<td class="name"><code>pointsPossible</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>null</code>
</td>
<td class="description last">Points possible</td>
</tr>
<tr>
<td class="name"><code>dueAt</code></td>
<td class="type">
<span class="param-type">date</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>null</code>
</td>
<td class="description last">Due at datetime</td>
</tr>
<tr>
<td class="name"><code>lockAt</code></td>
<td class="type">
<span class="param-type">date</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>null</code>
</td>
<td class="description last">Due at datetime</td>
</tr>
<tr>
<td class="name"><code>unlockAt</code></td>
<td class="type">
<span class="param-type">date</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>null</code>
</td>
<td class="description last">Due at datetime</td>
</tr>
<tr>
<td class="name"><code>description</code></td>
<td class="type">
<span class="param-type">string</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>null</code>
</td>
<td class="description last">html description of
the assignment</td>
</tr>
<tr>
<td class="name"><code>submissionTypes</code></td>
<td class="type">
<span class="param-type">string</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>null</code>
</td>
<td class="description last">Submission type(s)</td>
</tr>
<tr>
<td class="name"><code>allowedExtensions</code></td>
<td class="type">
<span class="param-type">string</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>any</code>
</td>
<td class="description last">List of allowed file
extensions (exclude period). Online upload must be enabled</td>
</tr>
<tr>
<td class="name"><code>gradingType</code></td>
<td class="type">
<span class="param-type">string</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>points</code>
</td>
<td class="description last">Grading type</td>
</tr>
<tr>
<td class="name"><code>position</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>last</code>
</td>
<td class="description last">Position in assignment list</td>
</tr>
<tr>
<td class="name"><code>published</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">If true, publish page upon
creation</td>
</tr>
<tr>
<td class="name"><code>muted</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">If true, assignment is muted</td>
</tr>
<tr>
<td class="name"><code>groupSetId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>null</code>
</td>
<td class="description last">Student group set Id</td>
</tr>
<tr>
<td class="name"><code>assignmentGroupId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>top assignment group</code>
</td>
<td class="description last">Assignment
group Id</td>
</tr>
<tr>
<td class="name"><code>peerReviewsEnabled</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">If true, users asked to
submit peer reviews</td>
</tr>
<tr>
<td class="name"><code>automaticPeerReviewsEnabled</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">If true,
Canvas will automatically assign peer reviews</td>
</tr>
<tr>
<td class="name"><code>omitFromFinalGrade</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">If true, assignment is
omitted from the final grade</td>
</tr>
<tr>
<td class="name"><code>gradeGroupStudentsIndividually</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">If true,
students in groups can be given separate grades and when one student in a
group gets a grade, other students do not get graded</td>
</tr>
<tr>
<td class="name"><code>assignmentAppId</code></td>
<td class="type">
<span class="param-type">string</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>null</code>
</td>
<td class="description last">If defined, the external
tool that matches this id will be used for submissions. Also, the
submission types will be overwritten with ['external_tool'] and the
student will be redirected via LTI to the assignmentAppURL when they
launch the assignment</td>
</tr>
<tr>
<td class="name"><code>assignmentAppURL</code></td>
<td class="type">
<span class="param-type">string</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>tool launch url</code>
</td>
<td class="description last">The launch URL
of the external tool. If not included and assignmentAppId is defined, we
will first request info on the external tool to get its launchURL and
will use that value here. Only relevant if assignmentAppId is defined.</td>
</tr>
<tr>
<td class="name"><code>assignmentAppNewTab</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">Only relevant if
assignmentAppId is defined. If true, when a student clicks the
assignment, their LTI session with the external tool will be opened in a
new tab</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td class="name"><code>config</code></td>
<td class="type">
<span class="param-type">APIConfig</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">custom configuration for this specific endpoint
call (overwrites defaults that were included when api was initialized)</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
Canvas Assignment <a href="https://canvas.instructure.com/doc/api/assignments.html#Assignment">https://canvas.instructure.com/doc/api/assignments.html#Assignment</a>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.<CanvasAssignment></span>
</dd>
</dl>
<h4 class="name" id="createOverride"><span class="type-signature">(async) </span>createOverride<span class="signature">(opts, config<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<CanvasAssignmentOverride>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="ECatCourse_ECatAssignment.js.html">ECatCourse/ECatAssignment.js</a>, <a href="ECatCourse_ECatAssignment.js.html#line773">line 773</a>
</li></ul></dd>
<dt class="tag-author">Author:</dt>
<dd class="tag-author">
<ul>
<li>Gabe Abrams</li>
</ul>
</dd>
</dl>
<div class="description usertext">
Create assignment override. Note that if any dates (dueAt, unlockAt, or
lockAt) are left out, they will be set to "none" for the target(s) of this
override. If dueAt is omitted, the target(s) will have no deadline. If
unlockAt is omitted, the target(s) will immediately be able to see the
assignment (even if everyone else has to wait until the unlockAt date). If
lockAt is omitted, the target(s) will be able to submit at any
time in the future (even if everyone else can't submit because their lock
date has passed). In short, it is not recommended to omit dates that are
defined in the assignment.
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>opts</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="attributes">
</td>
<td class="description last">object containing all arguments
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>assignmentId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">Canvas assignment id</td>
</tr>
<tr>
<td class="name"><code>courseId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>default course id</code>
</td>
<td class="description last">Canvas course id</td>
</tr>
<tr>
<td class="name"><code>studentIds</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">List of Canvas student IDs to override
(Note: either studentIds, groupId, or sectionId must be included)</td>
</tr>
<tr>
<td class="name"><code>groupId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">Group to override, must be a group
assignment (Note: either studentIds, groupId, or sectionId must be
included)</td>
</tr>
<tr>
<td class="name"><code>sectionId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">Section to override (Note: either
studentIds, groupId, or sectionId must be included)</td>
</tr>
<tr>
<td class="name"><code>title</code></td>
<td class="type">
<span class="param-type">string</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>Override for X students</code>
</td>
<td class="description last">Title of the
override</td>
</tr>
<tr>
<td class="name"><code>dueAt</code></td>
<td class="type">
<span class="param-type">date</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>no due date</code>
</td>
<td class="description last">New due date. If excluded, the
target(s) of this override have no due date (they can submit whenever they
want without being marked as late)</td>
</tr>
<tr>
<td class="name"><code>unlockAt</code></td>
<td class="type">
<span class="param-type">date</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>no unlock date</code>
</td>
<td class="description last">New unlock date. If
excluded, the target(s) of this override can immediately see the assignment
(their unlock date is the beginning of time)</td>
</tr>
<tr>
<td class="name"><code>lockAt</code></td>
<td class="type">
<span class="param-type">date</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>no lock date</code>
</td>
<td class="description last">New lock date. If excluded,
the target(s) of this override can see and submit the assignment at
any point in the future (their lock date is the end of time)</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td class="name"><code>config</code></td>
<td class="type">
<span class="param-type">APIConfig</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">custom configuration for this specific endpoint
call (overwrites defaults that were included when api was initialized)</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
Canvas AssignmentOverride <a href="https://canvas.instructure.com/doc/api/assignments.html#AssignmentOverride">https://canvas.instructure.com/doc/api/assignments.html#AssignmentOverride</a>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.<CanvasAssignmentOverride></span>
</dd>
</dl>
<h4 class="name" id="createSubmissionComment"><span class="type-signature">(async) </span>createSubmissionComment<span class="signature">(opts, config<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<CanvasSubmission>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="ECatCourse_ECatAssignment.js.html">ECatCourse/ECatAssignment.js</a>, <a href="ECatCourse_ECatAssignment.js.html#line413">line 413</a>
</li></ul></dd>
<dt class="tag-author">Author:</dt>
<dd class="tag-author">
<ul>
<li>Gabe Abrams</li>
</ul>
</dd>
</dl>
<div class="description usertext">
Adds a comment to a submission
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>opts</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="attributes">
</td>
<td class="description last">object containing all arguments
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>assignmentId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">Canvas course Id</td>
</tr>
<tr>
<td class="name"><code>studentId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">Canvas student Id of the sub to comment
on</td>
</tr>
<tr>
<td class="name"><code>comment</code></td>
<td class="type">
<span class="param-type">string</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">The text of the comment</td>
</tr>
<tr>
<td class="name"><code>courseId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>default course id</code>
</td>
<td class="description last">Canvas course Id</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td class="name"><code>config</code></td>
<td class="type">
<span class="param-type">APIConfig</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">custom configuration for this specific endpoint
call (overwrites defaults that were included when api was initialized)</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
Canvas submission <a href="https://canvas.instructure.com/doc/api/submissions.html#Submission">https://canvas.instructure.com/doc/api/submissions.html#Submission</a>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.<CanvasSubmission></span>
</dd>
</dl>
<h4 class="name" id="createTextSubmission"><span class="type-signature">(async) </span>createTextSubmission<span class="signature">(opts, config<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<CanvasSubmission>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="ECatCourse_ECatAssignment.js.html">ECatCourse/ECatAssignment.js</a>, <a href="ECatCourse_ECatAssignment.js.html#line1118">line 1118</a>
</li></ul></dd>
<dt class="tag-author">Author:</dt>
<dd class="tag-author">
<ul>
<li>Gabe Abrams</li>
</ul>
</dd>
</dl>
<div class="description usertext">
Creates a text submission on behalf of the current user
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>opts</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="attributes">
</td>
<td class="description last">object containing all arguments
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>assignmentId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">The Canvas assignment Id</td>
</tr>
<tr>
<td class="name"><code>text</code></td>
<td class="type">
<span class="param-type">string</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">The text body of the submission</td>
</tr>
<tr>
<td class="name"><code>courseId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>default course id</code>
</td>
<td class="description last">Canvas course Id</td>
</tr>
<tr>
<td class="name"><code>comment</code></td>
<td class="type">
<span class="param-type">string</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">A text student comment to include</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td class="name"><code>config</code></td>
<td class="type">
<span class="param-type">APIConfig</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">custom configuration for this specific endpoint
call (overwrites defaults that were included when api was initialized)</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
Canvas submission <a href="https://canvas.instructure.com/doc/api/submissions.html#Submission">https://canvas.instructure.com/doc/api/submissions.html#Submission</a>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.<CanvasSubmission></span>
</dd>
</dl>
<h4 class="name" id="createURLSubmission"><span class="type-signature">(async) </span>createURLSubmission<span class="signature">(opts, config<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<CanvasSubmission>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="ECatCourse_ECatAssignment.js.html">ECatCourse/ECatAssignment.js</a>, <a href="ECatCourse_ECatAssignment.js.html#line1152">line 1152</a>
</li></ul></dd>
<dt class="tag-author">Author:</dt>
<dd class="tag-author">
<ul>
<li>Gabe Abrams</li>
</ul>
</dd>
</dl>
<div class="description usertext">
Creates a url submission on behalf of the current user
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>opts</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="attributes">
</td>
<td class="description last">object containing all arguments
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>assignmentId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">The Canvas assignment Id</td>
</tr>
<tr>
<td class="name"><code>url</code></td>
<td class="type">
<span class="param-type">string</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">The url of the submission</td>
</tr>
<tr>
<td class="name"><code>courseId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>default course id</code>
</td>
<td class="description last">Canvas course Id</td>
</tr>
<tr>
<td class="name"><code>comment</code></td>
<td class="type">
<span class="param-type">string</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">A text student comment to include</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td class="name"><code>config</code></td>
<td class="type">
<span class="param-type">APIConfig</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">custom configuration for this specific endpoint
call (overwrites defaults that were included when api was initialized)</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
Canvas submission <a href="https://canvas.instructure.com/doc/api/submissions.html#Submission">https://canvas.instructure.com/doc/api/submissions.html#Submission</a>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.<CanvasSubmission></span>
</dd>
</dl>
<h4 class="name" id="delete"><span class="type-signature">(async) </span>delete<span class="signature">(opts, config<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<CanvasAssignment>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="ECatCourse_ECatAssignment.js.html">ECatCourse/ECatAssignment.js</a>, <a href="ECatCourse_ECatAssignment.js.html#line347">line 347</a>
</li></ul></dd>
<dt class="tag-author">Author:</dt>
<dd class="tag-author">
<ul>
<li>Gabe Abrams</li>
</ul>
</dd>
</dl>
<div class="description usertext">
Delete an assignment
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>opts</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="attributes">
</td>
<td class="description last">object containing all arguments
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>assignmentId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">Canvas assignment Id</td>
</tr>
<tr>
<td class="name"><code>courseId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>default course id</code>
</td>
<td class="description last">Canvas course Id</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td class="name"><code>config</code></td>
<td class="type">
<span class="param-type">APIConfig</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">custom configuration for this specific endpoint
call (overwrites defaults that were included when api was initialized)</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
Canvas Assignment <a href="https://canvas.instructure.com/doc/api/assignments.html#Assignment">https://canvas.instructure.com/doc/api/assignments.html#Assignment</a>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.<CanvasAssignment></span>
</dd>
</dl>
<h4 class="name" id="deleteOverride"><span class="type-signature">(async) </span>deleteOverride<span class="signature">(opts, config<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<CanvasAssignmentOverride>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="ECatCourse_ECatAssignment.js.html">ECatCourse/ECatAssignment.js</a>, <a href="ECatCourse_ECatAssignment.js.html#line902">line 902</a>
</li></ul></dd>
<dt class="tag-author">Author:</dt>
<dd class="tag-author">
<ul>
<li>Gabe Abrams</li>
</ul>
</dd>
</dl>
<div class="description usertext">
Deletes an assignment override
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>opts</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="attributes">
</td>
<td class="description last">object containing all arguments
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>assignmentId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">Canvas assignment id to query</td>
</tr>
<tr>
<td class="name"><code>overrideId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">Canvas override id to look up</td>
</tr>
<tr>
<td class="name"><code>courseId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>default course id</code>
</td>
<td class="description last">Canvas course id to query</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td class="name"><code>config</code></td>
<td class="type">
<span class="param-type">APIConfig</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">custom configuration for this specific endpoint
call (overwrites defaults that were included when api was initialized)</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
Canvas AssignmentOverride <a href="https://canvas.instructure.com/doc/api/assignments.html#AssignmentOverride">https://canvas.instructure.com/doc/api/assignments.html#AssignmentOverride</a>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.<CanvasAssignmentOverride></span>
</dd>
</dl>
<h4 class="name" id="get"><span class="type-signature">(async) </span>get<span class="signature">(opts, config<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<CanvasAssignment>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="ECatCourse_ECatAssignment.js.html">ECatCourse/ECatAssignment.js</a>, <a href="ECatCourse_ECatAssignment.js.html#line122">line 122</a>
</li></ul></dd>
<dt class="tag-author">Author:</dt>
<dd class="tag-author">
<ul>
<li>Gabe Abrams</li>
</ul>
</dd>
</dl>
<div class="description usertext">
Get info on a specific assignment in a course
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>opts</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="attributes">
</td>
<td class="description last">object containing all arguments
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>assignmentId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">Canvas assignment Id</td>
</tr>
<tr>
<td class="name"><code>courseId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>default course id</code>
</td>
<td class="description last">Canvas course Id to query</td>
</tr>
<tr>
<td class="name"><code>ignoreOverridesForDates</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">if true, assignment
dates are taken from the default dates instead of from the ones in
overrides</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td class="name"><code>config</code></td>
<td class="type">
<span class="param-type">APIConfig</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">custom configuration for this specific endpoint
call (overwrites defaults that were included when api was initialized)</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
Canvas Assignment <a href="https://canvas.instructure.com/doc/api/assignments.html#Assignment">https://canvas.instructure.com/doc/api/assignments.html#Assignment</a>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.<CanvasAssignment></span>
</dd>
</dl>
<h4 class="name" id="getOverride"><span class="type-signature">(async) </span>getOverride<span class="signature">(opts, config<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<CanvasAssignmentOverride>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="ECatCourse_ECatAssignment.js.html">ECatCourse/ECatAssignment.js</a>, <a href="ECatCourse_ECatAssignment.js.html#line745">line 745</a>
</li></ul></dd>
<dt class="tag-author">Author:</dt>
<dd class="tag-author">
<ul>
<li>Gabe Abrams</li>
</ul>
</dd>
</dl>
<div class="description usertext">
Get a specific override on an assignment in a course
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>opts</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="attributes">
</td>
<td class="description last">object containing all arguments
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>assignmentId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">Canvas assignment id to query</td>
</tr>
<tr>
<td class="name"><code>overrideId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">Canvas override id to look up</td>
</tr>
<tr>
<td class="name"><code>courseId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>default course id</code>
</td>
<td class="description last">Canvas course id to query</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td class="name"><code>config</code></td>
<td class="type">
<span class="param-type">APIConfig</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">custom configuration for this specific endpoint
call (overwrites defaults that were included when api was initialized)</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
Canvas AssignmentOverride <a href="https://canvas.instructure.com/doc/api/assignments.html#AssignmentOverride">https://canvas.instructure.com/doc/api/assignments.html#AssignmentOverride</a>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.<CanvasAssignmentOverride></span>
</dd>
</dl>
<h4 class="name" id="getSubmission"><span class="type-signature">(async) </span>getSubmission<span class="signature">(opts, config<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<CanvasSubmission>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="ECatCourse_ECatAssignment.js.html">ECatCourse/ECatAssignment.js</a>, <a href="ECatCourse_ECatAssignment.js.html#line1077">line 1077</a>
</li></ul></dd>
<dt class="tag-author">Author:</dt>
<dd class="tag-author">
<ul>
<li>Gabe Abrams</li>
</ul>
</dd>
</dl>
<div class="description usertext">
Gets a single submission for an assignment
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>opts</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="attributes">
</td>
<td class="description last">object containing all arguments
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>assignmentId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">The Canvas assignment Id</td>
</tr>
<tr>
<td class="name"><code>studentId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">The Canvas student Id</td>
</tr>
<tr>
<td class="name"><code>courseId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>default course id</code>
</td>
<td class="description last">Canvas course Id</td>
</tr>
<tr>
<td class="name"><code>includeComments</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">If truthy, includes all
comments on submissions</td>
</tr>
<tr>
<td class="name"><code>includeRubricAssessment</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">If truthy,
includes rubric assessments: breakdown of score for each rubric item</td>
</tr>
<tr>
<td class="name"><code>excludeUser</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">If truthy, excludes
submission[i].user value with the submission's user information</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td class="name"><code>config</code></td>
<td class="type">
<span class="param-type">APIConfig</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">custom configuration for this specific endpoint
call (overwrites defaults that were included when api was initialized)</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
Canvas submission <a href="https://canvas.instructure.com/doc/api/submissions.html#Submission">https://canvas.instructure.com/doc/api/submissions.html#Submission</a>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.<CanvasSubmission></span>
</dd>
</dl>
<h4 class="name" id="list"><span class="type-signature">(async) </span>list<span class="signature">(opts<span class="signature-attributes">opt</span>, config<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<Array.<CanvasAssignment>>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="ECatCourse_ECatAssignment.js.html">ECatCourse/ECatAssignment.js</a>, <a href="ECatCourse_ECatAssignment.js.html#line88">line 88</a>
</li></ul></dd>
<dt class="tag-author">Author:</dt>
<dd class="tag-author">
<ul>
<li>Gabe Abrams</li>
</ul>
</dd>
</dl>
<div class="description usertext">
Lists the assignments in a course
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>opts</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">object containing all arguments
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>courseId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>default course id</code>
</td>
<td class="description last">Canvas course Id to
query</td>
</tr>
<tr>
<td class="name"><code>ignoreOverridesForDates</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">if true, assignment
dates are taken from the default dates instead of from the ones in
overrides</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td class="name"><code>config</code></td>
<td class="type">
<span class="param-type">APIConfig</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">custom configuration for this specific endpoint
call (overwrites defaults that were included when api was initialized)</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
list of Canvas Assignments <a href="https://canvas.instructure.com/doc/api/assignments.html#Assignment">https://canvas.instructure.com/doc/api/assignments.html#Assignment</a>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.<Array.<CanvasAssignment>></span>
</dd>
</dl>
<h4 class="name" id="listAllSubmissions"><span class="type-signature">(async) </span>listAllSubmissions<span class="signature">(opts<span class="signature-attributes">opt</span>, config<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<Array.<CanvasSubmission>>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="ECatCourse_ECatAssignment.js.html">ECatCourse/ECatAssignment.js</a>, <a href="ECatCourse_ECatAssignment.js.html#line1005">line 1005</a>
</li></ul></dd>
<dt class="tag-author">Author:</dt>
<dd class="tag-author">
<ul>
<li>Gabe Abrams</li>
</ul>
</dd>
</dl>
<div class="description usertext">
Lists the submissions for a batch of assignment/students in a course
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>opts</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">object containing all arguments
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>courseId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>default course id</code>
</td>
<td class="description last">Canvas course Id</td>
</tr>
<tr>
<td class="name"><code>studentIds</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>all students</code>
</td>
<td class="description last">a list of
specific students to pull submissions for</td>
</tr>
<tr>
<td class="name"><code>assignmentIds</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>all assignments</code>
</td>
<td class="description last">a list of
assignments to get submissions for</td>
</tr>
<tr>
<td class="name"><code>submittedSince</code></td>
<td class="type">
<span class="param-type">Date</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>beginning of time</code>
</td>
<td class="description last">Exclude
submissions that were not submitted or were submitted before this date</td>
</tr>
<tr>
<td class="name"><code>gradedSince</code></td>
<td class="type">
<span class="param-type">Date</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>beginning of time</code>
</td>
<td class="description last">Exclude
submissions that were not graded or were graded before this date</td>
</tr>
<tr>
<td class="name"><code>workflowState</code></td>
<td class="type">
<span class="param-type">string</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>all workflows</code>
</td>
<td class="description last">a workflow state
to filter by. Allowed values: 'submitted', 'unsubmitted', 'graded', or
'pending_review'</td>
</tr>
<tr>
<td class="name"><code>enrollmentState</code></td>
<td class="type">
<span class="param-type">string</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>all states except deleted</code>
</td>
<td class="description last">an
enrollment state to filter by. Allowed values: 'active' or 'concluded'</td>
</tr>
<tr>
<td class="name"><code>includeSubmissionHistory</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">if true, submission
history is included</td>
</tr>
<tr>
<td class="name"><code>includeComments</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">if true, includes all comments
on submissions</td>
</tr>
<tr>
<td class="name"><code>includeRubricAssessment</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">if true,
rubric assessment is included</td>
</tr>
<tr>
<td class="name"><code>includeAssignment</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">if true, the assignment is
included for each submission</td>
</tr>
<tr>
<td class="name"><code>includeTotalScores</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">if true, include the total
scores</td>
</tr>
<tr>
<td class="name"><code>includeVisibility</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">if true, include visibility</td>
</tr>
<tr>
<td class="name"><code>includeUser</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">if true, include the user info
with each submission</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td class="name"><code>config</code></td>
<td class="type">
<span class="param-type">APIConfig</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">custom configuration for this specific endpoint
call (overwrites defaults that were included when api was initialized)</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
list of submissions <a href="https://canvas.instructure.com/doc/api/submissions.html#Submission">https://canvas.instructure.com/doc/api/submissions.html#Submission</a>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.<Array.<CanvasSubmission>></span>
</dd>
</dl>
<h4 class="name" id="listGradeableStudents"><span class="type-signature">(async) </span>listGradeableStudents<span class="signature">(opts, config<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<Array.<CanvasUser>>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="ECatCourse_ECatAssignment.js.html">ECatCourse/ECatAssignment.js</a>, <a href="ECatCourse_ECatAssignment.js.html#line377">line 377</a>
</li></ul></dd>
<dt class="tag-author">Author:</dt>
<dd class="tag-author">
<ul>
<li>Gabe Abrams</li>
</ul>
</dd>
</dl>
<div class="description usertext">
List gradeable students for a specific assignment
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>opts</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="attributes">
</td>
<td class="description last">object containing all arguments
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>assignmentId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">Canvas assignment Id to query</td>
</tr>
<tr>
<td class="name"><code>courseId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>default course id</code>
</td>
<td class="description last">Canvas course Id to
query</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td class="name"><code>config</code></td>
<td class="type">
<span class="param-type">APIConfig</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">custom configuration for this specific endpoint
call (overwrites defaults that were included when api was initialized)</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
list of Canvas users <a href="https://canvas.instructure.com/doc/api/users.html#User">https://canvas.instructure.com/doc/api/users.html#User</a>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.<Array.<CanvasUser>></span>
</dd>
</dl>
<h4 class="name" id="listOverrides"><span class="type-signature">(async) </span>listOverrides<span class="signature">(opts, config<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<Array.<CanvasAssignmentOverride>>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="ECatCourse_ECatAssignment.js.html">ECatCourse/ECatAssignment.js</a>, <a href="ECatCourse_ECatAssignment.js.html#line718">line 718</a>
</li></ul></dd>
<dt class="tag-author">Author:</dt>
<dd class="tag-author">
<ul>
<li>Gabe Abrams</li>
</ul>
</dd>
</dl>
<div class="description usertext">
Gets the list of overrides for an assignment
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>opts</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="attributes">
</td>
<td class="description last">object containing all arguments
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>assignmentId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">Canvas assignment id to look up</td>
</tr>
<tr>
<td class="name"><code>courseId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>default course id</code>
</td>
<td class="description last">Canvas course id to query</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td class="name"><code>config</code></td>
<td class="type">
<span class="param-type">APIConfig</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">custom configuration for this specific endpoint
call (overwrites defaults that were included when api was initialized)</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
list of Canvas AssignmentOverrides <a href="https://canvas.instructure.com/doc/api/assignments.html#AssignmentOverride">https://canvas.instructure.com/doc/api/assignments.html#AssignmentOverride</a>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.<Array.<CanvasAssignmentOverride>></span>
</dd>
</dl>
<h4 class="name" id="listSubmissions"><span class="type-signature">(async) </span>listSubmissions<span class="signature">(opts, config<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<Array.<CanvasSubmission>>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="ECatCourse_ECatAssignment.js.html">ECatCourse/ECatAssignment.js</a>, <a href="ECatCourse_ECatAssignment.js.html#line933">line 933</a>
</li></ul></dd>
<dt class="tag-author">Author:</dt>
<dd class="tag-author">
<ul>
<li>Gabe Abrams</li>
</ul>
</dd>
</dl>
<div class="description usertext">
Lists the submissions to a specific assignment in a course. If the assignment
has anonymous grading turned on, to exclude the test user, we will also
pull the list of students in the course. If including the user object for
an anonymously graded assignment, fake user objects will be created where
each submissions[i].user object contains a isAnonymousUser boolean that is
true
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>opts</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="attributes">
</td>
<td class="description last">object containing all arguments
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>assignmentId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">The Canvas assignment Id to query</td>
</tr>
<tr>
<td class="name"><code>courseId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>default course id</code>
</td>
<td class="description last">Canvas course Id</td>
</tr>
<tr>
<td class="name"><code>includeComments</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">If truthy, includes all
comments on submissions</td>
</tr>
<tr>
<td class="name"><code>includeRubricAssessment</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">If truthy,
includes rubric assessments: breakdown of score for each rubric item</td>
</tr>
<tr>
<td class="name"><code>excludeUser</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">If truthy, excludes
submission[i].user value with the submission's user information</td>
</tr>
<tr>
<td class="name"><code>includeTestStudent</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">If truthy, includes
dummy submission by test student (student view) if there is one. Note:
if anonymous grading is enabled for this assignment, includeTestStudent
will be true because we don't know which student is the test student</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td class="name"><code>config</code></td>
<td class="type">
<span class="param-type">APIConfig</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">custom configuration for this specific endpoint
call (overwrites defaults that were included when api was initialized)</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
list of Canvas submissions <a href="https://canvas.instructure.com/doc/api/submissions.html#Submission">https://canvas.instructure.com/doc/api/submissions.html#Submission</a>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.<Array.<CanvasSubmission>></span>
</dd>
</dl>
<h4 class="name" id="update"><span class="type-signature">(async) </span>update<span class="signature">(opts, config<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<CanvasAssignment>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="ECatCourse_ECatAssignment.js.html">ECatCourse/ECatAssignment.js</a>, <a href="ECatCourse_ECatAssignment.js.html#line155">line 155</a>
</li></ul></dd>
<dt class="tag-author">Author:</dt>
<dd class="tag-author">
<ul>
<li>Gabe Abrams</li>
</ul>
</dd>
</dl>
<div class="description usertext">
Updates a Canvas assignment
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>opts</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="attributes">
</td>
<td class="description last">object containing all arguments
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>assignmentId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">Canvas assignment Id to update</td>
</tr>
<tr>
<td class="name"><code>courseId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>default course id</code>
</td>
<td class="description last">Canvas course Id to query</td>
</tr>
<tr>
<td class="name"><code>name</code></td>
<td class="type">
<span class="param-type">string</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>current value</code>
</td>
<td class="description last">The name of the assignment</td>
</tr>
<tr>
<td class="name"><code>pointsPossible</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>current value</code>
</td>
<td class="description last">Points possible</td>
</tr>
<tr>
<td class="name"><code>dueAt</code></td>
<td class="type">
<span class="param-type">date</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>current value</code>
</td>
<td class="description last">Due at datetime</td>
</tr>
<tr>
<td class="name"><code>lockAt</code></td>
<td class="type">
<span class="param-type">date</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>current value</code>
</td>
<td class="description last">Due at datetime</td>
</tr>
<tr>
<td class="name"><code>unlockAt</code></td>
<td class="type">
<span class="param-type">date</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>current value</code>
</td>
<td class="description last">Due at datetime</td>
</tr>
<tr>
<td class="name"><code>description</code></td>
<td class="type">
<span class="param-type">string</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>current value</code>
</td>
<td class="description last">html description of
the assignment</td>
</tr>
<tr>
<td class="name"><code>submissionTypes</code></td>
<td class="type">
<span class="param-type">Array.<string></span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>current value</code>
</td>
<td class="description last">Submission type(s)</td>
</tr>
<tr>
<td class="name"><code>allowedExtensions</code></td>
<td class="type">
<span class="param-type">string</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>current value</code>
</td>
<td class="description last">List of allowed
file extensions (exclude period). Online upload must be enabled</td>
</tr>
<tr>
<td class="name"><code>gradingType</code></td>
<td class="type">
<span class="param-type">string</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>current value</code>
</td>
<td class="description last">Grading type</td>
</tr>
<tr>
<td class="name"><code>position</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>current value</code>
</td>
<td class="description last">Position in assignment
list</td>
</tr>
<tr>
<td class="name"><code>published</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>current value</code>
</td>
<td class="description last">If true, publish page
upon creation. Must be a boolean</td>
</tr>
<tr>
<td class="name"><code>muted</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>current value</code>
</td>
<td class="description last">If true, assignment is
muted. Must be a boolean</td>
</tr>
<tr>
<td class="name"><code>groupSetId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>current value</code>
</td>
<td class="description last">Student group set Id</td>
</tr>
<tr>
<td class="name"><code>assignmentGroupId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>current value</code>
</td>
<td class="description last">Assignment group
Id</td>
</tr>
<tr>
<td class="name"><code>peerReviewsEnabled</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>current value</code>
</td>
<td class="description last">If true, users
asked to submit peer reviews. Must be a boolean</td>
</tr>
<tr>
<td class="name"><code>automaticPeerReviewsEnabled</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>current value</code>
</td>
<td class="description last">If
true, Canvas will automatically assign peer reviews. Must be a boolean</td>
</tr>
<tr>
<td class="name"><code>omitFromFinalGrade</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>current value</code>
</td>
<td class="description last">If true,
assignment is omitted from the final grade. Must be a boolean</td>
</tr>
<tr>
<td class="name"><code>gradeGroupStudentsIndividually</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>current value</code>
</td>
<td class="description last">If
true, students in groups can be given separate grades and when one student
in a group gets a grade, other students do not get graded. Must be a
boolean</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td class="name"><code>config</code></td>
<td class="type">
<span class="param-type">APIConfig</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">custom configuration for this specific endpoint
call (overwrites defaults that were included when api was initialized)</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
Canvas Assignment <a href="https://canvas.instructure.com/doc/api/assignments.html#Assignment">https://canvas.instructure.com/doc/api/assignments.html#Assignment</a>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.<CanvasAssignment></span>
</dd>
</dl>
<h4 class="name" id="updateGrade"><span class="type-signature">(async) </span>updateGrade<span class="signature">(opts, config<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<CanvasSubmission>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="ECatCourse_ECatAssignment.js.html">ECatCourse/ECatAssignment.js</a>, <a href="ECatCourse_ECatAssignment.js.html#line446">line 446</a>
</li></ul></dd>
<dt class="tag-author">Author:</dt>
<dd class="tag-author">
<ul>
<li>Gabe Abrams</li>
</ul>
</dd>
</dl>
<div class="description usertext">
Updates a student's grade and/or comment
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>opts</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="attributes">
</td>
<td class="description last">object containing all arguments
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>assignmentId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">Canvas assignment id</td>
</tr>
<tr>
<td class="name"><code>studentId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">Canvas student id</td>
</tr>
<tr>
<td class="name"><code>courseId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>default course id</code>
</td>
<td class="description last">Canvas course id</td>
</tr>
<tr>
<td class="name"><code>points</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">the overall points to assign to the
student</td>
</tr>
<tr>
<td class="name"><code>comment</code></td>
<td class="type">
<span class="param-type">string</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">the grader comment to leave on the
submission</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td class="name"><code>config</code></td>
<td class="type">
<span class="param-type">APIConfig</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">custom configuration for this specific endpoint
call (overwrites defaults that were included when api was initialized)</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
Canvas submission <a href="https://canvas.instructure.com/doc/api/submissions.html#Submission">https://canvas.instructure.com/doc/api/submissions.html#Submission</a>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.<CanvasSubmission></span>
</dd>
</dl>
<h4 class="name" id="updateGrades"><span class="type-signature">(async) </span>updateGrades<span class="signature">(opts, config<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<CanvasProgress>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="ECatCourse_ECatAssignment.js.html">ECatCourse/ECatAssignment.js</a>, <a href="ECatCourse_ECatAssignment.js.html#line482">line 482</a>
</li></ul></dd>
<dt class="tag-author">Author:</dt>
<dd class="tag-author">
<ul>
<li>Gabe Abrams</li>
</ul>
</dd>
</dl>
<div class="description usertext">
Batch updates grades and/or comments. Also supports updating rubric items
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>opts</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="attributes">
</td>
<td class="description last">object containing all arguments
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>assignmentId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">Canvas assignment Id</td>
</tr>
<tr>
<td class="name"><code>gradeItems</code></td>
<td class="type">
<span class="param-type">Array</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">List of grade items to upload to Canvas:
[{
studentId: <student id>,
points: <optional, points to overwrite with>,
comment: <optional, comment to append (or overwrite if rubric comment)>,
rubricId: <optional, rubric item (overall grade/comment if excluded)>
},...]</td>
</tr>
<tr>
<td class="name"><code>courseId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>default course id</code>
</td>
<td class="description last">Canvas course Id</td>
</tr>
<tr>
<td class="name"><code>waitForCompletion</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">If true, promise won't
resolve until Canvas has finished updating the grades, instead of resolving
once the grade changes have been queued</td>
</tr>
<tr>
<td class="name"><code>waitForCompletionTimeout</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>2</code>
</td>
<td class="description last">The number of minutes
to wait before timing out the grade update job</td>
</tr>
<tr>
<td class="name"><code>dontMergeRubricItemUpdates</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
</td>
<td class="description last">When uploading
grades to a rubric item, we intelligently merge rubric item updates with
previous rubric assessments. For instance, if the assignment's rubric is:
{ grammar, argument, formatting }
And the student of interest has the following rubric assessment so far:
{ grammar: 10/10, argument: 8/10, formatting: ungraded }
When we upload a new gradeItem (9/10 points) to the student's
formatting rubric item, the result is:
{ grammar: 10/10, argument: 8/10, formatting: 9/10 }
However, if dontMergeRubricItemUpdates=true, the result is:
{ grammar: ungraded, argument: ungraded, formatting: 9/10 }
Note: merging is an added feature. By default, the Canvas API does not
merge rubric assessments.</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td class="name"><code>config</code></td>
<td class="type">
<span class="param-type">APIConfig</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">custom configuration for this specific endpoint
call (overwrites defaults that were included when api was initialized)</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
Canvas Progress object <a href="https://canvas.instructure.com/doc/api/progress.html#Progress">https://canvas.instructure.com/doc/api/progress.html#Progress</a>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.<CanvasProgress></span>
</dd>
</dl>
<h4 class="name" id="updateOverride"><span class="type-signature">(async) </span>updateOverride<span class="signature">(opts, config<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<CanvasAssignmentOverride>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="ECatCourse_ECatAssignment.js.html">ECatCourse/ECatAssignment.js</a>, <a href="ECatCourse_ECatAssignment.js.html#line843">line 843</a>
</li></ul></dd>
<dt class="tag-author">Author:</dt>
<dd class="tag-author">
<ul>
<li>Gabe Abrams</li>
</ul>
</dd>
</dl>
<div class="description usertext">
Update an assignment override. Note: target can only be updated if the
override is a student override (if this is a group or section override,
the target remains unchanged).
Also, note that if any dates (dueAt, unlockAt, or lockAt) are omitted,
their previous override values will be changed to "none." For instance,
if the previous override has a dueAt and the update does not, the updated
override will have no dueAt date (the target(s) of the override will have
no deadline).
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>opts</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="attributes">
</td>
<td class="description last">object containing all arguments
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>assignmentId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">Canvas assignment id</td>
</tr>
<tr>
<td class="name"><code>overrideId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">the override id to update</td>
</tr>
<tr>
<td class="name"><code>studentIds</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="attributes">
</td>
<td class="default">
</td>
<td class="description last">List of Canvas student IDs being
overridden</td>
</tr>
<tr>
<td class="name"><code>courseId</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>default course id</code>
</td>
<td class="description last">Canvas course id</td>
</tr>
<tr>
<td class="name"><code>title</code></td>
<td class="type">
<span class="param-type">string</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>current value</code>
</td>
<td class="description last">New title of the
override</td>
</tr>
<tr>
<td class="name"><code>dueAt</code></td>
<td class="type">
<span class="param-type">date</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>no due date</code>
</td>
<td class="description last">New due date. If excluded, the
target(s) of this override have no due date (they can submit whenever they
want without being marked as late)</td>
</tr>
<tr>
<td class="name"><code>unlockAt</code></td>
<td class="type">
<span class="param-type">date</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>no unlock date</code>
</td>
<td class="description last">New unlock date. If
excluded, the target(s) of this override can immediately see the assignment
(their unlock date is the beginning of time)</td>
</tr>
<tr>
<td class="name"><code>lockAt</code></td>
<td class="type">
<span class="param-type">date</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>no lock date</code>
</td>
<td class="description last">New lock date. If excluded,
the target(s) of this override can see and submit the assignment at
any point in the future (their lock date is the end of time)</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td class="name"><code>config</code></td>
<td class="type">
<span class="param-type">APIConfig</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">custom configuration for this specific endpoint
call (overwrites defaults that were included when api was initialized)</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
Canvas AssignmentOverride <a href="https://canvas.instructure.com/doc/api/assignments.html#AssignmentOverride">https://canvas.instructure.com/doc/api/assignments.html#AssignmentOverride</a>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.<CanvasAssignmentOverride></span>
</dd>
</dl>
</article>
</section>
</div>
<br class="clear">
<footer>
We use <a href="https://github.com/jsdoc3/jsdoc">JSDoc</a> and the <a href="https://github.com/clenemt/docdash">docdash</a> theme to generate our docs.
</footer>
<script>prettyPrint();</script>
<script src="scripts/polyfill.js"></script>
<script src="scripts/linenumber.js"></script>
</body>
</html>