API Resources

GET
/v3/search/cve

アクセス可能なすべてのインデックスからCVEに関連するレコードを検索

単一のCVE IDを指定すると、このエンドポイントはトークンでアクセスできるすべてのV3インデックスを検索し、一致したドキュメントを1つのレスポンスに集約して返します。アドバイザリ、エクスプロイト、脅威インテリジェンス、KEVエントリ、スコアリング、ベンダー情報など、VulnCheckが保有する脆弱性情報を、インデックスごとに個別に問い合わせることなく一度に確認できます。

必須パラメータは cve のみです。値は正しい形式のCVE識別子である必要があり、それ以外は 400 で拒否されます。

結果はエンタイトルメント(利用権限)の範囲に限定されます。トークンでアクセスできないインデックスはエラーにならず、暗黙的に除外されます。実際に検索されたインデックス数は _meta.queried_index_count で確認できます。

結果はページネーションされます。デフォルトでは、一致する最初の500件のドキュメントが返されます。2つの独立したページネーションモードが利用でき、これらを併用することはできません。詳細は下記のページネーションを参照してください。

クエリパラメータ

cve
string required
検索対象のCVE識別子です(例: CVE-2025-20654)。値は正しい形式のCVE IDである必要があります。値が未指定または形式が不正な場合は 400 を返します。
limit
integer
1ページあたりに返すドキュメント数です。デフォルトは 500、最大値は 1000 です。最大値を超える値はエラーにはならず 1000 に丸められます。数値以外または0以下の値はデフォルト値にフォールバックします。

ページネーションのパラメータ

このエンドポイントは、相互に排他的な2つのページネーションモードをサポートします。page をいずれかのカーソルパラメータと併用した場合は 400 を返します。

page
integer
ページモード。 取得する結果のページ番号(1始まり)です。デフォルトは 1 です。pagelimit の積は 10000 を超えてはいけません。詳細はページネーションを参照してください。
cursor
string
カーソルモード。 値を空にしてこのパラメータを送信するとカーソルページングを開始します。以降は、前回のレスポンスの _meta.next_cursor の値を渡して次のページを取得します。
start_cursor
string
カーソルモード。 カーソルページングを開始するもう1つの方法で、cursor を空の値で送信するのと同等です。

ページネーション

すべてのレスポンスには、現在のページを説明する _meta オブジェクトが含まれます。

フィールド説明
timestampクエリが実行された日時(UTC)。
cve検索対象となったCVE識別子。
page返されたページ番号(1始まり)。
limitこのリクエストに適用されたページサイズ。
total_count検索対象のすべてのインデックスにわたって、CVEに一致したドキュメントの総数。
current_countこのレスポンスで返されたドキュメント数。
total_pagestotal_countlimit で割り、切り上げた値。ページモードのみ。
queried_index_countエンタイトルメント適用後に検索されたインデックス数。
indices_with_hitsそのうち、1件以上の一致があったインデックス数。
top_index_counts一致件数が多いインデックスとそのドキュメント数。最大10件。
next_cursor次のページを取得するために渡すカーソル。カーソルモードのみ。

ページモード

pagelimit を指定します。このモードでは total_pages が設定されるため、必要なリクエスト回数を事前に把握できます。

total_count はすべての一致件数を報告しますが、この方法で取得できるのは最初の 10,000件 までです。pagelimit の積が 10000 を超えるリクエストは 400 で拒否されます。

{
  "error": true,
  "errors": [
    "failed executing cve search query: All attempts fail:\n#1: Status: 400, Type: search_phase_execution_exception, Reason: all shards failed ... Reason: Result window is too large, from + size must be less than or equal to: [10000] but was [11000] ..."
  ]
}

一致するドキュメントが10,000件を超えるCVEでは、代わりにカーソルモードを使用してください。

カーソルモード

まず cursor を空の値で送信し、以降のリクエストでは毎回 _meta.next_cursor の値を渡します。このモードには深さの制限がなく、結果セット全体をたどることができますが、total_pages は設定されません。

next_cursorcurrent_countlimit と等しい場合にのみ返されます。要求した件数より少ないドキュメントが返された時点で結果セットの終端に達しているため、そこで停止してください。空の結果が返る余分なリクエストは発生しません。

カーソルモードでは _meta.page は常に 1 として返され、現在位置を示しません。位置の管理にはカーソル自体を使用してください。

レスポンスのフィールド

data は、各インデックスから取得された一致ドキュメントのフラットな配列です。各エントリには、ドキュメントの内容に加えて取得元の情報が含まれます。

フィールド説明
indexドキュメントが見つかったインデックスの名前。
idそのインデックス内におけるドキュメントの一意な識別子。
score関連度スコア。値が大きいほど関連度が高く、結果はスコアの降順で返されます。
sourceドキュメントの全内容。構造はインデックスごとに異なります。index に示されたインデックスのドキュメントを参照してください。

source はインデックスの生のドキュメントであるため、1つのレスポンス内でも data の各エントリの構造は一様ではありません。まず index を確認し、それに応じて source を解析してください。

リクエストの例

アクセス可能なすべてのインデックスからCVEを検索

curl --request GET \
    --url "https://api.vulncheck.com/v3/search/cve?cve=CVE-2025-20654&limit=3" \
    --header "Accept: application/json" \
    --header "Authorization: Bearer insert_token_here"

レスポンス

