Skip to main content

Gradebooks

Record and manage student grades for assessments.

All endpoints require Authorization: Bearer <token> and X-SCHOOL-ID headers unless noted otherwise.


List Gradebook Entries

GET /gradebooks

Returns a paginated list of gradebook entries.

Query Parameters

ParameterTypeRequiredDefaultDescription
pageNumberintegerYes0Zero-indexed page
pageSizeintegerYes50Results per page
batchuuidNoFilter by cohort batch ID

Example

curl -X GET "https://api.vanillatots.com/gradebooks?pageNumber=0&pageSize=25&batch=uuid" \
-H "Authorization: Bearer $TOKEN" \
-H "X-SCHOOL-ID: $SCHOOL_ID"

Response 200 OK

{
"page_number": 0,
"page_size": 25,
"total_pages": 3,
"total": 72,
"data": [
{
"id": "uuid",
"assessment": "uuid",
"assessment_category": "CA1",
"score": 18.5,
"student": "uuid",
"batch": "uuid",
"subject": "uuid"
}
]
}

Create Gradebook Entry

POST /gradebooks

Record a grade for a student on an assessment.

Request Body

FieldTypeRequiredDescription
assessmentuuidYesAssessment ID
scorenumberYesScore achieved
studentuuidYesStudent ID
batchuuidYesCohort batch ID

Example

curl -X POST https://api.vanillatots.com/gradebooks \
-H "Authorization: Bearer $TOKEN" \
-H "X-SCHOOL-ID: $SCHOOL_ID" \
-H "Content-Type: application/json" \
-d '{
"assessment": "assessment-uuid",
"score": 18.5,
"student": "student-uuid",
"batch": "batch-uuid"
}'

Response 200 OK — Returns the created GradebookResponse.


Get Gradebook Entry

GET /gradebooks/{id}

Retrieve a single gradebook entry.

Path Parameters

ParameterTypeDescription
iduuidGradebook entry ID

Response 200 OK — Returns a GradebookResponse.


Delete Gradebook Entry

DELETE /gradebooks/{id}

Remove a gradebook entry.

Path Parameters

ParameterTypeDescription
iduuidGradebook entry ID

Response 200 OK