Skip to main content

API Overview

The CyberSecFeed API provides comprehensive vulnerability intelligence through a RESTful interface.

Base URL

All API requests should be made to:

https://api.cybersecfeed.com

API Version

The current API version is v1.5. All endpoints are prefixed with /api/v1/.

Latest Features (v1.5) - Now Production Default

All v1.5 features are now enabled by default with no feature flags required:

  • Advanced Sorting: Sort by severity, EPSS score, published/modified dates (8 sort options)
  • Field Selection: Reduce payload size by up to 85% with selective field returns
  • Severity Level Filtering: Filter by named severity levels (critical/high/medium/low)
  • Exploit Filtering: Filter for exploitable CVEs (KEV + enrichment-based detection)
  • Enterprise Batch Endpoint: POST /api/v1/cve/batch with 86% cost savings (35 credits for up to 50 CVEs)
  • Credit-Based Pricing: Transparent, usage-based pricing with no rate limits on paid plans
  • Enhanced EPSS Integration: Complete EPSS scores and percentile rankings
  • Comprehensive Threat Intelligence: KEV, EPSS, and enrichment data in all responses

Authentication

All API requests require authentication using an API key provided in the request headers.

Required Header

X-API-Key: your-api-key-here

Example Request with Authentication

curl -H "X-API-Key: your-api-key-here" \
https://api.cybersecfeed.com/api/v1/ping

Credit System

All API endpoints consume credits based on computational cost and value delivered:

  • Most endpoints cost 1-5 credits per request
  • Batch operations offer significant savings (35 credits for up to 50 CVEs vs 250 for individual calls)
  • Free plans include 1,000 credits/month with basic rate limiting
  • Paid plans have no rate limits, only monthly credit quotas

Monitor your usage via the /api/v1/usage endpoint.

Requests without a valid API key will receive a 401 Unauthorized response. Requests exceeding your credit quota will receive a 429 Too Many Requests response.

Response Format

All API responses follow a consistent JSON structure:

{
"data": {
// Response data specific to the endpoint
},
"meta": {
"timestamp": "2024-01-25T12:00:00Z",
"version": "v1",
"correlationId": "unique-request-id"
}
}

Success Responses

Success responses will have HTTP status codes in the 2xx range and include the requested data in the data field.

Error Responses

Error responses will have appropriate HTTP status codes (4xx or 5xx) and include error details:

{
"error": {
"code": "ERROR_CODE",
"message": "Human-readable error message",
"details": {
// Additional error context
}
},
"meta": {
"timestamp": "2024-01-25T12:00:00Z",
"version": "v1",
"correlationId": "req-12345"
}
}

Content Type

All requests and responses use JSON format. Include the following header in your requests:

Content-Type: application/json

HTTP Methods

The API uses standard HTTP methods:

  • GET: Retrieve data (CVE details, lists, statistics)
  • POST: Batch operations (/api/v1/cve/batch for bulk CVE retrieval)
  • PUT: Not currently used
  • DELETE: Not currently used

Compression

Responses are automatically compressed using gzip when supported by the client. Include the following header to enable compression:

Accept-Encoding: gzip

CORS Support

The API supports Cross-Origin Resource Sharing (CORS) for browser-based applications. Allowed origins must be configured in your account settings.