For the complete documentation index, see llms.txt. This page is also available as Markdown.

Coursework

This group refers to entities tied to student learning delivery or feedback, such as Tasks and Grades.

Get all Grades for a Class during an Academic Term

get
/v2p0/classes/{class_id}/assessments/term/{term_id}/grades

Retrieves all gradebook grades for every student in a class during a specific academic term. Each student's response includes an array of task assignments with their scores, comments, and grade conversions.

Returned fields for each task include:

  • group_mark: The percentage achieved on the task, converted using the grade scale set for the program.

  • score: The raw number of points a student achieved.

  • max_points: The total available points for the task.

  • dropbox_status: Upload status of the student submission. Only present if Dropbox Coursework Submission is enabled for the task. Values: waiting, early, on_time, late.

  • binary: Completion status for binary-graded tasks. Values: completed, incompleted.

  • due_date_extension_days: Number of extra days granted to the student for this task. Only present if an extension was given.

  • created_at: The earliest creation timestamp stored across the grade's parts, as an ISO 8601 timestamp.

  • updated_at: The latest modification timestamp stored across the grade's parts, as an ISO 8601 timestamp.

A grade can be made up of several parts (points, criteria, completion, comment), and the pair is taken across all of them rather than being a single record's own timestamps. Both report what is stored on those parts; they are not a log of grading activity, and bulk operations such as imports can move updated_at.

Either field is omitted entirely, never null, when no stored date exists: an ungraded task, or an IB MYP summative grade that is a comment only. A missing created_at usually means no recorded grade. The two are omitted independently, so check for each rather than assuming one implies the other.

Authorizations
AuthorizationstringRequired

OAuth 2.0 Bearer token obtained via client credentials grant. Pass the token in the Authorization header as Bearer <token>.

Path parameters
class_idintegerRequired

Unique identifier for the class.

term_idintegerRequired

Unique identifier for the academic term.

Query parameters
student_idsinteger[]Optional

Filter results to specific students. Accepts repeated params or a comma-separated string.

Example: student_ids=1,2,3 OR student_ids[]=1&student_ids[]=2
include_archived_studentsbooleanOptional

When true, includes students who have been archived (graduated or withdrawn). Defaults to false.

Responses
200

Success

