The inactivity endpoints give administrators visibility into which students have received automated reminder emails and provide per-student controls to opt a student out of future reminders or re-enroll them. These endpoints are consumed by the admin dashboard but can also be called directly.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/aakash811/Student-Progress-Tracker/llms.txt
Use this file to discover all available pages before exploring further.
GET /api/inactivity/logs
Returns an array of all student documents projected to the fields relevant to inactivity tracking. Use this to audit reminder history or build a filtered view of at-risk students. ExampleThe field
emailRemaindersSent (note the spelling) is the name returned by this endpoint. This reflects the field projection used in the source query. The underlying schema field is emailRemindersSent — the discrepancy is a known typo in the projection query.The student’s display name as stored in MongoDB.
The student’s email address. This is the address to which inactivity reminder emails are sent.
The number of inactivity reminder emails sent during the current inactive streak (field name as returned by this endpoint). Resets to
0 automatically when the nightly sync detects that the student has submitted an accepted solution within the last 7 days.ISO 8601 timestamp of the student’s most recent accepted Codeforces submission. Returns
null if no accepted submission has ever been recorded for this student.POST /api/inactivity/disable/:id
Opts a student out of automated inactivity emails. Once disabled, the nightly sync will skip email delivery for this student regardless of how many days they have been inactive.The MongoDB ObjectId of the student document to update.
POST /api/inactivity/enable/:id
Re-enrolls a student in automated inactivity emails and resets their reminder counter so the next sync cycle evaluates them fresh.The MongoDB ObjectId of the student document to update.
Enabling reminders also resets
emailRemindersSent to 0. This means that if the student is currently inactive (no accepted submission in the last 7 days), they will receive a reminder email on the very next nightly sync run.