KB Management API ユーザーガイド
本ドキュメントは、外部スクリプト(
giipAgentWinなど)からナレッジベース(KB)システムを管理するためのAPI使用方法を案内します。
1. 概要
KB API(
giipKb)を呼び出すことで、特定のサーバー(lssn)またはデータベース(mdb_id)に関する障害対応のノウハウ、設定情報などを保存および照会できます。
2. 基本情報
- エンドポイント:
https://giipfaw.azurewebsites.net/api/giipKb - 認証:
ヘッダーを通じてセッショントークン(AK/SK)を渡す必要があります。x-api-key
3. 機能案内 (Endpoints)
3.1 KB登録 (POST)
新しいナレッジドキュメントを登録します。
ペイロード (JSON):
{ "csn": 100, "refType": "LSSN", "lssn": 1234, "title": "サーバーカーネルチューニングガイド", "content": "# ガイド\nカーネルパラメータの修正方法...", "tags": "kernel,tuning,linux" }
:refType
(サーバー)、LSSN
(DB)、MDB
から選択GENERAL
3.2 KB修正 (PUT)
既存のナレッジドキュメントを修正します。
ペイロード (JSON):
{ "kbSn": 42, "title": "修正後のタイトル", "content": "アップデートされた内容...", "tags": "linux,updated" }
3.3 KB照会 (GET)
フィルタ条件に一致するKBリストまたは詳細情報を照会します。
クエリパラメータ:
: 特定のドキュメントを照会する際に使用kbSn
: 特定のサーバーに関連するナレッジを照会lssn
: 特定のDBに関連するナレッジを照会mdb_id
: 検索キーワードsearchKeyword
3.4 KB削除 (DELETE)
ナレッジドキュメントを削除します。
クエリパラメータ:
: 削除するドキュメント番号kbSn
4. SKベースAPIの使用方法 (giipAgent推奨)
giipAgentのような常駐型プログラムや自動化スクリプトでは、セッションの有効期限がないSecret Key(SK)を使用することが推奨されます。SKベースの呼び出しは、統合APIエンドポイント(giipApiSk3)を通じて行われます。
- エンドポイント:
https://giipfaw.azurewebsites.net/api/giipApiSk3 - メソッド:
(form-urlencoded)POST
4.1 主要パラメータ
: 発行されたSecret Keysk
: 実行するコマンド (text
,KbCreate
,KbUpdate
,KbDelete
,KbGet
のいずれか)KbList
: APIに渡す詳細データ (JSON文字列)jsondata
4.2 呼び出し例 (PowerShell)
$sk = "YOUR_SECRET_KEY" $url = "https://giipfaw.azurewebsites.net/api/giipApiSk3" # KB登録の例 $body = @{ sk = $sk text = "KbCreate jsondata" jsondata = (@{ csn = 100 refType = "LSSN" lssn = 1234 title = "Agent自動登録ナレッジ" content = "エージェントで自動的に分析された内容です。" tags = "agent,auto" } | ConvertTo-Json -Compress) } $response = Invoke-RestMethod -Uri $url -Method Post -Body $body Write-Host "KB Registered. kbSn: $($response.data[0].kbSn)"
5. giipAgentWin
自動化の例 (AKベース)
giipAgentWingiipAgentWinスクリプトで完了したタスクログをAKで自動登録する例です(ログインセッションが有効な場合)。
$ak = "YOUR_SESSION_AK" $url = "https://giipfaw.azurewebsites.net/api/giipKb" $body = @{ title = "自動化分析結果 - $(Get-Date -Format 'yyyyMMdd')" content = "# 分析結果`n環境チェックが完了しました。" refType = "LSSN" lssn = 1201 csn = 0 tags = "auto,diag" } | ConvertTo-Json -Compress $headers = @{ "x-api-key" = $ak "Content-Type" = "application/json" } $response = Invoke-RestMethod -Uri $url -Method Post -Headers $headers -Body $body Write-Host "KB Registered. kbSn: $($response.kbSn)"
[!TIP]
フロントエンドのサーバー/DB詳細ページで、このAPIを通じて登録された内容を即座に確認できます。giipv3