application/json
get/v2p0/classes/{class_id}/assessments/term/{term_id}/grades
GET /v2p0/classes/{class_id}/assessments/term/{term_id}/grades HTTP/1.1
Host: api.managebac.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "students": [
    {
      "id": 12068821,
      "name": "Epelbaum, Chloe",
      "assignments": [
        {
          "id": 18376636,
          "name": "Short Story Analysis Quiz",
          "group_mark": 5,
          "dropbox_status": "waiting",
          "due_date_extension_days": 2,
          "due_date": "2023-04-25T14:05:00.000Z",
          "created_at": "2023-04-28T09:12:33.000Z",
          "updated_at": "2023-05-02T16:41:07.000Z",
          "comment": null,
          "score": 22,
          "max_points": 32
        },
        {
          "id": 18376694,
          "name": "Write a Short Story Themed on Katharine Mansfield",
          "group_mark": 7,
          "dropbox_status": "waiting",
          "due_date": "2023-04-25T14:05:00.000Z",
          "created_at": "2023-04-28T09:12:33.000Z",
          "updated_at": "2023-05-02T16:41:07.000Z",
          "comment": null,
          "score": 5,
          "max_points": 5
        },
        {
          "id": 18376845,
          "name": "Read a Selected Short Story by Anton Chekhov",
          "group_mark": 7,
          "dropbox_status": "early",
          "due_date": "2023-04-25T14:05:00.000Z",
          "created_at": "2023-04-28T09:12:33.000Z",
          "updated_at": "2023-05-02T16:41:07.000Z",
          "comment": "Great analysis, the improvement is noticeable",
          "score": 11,
          "max_points": 12
        },
        {
          "id": 18376852,
          "name": "Gwendolyn Brooks Seminar",
          "group_mark": 7,
          "dropbox_status": "early",
          "due_date": "2023-04-25T14:05:00.000Z",
          "created_at": "2023-04-28T09:12:33.000Z",
          "updated_at": "2023-05-02T16:41:07.000Z",
          "comment": "Your presentation included insightful analysis of The Near-Johannesburg Boy",
          "score": 19,
          "max_points": 20
        },
        {
          "id": 18376858,
          "name": "Practice Commentary",
          "group_mark": 4,
          "dropbox_status": "early",
          "due_date": "2023-04-25T14:05:00.000Z",
          "created_at": "2023-04-28T09:12:33.000Z",
          "updated_at": "2023-05-02T16:41:07.000Z",
          "comment": "Your commentary shows a lack of understanding about how form is used to convey the message of the extract",
          "score": 14,
          "max_points": 21
        }
      ]
    },
    {
      "id": 12068757,
      "name": "Evans, Raymond",
      "assignments": [
        {
          "id": 18376636,
          "name": "Short Story Analysis Quiz",
          "group_mark": 7,
          "comment": "Impressive analysis.",
          "due_date": "2023-04-25T14:05:00.000Z",
          "created_at": "2023-04-28T09:12:33.000Z",
          "updated_at": "2023-05-02T16:41:07.000Z",
          "score": 29,
          "max_points": 32,
          "binary": "completed"
        },
        {
          "id": 18376694,
          "name": "Write a Short Story Themed on Katharine Mansfield",
          "group_mark": 7,
          "comment": null,
          "due_date": "2023-04-25T14:05:00.000Z",
          "created_at": "2023-04-28T09:12:33.000Z",
          "updated_at": "2023-05-02T16:41:07.000Z",
          "score": 5,
          "max_points": 5,
          "binary": "completed"
        },
        {
          "id": 18376845,
          "name": "Read a Selected Short Story by Anton Chekhov",
          "group_mark": 5,
          "comment": null,
          "due_date": "2023-04-25T14:05:00.000Z",
          "created_at": "2023-04-28T09:12:33.000Z",
          "updated_at": "2023-05-02T16:41:07.000Z",
          "score": 9,
          "max_points": 12,
          "binary": "incompleted"
        },
        {
          "id": 18376852,
          "name": "Gwendolyn Brooks Seminar",
          "group_mark": 5,
          "comment": null,
          "due_date": "2023-04-25T14:05:00.000Z",
          "created_at": "2023-04-28T09:12:33.000Z",
          "updated_at": "2023-05-02T16:41:07.000Z",
          "score": 16,
          "max_points": 21,
          "binary": "completed"
        }
      ]
    }
  ],
  "meta": {
    "current_page": 1,
    "total_pages": 1,
    "total_count": 2,
    "per_page": 10
  }
}

Get Term Grades for a Class

get
/v2p0/classes/{class_id}/assessments/term/{term_id}/term-grades

Retrieves all term grades for a class during a specific academic term. The response shape varies depending on the program type of the class:

IB Diploma, Career Programme, Cambridge, Advanced Placement, and other programs: Returns a grade (letter or number), optional exam_grade (if exam grades are enabled for the term), a computed average with percentage and grade, comments, and an array of custom rubrics.

IB Middle Years Programme (MYP): Returns criterion-based grades as a hash mapping criterion letters (A, B, C, D) to numeric values (1-8), a sum of all criterion grades, optional id_grades and id_sum for Interdisciplinary Unit assessment, optional atl_skills for Approaches to Learning, comments, and custom rubrics.

IB Primary Years Programme (PYP): Returns the most detailed structure including learner_profile with standards and criteria, subjects with phases, strands, and overall assessments, units with transdisciplinary themes and subject-specific assessments, optional atl_assessment, comments, and custom rubrics.

Authorizations
AuthorizationstringRequired

OAuth 2.0 Bearer token obtained via client credentials grant. Pass the token in the Authorization header as Bearer <token>.

Path parameters
class_idintegerRequired

Unique identifier for the class.

term_idintegerRequired

Unique identifier for the academic term.

Query parameters
student_idsinteger[]Optional

Filter results to specific students. Accepts repeated params or a comma-separated string.

include_archived_studentsbooleanOptional

