{"service":"bslms-api","name":"BS LMS","description":"Learning and institute management by BSafe Group: courses, assignments, grading and attendance beside admissions, fees, timetables, library, transport, hostel and payroll","base_url":"https://lms-api.bsafegroup.be","client":"https://lms.bsafegroup.be","api":"/api","health":"/api/health","endpoint_count":269,"endpoints":[{"group":"meta","method":"GET","path":"/","auth":"none","summary":"This document: what the service is and every route it serves"},{"group":"meta","method":"OPTIONS","path":"/api/*","auth":"none","summary":"CORS preflight, answered for every path"},{"group":"meta","method":"GET","path":"/api/health","auth":"none","summary":"Whether the service is up and can reach its database"},{"group":"meta","method":"HEAD","path":"/api/health","auth":"none","summary":"The same check as GET, answered without a body, for a monitor"},{"group":"auth","method":"POST","path":"/api/auth/login","auth":"none","summary":"Exchange an email and password for a session"},{"group":"auth","method":"POST","path":"/api/auth/refresh","auth":"none","summary":"Trade a refresh token for a new access token"},{"group":"auth","method":"POST","path":"/api/auth/logout","auth":"bearer","summary":"End every session for this account"},{"group":"auth","method":"GET","path":"/api/auth/me","auth":"bearer","summary":"The account behind the token"},{"group":"dashboard","method":"GET","path":"/api/dashboard","auth":"bearer","summary":"The dashboard: the numbers a person sees on signing in"},{"group":"analytics","method":"GET","path":"/api/analytics","auth":"admin, registrar, accountant","summary":"Trends across enrolment, marks and collections"},{"group":"me","method":"GET","path":"/api/me/enrollments","auth":"bearer","summary":"The courses you are enrolled on"},{"group":"me","method":"GET","path":"/api/me/certificates","auth":"bearer","summary":"The certificates issued to you"},{"group":"messages","method":"GET","path":"/api/messages/threads","auth":"bearer","summary":"The conversations you take part in"},{"group":"messages","method":"GET","path":"/api/messages/threads/:id","auth":"bearer","summary":"The messages in one conversation"},{"group":"messages","method":"POST","path":"/api/messages/threads/:id","auth":"bearer","summary":"Add a message to one conversation"},{"group":"messages","method":"DELETE","path":"/api/messages/threads/:id","auth":"bearer","summary":"Leave and delete one conversation"},{"group":"courses","method":"GET","path":"/api/courses","auth":"bearer","summary":"All courses"},{"group":"courses","method":"POST","path":"/api/courses","auth":"admin, registrar, teacher","summary":"Add a cours"},{"group":"courses","method":"GET","path":"/api/courses/:id","auth":"bearer","summary":"One cours"},{"group":"courses","method":"PATCH","path":"/api/courses/:id","auth":"admin, registrar, teacher","summary":"Change one cours"},{"group":"courses","method":"DELETE","path":"/api/courses/:id","auth":"admin, registrar","summary":"Delete one cours"},{"group":"courses","method":"GET","path":"/api/courses/:id/curriculum","auth":"bearer","summary":"The curriculum of one cours"},{"group":"courses","method":"GET","path":"/api/courses/:id/roster","auth":"bearer","summary":"The roster of one cours"},{"group":"courses","method":"POST","path":"/api/courses/:id/modules","auth":"admin, registrar, teacher","summary":"Add a module to one cours"},{"group":"courses","method":"PUT","path":"/api/courses/:id/curriculum/order","auth":"admin, registrar, teacher","summary":"Change the order of one cours"},{"group":"modules","method":"PATCH","path":"/api/modules/:id","auth":"admin, registrar, teacher","summary":"Change one module"},{"group":"modules","method":"DELETE","path":"/api/modules/:id","auth":"admin, registrar, teacher","summary":"Delete one module"},{"group":"lessons","method":"GET","path":"/api/lessons/:id","auth":"bearer","summary":"One lesson"},{"group":"lessons","method":"POST","path":"/api/lessons","auth":"admin, registrar, teacher","summary":"Add a lesson"},{"group":"lessons","method":"PATCH","path":"/api/lessons/:id","auth":"admin, registrar, teacher","summary":"Change one lesson"},{"group":"lessons","method":"DELETE","path":"/api/lessons/:id","auth":"admin, registrar, teacher","summary":"Delete one lesson"},{"group":"uploads","method":"POST","path":"/api/uploads/images","auth":"admin, registrar, teacher","summary":"Store a picture for use in a course description or a lesson, converted to WebP"},{"group":"students","method":"GET","path":"/api/students","auth":"admin, registrar, accountant, librarian, staff, teacher","summary":"All students"},{"group":"students","method":"POST","path":"/api/students","auth":"admin, registrar","summary":"Add a student"},{"group":"students","method":"GET","path":"/api/students/:id","auth":"bearer","summary":"One student"},{"group":"students","method":"PATCH","path":"/api/students/:id","auth":"admin, registrar","summary":"Change one student"},{"group":"students","method":"DELETE","path":"/api/students/:id","auth":"admin, registrar","summary":"Delete one student"},{"group":"students","method":"GET","path":"/api/students/:id/enrollments","auth":"bearer","summary":"The enrolments of one student"},{"group":"students","method":"GET","path":"/api/students/:id/guardians","auth":"admin, registrar, accountant, librarian, staff","summary":"The guardians of one student"},{"group":"students","method":"GET","path":"/api/students/:id/attendance","auth":"bearer","summary":"The attendance of one student"},{"group":"teachers","method":"GET","path":"/api/teachers","auth":"bearer","summary":"All teachers"},{"group":"guardians","method":"GET","path":"/api/guardians","auth":"admin, registrar, accountant, librarian, staff","summary":"All guardians"},{"group":"staff","method":"GET","path":"/api/staff","auth":"admin","summary":"All staff"},{"group":"users","method":"GET","path":"/api/users","auth":"admin","summary":"All users"},{"group":"departments","method":"GET","path":"/api/departments","auth":"bearer","summary":"All departments"},{"group":"programs","method":"GET","path":"/api/programs","auth":"bearer","summary":"All programmes"},{"group":"terms","method":"GET","path":"/api/terms","auth":"bearer","summary":"All terms"},{"group":"sections","method":"GET","path":"/api/sections","auth":"bearer","summary":"All sections"},{"group":"timetable","method":"GET","path":"/api/timetable","auth":"bearer","summary":"The weekly timetable, filtered by teacher, room or term"},{"group":"exams","method":"GET","path":"/api/exams","auth":"bearer","summary":"All exams"},{"group":"teachers","method":"POST","path":"/api/teachers","auth":"admin, registrar","summary":"Add a teacher"},{"group":"teachers","method":"PATCH","path":"/api/teachers/:id","auth":"admin, registrar","summary":"Change one teacher"},{"group":"teachers","method":"DELETE","path":"/api/teachers/:id","auth":"admin, registrar","summary":"Delete one teacher"},{"group":"staff","method":"POST","path":"/api/staff","auth":"admin","summary":"Add a staff"},{"group":"staff","method":"PATCH","path":"/api/staff/:id","auth":"admin","summary":"Change one staff"},{"group":"staff","method":"DELETE","path":"/api/staff/:id","auth":"admin","summary":"Delete one staff"},{"group":"guardians","method":"POST","path":"/api/guardians","auth":"admin, registrar","summary":"Add a guardian"},{"group":"guardians","method":"PATCH","path":"/api/guardians/:id","auth":"admin, registrar","summary":"Change one guardian"},{"group":"guardians","method":"DELETE","path":"/api/guardians/:id","auth":"admin, registrar","summary":"Delete one guardian"},{"group":"users","method":"POST","path":"/api/users","auth":"admin","summary":"Add an user"},{"group":"users","method":"PATCH","path":"/api/users/:id","auth":"admin","summary":"Change one user"},{"group":"users","method":"DELETE","path":"/api/users/:id","auth":"admin","summary":"Delete one user"},{"group":"enrollments","method":"POST","path":"/api/enrollments","auth":"bearer","summary":"Enrol in a course"},{"group":"enrollments","method":"POST","path":"/api/enrollments/:id/withdraw","auth":"bearer","summary":"Add a withdraw to one enrolment"},{"group":"enrollments","method":"DELETE","path":"/api/enrollments/:id","auth":"admin, registrar","summary":"Delete one enrolment"},{"group":"invoices","method":"POST","path":"/api/invoices","auth":"admin, accountant","summary":"Add an invoice"},{"group":"invoices","method":"PATCH","path":"/api/invoices/:id","auth":"admin, accountant","summary":"Change one invoice"},{"group":"invoices","method":"DELETE","path":"/api/invoices/:id","auth":"admin, accountant","summary":"Delete one invoice"},{"group":"admissions","method":"POST","path":"/api/admissions","auth":"admin, registrar","summary":"Add an application"},{"group":"admissions","method":"DELETE","path":"/api/admissions/:id","auth":"admin, registrar","summary":"Delete one application"},{"group":"certificates","method":"POST","path":"/api/certificates","auth":"admin, registrar, teacher","summary":"Add a certificate"},{"group":"certificates","method":"DELETE","path":"/api/certificates/:id","auth":"admin, registrar, teacher","summary":"Delete one certificate"},{"group":"library","method":"POST","path":"/api/library/loans","auth":"admin, librarian","summary":"Add a library loan"},{"group":"library","method":"DELETE","path":"/api/library/loans/:id","auth":"admin, librarian","summary":"Delete one library loan"},{"group":"hostel","method":"POST","path":"/api/hostel/allocations","auth":"admin, registrar, staff","summary":"Add a hostel allocation"},{"group":"hostel","method":"DELETE","path":"/api/hostel/allocations/:id","auth":"admin, registrar, staff","summary":"Delete one hostel allocation"},{"group":"messages","method":"POST","path":"/api/messages/threads","auth":"bearer","summary":"Start a conversation"},{"group":"exams","method":"POST","path":"/api/exams/:id/publish","auth":"admin, registrar, teacher","summary":"Add a publish to one exam"},{"group":"gradebook","method":"POST","path":"/api/gradebook/publish","auth":"admin, registrar, teacher","summary":"Write the weighted totals on to the enrolments"},{"group":"roles","method":"GET","path":"/api/roles/permissions","auth":"admin","summary":"All roles permissions"},{"group":"roles","method":"PUT","path":"/api/roles/:role/permissions","auth":"admin","summary":"Change the permissions of one role"},{"group":"assignments","method":"GET","path":"/api/assignments/:id/mine","auth":"bearer","summary":"The mine of one assignment"},{"group":"assignments","method":"POST","path":"/api/assignments/:id/submit","auth":"bearer","summary":"Add a submit to one assignment"},{"group":"gradebook","method":"PUT","path":"/api/gradebook/entries","auth":"admin, registrar, teacher","summary":"Record the marks for one piece of work"},{"group":"attendance","method":"POST","path":"/api/attendance","auth":"admin, registrar, teacher","summary":"Save a register for one section on one day"},{"group":"auth","method":"POST","path":"/api/auth/password","auth":"bearer","summary":"Change your own password, current one required"},{"group":"me","method":"PATCH","path":"/api/me","auth":"bearer","summary":"Change your own name, phone, language or avatar"},{"group":"notifications","method":"POST","path":"/api/notifications/read","auth":"bearer","summary":"Mark notifications as read"},{"group":"settings","method":"PUT","path":"/api/settings","auth":"admin","summary":"Change one setting"},{"group":"departments","method":"POST","path":"/api/departments","auth":"admin, registrar","summary":"Add a department"},{"group":"departments","method":"PATCH","path":"/api/departments/:id","auth":"admin, registrar","summary":"Change one department"},{"group":"departments","method":"DELETE","path":"/api/departments/:id","auth":"admin, registrar","summary":"Delete one department"},{"group":"programs","method":"POST","path":"/api/programs","auth":"admin, registrar","summary":"Add a programme"},{"group":"programs","method":"PATCH","path":"/api/programs/:id","auth":"admin, registrar","summary":"Change one programme"},{"group":"programs","method":"DELETE","path":"/api/programs/:id","auth":"admin, registrar","summary":"Delete one programme"},{"group":"terms","method":"POST","path":"/api/terms","auth":"admin, registrar","summary":"Add a term"},{"group":"terms","method":"PATCH","path":"/api/terms/:id","auth":"admin, registrar","summary":"Change one term"},{"group":"terms","method":"DELETE","path":"/api/terms/:id","auth":"admin, registrar","summary":"Delete one term"},{"group":"sections","method":"POST","path":"/api/sections","auth":"admin, registrar","summary":"Add a section"},{"group":"sections","method":"PATCH","path":"/api/sections/:id","auth":"admin, registrar","summary":"Change one section"},{"group":"sections","method":"DELETE","path":"/api/sections/:id","auth":"admin, registrar","summary":"Delete one section"},{"group":"exams","method":"POST","path":"/api/exams","auth":"admin, registrar, teacher","summary":"Add an exam"},{"group":"exams","method":"PATCH","path":"/api/exams/:id","auth":"admin, registrar, teacher","summary":"Change one exam"},{"group":"exams","method":"DELETE","path":"/api/exams/:id","auth":"admin, registrar, teacher","summary":"Delete one exam"},{"group":"exams","method":"GET","path":"/api/exams/:id/results","auth":"bearer","summary":"The results of one exam"},{"group":"assignments","method":"GET","path":"/api/assignments","auth":"bearer","summary":"All assignments"},{"group":"assignments","method":"GET","path":"/api/assignments/:id","auth":"bearer","summary":"One assignment"},{"group":"assignments","method":"GET","path":"/api/assignments/:id/submissions","auth":"admin, registrar, teacher","summary":"The submissions of one assignment"},{"group":"submissions","method":"PATCH","path":"/api/submissions/:id","auth":"admin, registrar, teacher","summary":"Change one submission"},{"group":"submissions","method":"DELETE","path":"/api/submissions/:id","auth":"admin, registrar, teacher","summary":"Delete one submission"},{"group":"quizzes","method":"GET","path":"/api/quizzes","auth":"bearer","summary":"All quizzes"},{"group":"questions","method":"GET","path":"/api/questions","auth":"admin, registrar, teacher","summary":"All questions"},{"group":"gradebook","method":"GET","path":"/api/gradebook","auth":"admin, registrar, teacher","summary":"The gradebook for one course"},{"group":"attendance","method":"GET","path":"/api/attendance","auth":"admin, registrar, teacher","summary":"The register for one section on one day"},{"group":"fees","method":"GET","path":"/api/fees","auth":"admin, accountant, registrar","summary":"The fee structures and what is in them"},{"group":"invoices","method":"GET","path":"/api/invoices","auth":"bearer","summary":"All invoices"},{"group":"invoices","method":"GET","path":"/api/invoices/:id","auth":"bearer","summary":"One invoice"},{"group":"payments","method":"GET","path":"/api/payments","auth":"bearer","summary":"All payments"},{"group":"payments","method":"POST","path":"/api/payments","auth":"admin, accountant","summary":"Add a payment"},{"group":"payments","method":"DELETE","path":"/api/payments/:id","auth":"admin, accountant","summary":"Delete one payment"},{"group":"payroll","method":"GET","path":"/api/payroll","auth":"admin, accountant","summary":"All payroll"},{"group":"expenses","method":"GET","path":"/api/expenses","auth":"admin, accountant","summary":"All expenses"},{"group":"library","method":"GET","path":"/api/library/books","auth":"bearer","summary":"All library books"},{"group":"library","method":"GET","path":"/api/library/loans","auth":"bearer","summary":"All library loans"},{"group":"library","method":"POST","path":"/api/library/loans/:id/return","auth":"admin, librarian","summary":"Add a return to one library"},{"group":"inventory","method":"GET","path":"/api/inventory","auth":"admin, staff","summary":"All inventory"},{"group":"transport","method":"GET","path":"/api/transport","auth":"bearer","summary":"Transport: its routes, stops and vehicles"},{"group":"hostel","method":"GET","path":"/api/hostel","auth":"bearer","summary":"The hostel: its blocks, rooms and who is in them"},{"group":"announcements","method":"GET","path":"/api/announcements","auth":"bearer","summary":"All announcements"},{"group":"announcements","method":"POST","path":"/api/announcements","auth":"admin, registrar, accountant, librarian, staff, teacher","summary":"Add an announcement"},{"group":"announcements","method":"DELETE","path":"/api/announcements/:id","auth":"admin, registrar, accountant, librarian, staff, teacher","summary":"Delete one announcement"},{"group":"notices","method":"GET","path":"/api/notices","auth":"bearer","summary":"All notices"},{"group":"discussions","method":"GET","path":"/api/discussions","auth":"bearer","summary":"All discussions"},{"group":"events","method":"GET","path":"/api/events","auth":"bearer","summary":"All events"},{"group":"live-classes","method":"GET","path":"/api/live-classes","auth":"bearer","summary":"All live classes"},{"group":"certificates","method":"GET","path":"/api/certificates","auth":"bearer","summary":"All certificates"},{"group":"admissions","method":"GET","path":"/api/admissions","auth":"admin, registrar","summary":"All applications"},{"group":"admissions","method":"PATCH","path":"/api/admissions/:id","auth":"admin, registrar","summary":"Change one application"},{"group":"audit-log","method":"GET","path":"/api/audit-log","auth":"admin","summary":"The audit trail"},{"group":"notifications","method":"GET","path":"/api/notifications","auth":"bearer","summary":"All notifications"},{"group":"settings","method":"GET","path":"/api/settings","auth":"bearer","summary":"The institute settings"},{"group":"assignments","method":"POST","path":"/api/assignments","auth":"admin, registrar, teacher","summary":"Add an assignment"},{"group":"assignments","method":"PATCH","path":"/api/assignments/:id","auth":"admin, registrar, teacher","summary":"Change one assignment"},{"group":"assignments","method":"DELETE","path":"/api/assignments/:id","auth":"admin, registrar, teacher","summary":"Delete one assignment"},{"group":"quizzes","method":"POST","path":"/api/quizzes","auth":"admin, registrar, teacher","summary":"Add a quiz"},{"group":"quizzes","method":"PATCH","path":"/api/quizzes/:id","auth":"admin, registrar, teacher","summary":"Change one quiz"},{"group":"quizzes","method":"DELETE","path":"/api/quizzes/:id","auth":"admin, registrar, teacher","summary":"Delete one quiz"},{"group":"questions","method":"POST","path":"/api/questions","auth":"admin, registrar, teacher","summary":"Add a question"},{"group":"questions","method":"PATCH","path":"/api/questions/:id","auth":"admin, registrar, teacher","summary":"Change one question"},{"group":"questions","method":"DELETE","path":"/api/questions/:id","auth":"admin, registrar, teacher","summary":"Delete one question"},{"group":"fees","method":"POST","path":"/api/fees","auth":"admin, accountant","summary":"Add a fee"},{"group":"fees","method":"PATCH","path":"/api/fees/:id","auth":"admin, accountant","summary":"Change one fee"},{"group":"fees","method":"DELETE","path":"/api/fees/:id","auth":"admin, accountant","summary":"Delete one fee"},{"group":"expenses","method":"POST","path":"/api/expenses","auth":"admin, accountant","summary":"Add an expens"},{"group":"expenses","method":"PATCH","path":"/api/expenses/:id","auth":"admin, accountant","summary":"Change one expens"},{"group":"expenses","method":"DELETE","path":"/api/expenses/:id","auth":"admin, accountant","summary":"Delete one expens"},{"group":"payroll","method":"POST","path":"/api/payroll","auth":"admin, accountant","summary":"Add a payroll"},{"group":"payroll","method":"PATCH","path":"/api/payroll/:id","auth":"admin, accountant","summary":"Change one payroll"},{"group":"payroll","method":"DELETE","path":"/api/payroll/:id","auth":"admin, accountant","summary":"Delete one payroll"},{"group":"library","method":"POST","path":"/api/library/books","auth":"admin, librarian","summary":"Add a library book"},{"group":"library","method":"PATCH","path":"/api/library/books/:id","auth":"admin, librarian","summary":"Change one library book"},{"group":"library","method":"DELETE","path":"/api/library/books/:id","auth":"admin, librarian","summary":"Delete one library book"},{"group":"vehicles","method":"POST","path":"/api/vehicles","auth":"admin, registrar, staff","summary":"Add a vehicle"},{"group":"vehicles","method":"PATCH","path":"/api/vehicles/:id","auth":"admin, registrar, staff","summary":"Change one vehicle"},{"group":"vehicles","method":"DELETE","path":"/api/vehicles/:id","auth":"admin, registrar, staff","summary":"Delete one vehicle"},{"group":"transport","method":"POST","path":"/api/transport","auth":"admin, registrar, staff","summary":"Add a transport route"},{"group":"transport","method":"PATCH","path":"/api/transport/:id","auth":"admin, registrar, staff","summary":"Change one transport route"},{"group":"transport","method":"DELETE","path":"/api/transport/:id","auth":"admin, registrar, staff","summary":"Delete one transport route"},{"group":"hostel","method":"POST","path":"/api/hostel/blocks","auth":"admin, registrar, staff","summary":"Add a hostel block"},{"group":"hostel","method":"PATCH","path":"/api/hostel/blocks/:id","auth":"admin, registrar, staff","summary":"Change one hostel block"},{"group":"hostel","method":"DELETE","path":"/api/hostel/blocks/:id","auth":"admin, registrar, staff","summary":"Delete one hostel block"},{"group":"hostel","method":"POST","path":"/api/hostel/rooms","auth":"admin, registrar, staff","summary":"Add a hostel room"},{"group":"hostel","method":"PATCH","path":"/api/hostel/rooms/:id","auth":"admin, registrar, staff","summary":"Change one hostel room"},{"group":"hostel","method":"DELETE","path":"/api/hostel/rooms/:id","auth":"admin, registrar, staff","summary":"Delete one hostel room"},{"group":"inventory","method":"POST","path":"/api/inventory","auth":"admin, staff","summary":"Add an inventory"},{"group":"inventory","method":"PATCH","path":"/api/inventory/:id","auth":"admin, staff","summary":"Change one inventory"},{"group":"inventory","method":"DELETE","path":"/api/inventory/:id","auth":"admin, staff","summary":"Delete one inventory"},{"group":"notices","method":"POST","path":"/api/notices","auth":"admin, registrar, accountant, librarian, staff","summary":"Add a notice"},{"group":"notices","method":"PATCH","path":"/api/notices/:id","auth":"admin, registrar, accountant, librarian, staff","summary":"Change one notice"},{"group":"notices","method":"DELETE","path":"/api/notices/:id","auth":"admin, registrar, accountant, librarian, staff","summary":"Delete one notice"},{"group":"events","method":"POST","path":"/api/events","auth":"admin, registrar, accountant, librarian, staff","summary":"Add an event"},{"group":"events","method":"PATCH","path":"/api/events/:id","auth":"admin, registrar, accountant, librarian, staff","summary":"Change one event"},{"group":"events","method":"DELETE","path":"/api/events/:id","auth":"admin, registrar, accountant, librarian, staff","summary":"Delete one event"},{"group":"live-classes","method":"POST","path":"/api/live-classes","auth":"admin, registrar, teacher","summary":"Add a live class"},{"group":"live-classes","method":"POST","path":"/api/live-classes/:id/join","auth":"bearer","summary":"Add a join to one live class"},{"group":"live-classes","method":"PATCH","path":"/api/live-classes/:id","auth":"admin, registrar, teacher","summary":"Change one live class"},{"group":"live-classes","method":"DELETE","path":"/api/live-classes/:id","auth":"admin, registrar, teacher","summary":"Delete one live class"},{"group":"live-classes","method":"PATCH","path":"/api/live-classes/:id/recordings/:recordingId","auth":"admin, registrar, teacher","summary":"Change one recording of one live class"},{"group":"live-classes","method":"DELETE","path":"/api/live-classes/:id/recordings/:recordingId","auth":"admin, registrar, teacher","summary":"Remove a recording from one live class"},{"group":"discussions","method":"POST","path":"/api/discussions","auth":"admin, registrar, teacher, student","summary":"Add a discussion"},{"group":"discussions","method":"PATCH","path":"/api/discussions/:id","auth":"admin, registrar, teacher, student","summary":"Change one discussion"},{"group":"discussions","method":"DELETE","path":"/api/discussions/:id","auth":"admin, registrar, teacher, student","summary":"Delete one discussion"},{"group":"departments","method":"GET","path":"/api/departments/:id","auth":"bearer","summary":"One department"},{"group":"programs","method":"GET","path":"/api/programs/:id","auth":"bearer","summary":"One programme"},{"group":"terms","method":"GET","path":"/api/terms/:id","auth":"bearer","summary":"One term"},{"group":"sections","method":"GET","path":"/api/sections/:id","auth":"bearer","summary":"One section"},{"group":"exams","method":"GET","path":"/api/exams/:id","auth":"bearer","summary":"One exam"},{"group":"announcements","method":"GET","path":"/api/announcements/:id","auth":"bearer","summary":"One announcement"},{"group":"announcements","method":"PATCH","path":"/api/announcements/:id","auth":"admin, registrar, accountant, librarian, staff, teacher","summary":"Change one announcement"},{"group":"notices","method":"GET","path":"/api/notices/:id","auth":"bearer","summary":"One notice"},{"group":"discussions","method":"GET","path":"/api/discussions/:id","auth":"bearer","summary":"One discussion"},{"group":"live-classes","method":"GET","path":"/api/live-classes/:id","auth":"bearer","summary":"One live class"},{"group":"live-classes","method":"GET","path":"/api/live-classes/:id/recordings","auth":"bearer","summary":"The recordings of one live class"},{"group":"events","method":"GET","path":"/api/events/:id","auth":"bearer","summary":"One event"},{"group":"certificates","method":"GET","path":"/api/certificates/:id","auth":"bearer","summary":"One certificate"},{"group":"certificates","method":"PATCH","path":"/api/certificates/:id","auth":"admin, registrar, teacher","summary":"Change one certificate"},{"group":"admissions","method":"GET","path":"/api/admissions/:id","auth":"admin, registrar","summary":"One application"},{"group":"quizzes","method":"GET","path":"/api/quizzes/:id","auth":"bearer","summary":"One quiz"},{"group":"questions","method":"GET","path":"/api/questions/:id","auth":"admin, registrar, teacher","summary":"One question"},{"group":"attendance","method":"GET","path":"/api/attendance/records","auth":"admin, registrar, teacher","summary":"Recorded marks, filtered by section, student or date"},{"group":"attendance","method":"GET","path":"/api/attendance/:id","auth":"admin, registrar, teacher","summary":"One attendance"},{"group":"attendance","method":"PATCH","path":"/api/attendance/:id","auth":"admin, registrar, teacher","summary":"Change one attendance"},{"group":"attendance","method":"DELETE","path":"/api/attendance/:id","auth":"admin, registrar, teacher","summary":"Delete one attendance"},{"group":"payments","method":"GET","path":"/api/payments/:id","auth":"bearer","summary":"One payment"},{"group":"payments","method":"PATCH","path":"/api/payments/:id","auth":"admin, accountant","summary":"Change one payment"},{"group":"expenses","method":"GET","path":"/api/expenses/:id","auth":"admin, accountant","summary":"One expens"},{"group":"fees","method":"GET","path":"/api/fees/:id","auth":"admin, accountant, registrar","summary":"One fee"},{"group":"payroll","method":"GET","path":"/api/payroll/:id","auth":"admin, accountant","summary":"One payroll"},{"group":"teachers","method":"GET","path":"/api/teachers/:id","auth":"bearer","summary":"One teacher"},{"group":"guardians","method":"GET","path":"/api/guardians/:id","auth":"admin, registrar, accountant, librarian, staff","summary":"One guardian"},{"group":"staff","method":"GET","path":"/api/staff/:id","auth":"admin","summary":"One staff"},{"group":"users","method":"GET","path":"/api/users/:id","auth":"admin","summary":"One user"},{"group":"library","method":"GET","path":"/api/library/books/:id","auth":"bearer","summary":"One library book"},{"group":"library","method":"GET","path":"/api/library/loans/:id","auth":"bearer","summary":"One library loan"},{"group":"inventory","method":"GET","path":"/api/inventory/:id","auth":"admin, staff","summary":"One inventory"},{"group":"vehicles","method":"GET","path":"/api/vehicles","auth":"bearer","summary":"All vehicles"},{"group":"vehicles","method":"GET","path":"/api/vehicles/:id","auth":"bearer","summary":"One vehicle"},{"group":"transport","method":"GET","path":"/api/transport/routes","auth":"bearer","summary":"All transport routes"},{"group":"transport","method":"GET","path":"/api/transport/:id","auth":"bearer","summary":"One transport route"},{"group":"hostel","method":"GET","path":"/api/hostel/blocks","auth":"bearer","summary":"All hostel blocks"},{"group":"hostel","method":"GET","path":"/api/hostel/blocks/:id","auth":"bearer","summary":"One hostel block"},{"group":"hostel","method":"GET","path":"/api/hostel/rooms","auth":"bearer","summary":"All hostel rooms"},{"group":"hostel","method":"GET","path":"/api/hostel/rooms/:id","auth":"bearer","summary":"One hostel room"},{"group":"questions","method":"GET","path":"/api/questions/:id/options","auth":"admin, registrar, teacher","summary":"The options of one question"},{"group":"questions","method":"PUT","path":"/api/questions/:id/options","auth":"admin, registrar, teacher","summary":"Change the options of one question"},{"group":"quizzes","method":"GET","path":"/api/quizzes/:id/questions","auth":"admin, registrar, teacher","summary":"The questions of one quiz"},{"group":"quizzes","method":"PUT","path":"/api/quizzes/:id/questions","auth":"admin, registrar, teacher","summary":"Change the questions of one quiz"},{"group":"quizzes","method":"GET","path":"/api/quizzes/:id/paper","auth":"bearer","summary":"The paper of one quiz"},{"group":"quizzes","method":"GET","path":"/api/quizzes/:id/attempts","auth":"admin, registrar, teacher","summary":"The attempts of one quiz"},{"group":"quizzes","method":"POST","path":"/api/quizzes/:id/attempts","auth":"bearer","summary":"Add an attempt to one quiz"},{"group":"quiz-attempts","method":"GET","path":"/api/quiz-attempts/:id","auth":"bearer","summary":"One quiz attempt"},{"group":"quiz-attempts","method":"POST","path":"/api/quiz-attempts/:id/submit","auth":"bearer","summary":"Add a submit to one quiz attempt"},{"group":"quiz-attempts","method":"PATCH","path":"/api/quiz-attempts/:id","auth":"admin, registrar, teacher","summary":"Change one quiz attempt"},{"group":"quiz-attempts","method":"DELETE","path":"/api/quiz-attempts/:id","auth":"admin, registrar, teacher","summary":"Delete one quiz attempt"},{"group":"me","method":"GET","path":"/api/me/quiz-attempts","auth":"bearer","summary":"Every quiz you have sat"},{"group":"discussions","method":"GET","path":"/api/discussions/:id/replies","auth":"bearer","summary":"The replies of one discussion"},{"group":"discussions","method":"POST","path":"/api/discussions/:id/replies","auth":"bearer","summary":"Add a reply to one discussion"},{"group":"replies","method":"PATCH","path":"/api/replies/:id","auth":"bearer","summary":"Change one reply"},{"group":"replies","method":"DELETE","path":"/api/replies/:id","auth":"bearer","summary":"Delete one reply"},{"group":"timetable","method":"POST","path":"/api/timetable","auth":"admin, registrar","summary":"Add a class on the timetable"},{"group":"timetable","method":"PATCH","path":"/api/timetable/:id","auth":"admin, registrar","summary":"Change one class on the timetable"},{"group":"timetable","method":"DELETE","path":"/api/timetable/:id","auth":"admin, registrar","summary":"Delete one class on the timetable"},{"group":"invoices","method":"POST","path":"/api/invoices/:id/lines","auth":"admin, accountant","summary":"Add a line to one invoice"},{"group":"invoice-lines","method":"PATCH","path":"/api/invoice-lines/:id","auth":"admin, accountant","summary":"Change one invoice line"},{"group":"invoice-lines","method":"DELETE","path":"/api/invoice-lines/:id","auth":"admin, accountant","summary":"Delete one invoice line"},{"group":"transport","method":"GET","path":"/api/transport/:id/stops","auth":"bearer","summary":"The stops of one transport route"},{"group":"transport","method":"POST","path":"/api/transport/:id/stops","auth":"admin, registrar, staff","summary":"Add a stop to one transport route"},{"group":"transport-stops","method":"PATCH","path":"/api/transport-stops/:id","auth":"admin, registrar, staff","summary":"Change one stop"},{"group":"transport-stops","method":"DELETE","path":"/api/transport-stops/:id","auth":"admin, registrar, staff","summary":"Delete one stop"},{"group":"transport","method":"GET","path":"/api/transport/:id/students","auth":"admin, registrar, staff","summary":"The students of one transport route"},{"group":"transport","method":"POST","path":"/api/transport/:id/students","auth":"admin, registrar, staff","summary":"Add a student to one transport route"},{"group":"transport","method":"DELETE","path":"/api/transport/:id/students/:student","auth":"admin, registrar, staff","summary":"Remove a student from one transport route"},{"group":"courses","method":"GET","path":"/api/courses/:id/teachers","auth":"bearer","summary":"The teachers of one cours"},{"group":"courses","method":"PUT","path":"/api/courses/:id/teachers","auth":"admin, registrar","summary":"Change the teachers of one cours"},{"group":"programs","method":"GET","path":"/api/programs/:id/courses","auth":"bearer","summary":"The courses of one programme"},{"group":"programs","method":"PUT","path":"/api/programs/:id/courses","auth":"admin, registrar","summary":"Change the courses of one programme"},{"group":"courses","method":"GET","path":"/api/courses/:id/programs","auth":"bearer","summary":"The programmes of one cours"},{"group":"reports","method":"GET","path":"/api/reports","auth":"bearer","summary":"Which reports can be run, in their three groups"},{"group":"reports","method":"GET","path":"/api/reports/:kind","auth":"bearer","summary":"Run one report: its columns, and its rows keyed by them"}]}