Scanverra
Repo Scanner

APIリファレンス

リポジトリスキャナー

GitHub、Bitbucket、Azure DevOpsのリポジトリを対象にした静的解析 - SAST、シークレット検出、依存関係のCVEスキャン、IaCチェック、コード品質シグナル。

POST/api/repo/scanasync

スキャンを開始する - コード品質、セキュリティの問題、AIによる修正案

リポジトリスキャンは非同期で実行され、即座にはscanIdのみが返されます。下記のGET /api/repo/resultでポーリングするか、https://www.scanverra.com/repo?scan={scanId}で結果を確認してください。事前にScanverraの設定でGitHub、Bitbucket、またはAzure DevOpsのアカウントを連携しておく必要があります — スキャンはリクエストごとに渡すトークンではなく、そこに保存されたトークンを使って実行されます。

リクエストボディ

{
  "owner": "your-org",
  "repo": "your-repo",
  "branch": "main"
}

レスポンス(即時)

{
  "scanId": "clxyz..."
}

実行例

curl -X POST https://www.scanverra.com/api/repo/scan \
  -H "X-API-Key: sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{"owner":"acme","repo":"website","branch":"main"}'
GET/api/repo/resultsynchronous

完了するまでidでスキャンをポーリングする

クエリパラメータ

?id={scanId}

レスポンス

{
  "id": "clxyz...",
  "status": "completed",
  "score": 82,
  "qualityGate": "passed",
  "issues": [...],
  "fixes": [...],
  "riskFindings": [...],
  "dependencyVulns": [...],
  "aiSummary": "..."
}

statusrunningcompletedfailedのいずれかです。runningでなくなるまでポーリングしてください。

実行例

curl "https://www.scanverra.com/api/repo/result?id=clxyz..." \
  -H "X-API-Key: sk_live_..."

組み込みゲートを持つ唯一のエンドポイント

qualityGateは自動的に算出されます: いずれかの検出結果がseverity: "critical"である場合、またはscore < 60の場合は"failed"になります。scoreは100から始まり、深刻度で重み付けされ、カテゴリごとに上限が設定された減点によって減少します(Security 最大50、Dependency 最大30、Quality 最大15、IaC 最大15)。これは、単一のフィールドがそのままCIの合否シグナルとして使える唯一のツールです — CI/CD統合を参照。