Skip to main content Skip to navigation

Update an assignment

Edit's an assignment's properties.

Permission requirements

The user must have Permissions.Assignment.Update ("Edit an assignment") on the assignment that will be edited. By default, roles that have this permission are:

  • Module Assistant
  • Module Manager
  • Departmental Administrator
  • User Access Manager

Information about API permissions

Definition

PUT https://tabula.warwick.ac.uk/api/v1/module/:moduleCode/assignments/:assignmentId

The request Content-Type must be set to application/json

URL substitution variables

:moduleCode The lowercase form of the module code for the module containing the assignment, e.g. cs118
:assignmentId The unique identifier for the assignment

Request parameters

name A name for the assignment, must be unique amongst non-archived assignments
openDate Optional The date that the assignment is open for submission, in ISO date format
closeDate Optional The date that the assignment closes, in ISO date format. closeDate is Required unless openEnded is true
openEnded Optional A boolean value, set to true if the assignment never closes after it's been opened.
Default: false
collectMarks Optional A boolean value for whether the assignment should collect marks. If not, no mark or grade options will be available.
Default: true
markingWorkflow Optional The unique ID of a marking workflow to use for this assignment. The workflow must be created in the Department
feedbackTemplate Optional The unique ID of a feedback template to use for this assignment. The template must be created in the Department
summative Optional A boolean value, set to true if the assignment is credit-bearing (summative), false otherwise (formative). Formative assignments are not considered in 20-day feedback turnaround reports.
Default: true
dissertation Optional A boolean value, set to true if the assignment is a dissertation. Dissertations are not considered in 20-day feedback turnaround reports.
Default: false
collectSubmissions Optional A boolean value for whether the assignment should collect submissions. If not, no submission options will be available.
Default: true
displayPlagiarismNotice Optional true if the plagiarism notice should be displayed to students when submitting, false otherwise
Default: true
restrictSubmissions Optional true if only students who are in the student membership should be allowed to submit, false otherwise (anyone with the URL can submit)
Default: false
allowLateSubmissions Optional true if late submission should be allowed for students who have not previously submitted, false otherwise
Default: true
allowResubmission Optional true if students shoule be allowed to resubmit up to the deadline, false otherwise
Default: true
allowExtensions Optional true if students should be allowed to request extensions (and the Department allows it), false otherwise
Default: true
fileAttachmentLimit Optional An Integer for the maximum number of attachments a student can submit. Must be 1 or more.
Default: 1
fileAttachmentTypes Optional An array of strings containing file extensions that students are allowed to submit. If empty, students can submit any file
Default: []
submissionFormText Optional Text displayed to students when submitting
Default: ""
wordCountMin Optional The minimum word count a student must declare to be able to submit, or null if word counts aren't required or there is no lower limit
Default: null
wordCountMax Optional The maximum word count a student must declare to be able to submit, or null if word counts aren't required or there is no upper limit
Default: null
wordCountConventions Optional Text displayed to student when they submit their word count
Default: "Exclude any bibliography or appendices."
includeUsers Optional Array of student university IDs or usercodes who should be manually enrolled on the assignment. This will overwrite the existing list of included users.

This can be used to add users beyond those included from a SITS assignment component link.
excludeUsers Optional ⋅ Since 2020.1.2

Array of student university IDs or usercodes who should be manually excluded from the assignment. This will overwrite the existing list of excluded users.

This can be used to remove users who would otherwise be included from a SITS assignment component link.

Example request

{
  "name": "My assignment",
  "openDate": "2013-11-05",
  "closeDate": "2014-01-27",
"includeUsers": [
"1673473"
] }

Response parameters

An unsuccessful response will be returned in the standard format. A successful response will return the HTTP code 200 OK and the following parameters:

success Boolean true
status The string "ok"
assignment An assignment object representing the assignment
genericFeedback The generic feedback for the assignment, as a string, if set
students An array of assignment student objects representing the students' submissions and feedback

Example response

{
  "success": true,
  "status": "ok",
  "assignment": {
    "id": "2552f556-6210-4de7-bb8e-01a3180f609e",
    "archived": false,
    "academicYear": "13/14",
    "name": "Coursework",
    "studentUrl": "https://tabula.warwick.ac.uk/coursework/module/es173/2552f556-6210-4de7-bb8e-01a3180f609e/",
    "collectMarks": true,
    "markingWorkflow": null,
    "feedbackTemplate": null,
    "summative": true,
    "dissertation": false,
    "collectSubmissions": true,
    "displayPlagiarismNotice": false,
    "restrictSubmissions": true,
    "allowLateSubmissions": true,
    "allowResubmission": true,
    "allowExtensions": true,
    "fileAttachmentLimit": 1,
    "fileAttachmentTypes": [],
    "submissionFormText": "Submit this",
    "wordCountMin": null,
    "wordCountMax": null,
    "wordCountConventions": "",
    "submissions": 1,
    "unapprovedExtensions": 0,
    "studentMembership": {
      "total": 8,
      "linkedSits": 0,
      "included": 8,
      "excluded": 0
    },
    "sitsLinks": [],
    "openEnded": false,
    "opened": true,
    "closed": true,
    "openDate": "2013-11-05T00:00:00Z",
    "closeDate": "2014-01-27T10:00:00Z",
    "feedbackDeadline": "2014-02-24",
    "feedback": 1,
    "unpublishedFeedback": 1
  }
}

Tabula API Methods