When true, includes students who have been archived (graduated or withdrawn). Defaults to false.

unenrolled_onlybooleanOptional

When true, returns only term grades for students who are no longer enrolled in the class but still have grade records. Useful for retrieving historical data after student transfers.

Responses
200

Success

application/json
get/v2p0/classes/{class_id}/assessments/term/{term_id}/term-grades
GET /v2p0/classes/{class_id}/assessments/term/{term_id}/term-grades HTTP/1.1
Host: api.managebac.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "students": [
    {
      "id": 12068821,
      "name": "Epelbaum, Chloe",
      "term_grade": {
        "grade": 6,
        "exam_grade": 5,
        "average": {
          "percent": 85,
          "grade": 6
        },
        "comments": "Your class participation and determination to help your peers is remarkable.",
        "rubrics": [
          {
            "id": 11181,
            "title": "Class Participation",
            "grade": "Excellent"
          }
        ]
      }
    },
    {
      "id": 12068757,
      "name": "Evans, Raymond",
      "term_grade": {
        "grade": 5,
        "average": {
          "percent": 86.5,
          "grade": "5"
        },
        "comments": "You've managed to meet expectations.",
        "rubrics": [
          {
            "id": 11181,
            "title": "Class Participation",
            "grade": "Satisfactory"
          }
        ]
      }
    }
  ],
  "meta": {
    "current_page": 1,
    "total_pages": 1,
    "total_count": 2,
    "per_page": 10
  }
}

Get Criteria for a Class

get
/v2p0/classes/{id}/criteria

This endpoint retrieves all criteria belonging to the class as specified by ID.

Criteria define the assessment dimensions used when grading tasks. Each criterion includes a title and a list of descriptors with their corresponding values.

Authorizations
AuthorizationstringRequired

OAuth 2.0 Bearer token obtained via client credentials grant. Pass the token in the Authorization header as Bearer <token>.

Path parameters
idintegerRequired

Unique identifier for class.

Responses
200

Success

application/json
get/v2p0/classes/{id}/criteria
GET /v2p0/classes/{id}/criteria HTTP/1.1
Host: api.managebac.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "criteria": [
    {
      "id": 25324,
      "title": "Criteria Title",
      "descriptors": [
        {
          "value": "Good",
          "descriptor": "The student demonstrates a good understanding of the concept."
        }
      ]
    }
  ]
}

Get Task Categories for Class

get
/v2p0/classes/{id}/task_categories

This endpoint retrieves task categories for a class specified by class ID.

Task categories are used to organize tasks within a class (e.g. Quiz, Homework, Essay). Each category includes a display color and a weight used for grade calculations.

Authorizations
AuthorizationstringRequired

OAuth 2.0 Bearer token obtained via client credentials grant. Pass the token in the Authorization header as Bearer <token>.

Path parameters
idintegerRequired

Unique identifier for class.

Responses
200

Success

application/json
get/v2p0/classes/{id}/task_categories
GET /v2p0/classes/{id}/task_categories HTTP/1.1
Host: api.managebac.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "task_categories": [
    {
      "id": 1,
      "name": "Quiz",
      "background_color": "#205C00",
      "color": "#fff",
      "weight": 10
    },
    {
      "id": 2,
      "name": "Homework",
      "background_color": "#2175C6",
      "color": "#fff",
      "weight": 10
    },
    {
      "id": 3,
      "name": "Essay",
      "background_color": "#33C",
      "color": "#fff",
      "weight": 10
    },
    {
      "id": 6,
      "name": "Paper",
      "background_color": "#A2C400",
      "color": "#fff",
      "weight": 10
    },
    {
      "id": 7,
      "name": "Test",
      "background_color": "#FFAD3A",
      "color": "#fff",
      "weight": 10
    }
  ]
}

Download a Submission File

get
/v2p0/classes/{class_id}/tasks/{task_id}/submissions/{student_id}/files/{asset_id}

Redirects to a short-lived signed URL for the requested submission file. Follow the redirect to retrieve the file content. The four IDs in the path must be consistent: the asset must belong to that student's submission for that task on that class.

