The Instructure Community will enter a read-only state on November 22, 2025 as we prepare to migrate to our new Community platform in early December. Read our blog post for more info about this change.
Im trying to make a custom grade book column, however, when trying to do so I get this error:
{
"errors":
[{
"message":"An error occurred.",
"error_code":"internal_server_error"}
],
"error_report_id":519
}
The request is done in python and here is my code, most of it is taken from the custom gradebook column documentation
def post(self, request_url):
total_url = self._api_url + request_url
test_data = {
"column": {
"id": 2,
"teacher_notes": False,
"title": "Stuff",
"position": 1,
"hidden": False,
"read_only": True,
},
"access_token": self._access_token
}
r = requests.post(total_url, data = test_data)
print(r.text)
Im using pythons requests library to handle the http stuff.
total_url looks something like https://my-university.com/api/v1/courses/134/custom_gradebook_columns
Any help would be appreciated, thanks!
Solved! Go to Solution.
I'm not using Python, however, the boolean value must be lower case (E.g. true, false - not True, False)
By the way, "id" is not part of the endpoint
{
"column": {
"title": "Stuff",
"teacher_notes": false,
"position": 1,
"hidden": false,
"read_only": true
}
}
Try 0 (false) and 1 (true)
If you're using Python, you might want to consider using this Python Wrapper to access Canvas API: https://community.canvaslms.com/t5/InstructureCon-2017/PyCanvas-A-Python-Wrapper-for-the-Canvas-API-...
I'm not using Python, however, the boolean value must be lower case (E.g. true, false - not True, False)
By the way, "id" is not part of the endpoint
{
"column": {
"title": "Stuff",
"teacher_notes": false,
"position": 1,
"hidden": false,
"read_only": true
}
}
boolean values in python have their first char capitalized (True, False). Changing them to lowercase will throw an undefined error. I got rid of ID but still no luck. Still getting an internal server error.
Try 0 (false) and 1 (true)
If you're using Python, you might want to consider using this Python Wrapper to access Canvas API: https://community.canvaslms.com/t5/InstructureCon-2017/PyCanvas-A-Python-Wrapper-for-the-Canvas-API-...
Using the CanvasAPI's create_custom_column method worked for me, thanks for bringing it to my attention!
Community helpTo interact with Panda Bot, our automated chatbot, you need to sign up or log in:
Sign inTo interact with Panda Bot, our automated chatbot, you need to sign up or log in:
Sign in
This discussion post is outdated and has been archived. Please use the Community question forums and official documentation for the most current and accurate information.