コンテンツにスキップ

FutureVuls API#

FutureVuls では外部アプリケーションの開発用に REST API を用意しています。 FutureVuls のデータを API を利用して取得できます。

「APIドキュメント」から、API の詳細を確認できます。 API のパラメータやレスポンスの型を確認できます。

FutureVuls API は Authorization に API トークンを指定することで実行できます。 この API トークンはグループ・グループセット・オーガニゼーションの設定画面で管理(閲覧・作成・編集・削除・再生成・有効化/無効化)します。 API トークンは権限で分けることも可能です。

API ドキュメントの利用上の注意

「FutureVuls APIドキュメント」ページには、ブラウザ上から API を実行できる機能がありますが、現在こちらの機能は動作していませんのでご注意ください。

image

FutureVuls APIのトークン管理#

FutureVuls API のトークンはグループ設定、グループセット設定、オーガニゼーション設定の「トークン」ページでそれぞれ管理されています。

image

ここでは、Scanner 用のトークンや、FutureVuls API 用のトークンを管理可能です。 この画面には以下の権限を持つユーザのみアクセス可能です(参考:ユーザ権限)

トークン種別 必要な権限
グループ グループ管理者権限
グループセット グループセット管理者権限
オーガニゼーション オーガニゼーション権限(オーナ・CSIRT)

FutureVuls APIのトークン作成#

トークン追加 から API トークンの追加を行えます。 API トークンの名前と権限を設定して作成します。

image

設定できる権限は以下の通りです。

トークン種別 API権限 スキャン権限
グループトークン ・読み込み、更新、グループ設定
・読み込み、更新
・読み込み
・なし
あり/なし
グループセットトークン ・読み込み、更新
・読み込み
ー
オーガニゼーショントークン ・読み込み、更新、オーガニゼーション設定
・読み込み、更新
・読み込み
ー

トークンの更新#

作成したトークンは、一覧から編集・再生成・削除・有効化/無効化ができます。

更新内容 説明
編集 API トークン名、API 権限、スキャン権限を編集できます
再生成 API トークンのハッシュを再生成できます。元には戻せないため、確認の上実行してください。
削除 API トークンを削除します。削除されたトークンを用いると認証に失敗します。
有効化/無効化 ステータス列のトグル切り替えでトークンのステータスを切り替えられます。
ステータスが無効のトークンを用いると認証に失敗します。

FutureVuls API の使い方#

https://rest.vuls.biz に、APIメソッド一覧 にある URL を指定して、 HTTP リクエストを行ってください。

タスク一覧取得といった、レスポンスに複数のデータが含まれる API では、その ID の昇順にデータが取得されます。 FutureVuls APIドキュメントで、各 API の 「Model」をクリックすると、リクエスト・レスポンスのデータモデルが確認できます。

image.png

例:サーバID=1のすべての脆弱性情報を取得したい場合#

「APIサンプル」のページに API の使い方の具体例を示しているので、そちらも併せて参照してください。

curl -s -H 'accept: application/json' -H 'Authorization:xxxxxxxxxxxxx' 'https://rest.vuls.biz/v1/cves?filterServerID=1&page=1&limit=20' | jq
  • /cve/{cve ID} はグループ API なので、グループのトークンをヘッダに指定します
  • filterServerID を指定すると特定のサーバ内の情報に絞ることができるため、?filterServerID=1 の形で指定します
  • 一度に取得する件数を絞る場合は、page と limit を指定します

詳しいエンドポイントの仕様は、ドキュメントの該当箇所 を確認してください。

FutureVuls APIの注意点#

  • ソフトウェア一覧や、タスク一覧などのデータが多い物に関しては、フィルタを使用してアクセスすると短時間で取得可能です
  • パラメータのデフォルト値が設定されている API があるので、ドキュメント(FutureVuls API)でデフォルト値の確認をお願いします
  • パラメータを配列指定するものは、同じキーを複数 & で繋いでください (ex. filterStatus=new&filterStatus=investigating )

配列パラメータの指定方法#

