{
  "openapi": "3.0.1",
  "info": {
    "title": "CVE Vulnerability API: VulnCheck KEV, Exploits, NVD++ and CPE",
    "description": "CVE vulnerability and exploit intelligence from the VulnCheck API: VulnCheck KEV known exploited vulnerabilities, NVD++ CVSS data, exploit maturity, initial access, EPSS and 31 indexes by CVE or date, plus CVE search and CPE and PURL lookups for SBOM and patch prioritization. Bring your own key.",
    "version": "0.1",
    "x-build-id": "az1JBAiFgY4WDy0ff"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/nabeelbaghoor~cve-vulnerability-exploit-intelligence-api/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-nabeelbaghoor-cve-vulnerability-exploit-intelligence-api",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/nabeelbaghoor~cve-vulnerability-exploit-intelligence-api/runs": {
      "post": {
        "operationId": "runs-sync-nabeelbaghoor-cve-vulnerability-exploit-intelligence-api",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/nabeelbaghoor~cve-vulnerability-exploit-intelligence-api/run-sync": {
      "post": {
        "operationId": "run-sync-nabeelbaghoor-cve-vulnerability-exploit-intelligence-api",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "mode": {
            "title": "What to get",
            "enum": [
              "indexQuery",
              "cveSearch",
              "cpeLookup",
              "cpeSearch",
              "purlLookup",
              "indexList"
            ],
            "type": "string",
            "description": "Index query reads one VulnCheck index (VulnCheck KEV by default) by CVE, date or other filter, following the cursor. CVE search finds every document on a CVE across all indexes your token reaches. CPE lookup and CPE search return the CVEs tied to a product. PURL lookup returns the CVEs and fixed versions of an open source package version. Index list shows the indexes your token is licensed for.",
            "default": "indexQuery"
          },
          "index": {
            "title": "Index",
            "enum": [
              "vulncheck-kev",
              "cisa-kev",
              "nist-nvd2",
              "vulncheck-nvd2",
              "exploits",
              "initial-access",
              "initial-access-community",
              "epss",
              "exploit-chains",
              "vulnrichment",
              "mitre-cvelist-v5",
              "vulncheck-cvelist-v5",
              "vulnerability-aliases",
              "ransomware",
              "threat-actors",
              "botnets",
              "mitre-attack-cve",
              "metasploit",
              "nuclei",
              "exploitdb",
              "github-exploits",
              "packetstorm",
              "google-0day-itw",
              "shadowserver-exploited",
              "ghsa",
              "osv",
              "euvd",
              "cwe",
              "cisa-alerts",
              "vulncheck",
              "advisories"
            ],
            "type": "string",
            "description": "Index query only. The VulnCheck index to read. VulnCheck KEV and NIST NVD 2.0 are open to free community tokens; most other indexes need a paid VulnCheck subscription.",
            "default": "vulncheck-kev"
          },
          "cves": {
            "title": "CVE IDs",
            "type": "array",
            "description": "Index query and CVE search. One CVE ID per line. In Index query each CVE is looked up in the chosen index; leave it empty to browse the index with the filters below. CVE search needs at least one.",
            "items": {
              "type": "string"
            }
          },
          "alias": {
            "title": "Vulnerability alias",
            "type": "string",
            "description": "Index query only, optional. A named vulnerability alias such as PrintNightmare or Log4Shell."
          },
          "threatActor": {
            "title": "Threat actor",
            "type": "string",
            "description": "Index query only, optional. A threat actor name such as UNC2630, as listed in the threat-actors index."
          },
          "mitreId": {
            "title": "MITRE ATT&CK group ID",
            "type": "string",
            "description": "Index query only, optional. A MITRE ATT&CK group ID such as G0013."
          },
          "ransomware": {
            "title": "Ransomware family",
            "type": "string",
            "description": "Index query only, optional. A ransomware family name, as listed in the ransomware index."
          },
          "botnet": {
            "title": "Botnet",
            "type": "string",
            "description": "Index query only, optional. A botnet name such as Fbot, as listed in the botnets index."
          },
          "pubStartDate": {
            "title": "Published from",
            "type": "string",
            "description": "Index query only, optional. Earliest published date, as YYYY-MM-DD."
          },
          "pubEndDate": {
            "title": "Published to",
            "type": "string",
            "description": "Index query only, optional. Latest published date, as YYYY-MM-DD."
          },
          "lastModStartDate": {
            "title": "Last modified from",
            "type": "string",
            "description": "Index query only, optional. Earliest last modified date (the record _timestamp), as YYYY-MM-DD. Use it for incremental syncs."
          },
          "lastModEndDate": {
            "title": "Last modified to",
            "type": "string",
            "description": "Index query only, optional. Latest last modified date, as YYYY-MM-DD."
          },
          "exploitMaturity": {
            "title": "Exploit maturity",
            "enum": [
              "weaponized",
              "poc"
            ],
            "type": "string",
            "description": "Exploits index only, optional. The highest exploit maturity reached for the CVE."
          },
          "validationLevels": {
            "title": "Exploit validation levels",
            "type": "array",
            "description": "Exploits index only, optional. Records match when any of their exploits carries one of these levels.",
            "items": {
              "type": "string",
              "enum": [
                "vulncheck-authored",
                "vulncheck-exploit-dev-review",
                "vulncheck-analyst-review",
                "third-party-validated",
                "third-party-aggregated",
                "uncategorized"
              ],
              "enumTitles": [
                "VulnCheck authored",
                "VulnCheck exploit developer review",
                "VulnCheck analyst review",
                "Third party validated",
                "Third party aggregated",
                "Uncategorized"
              ]
            }
          },
          "inKev": {
            "title": "In CISA KEV",
            "enum": [
              "true",
              "false"
            ],
            "type": "string",
            "description": "Exploits index only, optional. Keep only CVEs that are (true) or are not (false) in the CISA KEV catalog."
          },
          "inVcKev": {
            "title": "In VulnCheck KEV",
            "enum": [
              "true",
              "false"
            ],
            "type": "string",
            "description": "Exploits index only, optional. Keep only CVEs that are (true) or are not (false) in VulnCheck KEV."
          },
          "sort": {
            "title": "Sort by",
            "enum": [
              "_timestamp",
              "date_added"
            ],
            "type": "string",
            "description": "Index query only, optional. The field VulnCheck sorts on."
          },
          "order": {
            "title": "Order",
            "enum": [
              "asc",
              "desc"
            ],
            "type": "string",
            "description": "Index query only, optional. Newest first (desc) is VulnCheck's default on most indexes."
          },
          "cpes": {
            "title": "CPEs",
            "type": "array",
            "description": "CPE lookup only. One CPE per line, in the v2.3 form (cpe:2.3:a:vendor:product:version:...) or the v2.2 form (cpe:/a:vendor:product:version).",
            "items": {
              "type": "string"
            }
          },
          "cpePart": {
            "title": "CPE part",
            "enum": [
              "a",
              "o",
              "h"
            ],
            "type": "string",
            "description": "CPE search only, optional. Application, operating system or hardware. Empty searches all parts."
          },
          "cpeVendor": {
            "title": "CPE vendor",
            "type": "string",
            "description": "CPE search only. The vendor as written in CPEs, such as apache or microsoft. Set a vendor, a product or both."
          },
          "cpeProduct": {
            "title": "CPE product",
            "type": "string",
            "description": "CPE search only. The product as written in CPEs, with underscores for spaces, such as log4j or internet_explorer."
          },
          "cpeVersion": {
            "title": "CPE version",
            "type": "string",
            "description": "CPE search only, optional. An exact version such as 2.14.1, or a trailing wildcard such as 2.14.*."
          },
          "isVulnerable": {
            "title": "Only CVEs where the CPE itself is vulnerable",
            "type": "boolean",
            "description": "CPE lookup and CPE search. When on, only CVEs where this CPE is the vulnerable component come back, not every CVE whose configuration mentions it.",
            "default": false
          },
          "purls": {
            "title": "Package URLs (PURLs)",
            "type": "array",
            "description": "PURL lookup only. One package URL per line, such as pkg:npm/lodash@4.17.20, pkg:pypi/django@3.2.0 or pkg:golang/github.com/gin-gonic/gin@v1.6.0.",
            "items": {
              "type": "string"
            }
          },
          "maxResults": {
            "title": "Maximum results",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "The most rows this run returns and charges for. Index queries and CVE searches page through VulnCheck until this is reached.",
            "default": 100
          },
          "requestsPerMinute": {
            "title": "Requests per minute",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Pacing for calls to VulnCheck. Community tokens allow 1,000 requests a minute; throttled calls are retried after the wait VulnCheck asks for.",
            "default": 600
          },
          "apiKey": {
            "title": "API token",
            "type": "string",
            "description": "Your own VulnCheck API token, created at vulncheck.com/settings/tokens. Stored as a secret and sent only to api.vulncheck.com in the Authorization header; it is never logged. You can instead set the DATA_API_KEY environment secret."
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}