List vulnerabilities

View as MarkdownOpen in Claude
JSON:API collection (type `site-vulnerabilities`) of the organization's known vulnerabilities, one entry per **(site, vulnerability) pair** - the same vulnerability legitimately appears once per affected site, so ids are composite (`"{vulnerability_id}-{site_id}"`). Each entry carries `name`, `description`, `severity`, `score`, `affected_version_range`, `unfixed` (no fix available yet), `discovered_at`, `source_name`, `source_url`, and inlines the affected `site` (`id`, `name`) and `component` (`id`, `name`, `type`, `slug`). Severity uses the raw stored codes: `c` critical, `h` high, `m` medium, `l` low, `n` none/informational, and the literal string `null` for unknown. Default sort puts the most severe first. No detail route exists for this resource, so entries carry no `links`. Only sites you have access to appear; the data is refreshed by the vulnerability scan pipeline. The MCP twin of this endpoint is the `vulnerabilities-index` tool.

Authentication

AuthorizationBearer

Personal access token created in the Modular DS dashboard; read-only tokens can only call GET endpoints.

Query parameters

filter[site][]stringOptional

Limit to one or several sites (integer ids, repeatable)

filter[severity][]stringOptional

c=critical, h=high, m=medium, l=low, n=none/info, null=unknown

filter[component_type]stringOptional

core | plugin | theme | php | mariadb | mysql

sortstringOptional

severity (default, most severe first), discovered_at, name; prefix with - to invert

page[number]stringOptional
page[size]stringOptional
Max 50

Response

200 - Vulnerabilities affecting the organization’s websites

datalist of objectsOptional
jsonapiobjectOptional
metaobjectOptional