API において配列型のパラメータを複数指定する場合は、同じキーを & で繋いで複数回指定する必要があります。

例1: タスク一覧取得で複数のステータスを指定

https://rest.vuls.biz/v1/tasks?filterStatus=new&filterStatus=investigating&filterStatus=ongoing

例2: タスクコメントバッチ取得で複数のタスク ID とコメントタイプを指定

https://rest.vuls.biz/v1/taskComments?taskIDs=1&taskIDs=2&taskIDs=3&commentTypes=user&commentTypes=api

例3: グループセット脆弱性情報取得で複数の CVE ID を指定

https://rest.vuls.biz/v1/groupSet/cveVulnInfos?cveIDs=CVE-2023-1234&cveIDs=CVE-2023-5678

詳しくは「APIサンプル」も参照してください。

ページネーション#

FutureVuls API は大量データをサポートするために、ページネーション形式を採用しています。 一覧データを一度に取得できる最大件数(limit)は1000件ですが、ページ番号(page)をインクリメントすることで一覧データを全件取得可能です。 (参考:オプション指定可能なパラメータ)

全件取得をしたい場合などには、適切にページネーションのパラメータの設定をしてください。

  • limit の値を指定しない場合、デフォルト値として limit=20 が設定され、最大20件だけが取得されます
  • limit の値を小さくすることで、1回あたりの API の実行時間を短くできます(その分 page による処理回数を増やします)
  • limit の値が全件数を超過していても問題ありません(全件数までのみ取得されます)

例1)全部で80件(<1000件)あるリストを全件取得したい。

  • ?limit=1000 などで実行してください

例2)全部で1500件(>1000件)あるリストを全件取得したい。

  1. ?page=1&limit=1000 で一度実行してください
  2. 次に ?page=2&limit=1000 で実行してください

総件数(totalCount)の集計#

一覧 API のレスポンスには、条件に一致するデータの総件数(totalCount)と総ページ数(totalPage)が含まれます。 既定では、リクエストのたびに最新の総件数を集計します。 大量のデータをページ送りで取得する場合は、次のパラメータで総件数の集計方法を変えると、応答を速くできます。

パラメータ デフォルト値 説明 指定できる API
exactCount true false の場合、総件数の集計を 100,000 件で打ち切る タスク一覧・ソフトウェア一覧・削除済みソフトウェア一覧
allowCachedCount false true の場合、2 ページ目以降(最後のページを除く)は最大 30 分前に集計した総件数を使う。1 ページ目と最後のページは最新の件数 脆弱性一覧・タスク一覧・ソフトウェア一覧・削除済みソフトウェア一覧

組み合わせごとに返る総件数は、次のとおりです。 脆弱性一覧の API には exactCount がないため、exactCount が true の行と同じ動作になります。

exactCount allowCachedCount 返る総件数 向いている用途
true(既定) false(既定) 毎回集計した最新の件数 常に最新の総件数が必要な場合
true(既定) true 1 ページ目と最後のページは、毎回集計した最新の件数
2 ページ目以降(最後のページを除く)は、最大 30 分前に集計した件数
大量のデータをページ送りで速く取得したい場合
false (指定しても無視) 毎回集計した件数。ただし 100,000 件で打ち切り 総件数の目安が分かればよく、全件は取得しない場合
  • 「1 ページ目」は page=1 かつ offset=0 のリクエスト、「2 ページ目以降」は page が 2 以上、または offset が 1 以上のリクエストです。
  • allowCachedCount=true の場合、2 ページ目以降では、同じグループ(グループセット)・同じ絞り込み条件で直近に集計した総件数を使います。ただし、最後のページでは最新の件数を集計し直すため、ページ送りを終えるかどうかは最新の件数で判断できます。
  • allowCachedCount=true でも、取得されるデータ(一覧の内容)は常に最新です。過去の値を使うのは totalCount・totalPage だけです。
  • exactCount=false を指定した際に総件数が 100,000 件を超えた場合は、totalCount が 100,000 になり、レスポンスの totalCountCapped が true になります。全件を取得する場合は、exactCount を true のまま使ってください。

