GET /api/findings, List Findings
Returns paginated vulnerability findings. Query parameters:GET /api/findings/:id, Get Finding Detail
Returns a single finding by its numeric ID.PATCH /api/findings/:id/status, Update Finding Status
Sets the workflow status on a finding (e.g. open / triaged / closed). The status field is opaque to the server — any string is accepted.Since v0.5.3 the status is a real lifecycle, matching
vigolium finding mark: draft → triaged → confirmed → fixed, with false_positive and accepted_risk as dismissed exits. Dismissed findings are left out of the --fail-on gate, scan diff and finding --new-since by default.POST /api/findings/:id/verify, Verify a Finding
Added in v0.5.3 —vigolium finding verify over REST (operator and admin). Re-runs the module behind one finding against the request it originally scanned and records whether it reproduces. :id is the numeric ID or the finding hash (12+ character prefix); the lookup is scoped to X-Project-UUID, so a finding from another project returns 404 (error_code: finding_not_found). The call is synchronous — it answers when the module run ends.
Request body (all optional):
vigolium finding verify -j emits.
DELETE /api/findings/:id, Delete Finding
Deletes a single finding by its numeric ID. Associatedfinding_records junction rows are also removed.
Finding Fields
additional_evidence
Type: string[] (optional, omitted when empty)
Stores extra HTTP request/response pairs associated with a finding. Each entry is a single string containing a raw request and raw response separated by the delimiter \n---------\n.
This field is populated in two ways:
- Modules and extensions: A module or JS extension can attach supplementary evidence when creating a finding (e.g., multiple payloads tried, confirmation requests, or baseline comparisons).
- Deduplication: When duplicate findings are merged (same
module_id,severity, andmatched_atURL), therequest/responsepairs from the removed duplicates are automatically collected into the surviving finding’sadditional_evidence.
\n---------\n, the first part is the request, the second is the response.