Snyk Issue API

The Snyk Issue API parser supports importing vulnerability data from the Snyk Issue API in JSON format. Currently only parsing issues of type code is supported. Samples of ther issue types are welcome.

For more information about the Snyk Issue API, refer to the official Snyk API documentation.

API request

Example API request to get only code issues:

GET https://api.snyk.io/rest/orgs/{org_id}/issues?version=2025-08-02&type=code

For more details see: https://docs.snyk.io/snyk-api/reference/issues#get-orgs-org_id-issues

Sample Scan Data

Sample Snyk Issue API scans can be found here.

Field Mapping

The parser maps fields from the Snyk Issue API response to DefectDojo’s Finding model as follows:

Finding FieldSnyk Issue API FieldNotes
titleattributes.title
severityattributes.effective_severity_levelMapped to Critical/High/Medium/Low/Info
descriptionattributes.description
unique_id_from_toolidTop-level issue ID
file_pathcoordinates[].representations[].sourceLocation.fileFirst occurrence
linecoordinates[].representations[].sourceLocation.region.start.lineLine where the issue starts
dateattributes.created_atISO format date
cweclasses[].idFirst CWE class found
activeattributes.status == “open” AND NOT attributes.ignoredInactive if ignored or not open
verifiedtrueAlways set to true
static_findingtrueAlways set to true
dynamic_findingfalseAlways set to false
out_of_scopeattributes.ignoredSet to true if issue is ignored
fix_available*coordinates[].is_fixable_*True if any fixability flag is true.

Impact Field

The impact field combines multiple pieces of information:

  1. Problem details:
    • Source (e.g., “SNYK”)
    • Type (e.g., “vulnerability”)
    • Last update timestamp
    • Severity level
  2. All source locations, each containing:
    • File path
    • Commit ID
    • Line range (start-end)
    • Column range (start-end)

Additional Processing

  • Multiple CWEs are handled by using the first one as the primary CWE and listing additional ones in the references field
  • Risk scores are included in the severity_justification field when available
  • Only issues with type=“code” are processed
  • Line numbers: Only the starting line is stored in the Finding model, but both start and end lines are included in the impact field for reference

Default Deduplication Hashcode Fields

By default, DefectDojo identifies duplicate Findings using these hashcode fields:

  • unique id from tool
  • file path