{"message":"Welcome to TutorConnected API","version":"1.0.0","baseUrl":"https://api.tutorconnected.com","endpoints":{"health":{"basic":"GET /health","detailed":"GET /health/detailed","ready":"GET /health/ready","live":"GET /health/live"},"auth":{"register":"POST /api/auth/register","login":"POST /api/auth/login","updateRole":"PUT /api/auth/role (Admin)","updateMyRole":"PUT /api/auth/me/role","clerkSync":"POST /api/auth/clerk-sync"},"users":{"getUser":"GET /api/users/:id","getUserGigs":"GET /api/users/:id/gigs","updateMe":"PUT /api/users/me (Protected)"},"gigs":{"getAllGigs":"GET /api/gigs","getGig":"GET /api/gigs/:id","createGig":"POST /api/gigs (Teacher)","updateGig":"PUT /api/gigs/:id (Teacher)","deleteGig":"DELETE /api/gigs/:id (Teacher)","getGigReviews":"GET /api/gigs/:gigId/reviews","getMyReviewForGig":"GET /api/gigs/:gigId/reviews/me","createReviewForGig":"POST /api/gigs/:gigId/reviews"},"bookings":{"getAllBookings":"GET /api/bookings (Protected)","getBooking":"GET /api/bookings/:id (Protected)","createBooking":"POST /api/bookings (Student)","updateBookingStatus":"PUT /api/bookings/:id (Teacher)","getBookingByRoom":"GET /api/bookings/room/:roomId (Protected)","markAttendance":"POST /api/bookings/:id/attendance (Student)"},"reviews":{"list":"GET /api/reviews?gig=&teacher=&student=","getOne":"GET /api/reviews/:id","updateOwn":"PUT /api/reviews/:id (Protected)","delete":"DELETE /api/reviews/:id (Protected)"},"payments":{"init":"POST /api/payments/init (Student)","status":"GET /api/payments/status/:gigId","success":"POST /api/payments/success/:tran_id","fail":"POST /api/payments/fail/:tran_id","cancel":"POST /api/payments/cancel/:tran_id","ipn":"POST /api/payments/ipn"},"uploads":{"uploadImage":"POST /api/uploads/image (Protected)","uploadVideo":"POST /api/uploads/video (Protected)","uploadGigThumbnail":"POST /api/uploads/gig-thumbnail (Protected)","deleteGigThumbnail":"DELETE /api/uploads/gig-thumbnail (Protected)"},"wallet":{"balance":"GET /api/wallet/balance (Teacher)","transactions":"GET /api/wallet/transactions (Teacher)","withdraw":"POST /api/wallet/withdraw (Teacher)","pendingWithdrawals":"GET /api/wallet/admin/withdrawals/pending (Admin)","approveWithdrawal":"PUT /api/wallet/admin/withdrawals/:id/approve (Admin)","rejectWithdrawal":"PUT /api/wallet/admin/withdrawals/:id/reject (Admin)","stats":"GET /api/wallet/admin/stats (Admin)"},"admin":{"listUsers":"GET /api/admin/users (Admin)","getUser":"GET /api/admin/users/:id (Admin)","listActivities":"GET /api/admin/activities (Admin)","getUserActivities":"GET /api/admin/users/:id/activities (Admin)","classAnalytics":"GET /api/admin/analytics/classes (Admin)"}},"note":"All endpoints starting with /api require authentication except health checks"}