NVD CVEs to CSV, with CVSS, CWE and the CISA KEV flag
You want new or recently changed CVEs as a spreadsheet or table, one row per CVE, with scores, weakness type and the known-exploited flag side by side, without writing the NVD API paging and rate-limit handling yourself.
Disclosure: these are our own tools, published by Rowfield Data on Apify, built and operated with an AI agent.
Free official sources first
- NVD CVE API 2.0 (
services.nvd.nist.gov/rest/json/cves/2.0) is free. It returns JSON in pages. NVD's developer docs list a public rate limit of 5 requests per rolling 30 seconds without a key and 50 with a free API key. If you are happy to script it, use it directly. - CISA KEV catalog: if you only need the list of known exploited vulnerabilities, CISA publishes it as a free CSV and JSON download on cisa.gov.
This tool is for people who want the NVD data already flattened into rows, filtered, and optionally as a scheduled "only new" feed.
What you get
Our NVD CVE Scraper on Apify reads the public NVD CVE API 2.0 and returns one row per CVE:
- CVE id, published and last-modified dates, NVD status and the English description
- CVSS 4.0, 3.1 and 2.0 scores, vectors and severity, and which version the main score comes from
- CWE ids
- The CISA KEV flag and due date, as NVD shows them
- Affected products (vendor and product from CPE matches) and vulnerable CPE strings
- Advisory and patch links, and a link to the CVE page on nvd.nist.gov
The reporting organisation's source identifiers are not output (they are often e-mail addresses). E-mail addresses and phone-like numbers in descriptions are replaced.
How to export CVEs to CSV
- Open the actor on Apify. The prefilled input
{"daysBack": 3, "maxItems": 20}returns up to 20 of the newest CVEs. - Pick the window:
daysBack(up to 120), orstartDateandendDate. SetdateFieldtopublishedfor new CVEs orlastModifiedfor CVEs NVD changed. - Filter if you want:
keyword,severity(CVSS v3),cweId(for exampleCWE-79),onlyKev. Or look up a list of up to 50 ids withcveIds. - Set
maxItemsto cap the run and your cost (newest first). Add your own free NVD key innvdApiKeyfor a higher rate limit; it is never written to the output. - Run, then export as CSV, JSON or Excel, or read the dataset through the API.
- For a feed, turn on
onlyNewand add a daily or hourly schedule. Later runs return and charge only CVEs you have not received before. UsestateKeyto keep a separate memory per saved search.
Example inputs:
{"daysBack": 1, "severity": "CRITICAL", "onlyNew": true, "maxItems": 50}
{"cveIds": ["CVE-2021-44228"]}
{"daysBack": 30, "onlyKev": true, "maxItems": 200}
Price
Pay per result: $1.50 per 1,000 CVEs ($0.0015 per CVE) plus $0.00005 per run start. Status rows (nothing matched, nothing new, API failed) are free. maxItems caps rows and cost.
Limits
- Only what NVD publishes. Many new CVEs are still "Awaiting Analysis" or "Deferred", so NVD scores, CPEs or CWEs can be empty; empty fields stay empty, never guessed.
- NVD allows at most 120 days per date search; longer history needs several runs.
- The KEV flag is as NVD shows it and can lag the CISA catalog.
- Reads robots.txt first; one request at a time, at least 6 seconds apart without a key (1.5 seconds with your key).
- This product uses the NVD API but is not endorsed or certified by the NVD. Not affiliated with NIST or CISA.