allowCachedCount の既定値は、2026 年 12 月のリリースで true に変わります

変更後は、パラメータを指定しなくても、2 ページ目以降(最後のページを除く)の totalCount・totalPage が最大 30 分前の値になることがあります。これらのページの総件数を最新の件数として使っている場合は、allowCachedCount=false を明示的に指定してください。

ソフトウェア・タスクの更新日時#

内容に変化のないスキャンや SBOM の再アップロードでは、ソフトウェア・タスクの updatedAt は更新されません。 ソフトウェアの cpeAssignedAt は、スキャンで割り当てた CPE のベンダ名・製品名が変わった場合にのみ更新され、バージョンの変更だけでは更新されません。

ロール取得 API のタスク数の項目削除#

2026年10月のリリースで、GET /v1/roles と GET /v1/role/{roleID} から newTaskCount・allTaskCount を削除しました。 代わりに GET /v1/tasks の filterRoleID でロールを指定し、totalCount を参照してください。

  • newTaskCount の代わり: filterStatus に new、filterIgnore に true を指定します
  • allTaskCount の代わり: filterStatus にすべてのステータスを指定します(既定値は new・investigating・ongoing のみです)

スキャン・SBOM 登録時の順番待ち#

次の API を短時間に続けて呼び出すと、オーガニゼーションごとに順番待ちとなり、応答が遅くなることがあります。

  • POST /v1/server/scan/{serverID}(サーバスキャン)
  • POST /v1/server/paste、PUT /v1/server/paste/{serverID}(ペーストサーバの追加・更新)
  • POST /v1/server/sbom(SBOM インポート)
  • PUT /v1/sbom/{sbomID}(SBOM ファイルを指定した SBOM 更新)

順番待ちの間もエラーは返らず、処理の順番が来るまで応答が返りません。この間にクライアント側で呼び出しがタイムアウトしても、処理は継続されます。同じリクエストを再送すると処理が重複するため、再送しないでください。

差分同期API(v2)#

外部システムにタスク・ソフトウェアを複製して定期的に同期する場合は、差分同期 API(v2)を利用すると、前回の取得以降に変更されたデータだけを効率よく取得できます。ただし、削除されたタスクなど差分として返らないデータがあるため、複製先との整合を保つには、定期的な全件の取得・突き合わせも併せて行ってください(詳細は下記の注意点を参照)。

対象 グループ API グループセット API
タスク GET /v2/tasks
GET /v2/tasks/count
GET /v2/groupSetTasks
GET /v2/groupSetTasks/count
ソフトウェア GET /v2/softwares
GET /v2/softwares/count
GET /v2/groupSetSoftwares
GET /v2/groupSetSoftwares/count

一覧 API のパラメータは次のとおりです。

パラメータ 説明
cursor 前回のレスポンスの nextCursor をそのまま指定します。初回は指定しません
limit 1 回に取得する件数(1〜1000、デフォルト 100)
filterUpdatedAtAfter 初回(cursor を指定しない場合)の読み始めの日時(RFC3339 形式の UTC 時刻)。cursor を指定した場合は無視されます
filterStatus タスクのステータスで絞り込みます(タスクのみ)

レスポンスは、items(更新日時の昇順)・nextCursor・hasMore で構成されます。次の手順で同期してください。

  1. cursor を指定せずに一覧 API を実行します
  2. レスポンスの nextCursor を保存し、次のリクエストの cursor に指定します。hasMore が false になるまで繰り返します
  3. 以降は、保存した nextCursor を指定して定期的に実行し、変更分を取得します(items が空でも nextCursor は返ります)

差分同期 API の注意点

  • 同じデータが複数回返ることがあります。取り込み側では id をキーに、登録・更新(upsert)してください
  • 削除されたソフトウェアは、deletedAt 付きで返ります。deletedAt が設定されたデータは、取り込み側でも削除として扱ってください。ただし、手動で登録した CPE の削除など一部の経路で削除されたソフトウェアや、削除されたタスク、filterStatus の条件から外れたタスクは返らないため、定期的に全件を取得し直して突き合わせてください
  • グループセットの構成や絞り込み条件が変わった場合は、409(sync_reset_required)が返ります。保存した cursor を破棄し、最初から取得し直してください
  • 件数 API(/count)の結果は、最大 30 分前の値となる場合があります。レスポンスの capped が true の場合、件数は「その値以上」を意味します

