API Reference
Integrate RiskScore into your pipelines, agents, and tools.
Authentication
Get an API key by registering: POST https://api.riskscore.dev/v1/auth/register
Pass your key as X-API-Key: rsk_your_key on all requests.
curl -X POST https://api.riskscore.dev/v1/auth/register \
-H "Content-Type: application/json" \
-d '{"email": "[email protected]", "password": "yourpassword"}'Endpoints
/v1/cve/{cve_id}Get risk score for a single CVE. Optional ?explain=true for score breakdown.
curl https://api.riskscore.dev/v1/cve/CVE-2021-44228 \ -H "X-API-Key: rsk_your_key"
/v1/cve/bulkScore up to 10 CVEs at once (free tier), 500 on Pro.
curl -X POST https://api.riskscore.dev/v1/cve/bulk \
-H "X-API-Key: rsk_your_key" \
-H "Content-Type: application/json" \
-d '{"cve_ids": ["CVE-2021-44228", "CVE-2023-44487"]}'/v1/cve/searchSearch CVEs by keyword. Params: ?keyword=log4j&limit=10
curl "https://api.riskscore.dev/v1/cve/search?keyword=log4j" \ -H "X-API-Key: rsk_your_key"
/v1/statsGlobal stats: total CVEs, KEV count, avg risk score.
curl https://api.riskscore.dev/v1/stats \ -H "X-API-Key: rsk_your_key"
/v1/rate-limit/statusCheck your current usage and limits.
curl https://api.riskscore.dev/v1/rate-limit/status \ -H "X-API-Key: rsk_your_key"
Response Format
Sample response for GET /v1/cve/CVE-2021-44228
{
"cve_id": "CVE-2021-44228",
"risk_score": 98,
"risk_severity": "CRITICAL",
"cvss_score": 10.0,
"epss_score": 0.9754,
"epss_percentile": 0.9997,
"in_kev": true,
"description": "Apache Log4j2 2.0-beta9 through 2.14.1 JNDI features used in configuration, log messages, and parameters do not protect against attacker controlled LDAP and other JNDI related endpoints."
}Rate Limits
| Plan | Requests / day | Requests / min |
|---|---|---|
| Free | 100 | 5 |
| Basic | 1,000 | 30 |
| Pro | 10,000 | 120 |
Watchlist
Basic+Track specific CVEs over time. The API returns the current risk score alongside the previous score and delta โ so you know exactly when a vulnerability gets worse.
/v1/watchlistcurl -X POST https://api.riskscore.dev/v1/watchlist \
-H "X-API-Key: rsk_your_key" \
-H "Content-Type: application/json" \
-d '{"cve_id": "CVE-2021-44228"}'/v1/watchlistcurl https://api.riskscore.dev/v1/watchlist \ -H "X-API-Key: rsk_your_key"
๐ Watchlist requires Basic or Pro
Free plan: 10 CVEs max. Basic: 50 CVEs. Pro: unlimited.
Webhooks
Pro onlyReceive real-time HTTP alerts when CVEs are added to CISA KEV. Payloads are HMAC-signed so you can verify authenticity. Works with Slack, PagerDuty, or any HTTPS endpoint.
/v1/webhookscurl -X POST https://api.riskscore.dev/v1/webhooks \
-H "X-API-Key: rsk_your_key" \
-H "Content-Type: application/json" \
-d '{"url": "https://your-server.com/hooks/kev", "event_types": ["cve.kev_added"]}'/v1/webhooks/{id}/testcurl -X POST https://api.riskscore.dev/v1/webhooks/1/test \ -H "X-API-Key: rsk_your_key"
๐ Webhooks require a Pro plan
Real-time KEV alerts, up to 5 webhook endpoints, HMAC-signed payloads.
Full OpenAPI spec available at https://api.riskscore.dev/docs