EXPORT FORMATS

Download and integrate scan results into your security tools and compliance workflows.

AVAILABLE FORMATS

FormatExtensionContent-TypePlan
JSON.jsonapplication/jsonALL PLANS
YAML.yamlapplication/x-yamlALL PLANS
CSV.csvtext/csvALL PLANS
PDF.pdfapplication/pdfALL PLANS
SARIF.sarifapplication/sarif+jsonENTERPRISE

API ENDPOINT

GET/api/scans/:id/export?format=json|yaml
curl https://wardek.io/api/scans/scan_abc123/export?format=json \
  -H "Authorization: Bearer ssk_live_..." \
  -o report.json

JSON EXPORT

Full scan data as structured JSON. Ideal for programmatic processing, dashboards, and integration with security information and event management (SIEM) tools.

scan-report.json
{
  "id": "scan_abc123def456",
  "url": "https://example.com",
  "score": 87,
  "grade": "B+",
  "createdAt": "2026-03-14T10:30:00Z",
  "duration": 12340,
  "results": [
    {
      "name": "headers",
      "score": 82,
      "weight": 12,
      "findings": [
        {
          "severity": "medium",
          "title": "Missing Content-Security-Policy",
          "description": "No CSP header detected.",
          "recommendation": "Add a strict CSP header."
        }
      ]
    },
    {
      "name": "ssl",
      "score": 100,
      "weight": 11,
      "findings": []
    }
  ]
}

YAML EXPORT

Same data structure as JSON, serialized as YAML for human readability. Useful for configuration-as-code workflows and documentation.

scan-report.yaml
id: scan_abc123def456
url: https://example.com
score: 87
grade: "B+"
createdAt: "2026-03-14T10:30:00Z"
duration: 12340
results:
  - name: headers
    score: 82
    weight: 12
    findings:
      - severity: medium
        title: Missing Content-Security-Policy
        description: No CSP header detected.
        recommendation: Add a strict CSP header.
  - name: ssl
    score: 100
    weight: 11
    findings: []

PDF EXPORT

API Endpoint Coming Soon — Available in Dashboard

Professional PDF report with branded layout, executive summary, detailed findings, and remediation recommendations. Currently available via the dashboard download button.

PDF reports include the WarDek branding, scan timestamp, per-module breakdown, and a prioritized list of remediation actions.

SARIF EXPORT

ENTERPRISE

Static Analysis Results Interchange Format (SARIF v2.1.0). Industry standard for security analysis results. Integrates directly with GitHub Code Scanning, Azure DevOps, and other security platforms.

wardek-results.sarif
{
  "$schema": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/main/sarif-2.1/schema/sarif-schema-2.1.0.json",
  "version": "2.1.0",
  "runs": [
    {
      "tool": {
        "driver": {
          "name": "WarDek",
          "version": "1.0.0",
          "informationUri": "https://wardek.io"
        }
      },
      "results": [
        {
          "ruleId": "headers/missing-csp",
          "level": "warning",
          "message": {
            "text": "Missing Content-Security-Policy header"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "https://example.com"
                }
              }
            }
          ]
        }
      ]
    }
  ]
}
Upload SARIF results to GitHub Code Scanning with the github/codeql-action/upload-sarif action. Findings will appear as security alerts on your repository.

SCAN RESULT SCHEMA

All export formats follow the same data model. Here are the key TypeScript interfaces:

interface ScanResult {
  id: string;              // Unique scan identifier
  url: string;             // Scanned URL
  score: number;           // 0-100 weighted security score
  grade: string;           // A, B+, B, C, D, F
  createdAt: string;       // ISO 8601 timestamp
  duration: number;        // Scan duration in ms
  results: ScanModule[];   // Per-module breakdown
}

interface ScanModule {
  name: string;            // Module identifier (headers, ssl, cors...)
  score: number;           // 0-100 module score
  weight: number;          // Weight in final score calculation
  findings: Finding[];     // Detected issues
}

interface Finding {
  severity: "critical" | "high" | "medium" | "low" | "info";
  title: string;           // Short description
  description: string;     // Detailed explanation
  recommendation: string;  // How to fix
}