XnoleXDocs

Dashboard

The dashboard provides a centralized view of your security posture with summary metrics, recent activity, and quick actions.

Summary Metrics

The dashboard summary endpoint returns aggregate counts across your account:

GET /api/v1/dashboard/summary
curl https://api.xnolex.com/api/v1/dashboard/summary \
  -H "Authorization: Bearer <token>"
Response
{
  "total_targets": 5,
  "total_scans": 23,
  "active_scans": 1,
  "total_vulnerabilities": 47,
  "critical_count": 3,
  "high_count": 8
}
total_targets — Number of targets in your account.
total_scans — Total scans executed (all statuses).
active_scans — Scans currently in pending or running status.
total_vulnerabilities — Sum of findings_count across all scans.
critical_count — Sum of critical findings across all scans.
high_count — Sum of high findings across all scans.

Recent Scans

The summary endpoint also returns the last 5 scans with their status and findings counts:

Recent scans (within summary response)
{
  "recent_scans": [
    {
      "id": "scan-uuid-...",
      "target_domain": "example.com",
      "engine": "full",
      "status": "completed",
      "progress": 100,
      "created_at": "2025-01-15T10:00:00Z",
      "findings_count": 12,
      "critical_count": 2,
      "high_count": 3,
      "medium_count": 4,
      "low_count": 3
    }
  ]
}

Charts

The charts endpoint returns daily scan and vulnerability counts for the last 30 days:

GET /api/v1/dashboard/charts
curl https://api.xnolex.com/api/v1/dashboard/charts \
  -H "Authorization: Bearer <token>"
Response
[
  {
    "date": "2025-01-01",
    "scans": 3,
    "vulnerabilities": 15
  },
  {
    "date": "2025-01-02",
    "scans": 2,
    "vulnerabilities": 8
  }
]

Each entry represents a single day. Days with no activity are omitted from the response. The vulnerabilities field is the sum of findings_count for all scans completed on that day.

Reports Page

The reports page aggregates findings across all completed scans, providing a per-domain breakdown of severity distribution. This gives you a portfolio-level view of security findings across all your targets.

Note
The reports page uses data from the scan detail and report endpoints. There is no separate aggregated reports API endpoint at this time.

Notifications

The notification system alerts you when scans complete or fail. Notifications are created automatically by the scan worker.

Notification Types

scan_complete — Fired when a scan finishes. Includes finding counts and severity breakdown.
scan_failed — Fired when a scan fails. Includes the error message.

Listing Notifications

GET /api/v1/notifications
curl https://api.xnolex.com/api/v1/notifications \
  -H "Authorization: Bearer <token>"

Unread Count

GET /api/v1/notifications/unread-count
curl https://api.xnolex.com/api/v1/notifications/unread-count \
  -H "Authorization: Bearer <token>"

# Response: { "unread_count": 3 }

Marking as Read

Mark single notification
curl -X PUT https://api.xnolex.com/api/v1/notifications/{id}/read \
  -H "Authorization: Bearer <token>"
Mark all as read
curl -X POST https://api.xnolex.com/api/v1/notifications/read-all \
  -H "Authorization: Bearer <token>"

Scan Limit Indicator

The dashboard displays a progress bar showing scans used versus your tier limit. Limits are enforced per-tier:

Tier
Scan Limit
Demo
10 scans
Monthly Pro
60 scans
Yearly Pro
120 scans
Warning
Reaching your scan limit prevents new scans from being created. You will receive a 403 error with an upgrade prompt. Upgrade your plan to increase your limit.

Quick Actions

The dashboard provides direct access to the most common operations:

Create Target — Navigate to the targets page and submit a new domain.
Start Scan — Navigate to the scans page, select a target and engine, and launch a new scan.
View Reports — Navigate to the reports page to see aggregated findings across all completed scans.