@ @walter_yuan I have not seen this happen. The basic code I use for this (in python) is:
access_token=configuration["canvas"]["access_token"]
baseUrl="https://"+configuration["canvas"]["host"]+"/api/v1/courses/"
header = {'Authorization' : 'Bearer ' + access_token}
payload = {}
----------------------------------------------------------------------
def create_assignment(course_id, name, max_points, grading_type, description):
# Use the Canvas API to create an assignment
# POST /api/v1/courses/:course_id/assignments
url = baseUrl + '%s/assignments' % (course_id)
if Verbose_Flag:
print("url: " + url)
payload={'assignment[name]': name,
'assignment[submission_types][]': ["none"],
'assignment[peer_reviews]': False,
'assignment[notify_of_update]': False,
'assignment[grade_group_students_individually]': True,
'assignment[points_possible]': max_points,
'assignment[grading_type]': grading_type,
'assignment[description]': description,
'assignment[published]': True # if not published it will not be in the gradebook
}
r = requests.post(url, headers = header, data=payload)
if r.status_code == requests.codes.ok:
if r.status_code == requests.codes.ok:
page_response=r.json()
print("inserted assignment")
return True
return False
I have not created a large number of assignments this way, but will do so over the next few days.