{"success":true,"status":{"overall":"operational","lastChecked":"2026-07-13T11:50:43.064Z","version":"1.0.0","environment":"development","uptime":{"process":{"seconds":1733290,"humanReadable":"20d 1h 28m"},"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":37,"detail":"No 5xx in the last hour."},{"name":"Database","key":"database","description":"Primary data store (MongoDB Atlas) — tenant-scoped per query.","status":"operational","responseTimeMs":2},{"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":388159,"statusFamilyCounts":{"2xx":143203,"3xx":228322,"4xx":16634,"5xx":0},"responseTime":{"p50Ms":12,"p95Ms":253,"p99Ms":415,"avgMs":37,"sampleSize":2048},"last60s":{"requests":15,"perSec":0.27,"avgMs":9,"errorRate":0},"lastHour":{"requests":1108,"perSec":0.31,"avgMs":38,"errorRate":0},"memory":{"rssMb":108.8,"heapUsedMb":59.5,"heapTotalMb":64.8,"externalMb":20.9},"system":{"loadAvg1m":0.1,"loadAvg5m":0.06,"loadAvg15m":0.01,"cpuCount":2,"platform":"linux","nodeVersion":"v20.20.2"}},"timeline":[{"at":1783939903049,"requests":9,"p95Ms":14,"avgMs":7},{"at":1783939963049,"requests":7,"p95Ms":27,"avgMs":13},{"at":1783940023049,"requests":6,"p95Ms":15,"avgMs":10},{"at":1783940083049,"requests":7,"p95Ms":26,"avgMs":11},{"at":1783940143049,"requests":6,"p95Ms":23,"avgMs":13},{"at":1783940203049,"requests":35,"p95Ms":98,"avgMs":17},{"at":1783940263049,"requests":10,"p95Ms":23,"avgMs":12},{"at":1783940323049,"requests":20,"p95Ms":312,"avgMs":29},{"at":1783940383049,"requests":21,"p95Ms":237,"avgMs":39},{"at":1783940443049,"requests":24,"p95Ms":220,"avgMs":52},{"at":1783940503049,"requests":13,"p95Ms":378,"avgMs":44},{"at":1783940563049,"requests":9,"p95Ms":26,"avgMs":11},{"at":1783940623049,"requests":8,"p95Ms":14,"avgMs":10},{"at":1783940683049,"requests":9,"p95Ms":40,"avgMs":13},{"at":1783940743049,"requests":8,"p95Ms":21,"avgMs":10},{"at":1783940803049,"requests":8,"p95Ms":15,"avgMs":10},{"at":1783940863049,"requests":6,"p95Ms":15,"avgMs":11},{"at":1783940923049,"requests":15,"p95Ms":279,"avgMs":31},{"at":1783940983049,"requests":7,"p95Ms":25,"avgMs":13},{"at":1783941043049,"requests":42,"p95Ms":158,"avgMs":35},{"at":1783941103049,"requests":31,"p95Ms":90,"avgMs":25},{"at":1783941163049,"requests":26,"p95Ms":215,"avgMs":40},{"at":1783941223049,"requests":19,"p95Ms":84,"avgMs":16},{"at":1783941283049,"requests":13,"p95Ms":394,"avgMs":46},{"at":1783941343049,"requests":7,"p95Ms":26,"avgMs":12},{"at":1783941403049,"requests":10,"p95Ms":216,"avgMs":33},{"at":1783941463049,"requests":7,"p95Ms":28,"avgMs":13},{"at":1783941523049,"requests":14,"p95Ms":15,"avgMs":9},{"at":1783941583049,"requests":2,"p95Ms":221,"avgMs":115},{"at":1783941643049,"requests":0,"p95Ms":0,"avgMs":0},{"at":1783941703049,"requests":0,"p95Ms":0,"avgMs":0},{"at":1783941763049,"requests":0,"p95Ms":0,"avgMs":0},{"at":1783941823049,"requests":0,"p95Ms":0,"avgMs":0},{"at":1783941883049,"requests":33,"p95Ms":38,"avgMs":10},{"at":1783941943049,"requests":0,"p95Ms":0,"avgMs":0},{"at":1783942003049,"requests":0,"p95Ms":0,"avgMs":0},{"at":1783942063049,"requests":0,"p95Ms":0,"avgMs":0},{"at":1783942123049,"requests":0,"p95Ms":0,"avgMs":0},{"at":1783942183049,"requests":0,"p95Ms":0,"avgMs":0},{"at":1783942243049,"requests":22,"p95Ms":269,"avgMs":61},{"at":1783942303049,"requests":2,"p95Ms":34,"avgMs":21},{"at":1783942363049,"requests":52,"p95Ms":286,"avgMs":59},{"at":1783942423049,"requests":14,"p95Ms":33,"avgMs":12},{"at":1783942483049,"requests":22,"p95Ms":59,"avgMs":24},{"at":1783942543049,"requests":23,"p95Ms":379,"avgMs":46},{"at":1783942603049,"requests":51,"p95Ms":110,"avgMs":30},{"at":1783942663049,"requests":26,"p95Ms":265,"avgMs":54},{"at":1783942723049,"requests":31,"p95Ms":84,"avgMs":28},{"at":1783942783049,"requests":13,"p95Ms":272,"avgMs":31},{"at":1783942843049,"requests":27,"p95Ms":22,"avgMs":25},{"at":1783942903049,"requests":53,"p95Ms":219,"avgMs":36},{"at":1783942963049,"requests":56,"p95Ms":98,"avgMs":23},{"at":1783943023049,"requests":31,"p95Ms":212,"avgMs":28},{"at":1783943083049,"requests":36,"p95Ms":90,"avgMs":24},{"at":1783943143049,"requests":26,"p95Ms":313,"avgMs":39},{"at":1783943203049,"requests":35,"p95Ms":348,"avgMs":47},{"at":1783943263049,"requests":61,"p95Ms":501,"avgMs":131},{"at":1783943323049,"requests":47,"p95Ms":385,"avgMs":64},{"at":1783943383049,"requests":33,"p95Ms":366,"avgMs":58},{"at":1783943443049,"requests":15,"p95Ms":13,"avgMs":9}],"topRouteGroups":[{"group":"workforce","requests":838,"avgMs":16},{"group":"notifications","requests":413,"avgMs":9},{"group":"leads","requests":371,"avgMs":124},{"group":"attendance","requests":85,"avgMs":12},{"group":"chat","requests":58,"avgMs":28},{"group":"leaves","requests":33,"avgMs":10},{"group":"users","requests":32,"avgMs":7},{"group":"teams","requests":30,"avgMs":14},{"group":"learn","requests":28,"avgMs":12},{"group":"tasks","requests":27,"avgMs":15}],"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":[]}}