APIメソッド一覧#

API はトークン種別に応じて以下のように大きく3種類に分かれています。 それぞれ提供しているメソッドが異なるため、詳しくはマニュアルを確認してください。

APIサーバ状態確認#

HTTPメソッド URL 説明 必要な権限
GET /health health なし

グループAPI一覧#

グループ API を利用するためには、各グループごとで発行されたグループ用の API トークンを使用する必要があります。

トークン種別

オーガニゼーション設定とグループセット設定で発行されたトークンは、グループ API では利用できません。

HTTPメソッド URL 説明 必要な権限 備考
GET /v1/cve/{cveID} cve詳細 読み込み cveIDの取得方法
GET /v1/cves cve一覧 読み込み オプションあり
GET /v1/lockfiles Lockファイル一覧 読み込み オプションあり
GET /v1/lockfile/{lockfileID} Lockファイル詳細 読み込み lockfileIDの取得方法
POST /v1/lockfile Lockファイル追加 更新
PUT /v1/lockfile/{lockfileID} Lockファイル更新 更新 lockfileIDの取得方法
DELETE /v1/lockfile/{lockfileID} Lockファイル削除 更新 lockfileIDの取得方法
POST /v1/pkgCpe/cpe cpe追加 更新
DELETE /v1/pkgCpe/cpe/{cpeID} cpe削除 更新 cpeIDの取得方法
手動で登録した CPE(ソフトウェア種別が Private Package)のみ削除可能
DELETE /v1/pkgCpe/cpe [DEPRECATED]cpe削除 更新 cpeIDの取得方法
手動で登録した CPE(ソフトウェア種別が Private Package)のみ削除可能
GET /v1/pkgCpe/cpe/{cpeID} cpe詳細 読み込み cpeIDの取得方法
GET /v1/pkgCpe/pkg/{pkgID} package詳細 読み込み pkgIDの取得方法
GET /v1/pkgCpe/windowsPkg/{windowsPkgID} WindowsPkg詳細 読み込み windowsPkgIDの取得方法
GET /v1/pkgCpes package&cpe一覧 読み込み オプションあり
GET /v1/deletedPkgCpes 削除済みソフトウェア一覧 読み込み オプションあり
GET /v1/supplyChainRisks サプライチェーンリスク一覧 読み込み
GET /v1/role/{roleID} ロール詳細 読み込み roleIDの取得方法
PUT /v1/role/{roleID} ロール更新 更新 roleIDの取得方法
DELETE /v1/role/{roleID} ロール削除 更新 roleIDの取得方法
GET /v1/roles ロール一覧 読み込み オプションあり
POST /v1/server/pseudo 擬似サーバの作成 更新
POST /v1/server/paste ペーストサーバの作成 更新
POST /v1/server/sbom SBOMインポート 更新 ignoreOS=true で OS 情報を無視して取り込み(詳細)
GET /v1/server/{serverID}/sbom サーバの SBOM ダウンロード 読み込み serverIDの取得方法
APIの利用例
excludeVulnerabilities=true で脆弱性情報を含めずに出力(詳細)
PUT /v1/server/paste/{serverID} ペーストサーバの更新 更新 serverIDの取得方法
GET /v1/server/uuid/{serverUuid} UUIDを使ったサーバ詳細 読み込み UUIDの取得方法
POST /v1/server/scan/{serverID} サーバスキャン 更新 serverIDの取得方法
GET /v1/server/{serverID} サーバ詳細 読み込み serverIDの取得方法
PUT /v1/server/{serverID} サーバ更新 更新 serverIDの取得方法
DELETE /v1/server/{serverID} サーバ削除 更新 serverIDの取得方法
POST /v1/server/{serverID}/tag サーバタグ追加 更新 serverIDの取得方法
DELETE /v1/server/{serverID}/tag サーバタグ削除 更新 serverIDの取得方法
GET /v1/servers サーバ一覧 読み込み オプションあり
POST /v1/servers/{serverUuid}/reachability 到達可能性の解析結果のアップロード 更新 到達可能性解析のセットアップ
GET /v1/task/{taskID} タスク詳細 読み込み taskIDの取得方法
PUT /v1/task/{taskID} タスク更新 更新 taskIDの取得方法
PUT /v1/tasks タスク一括更新 更新 最大1,000件のタスクIDを指定してstatus/priorityを一括更新
POST /v1/task/{taskID}/comment タスクコメント追加 更新 taskIDの取得方法
GET /v1/taskComments タスクコメントバッチ取得 読み込み オプションあり
タスク ID やコメントタイプを複数指定する方法
PUT /v1/task/{taskID}/ignore タスク非表示設定 更新 taskIDの取得方法
GET /v1/tasks タスク一覧 読み込み オプションあり
GET /v1/members メンバ一覧 読み込み オプションあり
GET /v1/scanImports 外部スキャン結果一覧 読み込み オプションあり
GET /v1/scanImport/{scanImportID} 外部スキャン詳細 読み込み scanImportIDの取得方法
POST /v1/scanImport 外部スキャン結果追加 更新
PUT /v1/scanImport/{scanImportID} 外部スキャン結果更新 更新
DELETE /v1/scanImport/{scanImportID} 外部スキャン結果削除 更新
GET /v1/sbom/{sbomID} SBOM詳細取得 読み込み
GET /v1/sboms SBOM一覧取得 読み込み
POST /v1/sbom SBOM追加 更新 ignoreOS=true で OS 情報を無視して取り込み(詳細)
PUT /v1/sbom/{sbomID} SBOM更新 更新 ignoreOS=true で OS 情報を無視して取り込み(詳細)
DELETE /v1/sbom/{sbomID} SBOM削除 更新
GET /v2/tasks タスク差分同期一覧 読み込み 差分同期API(v2)
GET /v2/tasks/count タスク件数 読み込み 差分同期API(v2)
GET /v2/softwares ソフトウェア差分同期一覧 読み込み 差分同期API(v2)
GET /v2/softwares/count ソフトウェア件数 読み込み 差分同期API(v2)