Authorizations
AuthorizationstringRequired

OAuth 2.0 Bearer token obtained via client credentials grant. Pass the token in the Authorization header as Bearer <token>.

Path parameters
class_idintegerRequired

Unique identifier for the class.

task_idintegerRequired

Unique identifier for the task.

student_idintegerRequired

Unique identifier for the student.

asset_idintegerRequired

Unique identifier for the file.

Responses
302

Redirect to signed file URL

No content

get/v2p0/classes/{class_id}/tasks/{task_id}/submissions/{student_id}/files/{asset_id}
GET /v2p0/classes/{class_id}/tasks/{task_id}/submissions/{student_id}/files/{asset_id} HTTP/1.1
Host: api.managebac.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*

No content

List Student Submissions for a Task

get
/v2p0/classes/{class_id}/tasks/{task_id}/submissions

Returns one submission entry per student who has work attached to the task, across both submission mechanisms (Dropbox upload and Google Drive). Designed for incremental sync: pass modified_since to receive only submissions whose underlying file or task work was updated after a given time.

Authorizations
AuthorizationstringRequired

OAuth 2.0 Bearer token obtained via client credentials grant. Pass the token in the Authorization header as Bearer <token>.

Path parameters
class_idintegerRequired

Unique identifier for the class.

task_idintegerRequired

Unique identifier for the task.

Query parameters
modified_sincestringOptional

ISO 8601 timestamp; returns only submissions whose underlying file or task work was updated strictly after this time.

pageintegerOptional

Page number (default 1).

per_pageintegerOptional

Items per page (default 100, min 1, max 500).

Responses
200

Success

application/json
get/v2p0/classes/{class_id}/tasks/{task_id}/submissions
GET /v2p0/classes/{class_id}/tasks/{task_id}/submissions HTTP/1.1
Host: api.managebac.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "submissions": [
    {
      "id": "12345-678",
      "task_id": 12345,
      "student_id": 678,
      "mechanism": "dropbox",
      "submitted_at": "2026-04-30T18:14:01Z",
      "updated_at": "2026-04-30T18:14:01Z",
      "locked": false,
      "status": "submitted",
      "files": [
        {
          "id": 9988,
          "filename": "essay-final.pdf",
          "file_size": 4823910,
          "content_type": "application/pdf",
          "uploaded_at": "2026-04-30T18:14:01Z",
          "turnitin_score": 7,
          "download_path": "/v2/classes/42/tasks/12345/submissions/678/files/9988"
        }
      ]
    }
  ],
  "meta": {
    "current_page": 1,
    "total_pages": 1,
    "total_count": 1,
    "per_page": 100,
    "modified_since": null
  }
}

Get a Single Student Submission

get
/v2p0/classes/{class_id}/tasks/{task_id}/submissions/{student_id}

Returns the submission for a single student on a class task, in the same shape as one element of the list endpoint's response. Returns 404 if the student has no work attached to the task.

Authorizations
AuthorizationstringRequired

OAuth 2.0 Bearer token obtained via client credentials grant. Pass the token in the Authorization header as Bearer <token>.

Path parameters
class_idintegerRequired

Unique identifier for the class.

task_idintegerRequired

Unique identifier for the task.

student_idintegerRequired

Unique identifier for the student.

Responses
200

Success

application/json
get/v2p0/classes/{class_id}/tasks/{task_id}/submissions/{student_id}
GET /v2p0/classes/{class_id}/tasks/{task_id}/submissions/{student_id} HTTP/1.1
Host: api.managebac.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "submission": {
    "id": "12345-678",
    "task_id": 12345,
    "student_id": 678,
    "mechanism": "dropbox",
    "submitted_at": "2026-04-30T18:14:01Z",
    "updated_at": "2026-04-30T18:14:01Z",
    "locked": false,
    "status": "submitted",
    "files": [
      {
        "id": 9988,
        "filename": "essay-final.pdf",
        "file_size": 4823910,
        "content_type": "application/pdf",
        "uploaded_at": "2026-04-30T18:14:01Z",
        "turnitin_score": 7,
        "download_path": "/v2/classes/42/tasks/12345/submissions/678/files/9988"
      }
    ]
  }
}

