curl -N -H "Authorization: Bearer YOUR_API_TOKEN" \
"https://api.heimdall.dev/api/scans/550e8400-e29b-41d4-a716-446655440000/progress/stream"
event: stage_update
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","stage":"ingest","status":"running","timestamp":"2026-03-12T10:00:05Z"}
event: stage_update
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","stage":"ingest","status":"completed","timestamp":"2026-03-12T10:01:23Z"}
event: status_change
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","status":"hunting","timestamp":"2026-03-12T10:01:25Z","finding_count":0,"critical":0,"high":0,"medium":0,"low":0}
event: stage_update
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","stage":"hunt","status":"running","timestamp":"2026-03-12T10:01:25Z"}
event: finding_added
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","finding_id":"3f7a8b9c-0d1e-2f3a-4b5c-6d7e8f9a0b1c","title":"SQL Injection in user authentication","severity":"critical"}
: keepalive
event: stage_update
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","stage":"hunt","status":"completed","timestamp":"2026-03-12T10:10:45Z"}
event: scan_complete
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","finding_count":42,"critical":5,"high":12,"medium":18,"low":7,"timestamp":"2026-03-12T10:15:30Z"}
Subscribe to real-time scan progress updates via Server-Sent Events (SSE)
curl -N -H "Authorization: Bearer YOUR_API_TOKEN" \
"https://api.heimdall.dev/api/scans/550e8400-e29b-41d4-a716-446655440000/progress/stream"
event: stage_update
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","stage":"ingest","status":"running","timestamp":"2026-03-12T10:00:05Z"}
event: stage_update
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","stage":"ingest","status":"completed","timestamp":"2026-03-12T10:01:23Z"}
event: status_change
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","status":"hunting","timestamp":"2026-03-12T10:01:25Z","finding_count":0,"critical":0,"high":0,"medium":0,"low":0}
event: stage_update
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","stage":"hunt","status":"running","timestamp":"2026-03-12T10:01:25Z"}
event: finding_added
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","finding_id":"3f7a8b9c-0d1e-2f3a-4b5c-6d7e8f9a0b1c","title":"SQL Injection in user authentication","severity":"critical"}
: keepalive
event: stage_update
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","stage":"hunt","status":"completed","timestamp":"2026-03-12T10:10:45Z"}
event: scan_complete
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","finding_count":42,"critical":5,"high":12,"medium":18,"low":7,"timestamp":"2026-03-12T10:15:30Z"}
Documentation Index
Fetch the complete documentation index at: https://mintlify.com/iamngoni/heimdall/llms.txt
Use this file to discover all available pages before exploring further.
text/event-streamno-cachescan_id (string): The scan UUIDstatus (string): New status valuetimestamp (string): ISO 8601 timestampfinding_count (integer): Total findings discoveredcritical (integer): Critical severity counthigh (integer): High severity countmedium (integer): Medium severity countlow (integer): Low severity countscan_id (string): The scan UUIDstage (string): Stage name (e.g., “ingest”, “tyr”, “hunt”)status (string): Stage status (“pending”, “running”, “completed”, “failed”)timestamp (string): ISO 8601 timestamperror (string, optional): Error message if stage failedscan_id (string): The scan UUIDfinding_id (string): The finding UUIDtitle (string): Brief title of the vulnerabilityseverity (string): Severity level (“critical”, “high”, “medium”, “low”)scan_id (string): The scan UUIDfinding_count (integer): Total findings discoveredcritical (integer): Critical severity counthigh (integer): High severity countmedium (integer): Medium severity countlow (integer): Low severity counttimestamp (string): ISO 8601 timestampscan_id (string): The scan UUIDerror (string): Error message describing what went wrongtimestamp (string): ISO 8601 timestampevent: status_change
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","status":"running","timestamp":"2026-03-12T10:00:00Z"}
event: stage_update
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","stage":"ingest","status":"running","timestamp":"2026-03-12T10:00:05Z"}
: keepalive
: keepalive\n\n) every 15 seconds to prevent connection timeouts.
scan_complete event is sent (successful completion)error event is sent (scan failed)curl -N -H "Authorization: Bearer YOUR_API_TOKEN" \
"https://api.heimdall.dev/api/scans/550e8400-e29b-41d4-a716-446655440000/progress/stream"
event: stage_update
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","stage":"ingest","status":"running","timestamp":"2026-03-12T10:00:05Z"}
event: stage_update
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","stage":"ingest","status":"completed","timestamp":"2026-03-12T10:01:23Z"}
event: status_change
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","status":"hunting","timestamp":"2026-03-12T10:01:25Z","finding_count":0,"critical":0,"high":0,"medium":0,"low":0}
event: stage_update
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","stage":"hunt","status":"running","timestamp":"2026-03-12T10:01:25Z"}
event: finding_added
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","finding_id":"3f7a8b9c-0d1e-2f3a-4b5c-6d7e8f9a0b1c","title":"SQL Injection in user authentication","severity":"critical"}
: keepalive
event: stage_update
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","stage":"hunt","status":"completed","timestamp":"2026-03-12T10:10:45Z"}
event: scan_complete
data: {"scan_id":"550e8400-e29b-41d4-a716-446655440000","finding_count":42,"critical":5,"high":12,"medium":18,"low":7,"timestamp":"2026-03-12T10:15:30Z"}