API Overview
Overview
VulnCheck API endpoints are optimized for programmatic access and deliver JSON machine-readable data.
VulnCheck indices can be accessed using either the backup
endpoint, which provides a complete copy of the index for download, or the index
endpoint, which provides a paginated list of documents and can be used to query individual records.
A list of the 'index' and 'backup' API endpoints that you have access to, can be found in the VulnCheck API Sandbox located in the VulnCheck dashboard.
First Steps
- Sign up for a VulnCheck Account. This will give you immediate access to our community resources.
- Log into the VulnCheck Dashboard.
- Click on the API Sandbox to explore the VulnCheck indexes that you have permission to access.
- Generate a token for programmatic API access.
API Details
All API methods use https://api.vulncheck.com/ for the base URL.
Method | Name | Description |
---|---|---|
GET | /v3/index | Return a list of indexes with endpoint links |
GET | /v3/index/{index} | Retrieve a paginated list of documents from the index of your choice |
GET | /v3/index/{index}/cursor | Cursor-based pagination of all documents from the index of your choice |
GET | /v3/backup | Return a list of backups with endpoint links |
GET | /v3/backup/{index} | Request a link to the backup of an index |
GET | /v3/cpe | Request vulnerabilities related to a CPE |
GET | /v3/purl | Request vulnerabilities related to a PURL |
GET | /v3/rules/initial-access/{rules} | Request Initial Access Intelligence Suricata or Snort rules |
GET | /v3/tags/{filter} | Return a list of newline-separated (or JSON) IP addresses based on a IP tag |
GET | /v3/pdns/{filter} | Return a list of newline-separated (or JSON) hostnames based on a hostname list for Protective DNS |
GET | /v3/openapi | Retrieve the current OpenAPI Specification (OAS) |
API Example Request
curl --request GET \
--url https://api.vulncheck.com/v3/backup/vulncheck-kev \
--header 'Accept: application/json' \
--header 'Authorization: Bearer insert_token_here'
API Date Format
VulnCheck utilizes RFC3339Nano formatted dates across our datasets. This format has the peculiarity of removing trailing zeros from the seconds field, leading to slightly inconsistent timestamps. For example, both of the following are valid RFC3339Nano timestamps::
2024-02-14T16:15:00Z
2024-02-23T10:38:41.361178Z
Although they appear inconsistent, they are both valid and parsable RFC3339Nano date formats.