Get Tasks for a Class

get
/v2p0/classes/{id}/tasks

This endpoint retrieves all tasks belonging to the class as specified by ID. If term ID is not specified, all tasks that the term class covers will be returned.

Each task includes its assessment type, category, and scoring configuration.

Authorizations
AuthorizationstringRequired

OAuth 2.0 Bearer token obtained via client credentials grant. Pass the token in the Authorization header as Bearer <token>.

Path parameters
idintegerRequired

Unique identifier for class.

Query parameters
term_idstringOptional

Unique identifier for term.

Responses
200

Success

application/json
get/v2p0/classes/{id}/tasks
GET /v2p0/classes/{id}/tasks HTTP/1.1
Host: api.managebac.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "tasks": [
    {
      "id": 10277631,
      "name": "Accelerated Motion Lab",
      "notes": "",
      "draft": false,
      "task_type": "formative",
      "task_type_name": "Formative",
      "linked_to": {
        "class_id": 10299022,
        "task_id": 11921323
      },
      "dropbox": false,
      "google_drive_dropbox": true,
      "task_work_templates": [
        {
          "id": 60,
          "name": "Lab Report",
          "details": "Complete the given lab report template based on the in-class lab that was held on Monday."
        },
        {
          "id": 61,
          "name": "Post-Lab Reflection",
          "details": "After completing your lab report, answer the questions in the post-lab reflection."
        }
      ],
      "turnitin": false,
      "hide_assessment_results": false,
      "due_date": "2018-04-27T04:00:00+03:00",
      "unit": {
        "id": 67396,
        "title": "Dynamics & Kinematics"
      },
      "hl": true,
      "sl": true,
      "category": {
        "id": 11484803,
        "name": "Lab Reports",
        "weight": 25
      },
      "assessment_types": {
        "comments": {},
        "points": {
          "max_score": 7
        }
      }
    },
    {
      "id": 20018084,
      "name": "Chapter 2.1 HW",
      "notes": "",
      "draft": false,
      "task_type": "summative",
      "task_type_name": "Summative",
      "linked_to": {
        "class_id": 10299022,
        "task_id": 11921323
      },
      "dropbox": false,
      "google_drive_dropbox": false,
      "turnitin": false,
      "hide_assessment_results": false,
      "due_date": "2018-05-13T04:00:00+03:00",
      "unit": {
        "id": 67396,
        "title": "Dynamics & Kinematics"
      },
      "hl": true,
      "sl": true,
      "category": {
        "id": 11484801,
        "name": "Homework",
        "weight": 10
      },
      "assessment_types": {
        "comments": {},
        "points": {
          "max_score": 10
        }
      }
    },
    {
      "id": 19942197,
      "name": "Dynamics Unit Test",
      "notes": "Prepare for the test by completing all homework questions for Chapter 2.",
      "draft": false,
      "task_type": "custom",
      "task_type_name": "Custom Name",
      "linked_to": {
        "class_id": 10299022,
        "task_id": 11921323
      },
      "dropbox": false,
      "google_drive_dropbox": true,
      "task_work_templates": false,
      "turnitin": false,
      "hide_assessment_results": false,
      "due_date": "2018-05-18T04:00:00+03:00",
      "unit": {
        "id": 67396,
        "title": "Test"
      },
      "hl": true,
      "sl": true,
      "category": {
        "id": 11484802,
        "name": "Unit Tests",
        "weight": 20
      },
      "assessment_types": {
        "comments": {},
        "points": {
          "max_score": 7
        }
      }
    }
  ],
  "meta": {
    "current_page": 1,
    "total_pages": 1,
    "total_count": 4,
    "per_page": 100
  }
}

Get a Task for a Class

get
/v2p0/classes/{class_id}/tasks/{id}

This endpoint retrieves a task as specified by task ID and class ID.

Returns the full detail for a single task including its assessment configuration, category, unit association, and dropbox settings.

Authorizations
AuthorizationstringRequired

OAuth 2.0 Bearer token obtained via client credentials grant. Pass the token in the Authorization header as Bearer <token>.