グループセットAPI一覧#

グループセット API を利用するためには、各グループセットごとで発行されたグループセット用の API トークンを使用する必要があります。

トークン種別

オーガニゼーション設定とグループ設定で発行されたトークンは、グループセット API では利用できません。

HTTPメソッド URL 説明 必要な権限 備考
GET /v1/groupSet/cve/{cveID} cve詳細 読み込み cveIDの取得方法
GET /v1/groupSet/cves cve一覧 読み込み オプションあり
GET /v1/groupSet/cveVulnInfos cve の脆弱性情報一覧 読み込み オプションあり
CVE ID を複数指定する方法
GET /v1/groupSet/pkgCpe/cpe/{cpeID} cpe詳細 読み込み cpeIDの取得方法
GET /v1/groupSet/pkgCpe/pkg/{pkgID} package詳細 読み込み pkgIDの取得方法
GET /v1/groupSet/pkgCpe/windowsPkg/{windowsPkgID} WindowsPkg詳細 読み込み windowsPkgIDの取得方法
GET /v1/groupSet/pkgCpes package&cpe一覧 読み込み オプションあり
GET /v1/groupSet/deletedPkgCpes 削除済みソフトウェア一覧 読み込み オプションあり
APIサンプル
GET /v1/groupSet/supplyChainRisks サプライチェーンリスク一覧 読み込み
GET /v1/groupSet/server/uuid/{serverUuid} UUIDを使ったサーバ詳細 読み込み UUIDの取得方法
GET /v1/groupSet/server/{serverID} サーバ詳細 読み込み serverIDの取得方法
GET /v1/groupSet/servers サーバ一覧 読み込み オプションあり
GET /v1/groupSet/task/{taskID} タスク詳細 読み込み taskIDの取得方法
GET /v1/groupSet/tasks タスク一覧 読み込み オプションあり
GET /v2/groupSetTasks タスク差分同期一覧 読み込み 差分同期API(v2)
GET /v2/groupSetTasks/count タスク件数 読み込み 差分同期API(v2)
GET /v2/groupSetSoftwares ソフトウェア差分同期一覧 読み込み 差分同期API(v2)
GET /v2/groupSetSoftwares/count ソフトウェア件数 読み込み 差分同期API(v2)

