Skip to content

YeboLearn API Routes

Complete route map for the YeboLearn backend API.

Base URL

Production: https://api.yebolearn.com/api
Development: http://localhost:8080/api

Health & Status

MethodRouteDescription
GET/healthBasic health check
GET/health/detailedFull health with DB, memory stats
GET/readyKubernetes/Cloud Run readiness probe

Public Routes (No Auth)

Onboarding

MethodRouteDescription
GET/onboarding/countriesAvailable countries
POST/onboarding/requestSchool onboarding request
GET/onboarding/status/:requestIdCheck onboarding status

Public Data

MethodRouteDescription
GET/public/school/:slugPublic school profile
GET/public/faqFAQ content
POST/public/contactContact form

Countries

MethodRouteDescription
GET/countriesList all countries
GET/countries/:codeCountry by code

Authentication Routes

/auth

MethodRouteDescriptionBody
POST/auth/registerRegister user{ email, password, first_name, last_name, role }
POST/auth/loginLogin{ email, password, school_id? }
POST/auth/refreshRefresh tokens{ refreshToken }
POST/auth/logoutLogout{ refreshToken }
POST/auth/logout-allLogout all devices-
POST/auth/change-passwordChange password{ currentPassword, newPassword }
GET/auth/meGet current user-

Student Routes

/students

MethodRouteDescription
GET/studentsList students (paginated)
GET/students/:idGet student by ID
POST/studentsCreate student
PUT/students/:idUpdate student
DELETE/students/:idSoft delete student
POST/students/:id/assign-classAssign to class
GET/students/:id/gradesStudent grades
GET/students/:id/attendanceAttendance records
GET/students/:id/feesFee statements

Teacher Routes

/teachers

MethodRouteDescription
GET/teachersList teachers
GET/teachers/:idGet teacher
POST/teachersCreate teacher
PUT/teachers/:idUpdate teacher
DELETE/teachers/:idDelete teacher
GET/teachers/:id/scheduleWeekly schedule
GET/teachers/:id/classesAssigned classes
POST/teachers/:id/assign-subjectAssign subject

Guardian Routes

/guardians

MethodRouteDescription
GET/guardiansList guardians
GET/guardians/:idGet guardian
POST/guardiansCreate guardian
PUT/guardians/:idUpdate guardian
DELETE/guardians/:idDelete guardian
GET/guardians/:id/childrenGuardian's children
POST/guardians/:id/link-studentLink to student

Class Routes

/classes

MethodRouteDescription
GET/classesList classes
GET/classes/:idGet class details
POST/classesCreate class
PUT/classes/:idUpdate class
DELETE/classes/:idDelete class
GET/classes/:id/studentsStudents in class
GET/classes/:id/scheduleClass timetable
GET/classes/:id/gradesClass grade book

Subject Routes

/subjects

MethodRouteDescription
GET/subjectsList subjects
GET/subjects/:idGet subject
POST/subjectsCreate subject
PUT/subjects/:idUpdate subject
DELETE/subjects/:idDelete subject

Grade Routes

/grades

MethodRouteDescription
GET/gradesList grades (filtered)
GET/grades/:idGet grade entry
POST/gradesCreate grade
PUT/grades/:idUpdate grade
DELETE/grades/:idDelete grade
POST/grades/bulkBulk grade entry
GET/grades/report/:studentIdGrade report

Attendance Routes

/attendance

MethodRouteDescription
GET/attendanceList records
POST/attendanceMark attendance
POST/attendance/bulkBulk mark class
GET/attendance/student/:idStudent attendance
GET/attendance/class/:idClass attendance
GET/attendance/statsAttendance statistics

Fee Routes

/fees

MethodRouteDescription
GET/fees/structuresFee structures
POST/fees/structuresCreate fee structure
GET/fees/invoicesList invoices
POST/fees/invoicesGenerate invoice
GET/fees/invoices/:idInvoice details
POST/fees/paymentsRecord payment
GET/fees/student/:id/balanceStudent balance

Payment Routes

/payments

MethodRouteDescription
GET/paymentsList payments
GET/payments/:idPayment details
POST/payments/initiateStart payment
POST/payments/webhookPayment gateway callback
GET/payments/receipt/:idPayment receipt

AI Routes

/ai

MethodRouteDescription
POST/ai/daily-reportGenerate daily report
POST/ai/weekly-reportGenerate weekly report
POST/ai/monthly-reportGenerate monthly report
POST/ai/chatbotEduAssist chatbot
POST/ai/grade-essayEssay grading
POST/ai/lesson-planGenerate lesson plan
POST/ai/quizGenerate quiz
POST/ai/worksheetGenerate worksheet
POST/ai/tutorHomework help
POST/ai/learning-pathPersonalized path
POST/ai/behavior-analysisAnalyze behavior

Message Routes

/messages

MethodRouteDescription
GET/messagesGet conversations
GET/messages/:conversationIdGet messages
POST/messagesSend message
PUT/messages/:id/readMark as read
DELETE/messages/:idDelete message

Notification Routes

/notifications

MethodRouteDescription
GET/notificationsList notifications
PUT/notifications/:id/readMark as read
PUT/notifications/read-allMark all read
DELETE/notifications/:idDelete notification

Upload Routes

/uploads

MethodRouteDescription
POST/uploads/imageUpload image
POST/uploads/documentUpload document
DELETE/uploads/:keyDelete upload

Analytics Routes

/analytics

MethodRouteDescription
GET/analytics/dashboardSchool dashboard
GET/analytics/attendanceAttendance analytics
GET/analytics/gradesGrade analytics
GET/analytics/feesFee collection analytics
GET/analytics/trendsPerformance trends

Report Routes

/reports

MethodRouteDescription
GET/reports/student/:idStudent report card
GET/reports/class/:idClass report
GET/reports/term/:termIdTerm report
POST/reports/generateGenerate custom report
GET/reports/download/:idDownload PDF

Flashcard Routes

/flashcards

MethodRouteDescription
GET/flashcardsList flashcard decks
POST/flashcards/decksCreate deck
GET/flashcards/decks/:idGet deck
POST/flashcards/decks/:id/cardsAdd card
POST/flashcards/decks/:id/studyStart study session
POST/flashcards/cards/:id/answerSubmit answer

Avatar Teacher Routes

/avatar-teacher

MethodRouteDescription
GET/avatar-teacher/configGet avatar config
POST/avatar-teacher/interactInteract with avatar
GET/avatar-teacher/sessionsSession history

Parent B2C Routes

/parent

MethodRouteDescription
GET/parent/childrenList children
POST/parent/children/addAdd child
GET/parent/children/:idChild details
GET/parent/children/:id/progressProgress report

Platform Admin Routes

/platform/*

MethodRouteDescription
POST/platform/auth/loginPlatform admin login
GET/platform/schoolsList all schools
POST/platform/schoolsCreate school
PUT/platform/schools/:idUpdate school
GET/platform/schools/:id/statsSchool statistics
POST/platform/onboarding/approveApprove onboarding
GET/platform/usersPlatform users
GET/platform/auditAudit logs
GET/platform/analyticsPlatform analytics

One chat. Everything done.