API Reference

List Remediation Summaries for a CVE

Return the latest AI-generated remediation summaries for a single CVE, drawn from intelligence reporting and analysis. The result is capped at the 5 most recent summaries, newest first.

GET
/v1/remediation/summary/{cve-id}

Cost: 1 credit per successful call

Path parameters

cve-idstringrequired

A CVE identifier matching the pattern CVE-YYYY-NNNNN where the numeric suffix is 4 to 7 digits. Input is case-insensitive: cve-2024-3094 is accepted and normalised to CVE-2024-3094 server-side.

Request

curl https://api.edgeprotect.io/functions/v1/remediation/summary/CVE-2024-3094 \
  -H "Authorization: Bearer $EDGEPROTECT_API_KEY"

Response

{
  "data": {
    "cve_id": "CVE-2024-3094",
    "count": 2,
    "items": [
      {
        "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
        "cve_id": "CVE-2024-3094",
        "status": "success",
        "summary": "Downgrade xz-utils to version 5.4.6 or earlier, or remove all affected builds. Confirm the installed binary hash does not match any known backdoored artifact. Rotate SSH host keys on systems that ran the affected version, and audit authentication logs for anomalous private-key usage.",
        "created_at": "2026-05-18T08:00:00.000Z",
        "error_message": null
      },
      {
        "id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
        "cve_id": "CVE-2024-3094",
        "status": "success",
        "summary": "Block outbound connections to known C2 infrastructure at the network perimeter. Apply vendor-supplied patches or revert to a clean xz-utils package. Re-scan the host with an updated signature set to confirm removal.",
        "created_at": "2026-05-11T14:22:00.000Z",
        "error_message": null
      }
    ],
    "generated_at": "2026-05-18T10:24:31.118Z"
  },
  "meta": {
    "request_id": "8b16efb8-9a6c-4ace-b817-11cbee626d08",
    "generated_at": "2026-05-18T10:24:31.118Z",
    "credits": { "charged": 1, "remaining": 9998 }
  }
}

Response fields

data.cve_idstringoptional

The canonical upper-case CVE identifier the summaries belong to.

data.countintegeroptional

Number of summaries returned (equals items.length). A valid CVE with no summaries on record returns 0 and an empty items array.

data.itemsarrayoptional

The remediation summaries, newest first, capped at 5. Each object contains the fields below.

data.items[].idstringoptional

Unique identifier (UUID) for the summary record.

data.items[].cve_idstringoptional

The CVE identifier this summary addresses.

data.items[].statusstringoptional

Generation status of the summary. success indicates a complete summary; other values indicate the generation did not complete.

data.items[].summarystringoptional

The AI-generated remediation guidance text.

data.items[].created_atstringoptional

ISO 8601 UTC timestamp of when the summary was generated.

data.items[].error_messagestring | nulloptional

Diagnostic message when status is not success; null otherwise.

data.generated_atstringoptional

ISO 8601 UTC timestamp indicating when this response was produced.

Errors

Status error When
400 invalid_cve_id The path segment did not match the CVE-YYYY-N{4,7} pattern.
401 invalid_authorization The Authorization header is missing or malformed.
401 unauthorized The key is invalid, revoked, or the request IP is not on the allowlist.
402 insufficient_credits The organisation's credit balance is below 1.
404 not_found The route or resource does not exist.
405 method_not_allowed Only GET and OPTIONS are accepted.
500 internal An unexpected server error occurred.

See Errors for the full error reference.