オーガニゼーションAPI一覧#

オーガニゼーション API を利用するためには、オーガニゼーション設定で発行されたオーガニゼーション用の API トークンを使用する必要があります。

トークン種別

グループセット設定とグループ設定で発行されたトークンは、オーガニゼーション API では利用できません。

トークン管理の注意

オーガニゼーショントークンにより、組織内の「グループ一覧、グループセット一覧、メンバ一覧」が取得可能です。 API のレスポンスには「メンバの氏名、メールアドレスなどの個人情報」が含まれます。トークンの管理には厳重に注意してください。

また、今後のリリースにて以下のようなオーガニゼーション全体に関する設定が可能になる見込みです。オーガニゼーションのトークンの取り扱いには注意してください。

  • オーガニゼーション設定から実行可能なメニュー(例えば外部の人を追加する機能など)
  • オーガニゼーション内のすべてのグループセット、すべてのグループのAPIを実行可能にする
HTTPメソッド URL 説明 必要な権限 備考
GET /v1/org/groups グループ一覧 読み込み
GET /v1/org/groupsets グループセット一覧 読み込み
GET /v1/org/members メンバ一覧 読み込み
GET /v1/org/auditLogs 監査ログ一覧 読み込み
POST /v1/org/group グループ作成 オーガニゼーション設定
PUT /v1/org/group/{groupID} グループ設定更新 オーガニゼーション設定
POST /v1/org/users グループ・グループセットへのユーザ追加 オーガニゼーション設定
GET /v1/org/privateEndoflifeDates 非公開 EOL 情報一覧 読み込み APIサンプル
POST /v1/org/privateEndoflifeDate 非公開 EOL 情報の登録 オーガニゼーション設定 APIサンプル
PUT /v1/org/privateEndoflifeDate/{privateEndoflifeDateID} 非公開 EOL 情報の更新 オーガニゼーション設定 APIサンプル
DELETE /v1/org/privateEndoflifeDate/{privateEndoflifeDateID} 非公開 EOL 情報の削除 オーガニゼーション設定 APIサンプル

API を使用する際に指定する各パラメータの取得方法#

FutureVuls API を使用する際、場合により cveID や cpeID 等のパラメータを指定する場合があります。 これらのパラメータを取得する方法について説明します。

cveIDの取得方法#

以下の2つの方法のどちらかで取得できます。

  • 脆弱性タブを開き、ID を取得したい脆弱性の CVE ID 列を参照する。
  • REST API リクエストで取得する。
    • グループ API の場合
      • https://rest.vuls.biz/v1/cves に GET リクエストを実行し、脆弱性一覧を取得する。レスポンス JSON の cves に含まれるデータのうち、ID を取得したい脆弱性の cveID を参照する。
    • グループセット API の場合
      • https://rest.vuls.biz/v1/groupSet/cves に GET リクエストを実行し、脆弱性一覧を取得する。レスポンス JSON の cves に含まれるデータのうち、ID を取得したい脆弱性の cveID を参照する。

image

cpeIDの取得方法#

以下の方法で取得できます。

  • グループ API を使用する場合
    • https://rest.vuls.biz/v1/pkgCpes に GET リクエストを実行し、package&cpe 一覧を取得する。レスポンス JSON の pkgCpes に含まれるデータのうち、ID を取得したい cpe の cpeID を参照する。
  • グループセット API を使用する場合
    • https://rest.vuls.biz/v1/groupSet/pkgCpes に GET リクエストを実行し、package&cpe 一覧を取得する。レスポンス JSON の pkgCpes に含まれるデータのうち、ID を取得したい cpe の cpeID を参照する。

