Gradebooks
Record and manage student grades for assessments.
All endpoints require
Authorization: Bearer <token>andX-SCHOOL-IDheaders unless noted otherwise.
List Gradebook Entries
GET /gradebooks
Returns a paginated list of gradebook entries.
Query Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
pageNumber | integer | Yes | 0 | Zero-indexed page |
pageSize | integer | Yes | 50 | Results per page |
batch | uuid | No | — | Filter 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
| Field | Type | Required | Description |
|---|---|---|---|
assessment | uuid | Yes | Assessment ID |
score | number | Yes | Score achieved |
student | uuid | Yes | Student ID |
batch | uuid | Yes | Cohort 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
| Parameter | Type | Description |
|---|---|---|
id | uuid | Gradebook entry ID |
Response 200 OK — Returns a GradebookResponse.
Delete Gradebook Entry
DELETE /gradebooks/{id}
Remove a gradebook entry.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
id | uuid | Gradebook entry ID |
Response 200 OK