{"success":true,"status":{"overall":"operational","lastChecked":"2026-05-30T17:53:13.795Z","version":"1.0.0","environment":"development","uptime":{"process":{"seconds":99186,"humanReadable":"1d 3h 33m"},"rollingEstimate":{"h24":100,"d7":100,"d30":100,"d90":100,"note":"Rolling-window uptime is estimated from in-process error rates since boot. Persistent probe history is on the roadmap."}},"components":[{"name":"API gateway","key":"api","description":"REST + WebSocket endpoint serving every tenant + public surface.","status":"operational","responseTimeMs":32,"detail":"No 5xx in the last hour."},{"name":"Database","key":"database","description":"Primary data store (MongoDB Atlas) — tenant-scoped per query.","status":"operational","responseTimeMs":1},{"name":"Background queue","key":"queue","description":"BullMQ + Redis for slow operations (email, push, AI, exports).","status":"degraded","detail":"REDIS_URL unset — queue degrades to inline execution (still works, slower under load)."},{"name":"Object storage","key":"storage","description":"AWS S3 — file uploads, exports, signed download URLs.","status":"operational","detail":"IAM keys + bucket configured."},{"name":"Email (SMTP)","key":"email","description":"Transactional + marketing email via nodemailer.","status":"operational","detail":"SMTP configured."},{"name":"Realtime (Socket.io)","key":"realtime","description":"Live presence + cross-module dashboards via WebSocket.","status":"operational"}],"metrics":{"requestsTotal":12290,"statusFamilyCounts":{"2xx":4973,"3xx":6323,"4xx":994,"5xx":0},"responseTime":{"p50Ms":8,"p95Ms":174,"p99Ms":635,"avgMs":32,"sampleSize":2048},"last60s":{"requests":1,"perSec":4.85,"avgMs":1,"errorRate":0},"lastHour":{"requests":7,"perSec":0,"avgMs":2,"errorRate":0},"memory":{"rssMb":141.4,"heapUsedMb":53.9,"heapTotalMb":63.8,"externalMb":20.7},"system":{"loadAvg1m":0,"loadAvg5m":0,"loadAvg15m":0,"cpuCount":2,"platform":"linux","nodeVersion":"v20.20.2"}},"timeline":[{"at":1780160053788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780160113788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780160173788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780160233788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780160293788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780160353788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780160413788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780160473788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780160533788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780160593788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780160653788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780160713788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780160773788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780160833788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780160893788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780160953788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780161013788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780161073788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780161133788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780161193788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780161253788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780161313788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780161373788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780161433788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780161493788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780161553788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780161613788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780161673788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780161733788,"requests":1,"p95Ms":0,"avgMs":0},{"at":1780161793788,"requests":1,"p95Ms":1,"avgMs":1},{"at":1780161853788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780161913788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780161973788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780162033788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780162093788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780162153788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780162213788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780162273788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780162333788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780162393788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780162453788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780162513788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780162573788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780162633788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780162693788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780162753788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780162813788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780162873788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780162933788,"requests":1,"p95Ms":11,"avgMs":11},{"at":1780162993788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780163053788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780163113788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780163173788,"requests":3,"p95Ms":3,"avgMs":1},{"at":1780163233788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780163293788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780163353788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780163413788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780163473788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780163533788,"requests":0,"p95Ms":0,"avgMs":0},{"at":1780163593788,"requests":1,"p95Ms":1,"avgMs":1}],"topRouteGroups":[{"group":"notifications","requests":435,"avgMs":8},{"group":"other","requests":375,"avgMs":1},{"group":"workforce","requests":317,"avgMs":20},{"group":"leads","requests":313,"avgMs":150},{"group":"public","requests":232,"avgMs":5},{"group":"chat","requests":130,"avgMs":25},{"group":"attendance","requests":86,"avgMs":9},{"group":"admin","requests":35,"avgMs":24},{"group":"meta","requests":23,"avgMs":1},{"group":"teams","requests":15,"avgMs":13}],"endpoints":[{"group":"Public (marketing site)","routes":[{"method":"GET","path":"/api/v1/public/health","auth":false,"description":"Lightweight liveness probe."},{"method":"GET","path":"/api/v1/public/status","auth":false,"description":"This endpoint — detailed status + analytics."},{"method":"GET","path":"/api/v1/public/stats","auth":false,"description":"Aggregate platform counters (companies, workforce, leads, jobs)."},{"method":"GET","path":"/api/v1/public/pricing","auth":false,"description":"Active pricing plans for the comparison grid."},{"method":"GET","path":"/api/v1/public/changelog","auth":false,"description":"Recent product updates (?category=, ?limit=)."},{"method":"GET","path":"/api/v1/public/changelog/:slug","auth":false,"description":"Single changelog entry."},{"method":"POST","path":"/api/v1/public/leads","auth":false,"description":"Marketing lead capture (rate-limited)."},{"method":"POST","path":"/api/v1/public/demo-requests","auth":false,"description":"Demo booking (rate-limited)."},{"method":"POST","path":"/api/v1/public/newsletter","auth":false,"description":"Newsletter signup (rate-limited, idempotent)."}]},{"group":"Identity & access","routes":[{"method":"POST","path":"/api/v1/workforce/login","auth":false,"description":"Tenant user login → JWT."},{"method":"POST","path":"/api/v1/workforce/logout","auth":true,"description":"Token revocation (bumps tokenVersion)."},{"method":"GET","path":"/api/v1/users/me","auth":true,"description":"Current user profile."},{"method":"GET","path":"/api/v1/me/preferences","auth":true,"description":"Per-user preferences."}]},{"group":"Workforce","routes":[{"method":"GET","path":"/api/v1/workforce","auth":true,"description":"Tenant employee directory."},{"method":"POST","path":"/api/v1/workforce","auth":true,"description":"Create employee."},{"method":"GET","path":"/api/v1/departments","auth":true,"description":"Department tree."},{"method":"GET","path":"/api/v1/branches","auth":true,"description":"Branch list."},{"method":"GET","path":"/api/v1/teams","auth":true,"description":"Cross-cutting team groups."},{"method":"GET","path":"/api/v1/attendance","auth":true,"description":"Attendance records."},{"method":"POST","path":"/api/v1/attendance/check-in","auth":true,"description":"Captain check-in (geofenced)."},{"method":"GET","path":"/api/v1/leaves","auth":true,"description":"Leave requests."}]},{"group":"Hiring","routes":[{"method":"GET","path":"/api/v1/jobs","auth":true,"description":"Job openings (tenant scope)."},{"method":"GET","path":"/api/v1/applications","auth":true,"description":"Applications + ATS pipeline."},{"method":"GET","path":"/api/v1/interviews","auth":true,"description":"Interview schedule."},{"method":"GET","path":"/api/v1/skill-tests","auth":true,"description":"Skill-test builder + results."}]},{"group":"Sales & CRM","routes":[{"method":"GET","path":"/api/v1/leads","auth":true,"description":"Lead pipeline (heat-scored)."},{"method":"POST","path":"/api/v1/leads","auth":true,"description":"Create lead."},{"method":"GET","path":"/api/v1/clients","auth":true,"description":"Converted clients."},{"method":"GET","path":"/api/v1/analytics/leads","auth":true,"description":"Lead funnel analytics."}]},{"group":"Finance","routes":[{"method":"GET","path":"/api/v1/products","auth":true,"description":"Product catalog."},{"method":"GET","path":"/api/v1/sales","auth":true,"description":"Sales ledger."},{"method":"GET","path":"/api/v1/invoices","auth":true,"description":"Invoice management."},{"method":"GET","path":"/api/v1/expenses","auth":true,"description":"Expense tracking."},{"method":"GET","path":"/api/v1/finance/summary","auth":true,"description":"P&L + cash-flow rollups."},{"method":"GET","path":"/api/v1/payroll","auth":true,"description":"Payroll cycles + payslips."},{"method":"GET","path":"/api/v1/salary-structures","auth":true,"description":"Salary component templates."}]},{"group":"Operations","routes":[{"method":"GET","path":"/api/v1/tasks","auth":true,"description":"Task board (Kanban + list + calendar)."},{"method":"GET","path":"/api/v1/schedules","auth":true,"description":"Recurring schedule templates."},{"method":"GET","path":"/api/v1/announcements","auth":true,"description":"Internal broadcasts."},{"method":"GET","path":"/api/v1/notifications","auth":true,"description":"User notification feed."},{"method":"GET","path":"/api/v1/chat","auth":true,"description":"Inbox / DM threads."},{"method":"GET","path":"/api/v1/approvals","auth":true,"description":"Approval workflows."},{"method":"GET","path":"/api/v1/support-tickets","auth":true,"description":"Support ticket board."}]},{"group":"Reporting & realtime","routes":[{"method":"GET","path":"/api/v1/reports","auth":true,"description":"Cross-module reports."},{"method":"GET","path":"/api/v1/calendar","auth":true,"description":"Unified calendar."},{"method":"GET","path":"/api/v1/live","auth":true,"description":"Live dashboards (SSE + WebSocket)."},{"method":"GET","path":"/api/v1/audit-logs","auth":true,"description":"Audit trail (immutable, append-only)."}]},{"group":"Billing","routes":[{"method":"GET","path":"/api/v1/pricing-plans","auth":false,"description":"Active pricing tiers."},{"method":"GET","path":"/api/v1/subscriptions","auth":true,"description":"Tenant subscription state."},{"method":"POST","path":"/api/v1/payments","auth":true,"description":"Payment intent create."}]},{"group":"Admin (super-admin only)","routes":[{"method":"GET","path":"/api/v1/admin","auth":true,"description":"Super-admin dashboard endpoints."},{"method":"GET","path":"/api/v1/admin/live","auth":true,"description":"Cross-tenant live metrics."},{"method":"GET","path":"/api/v1/admin/pricing-plans","auth":true,"description":"Manage pricing tiers."}]}],"incidents":[]}}