pkgIDの取得方法#

以下の方法で取得できます。

  • グループ API を使用する場合
    • https://rest.vuls.biz/v1/pkgCpes に GET リクエストを実行し、package&cpe 一覧を取得する。レスポンス JSON の pkgCpes に含まれるデータのうち、ID を取得したいパッケージの pkgID を参照する。
  • グループセット API を使用する場合
    • https://rest.vuls.biz/v1/groupSet/pkgCpes に GET リクエストを実行し、package&cpe 一覧を取得する。レスポンス JSON の pkgCpes に含まれるデータのうち、ID を取得したいパッケージの pkgID を参照する。

UUIDの取得方法#

以下の2つの方法のどちらかで取得できます。

  • サーバタブを開き、ID を取得したいサーバの サーバUUID 列を参照する。(サーバUUID 列は表示項目の編集から表示)
  • REST API リクエストで取得する。
    • グループ API の場合
      • https://rest.vuls.biz/v1/servers に GET リクエストを実行し、サーバ一覧を取得する。レスポンス JSON の servers に含まれるデータのうち、ID を取得したいサーバの serverUuid を参照する。
    • グループセット API の場合
      • https://rest.vuls.biz/v1/groupSet/servers に GET リクエストを実行し、サーバ一覧を取得する。レスポンス JSON の servers に含まれるデータのうち、ID を取得したいサーバの serverUuid を参照する。

serverIDの取得方法#

以下の2つの方法のどちらかで取得できます。

  • サーバタブを開き、ID を取得したいサーバの サーバID 列を参照する。(サーバID 列は表示項目の編集から表示)
  • REST API リクエストで取得する。
    • グループ API の場合
      • https://rest.vuls.biz/v1/servers に GET リクエストを実行し、サーバ一覧を取得する。レスポンス JSON の servers に含まれるデータのうち、ID を取得したいサーバの id を参照する。
    • グループセット API の場合
      • https://rest.vuls.biz/v1/groupSet/servers に GET リクエストを実行し、サーバ一覧を取得する。レスポンス JSON の servers に含まれるデータのうち、ID を取得したいサーバの id を参照する。

taskIDの取得方法#

以下の2つの方法のどちらかで取得できます。

  • タスクタブを開き、ID を取得したいタスクの タスクID 列を参照する。(タスクID 列は表示項目の編集から表示)
  • REST API リクエストで取得する。
    • グループ API の場合
      • https://rest.vuls.biz/v1/tasks に GET リクエストを実行し、タスク一覧を取得する。レスポンス JSON の tasks に含まれるデータのうち、ID を取得したいタスクの id を参照する。
    • グループセット API の場合
      • https://rest.vuls.biz/v1/groupSet/tasks に GET リクエストを実行し、タスク一覧を取得する。レスポンス JSON の tasks に含まれるデータのうち、ID を取得したいタスクの id を参照する。

roleIDの取得方法#

以下の方法で取得できます。

  • ロールタブを開き、ID を取得したいロールの ロールID 列を参照する。(ロールID 列は表示項目の編集から表示)
  • REST API リクエストで取得する。
    • https://rest.vuls.biz/v1/roles に GET リクエストを実行し、ロール一覧を取得する。レスポンス JSON の roles に含まれるデータのうち、ID を取得したいロールの id を参照する。

lockfileIDの取得方法#

以下の方法で取得できます。

  • サーバタブを開き、ID を取得したい Lock ファイルが存在するサーバを選択。アプリケーションタブから ID を取得したい Lock ファイルを選択し、表示される Lock ファイルの # 以降の値を参照する。 image
  • REST API リクエストで取得する。
    • https://rest.vuls.biz/v1/lockfiles に GET リクエストを実行し、Lock ファイル一覧を取得する。レスポンス JSON の lockfiles に含まれるデータのうち、ID を取得したい Lock ファイルの id を参照する。

windowsPkgIDの取得方法#

