FOR DEVELOPERS

Vexday API

Verified vulnerability intelligence, in your application. Enriched CVEs, the active-exploitation catalog (KEV), public exploits and threat groups — with Vexday's verification rigor. Free, with an API key.

Authentication

Generate a free key in your dashboard. Send it on every request, via header or query parameter:

# Header (recomendado)
curl https://api.vexday.io/api/v1/kev \
  -H "Authorization: Bearer vx_live_sua_chave"

# ou parâmetro de query
curl "https://api.vexday.io/api/v1/kev?api_key=vx_live_sua_chave"

Rate limit

The limit is per account, adding up its keys, and comes from the plan: free, 50 requests per day and 10 per minute; Starter, 1,000 per day; Pro, 5,000; MSSP, 20,000. Counters reset at midnight UTC. Check your plan and usage at /api/v1/status. Honor the Retry-After header on 429 responses. Product integration? Talk to us — the partner plan raises the limits without changing the content: the API remains read-only and TLP:CLEAR. Each plan's limits, on Pricing →

Endpoints

GET/api/v1/cve/{id}Full detail of a CVE
GET/api/v1/cveSearch CVEs (filters: severity, vendor, CWE, KEV, PoC)
POST/api/v1/cve/batchCVE details in bulk (up to 100 ids; 500 on the partner plan)
GET/api/v1/kevKEV catalog — CVEs under active exploitation
GET/api/v1/exploitsPublic exploits (with the VexDay Proof seal)
GET/api/v1/actorsThreat groups (APTs and ransomware)
GET/api/v1/actor/{id}Threat group profile
GET/api/v1/incidentsIncidents vetted by the MORGUE method (seal + verdict)
GET/api/v1/incident/{id}Full CTI report of an incident (BLUF, judgments, sources)
GET/api/v1/victimsRansomware victims on leak sites (claims, not confirmations)
GET/api/v1/iocsIndicators of compromise (abuse.ch) with related actors
GET/api/v1/vexVendor VEX statements (affected / not affected / fixed)
GET/api/v1/changesIncremental sync — what changed since a timestamp
GET/api/v1/statusYour key's current usage

Example response

GET /api/v1/cve/CVE-2024-3400

{
  "data": {
    "cve_id": "CVE-2024-3400",
    "cvss_score": 10.0,
    "cvss_severity": "CRITICAL",
    "epss_score": 0.94,
    "in_kev": true,
    "kev_ransomware": true,
    "risk_score": 100,
    "pocs": [ { "source": "exploitdb", "verified": true } ],
    "affected": [ { "vendor": "Palo Alto", "product": "PAN-OS" } ],
    "affected_versions": [
      {
        "vendor": "Palo Alto", "product": "PAN-OS",
        "version": "11.1", "less_than": "11.1.2-h3",
        "status": "affected", "version_type": "custom"
      }
    ],
    "actors": [ "..." ]
  }
}

Version applicability

The affected_versions field carries version ranges (lessThan exclusive, lessThanOrEqual inclusive) from the CNA container. It lets you decide whether a specific version is in scope — but the comparison is the consumer's: use a semantic comparator per version_type, don't compare as text. An empty range means the CNA published no bounds (don't assume 'not affected').

RSS feeds (no key)

For RSS readers, aggregators and light automations. No authentication, 15-minute cache. Replace {lang} with pt, es or en.

RSS/feeds/en/boletim.xmlDaily bulletin
RSS/feeds/en/incidentes.xmlVerified incidents
RSS/feeds/en/kev.xmlNew in KEV (active exploitation)

Incremental sync

To keep a copy up to date without re-downloading the base: /api/v1/changes?since=<ISO-8601> returns the ids that changed (CVEs, incidents, victims; 30-day window) plus a next_since for the next call. Pair it with /api/v1/cve/batch to fetch details in bulk. A batch of N ids consumes N of the daily quota.

# 1) o que mudou desde ontem?
curl "https://api.vexday.io/api/v1/changes?since=2026-09-09T00:00:00Z" \
  -H "Authorization: Bearer vx_live_sua_chave"

# 2) detalhes em lote das CVEs que mudaram
curl -X POST "https://api.vexday.io/api/v1/cve/batch" \
  -H "Authorization: Bearer vx_live_sua_chave" \
  -H "Content-Type: application/json" \
  -d '{"ids": ["CVE-2024-3400", "CVE-2026-1234"]}'

MCP for AI assistants (MSSP plan)

On the MSSP plan, your AI assistant (Claude.ai, ChatGPT, Claude Code, Cursor and other MCP clients) queries Vexday directly, with the API's data, limits and credits, and crosses CVEs with the technologies you monitor in the alerts. The 16 tools, how to connect and example questions: MCP page → · See the MSSP plan →

Fair use

The API is read-only. Data comes from open, verifiable sources; when redistributing, credit Vexday and the original sources. Do not resell raw API access.

Every response includes an attribution field: that route's sources, each with its license link and any notice the license asks to reproduce as is (such as the NVD's). When showing or redistributing the data, keep those credits. All sources and licenses