Skip to content

Scans API

Erstellen, verwalten und überwachen Sie Schwachstellen-Scans programmatisch.

Endpunkte

MethodEndpointBeschreibung
GET/api/v1/scansAlle Scans auflisten
POST/api/v1/scansNeuen Scan erstellen
GET/api/v1/scans/{id}Scan-Details abrufen
DELETE/api/v1/scans/{id}Scan abbrechen/löschen
GET/api/v1/scans/{id}/findingsScan-Findings abrufen

Scans auflisten

Alle Scans für Ihre Organisation abrufen.

bash
GET /api/v1/scans

Query-Parameter

ParameterTypBeschreibung
pageintegerSeitennummer (Standard: 1)
per_pageintegerEinträge pro Seite (Standard: 20, max: 100)
statusstringNach Status filtern: pending, running, completed, failed
targetstringNach Ziel-Domain filtern
from_datestringScans nach Datum filtern (ISO 8601)
to_datestringScans vor Datum filtern (ISO 8601)

Antwort

json
{
  "items": [
    {
      "id": "scan_abc123",
      "target": "example.com",
      "scan_type": "full",
      "status": "completed",
      "progress": 100,
      "phase": "complete",
      "created_at": "2025-12-21T10:00:00Z",
      "completed_at": "2025-12-21T10:45:00Z",
      "vulnerabilities_found": 12,
      "critical_count": 1,
      "high_count": 3,
      "medium_count": 5,
      "low_count": 3
    }
  ],
  "total": 45,
  "page": 1,
  "per_page": 20,
  "pages": 3
}

Scan erstellen

Einen neuen Schwachstellen-Scan starten.

bash
POST /api/v1/scans
Content-Type: application/json

Request Body

json
{
  "target": "example.com",
  "scan_type": "full",
  "frameworks": ["soc2", "pci-dss"],
  "ports": "1-1000",
  "authorized": true
}

Parameter

FeldTypErforderlichBeschreibung
targetstringJaDomain, IP oder CIDR-Bereich
scan_typestringNeinquick, full oder compliance (Standard: full)
frameworksarrayNeinZu prüfende Compliance-Frameworks
portsstringNeinPort-Bereich (Standard: häufige Ports)
authorizedbooleanJaBestätigung der Scan-Autorisierung

Scan-Typen

TypDauerAbdeckung
quick5-10 MinTop-Schwachstellen, häufige Ports
full30-60 MinAlle 11 Phasen, umfassende Abdeckung
compliance15-30 MinFramework-spezifische Prüfungen

Antwort

json
{
  "id": "scan_xyz789",
  "target": "example.com",
  "scan_type": "full",
  "status": "pending",
  "created_at": "2025-12-21T14:00:00Z",
  "estimated_duration": 2700
}

Scan-Details abrufen

Details für einen bestimmten Scan abrufen.

bash
GET /api/v1/scans/{scan_id}

Antwort

json
{
  "id": "scan_abc123",
  "target": "example.com",
  "scan_type": "full",
  "status": "running",
  "progress": 45,
  "phase": "vulnerability_scanning",
  "current_tool": "nuclei",
  "created_at": "2025-12-21T10:00:00Z",
  "started_at": "2025-12-21T10:01:00Z",
  "phases_completed": [
    "discovery",
    "enumeration"
  ],
  "phases_remaining": [
    "vulnerability_scanning",
    "web_analysis",
    "cloud_analysis",
    "threat_intelligence",
    "correlation",
    "ai_analysis",
    "remediation_planning",
    "reporting"
  ]
}

Scan abbrechen

Einen laufenden Scan stoppen.

bash
DELETE /api/v1/scans/{scan_id}

Antwort

json
{
  "id": "scan_abc123",
  "status": "cancelled",
  "message": "Scan cancelled successfully"
}

Scan-Findings abrufen

Während eines Scans gefundene Schwachstellen abrufen.

bash
GET /api/v1/scans/{scan_id}/findings

Query-Parameter

ParameterTypBeschreibung
severitystringFilter: critical, high, medium, low, info
statusstringFilter: open, in_progress, resolved, false_positive

Antwort

json
{
  "items": [
    {
      "id": "finding_123",
      "title": "SQL Injection in Login Form",
      "severity": "critical",
      "cvss_score": 9.8,
      "status": "open",
      "tool": "sqlmap",
      "affected_component": "https://example.com/login",
      "description": "...",
      "remediation": "...",
      "cve_ids": ["CVE-2024-1234"],
      "detected_at": "2025-12-21T10:30:00Z"
    }
  ],
  "total": 12
}

Scan-Kontingent

Verbleibendes Scan-Kontingent prüfen.

bash
GET /api/v1/scans/quota

Antwort

json
{
  "plan": "professional",
  "monthly_limit": 150,
  "used_this_month": 45,
  "remaining": 105,
  "resets_at": "2026-01-01T00:00:00Z"
}

Geplante Scans

Professional und Enterprise

Geplante Scans sind in den Professional und Enterprise Tarifen verfügbar.

Zeitplan erstellen

bash
POST /api/v1/scans/schedules
Content-Type: application/json

{
  "target": "example.com",
  "scan_type": "full",
  "frequency": "weekly",
  "day_of_week": 1,
  "hour": 2,
  "timezone": "UTC"
}

Zeitpläne auflisten

bash
GET /api/v1/scans/schedules

Zeitplan löschen

bash
DELETE /api/v1/scans/schedules/{schedule_id}

Webhooks für Scans

Für Scan-Ereignisbenachrichtigungen registrieren:

bash
POST /api/v1/webhooks
Content-Type: application/json

{
  "url": "https://your-server.com/webhook",
  "events": [
    "scan.started",
    "scan.completed",
    "scan.failed",
    "vulnerability.critical"
  ]
}

Rate Limits

TarifGleichzeitige ScansScans/Monat
Startup125
Professional3150
EnterpriseUnbegrenztUnbegrenzt

Updated at:

Agentic AI-Powered Security & Compliance