以下の方法で取得できます。

  • サーバタブを開き、ID を取得したいパッケージが存在するサーバを選択。ソフトウェアタブを開き、 ID 列を参照する。
  • サーバタブを開き、ID を取得したいパッケージが存在するサーバを選択。ソフトウェアタブから ID を取得したいパッケージを選択し、表示される windowsPkg の # 以降の値を参照する。

image

scanImportIDの取得方法#

以下の方法で取得できます。

  • REST API リクエストで取得する
    • https://rest.vuls.biz/v1/scanImports に GET リクエストを実行し、スキャン結果一覧を取得する。レスポンス JSON の scanImports に含まれるデータのうち、ID を取得したいスキャン結果の id を参照する。

オプション指定可能なパラメータ#

API によって、データを取得する際に以下のオプションが指定可能です。 各 API ごとに指定可能なオプションはFutureVuls APIドキュメントを参照してください。

配列のパラメータを指定する場合

配列(array)のパラメータを指定する場合は、複数指定する必要があります。

例えば、タスク一覧取得の API で、タスクステータスが「"new" または "investigating"」に該当するものにフィルターしたい場合は、以下のような url で実行する必要があります。

"https://rest.vuls.biz/v1/tasks?filterStatus=new&filterStatus=investigating"
パラメータ タイプ デフォルト値 説明
page integer 1 ページネーション分割されたデータの、取得するページ番号
limit integer 20 ページネーション分割するデータの、1ページあたりの件数
offset integer 0 ページネーション分割する前のデータのオフセット
filterCveID string ー 指定したcveIDの脆弱性に関連するデータのみ取得
filterTaskID integer ー 指定したtaskIDのタスクに関連するデータのみ取得
filterServerID integer ー 指定したserverIDのサーバに関連するデータのみ取得
filterRoleID integer ー 指定したroleIDのロールに関連するデータのみ取得
filterPkgID integer ー 指定したpkgIDのpackageに関連するデータのみ取得
filterCpeID integer ー 指定したcpeIDのcpeに関連するデータのみ取得
filterStatus array[string] ["new", "investigating", "ongoing"] 指定したステータスのタスクのみ取得
filterPriority array[string] ー 指定した優先度のタスクのみ取得
filterIgnore boolean ー true: 非表示フラグがOFFのタスクのみを取得
false: 全件取得
filterMainUserIDs array[integer] ー 指定したuserIDのユーザが主担当であるタスクのみ取得
filterSubUserIDs array[integer] ー 指定したuserIDのユーザが副担当であるタスクのみ取得
filterIsExternalScan boolean ー 外部スキャン列が有効になっているタスク、脆弱性のみ取得
filterReachability array[string] ー 指定した到達可能性の状態(reachable、partial、not_reachable)のタスクのみ取得
v1 のタスク一覧(/v1/tasks、/v1/groupSet/tasks)のみ
filterReachabilityIsUnanalyzed boolean ー true: 到達可能性の値がないタスクのみ取得
false: 到達可能性の値があるタスクのみ取得
v1 のタスク一覧(/v1/tasks、/v1/groupSet/tasks)のみ
filterSbomUuid string ー 指定した UUID の SBOM から登録した Lock ファイルのみ取得(Lock ファイル一覧)

例えば、グループに登録されているサーバ一覧を取得する場合を考えます。 https://rest.vuls.biz/v1/servers?page=1&limit=20&offset=5 に GET リクエストをすると、serverID 順に先頭5件を除いた20件を取得します。つまり、6件目のデータから25件目のデータが取得されます。

https://rest.vuls.biz/v1/servers?page=2&limit=20&offset=5 とすると、26件目のデータから45件目のデータが取得されます。 オフセットを指定せず、https://rest.vuls.biz/v1/servers?page=1&limit=20 とした場合は、1件目のデータから20件目のデータが取得されます。

また、https://rest.vuls.biz/v1/tasks?filterPriority=high&filterPriority=medium に GET リクエストを実行すると、タスク優先度が HIGH もしくは MEDIUM であるタスク一覧を取得できます。