Path parameters
idintegerRequired

Unique identifier for task.

class_idintegerRequired

Unique identifier for class.

Responses
200

Success

application/json
get/v2p0/classes/{class_id}/tasks/{id}
GET /v2p0/classes/{class_id}/tasks/{id} HTTP/1.1
Host: api.managebac.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "task": {
    "id": 10277631,
    "name": "Accelerated Motion Lab",
    "notes": "The lab will allow you to work in groups to create and test a hypothesis related to Newton's Laws of Motion.",
    "draft": false,
    "task_type": "formative",
    "task_type_name": "Formative",
    "linked_to": {
      "class_id": 10299022,
      "task_id": 11921323
    },
    "dropbox": false,
    "google_drive_dropbox": true,
    "task_work_templates": [
      {
        "id": 60,
        "name": "Lab Report",
        "details": "Complete the given lab report template based on the in-class lab that was held on Monday."
      },
      {
        "id": 61,
        "name": "Post-Lab Reflection",
        "details": "After completing your lab report, answer the questions in the post-lab reflection."
      }
    ],
    "turnitin": false,
    "hide_assessment_results": false,
    "due_date": "2018-04-27T04:00:00+03:00",
    "unit": {
      "id": 67396,
      "title": "Dynamics & Kinematics"
    },
    "hl": true,
    "sl": true,
    "category": {
      "id": 11484803,
      "name": "Lab Reports",
      "weight": 20
    },
    "assessment_types": {
      "comments": {},
      "points": {
        "max_score": 7
      }
    }
  }
}

Get Student Assessment Results for a Task and Class

get
/v2p0/classes/{class_id}/tasks/{id}/students

This endpoint retrieves all assessment result scores belonging to a class as specified by ID. If term ID is not specified, all assessed tasks that the term class covers will be returned.

Optional properties:

Assessments:

  • dropbox_status - Student Dropbox Submission status for a task if enabled

  • criteria - per-criterion results for criteria-based tasks (MYP criteria, rubric criteria, IB Assessment criteria filtered by the student's HL/SL level). Each item carries id, label (criterion letter; empty when the title has no letter prefix), criterion (title), score (null until graded, "N/A" when not applicable) and not_applicable. criterion differs by system: on rubric criteria it is the full title as the school entered it, so it usually still includes the letter in label (criterion: "Criterion A: Knowledge and understanding"), while MYP and IB Assessment titles have that letter stripped (criterion: "Analysing"). Joining label and criterion therefore repeats the letter on rubric tasks. Every criterion currently selected on the task is listed, including assessments archived after being mapped; un-selecting a criterion on the task removes it from this response for every student, though a grade already recorded against it is kept. id is the criterion's id, shared with /classes/{id}/criteria for MYP and rubric criteria whenever that endpoint lists the criterion; IB Assessment items carry the IB criterion id, which that endpoint never lists.

Authorizations
AuthorizationstringRequired

OAuth 2.0 Bearer token obtained via client credentials grant. Pass the token in the Authorization header as Bearer <token>.

Path parameters
idintegerRequired

Unique identifier for task.

class_idintegerRequired

Unique identifier for class.

Query parameters
student_idsinteger[]Optional

List of student ids. Accepts repeated params or a comma-separated string.

Example: student_ids=1,2,3 OR student_ids[]=1&student_ids[]=2
Responses
200

Success

application/json
get/v2p0/classes/{class_id}/tasks/{id}/students
GET /v2p0/classes/{class_id}/tasks/{id}/students HTTP/1.1
Host: api.managebac.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "students": [
    {
      "id": 10752610,
      "name": "Epelbaum, Chloe",
      "task_works": [
        {
          "id": 11861277,
          "template_id": 54,
          "submission_status": "submitted"
        },
        {
          "id": 11861277,
          "template_id": 55,
          "submission_status": "late"
        }
      ],
      "assessments": {
        "dropbox_status": "waiting",
        "comments": "Chloe has done a great job on both portions of the task",
        "points": {
          "score": 6,
          "max_score": 7
        },
        "criteria": [
          {
            "id": 4411203,
            "label": "A",
            "criterion": "Criterion A: Knowledge and understanding",
            "score": "Good",
            "not_applicable": false
          },
          {
            "id": 4411204,
            "label": "B",
            "criterion": "Criterion B: Application",
            "score": "N/A",
            "not_applicable": true
          },
          {
            "id": 4411205,
            "label": "C",
            "criterion": "Criterion C: Communication",
            "score": null,
            "not_applicable": false
          }
        ],
        "binary": 0
      }
    },
    {
      "id": 12068799,
      "name": "Bailey, Jenna",
      "task_works": [
        {
          "id": 11861277,
          "template_id": 55,
          "submission_status": "waiting"
        }
      ],
      "assessments": {
        "comments": null,
        "points": {
          "score": null,
          "max_score": 7
        },
        "binary": 1
      }
    },
    {
      "id": 10851648,
      "name": "Francisco, Lewis",
      "task_works": [
        {
          "id": 11861277,
          "template_id": 55,
          "submission_status": "late"
        }
      ],
      "assessments": {
        "comments": "Lewis submitted his task late and did not meet expectations",
        "points": {
          "score": 4,
          "max_score": 7
        }
      }
    },
    {
      "id": 10866190,
      "name": "Lucy, Jasmine",
      "task_works": [
        {
          "id": 11861277,
          "template_id": 54,
          "submission_status": "submitted"
        },
        {
          "id": 11861277,
          "template_id": 55,
          "submission_status": "submitted"
        }
      ],
      "assessments": {
        "comments": "Great improvement Jasmine. Your hard work is showing.",
        "points": {
          "score": 5,
          "max_score": 7
        }
      }
    },
    {
      "id": 10813990,
      "name": "Bowen, James",
      "task_works": [
        {
          "id": 11861277,
          "template_id": 54,
          "submission_status": "submitted"
        },
        {
          "id": 11861277,
          "template_id": 55,
          "submission_status": "submitted"
        }
      ],
      "assessments": {
        "comments": "Great analysis, but your writing needs to be more concise.",
        "points": {
          "score": 5,
          "max_score": 7
        }
      }
    },
    {
      "id": 11183705,
      "name": "Howard, Jessica",
      "task_works": [
        {
          "id": 11861277,
          "template_id": 54,
          "submission_status": "waiting"
        },
        {
          "id": 11861277,
          "template_id": 55,
          "submission_status": "submitted"
        }
      ],
      "assessments": {
        "comments": null,
        "points": {
          "score": null,
          "max_score": 7
        }
      }
    },
    {
      "id": 12068760,
      "name": "Boyd, Keith",
      "task_works": [],
      "assessments": {
        "comments": null,
        "points": {
          "score": null,
          "max_score": 7
        }
      }
    },
    {
      "id": 12472028,
      "name": "McNeil, Ian",
      "task_works": [],
      "assessments": {
        "comments": null,
        "points": {
          "score": null,
          "max_score": 7
        }
      }
    }
  ]
}

Bulk Delete Grades for Students for a Task

delete
/v2p0/tasks/{task_id}/students

Destroys a grade for a specific student on a given task. There is no undo. Applies to all Students if no student_ids are provided.

Authorizations
AuthorizationstringRequired

OAuth 2.0 Bearer token obtained via client credentials grant. Pass the token in the Authorization header as Bearer <token>.

Path parameters
task_idintegerRequired

Unique identifier for a task.

Body
student_idsinteger[]Optional

List of student IDs whose grades and submissions will be reset

Responses
200

Success

application/json
idintegerOptional

Unique identifier for a student in ManageBac

Example: 12343
statusstringOptional

Response status for a student

Example: unprocessable_entity
errorobjectOptional

Error details if any

delete/v2p0/tasks/{task_id}/students
DELETE /v2p0/tasks/{task_id}/students HTTP/1.1
Host: api.managebac.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 29

{
  "student_ids": [
    12345,
    67890
  ]
}
[
  {
    "id": 12343,
    "status": "unprocessable_entity",
    "error": {}
  }
]

Last updated