Skip to content

API Reference

Students

Provision students with a generated login email and license, map personal emails, suspend and reactivate. Guide: Students.

get/students

List students

Scope students:read

Parameters

  • emailquery · string
  • statusquery · string
  • student_idquery · string
  • group_idquery · string
  • pagequery · integer
  • limitquery · integer
cURL
curl -X GET "https://serverless.grout.app/v1/students" \
  -H "Authorization: Bearer $GROUT_API_KEY"
post/students

Provision a student (login email + license)

Scope students:write

Body

  • full_namestring
  • student_idstring
  • personal_emailstring
  • license_daysinteger
cURL
curl -X POST "https://serverless.grout.app/v1/students" \
  -H "Authorization: Bearer $GROUT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"full_name":"<full_name>","student_id":"<student_id>","personal_email":"<personal_email>","license_days":0}'
post/students/bulk

Provision up to 200 students

Scope students:write

Body

  • studentsobject[]
cURL
curl -X POST "https://serverless.grout.app/v1/students/bulk" \
  -H "Authorization: Bearer $GROUT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"students":[]}'
get/students/{id}

Get a student (id or login email)

Scope students:read

Parameters

  • idpath · stringrequired
cURL
curl -X GET "https://serverless.grout.app/v1/students/$ID" \
  -H "Authorization: Bearer $GROUT_API_KEY"
patch/students/{id}

Update a student

Scope students:write

Parameters

  • idpath · stringrequired

Body

  • full_namestring
  • student_idstring|null
  • statusactive|suspended
  • personal_emailstring
cURL
curl -X PATCH "https://serverless.grout.app/v1/students/$ID" \
  -H "Authorization: Bearer $GROUT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"full_name":"<full_name>","student_id":"string","status":"active","personal_email":"<personal_email>"}'
post/students/{id}/suspend

Suspend a student

Scope students:write

Parameters

  • idpath · stringrequired
cURL
curl -X POST "https://serverless.grout.app/v1/students/$ID/suspend" \
  -H "Authorization: Bearer $GROUT_API_KEY"
post/students/{id}/reactivate

Reactivate a student

Scope students:write

Parameters

  • idpath · stringrequired
cURL
curl -X POST "https://serverless.grout.app/v1/students/$ID/reactivate" \
  -H "Authorization: Bearer $GROUT_API_KEY"
get/students/{id}/guardians

Guardians linked to a student

Scope guardians:read

Parameters

  • idpath · stringrequired
cURL
curl -X GET "https://serverless.grout.app/v1/students/$ID/guardians" \
  -H "Authorization: Bearer $GROUT_API_KEY"
get/students/{id}/exams

Exams assigned to a student with submission state

Scope exams:read

Parameters

  • idpath · stringrequired
cURL
curl -X GET "https://serverless.grout.app/v1/students/$ID/exams" \
  -H "Authorization: Bearer $GROUT_API_KEY"