{
  "tool": {
    "name": "api-audit",
    "version": "0.1.0"
  },
  "timestamp": "2026-07-18T17:05:38.196Z",
  "baseUrl": "https://api.lughonline.com",
  "evidence": [
    {
      "endpoint": "GET /healthz",
      "method": "GET",
      "path": "/healthz",
      "samples": [
        104.74220999999989,
        101.50579300000004,
        104.21536000000015,
        102.67652399999997,
        103.5868710000002,
        101.0642029999999,
        103.48741900000005,
        101.24902699999984,
        103.48231100000021,
        100.8767929999999,
        104.10210899999993,
        100.854468,
        103.632071,
        100.07264600000008,
        103.47927699999991,
        100.39676000000009,
        105.16669499999989,
        100.8695929999999,
        104.29501200000004,
        101.12161000000015,
        104.04241300000012,
        100.30845799999997,
        104.06794200000013,
        100.18136700000014,
        103.97002900000007,
        100.12054700000044,
        103.15133199999946,
        99.63584099999935,
        104.1302569999998,
        99.16154000000006
      ],
      "ttfb": [
        104.38408299999992,
        101.20075399999996,
        104.01133000000004,
        102.03278499999988,
        103.39237900000012,
        100.84853199999998,
        103.33222000000023,
        101.11403599999994,
        103.27362300000004,
        100.73680300000024,
        103.98174500000005,
        100.73432400000002,
        103.51526300000023,
        99.96147900000005,
        103.33566999999994,
        100.23457800000006,
        105.02065299999958,
        100.72562500000004,
        104.15912900000012,
        100.99206900000036,
        103.89779399999998,
        100.17374700000028,
        103.93817000000035,
        100.05804800000033,
        103.83475799999997,
        100.00696599999992,
        103.03585699999985,
        99.52104699999927,
        104.01516300000003,
        99.04916099999991
      ],
      "status": 200,
      "bytes": 15
    }
  ],
  "audits": [
    {
      "endpoint": "GET /healthz",
      "id": "latency-p95",
      "category": "performance",
      "score": 0.9807134708103514,
      "weight": 3
    },
    {
      "endpoint": "GET /healthz",
      "id": "ttfb-p95",
      "category": "performance",
      "score": 0.7041804572129494,
      "weight": 1,
      "advice": "GET /healthz: reduce p95 time to first byte (104ms) toward 50ms."
    },
    {
      "endpoint": "GET /healthz",
      "id": "burst-error-rate",
      "category": "reliability",
      "score": null,
      "weight": 3
    },
    {
      "endpoint": "GET /healthz",
      "id": "burst-degradation",
      "category": "reliability",
      "score": null,
      "weight": 1
    },
    {
      "endpoint": "GET /healthz",
      "id": "rate-limit-grace",
      "category": "reliability",
      "score": null,
      "weight": 1
    },
    {
      "endpoint": "GET /healthz",
      "id": "compression",
      "category": "efficiency",
      "score": null,
      "weight": 1
    },
    {
      "endpoint": "GET /healthz",
      "id": "cache-headers",
      "category": "efficiency",
      "score": 1,
      "weight": 1
    },
    {
      "endpoint": "GET /healthz",
      "id": "payload-size",
      "category": "efficiency",
      "score": 1,
      "weight": 1
    },
    {
      "endpoint": "GET /healthz",
      "id": "openapi-valid",
      "category": "contract",
      "score": null,
      "weight": 3
    },
    {
      "endpoint": "GET /healthz",
      "id": "no-stack-traces",
      "category": "contract",
      "score": 1,
      "weight": 2
    },
    {
      "endpoint": "GET /healthz",
      "id": "error-envelope",
      "category": "contract",
      "score": null,
      "weight": 1
    },
    {
      "endpoint": "GET /healthz",
      "id": "https",
      "category": "security",
      "score": 1,
      "weight": 1
    },
    {
      "endpoint": "GET /healthz",
      "id": "auth-required",
      "category": "security",
      "score": null,
      "weight": 2
    },
    {
      "endpoint": "GET /healthz",
      "id": "security-headers",
      "category": "security",
      "score": 0.5,
      "weight": 1,
      "advice": "GET /healthz: add X-Content-Type-Options: nosniff and Strict-Transport-Security."
    },
    {
      "endpoint": "GET /healthz",
      "id": "no-powered-by",
      "category": "security",
      "score": 1,
      "weight": 0.5
    }
  ],
  "scores": {
    "overall": 92.93425815291253,
    "categories": {
      "performance": 91.15802174110009,
      "reliability": null,
      "efficiency": 100,
      "contract": 100,
      "security": 80
    },
    "endpoints": [
      {
        "endpoint": "GET /healthz",
        "p50": 102.91392799999971,
        "p95": 104.54097089999996,
        "p99": 105.04359434999989,
        "errorRate": 0,
        "bytes": 15,
        "score": 91.86972256803813
      }
    ]
  }
}
