How strategic-information-department-cidrz/yathu-help-desk-api works
Yathu Help Desk API lets platform users report and track issues while scoped support staff manage ticket ownership, escalation, and resolution; decision-makers use aggregated support analytics. The principal flow is an authenticated request through an API controller into an application service, which coordinates persistence and optional integrations. Separate branches cover identity and account administration, geographic locations, notifications, attachments, and analytics. The graph reflects the README and tree; where service implementations were not sampled, links show only clearly indicated responsibilities, not detailed internal call sequences.
Main entry points: AuthService.cs Authentication · TicketService.cs Ticket Workflow · AppDbContext.cs SQL Server · TicketsController.cs Tickets API
Components 25
HTTP API
- Tickets API
yathu-help-desk-api.Api/Controllers/TicketsController.cs - Auth API
yathu-help-desk-api.Api/Controllers/AuthController.cs - Users API
yathu-help-desk-api.Api/Controllers/UsersController.cs - Analytics API
yathu-help-desk-api.Api/Controllers/AnalyticsController.cs - Locations API
yathu-help-desk-api.Api/Controllers/LocationsController.cs - Notifications API
yathu-help-desk-api.Api/Controllers/NotificationsController.cs
Application Services
- Ticket Workflow
yathu-help-desk-api.Infrastructure/Services/TicketService.cs - Authentication
yathu-help-desk-api.Infrastructure/Services/AuthService.cs - Account Management
yathu-help-desk-api.Infrastructure/Services/UserService.cs - Analytics
yathu-help-desk-api.Infrastructure/Services/AnalyticsService.cs - Geographic Data
yathu-help-desk-api.Infrastructure/Services/LocationService.cs - Notifications
yathu-help-desk-api.Infrastructure/Services/NotificationService.cs - Auto-close Worker
yathu-help-desk-api.Infrastructure/Services/AutoCloseHostedService.cs
Persistence
- Ticket Repository
yathu-help-desk-api.Infrastructure/Repositories/TicketRepository.cs - User Repository
yathu-help-desk-api.Infrastructure/Repositories/UserRepository.cs - Location Repository
yathu-help-desk-api.Infrastructure/Repositories/LocationRepository.cs - Notification Repository
yathu-help-desk-api.Infrastructure/Repositories/NotificationRepository.cs - SQL Server
yathu-help-desk-api.Infrastructure/Persistence/AppDbContext.cs
External Integrations
- JWT Tokens
yathu-help-desk-api.Infrastructure/Services/TokenService.cs - SMTP Email
yathu-help-desk-api.Infrastructure/Services/SmtpEmailSender.cs - Attachment Storage
yathu-help-desk-api.Infrastructure/Services/BackblazeStorageService.cs - Backblaze B2
Other components
- Reporter
- Support Staff
- Decision-makers
Connections 27
- Reporter → Auth API: registers / signs in
- Reporter → Tickets API: reports / tracks
- Support Staff → Tickets API: works tickets
- Decision-makers → Analytics API: requests metrics
- Tickets API → Ticket Workflow: invokes
- Auth API → Authentication: invokes
- Users API → Account Management: invokes
- Analytics API → Analytics: invokes
- Locations API → Geographic Data: invokes
- Notifications API → Notifications: invokes
- Ticket Workflow → Ticket Repository: reads / writes
- Ticket Workflow → Notifications: triggers events
- Ticket Workflow → Attachment Storage: stores / reads files
- Authentication → User Repository: checks / updates users
- Authentication → Location Repository: validates geography
- Authentication → JWT Tokens: issues token
- Authentication → SMTP Email: sends reset code
- Account Management → User Repository: manages accounts
- Analytics → Ticket Repository: aggregates tickets
- Geographic Data → Location Repository: reads locations
- Notifications → Notification Repository: reads / writes
- Auto-close Worker → Ticket Workflow: closes stale tickets
- Ticket Repository → SQL Server: persists ticket data
- User Repository → SQL Server: persists account data
- Location Repository → SQL Server: reads location data
- Notification Repository → SQL Server: persists notifications
- Attachment Storage → Backblaze B2: stores objects