{
  "_benchmark": 1.319464,
  "_meta": {
    "timestamp": "2026-08-28T11:19:19.867546203Z",
    "cve": "CVE-2025-20654",
    "page": 1,
    "limit": 3,
    "total_count": 36,
    "current_count": 3,
    "total_pages": 12,
    "queried_index_count": 475,
    "indices_with_hits": 23,
    "top_index_counts": [
      { "index": "advisories", "doc_count": 11 },
      { "index": "macert", "doc_count": 2 },
      { "index": "mediatek", "doc_count": 2 },
      { "index": "mitre-attack-cve", "doc_count": 2 },
      { "index": "alibaba-advs", "doc_count": 1 },
      { "index": "bdu", "doc_count": 1 },
      { "index": "cnnvd", "doc_count": 1 },
      { "index": "cves_identity_mappings", "doc_count": 1 },
      { "index": "epss", "doc_count": 1 },
      { "index": "euvd", "doc_count": 1 }
    ]
  },
  "data": [
    {
      "index": "advisories",
      "id": "d38a1df50f6723bdb672995d2db7e588",
      "score": 30.4604,
      "source": {
        "external_id": [],
        "url": "http://www.cnnvd.org.cn/web/xxk/ldxqById.tag?CNNVD=CNNVD-202504-1044",
        "tags": [
          "Government Advisory",
          "VDB Entry"
        ],
        "date_added": "2025-04-07T00:00:00Z",
        "refsource": "cnnvd",
        "cve": [
          "CVE-2025-20654"
        ],
        "name": "MediaTek Chipsets 安全漏洞",
        "lang": "cn",
        "_timestamp": "2025-04-09T00:42:44.021248Z"
      }
    },
    {
      "index": "advisories",
      "id": "2ae88c424ec0628fbe7f80456a00f949",
      "score": 30.40173,
      "source": {
        "external_id": [],
        "url": "https://github.com/github/advisory-database/blob/main/advisories/unreviewed/2025/04/GHSA-xrqc-54h4-vmvv/GHSA-xrqc-54h4-vmvv.json",
        "tags": [
          "VDB Entry"
        ],
        "date_added": "2025-04-07T06:30:27Z",
        "refsource": "ghsa",
        "cve": [
          "CVE-2025-20654"
        ],
        "name": "GHSA Advisory",
        "lang": "en",
        "_timestamp": "2025-04-07T10:34:55.927322Z"
      }
    }
  ]
}

カーソルページングの開始

最初のページを取得するには、cursor を値なしで送信します。

curl --request GET \
    --url "https://api.vulncheck.com/v3/search/cve?cve=CVE-2025-20654&limit=2&cursor" \
    --header "Accept: application/json" \
    --header "Authorization: Bearer insert_token_here"

レスポンス

current_countlimit と等しいため _meta.next_cursor が返されており、さらに結果があることを示しています。このモードでは total_pages が含まれない点に注意してください。

{
  "_meta": {
    "timestamp": "2026-08-28T11:19:30.402323776Z",
    "cve": "CVE-2025-20654",
    "page": 1,
    "limit": 2,
    "total_count": 36,
    "current_count": 2,
    "queried_index_count": 475,
    "indices_with_hits": 23,
    "top_index_counts": [
      { "index": "advisories", "doc_count": 11 },
      { "index": "macert", "doc_count": 2 }
    ],
    "next_cursor": "WzMwLjM4NTc3MywiYWR2aXNvcmllcyIsIjJhZTg4YzQyNGVjMDYyOGZiZTdmODA0NTZhMDBmOTQ5Il0="
  },
  "data": [
    {
      "index": "advisories",
      "id": "d38a1df50f6723bdb672995d2db7e588",
      "score": 30.4604,
      "source": { "...": "..." }
    },
    {
      "index": "advisories",
      "id": "2ae88c424ec0628fbe7f80456a00f949",
      "score": 30.385773,
      "source": { "...": "..." }
    }
  ]
}

カーソルページングの継続

前回のレスポンスの next_cursor の値を渡します。

curl --request GET \
    --url "https://api.vulncheck.com/v3/search/cve?cve=CVE-2025-20654&limit=2&cursor=WzMwLjM4NTc3MywiYWR2aXNvcmllcyIsIjJhZTg4YzQyNGVjMDYyOGZiZTdmODA0NTZhMDBmOTQ5Il0=" \
    --header "Accept: application/json" \
    --header "Authorization: Bearer insert_token_here"

レスポンス

{
  "_meta": {
    "cve": "CVE-2025-20654",
    "limit": 2,
    "total_count": 36,
    "current_count": 2,
    "queried_index_count": 475,
    "indices_with_hits": 23,
    "next_cursor": "WzI5LjU5Nzc3LCJhZHZpc29yaWVzIiwiNTE4NTdhZWU5ODNhOGVkNDNhNzQ5YWViNTFmZGFjNzYiXQ=="
  },
  "data": [
    {
      "index": "advisories",
      "id": "4df2e4e22c55de1a2a5991453cb72651",
      "score": 29.59777,
      "source": {
        "external_id": [],
        "url": "https://github.com/cisagov/vulnrichment/blob/develop/2025/20xxx/CVE-2025-20654.json",
        "tags": [
          "Government Advisory"
        ],
        "date_added": "2025-04-07T03:14:45Z",
        "refsource": "vulnrichment",
        "cve": [
          "CVE-2025-20654"
        ],
        "name": "VULNRICHMENT Advisory",
        "lang": "en",
        "_timestamp": "2025-04-07T17:37:04.927385Z"
      }
    }
  ]
}

エラー

cve が未指定または形式が不正な場合は 400 を返します。

{
  "error": true,
  "errors": [
    "invalid endpoint parameters: cve is required"
  ]
}
{
  "error": true,
  "errors": [
    "invalid endpoint parameters: invalid cve format"
  ]
}

2つのページネーションモードを併用した場合は 400 を返します。

{
  "error": true,
  "errors": [
    "invalid endpoint parameters: invalid endpoint parameter: page cannot be combined with cursor pagination"
  ]
}