概観
Cato AIセキュリティはユーザーの活動をGenAIアプリケーションで記録し、独自のエージェントが呼び出すモデルへの呼び出しを記録します。 ホーム > イベントページでイベントはCato管理アプリケーション(CMA)に表示され、保持、相関、アラートのためにSIEM、データレイク、その他の外部プラットフォームに転送できます。
イベントはメタデータのみを運びます。 モデルとのやり取りで交換されるプロンプトと応答は、イベントに保存されません。 そのコンテンツは、APIキーが必要な権限を持つ発信元がCatoのGraphQL APIからオンデマンドで別に取得します。
AIセキュリティの調査は、したがって、2段階のワークフローです:
イベントをSIEMに転送します。 AIセキュリティイベントがCatoの他のテレメトリと並んで届くように、AIセキュリティイベントのタイプにフィルタリングしてイベントの連携設定を構成します。
APIを使用して、必要な敏感なコンテンツを取得します。 イベントが調査を必要とする場合、そのイベントに関連付けられた識別子でAPIをクエリしてプロンプトとモデル応答を取得します。
注: AIセキュリティのやり取りは、敏感なプロンプトや応答を含めて、APIを使わずにCMAで直接レビューできます。 AI Security for Apps > インタラクションエクスプローラー はあなたのHomegrown Agentsの呼び出しをリストし、 AI Security for Users > セッションエクスプローラー はGenAIアプリケーションを使用したユーザーセッションをリストします。 どちらも、個別の記録にドリルダウンすることを可能にします。 APIは、SIEMで調査を開始する際やプログラムによる取得を目的としています。
Catoイベント
すべてのAIセキュリティイベントは、イベントタイプ AI Security をフラグとして持っています。 イベントのサブタイプは、AIセキュリティのどの部分がイベントを生成したかを識別し、どのフィールドをイベントが持ち、どのAPIクエリがコンテンツを返すかを決定します。 インタラクティブなイベントスキーマエクスプローラーは、Cato Event Schema.で利用可能です。
CMAモジュール | イベントサブタイプ | "説明" |
|---|---|---|
ユーザー向けAIセキュリティ | AIユーザーインタラクション | GenAIアプリケーションとのユーザー活動によって生成されます。 |
アプリケーション向けAIセキュリティ | アプリケーション実行時保護 | Guardポリシーが、Homegrown Agentsの1つを保護している際に、やり取りにアクションを取ると生成されます。 |
AIユーザーインタラクションフィールド
項目 | タイプ | "説明" |
|---|---|---|
アカウントID / アカウント名 | ロング / キーワード | Catoアカウントの識別子と表示名。 |
ad_name / user_id / user_name | キーワード / ロング / キーワード | Catoユーザー、およびそのActive Directory表示名。 |
vpn_user_email | キーワード | ユーザーのメールアドレス。 調査がメールアドレスから始まった場合にフィルタリングするフィールドです。 |
application_id / application_name | キーワード | GenAIアプリケーション、例えばmicrosoft_copilot / Microsoft Copilot。 |
application_type / カテゴリ | キーワード | アプリケーションの分類、例えば、タイプSystemとカテゴリ生成AIツール。 |
ai_app_risk_level / アプリケーションリスク | キーワード / 整数 | アプリケーションのCatoのリスク評価、ラベルおよび数値スコアとして。 |
is_cloud_app / is_sanctioned_app | ブーリアン | アプリケーションがクラウドにホストされているかどうか、またアカウントで承認されているかどうか。 |
app_activity_type | キーワード | イベントが表すアクティビティ。 考えられる値: ウェブリクエスト、確認、検知、LLM応答、ファイルトランザクション、エンゲージメント応答。 |
rule_id / rule_name | キーワード | 一致したポリシールール、1つが発火した場所。 app_activity_typeに依存せず、いかなる値にも排他的ではありません。 |
event_id | キーワード | ユニークイベント識別子。 |
time / time_str | 日付 (エポックミリ秒) / 日付 (ISO-8601) | やり取りが発生した時点、両方の形式で。 |
session_id / message_id | キーワード | application_idと共に、sessionConversationクエリに渡されます。 message_idは、対応する検知およびLLM応答イベントとプロンプトイベントをペアリングします。 |
invocation_id | キーワード | message_idとして同じ一連のイベントを別の識別子ネームスペースでペアリングし、どちらのコンテンツクエリでも使用されません。 |
interaction_intent | キーワード | プロンプトの背後にある分類された意図、例えば情報を得ること。 |
interaction_topic / interaction_sub_topic | キーワード | 分類された件名、例えば、法律/データプライバシー。 |
url/リファラーURL | キーワード | ページURLおよび参照元ページURL(該当する場合) |
file_name | キーワード | 転送されたファイルの名前。 アプリケーション活動タイプがファイルトランザクションの場合にのみ存在。 |
engagement_outcome_action | キーワード | エンゲージメントポリシープロンプトへのユーザーの反応後に行われたアクション。 |
user_justification | キーワード | エンゲージメントポリシープロンプトへのユーザーの反応 |
event_count | 整数 | レコードに表示される発生回数。 |
cato_app | キーワード | GenAIアプリケーションのCatoアプリケーション識別子、例えば、chatgpt。 |
注意: すべてのイベントに取得可能なコンテンツがあるとは限らない。 session_idとmessage_idは、app_activity_typeがプロンプト、検出、またはLLMレスポンスであるイベントにのみ表示される。 ウェブリクエストとファイルトランザクションイベントはそれを含まない。
アプリケーションランタイム保護項目
項目 | "説明" |
|---|---|
event_type/event_sub_type | これらのイベントに対するAlways AIセキュリティ/アプリケーションランタイム保護。 これらの値を使用して、統合またはイベントページでフィルターを適用。 |
event_id/event_count | ユニークなイベント識別子と、レコードに表示される発生回数。 |
time/time_str | インタラクションがインターセプトされた時間(ミリ秒のエポックタイムスタンプおよびISO-8601 UTC文字列として)。 |
account_id/account_name | Catoアカウント識別子および表示名。 account_idはAPIクエリへaccountIdとして渡される値です。 |
guard_id/guard_name | アプリケーションを保護し、意思決定を行ったガード。 |
rule_id/rule_name | 一致した特定のガードポリシールール。 |
アクション | 強制執行の結果、例えば匿名化、ブロック、またはモニタ。 |
detectors | このインタラクションに対して発火した検出器、例としてPII検出器。 |
application_id | ガードが保護している自家製エージェント。 |
invocation_id | 調査のキー。 特定のインタラクションを識別し、プロンプトおよび応答を取得するためのインボケーションクエリに渡される値。 |
session_id | 同一会話セッションに属するインボケーションをグループ化する。 |
cato_app/is_cloud_app/is_sanctioned_app | イベントに存在しますが、AIアプリケーションセキュリティの調査には関連しません。 |
用語集。 CMAで「自家製エージェント」と呼ばれるものはイベントでは「アプリケーション」と呼ばれます。 application_idフィールドはガードが保護している自家製エージェントを識別します。
SIEMへのイベント送信
イベント統合はCatoイベントデータを手動でエクスポートしたり、継続的にポーリングすることなく、外部のプラットフォームやストレージ先に自動で転送します。 統合はCMAのリソース > 統合 > 設定済の統合で設定されます。 概略については、イベント統合の開始をご覧ください。
ネイティブ統合が利用できない場合、カスタムHTTPプッシュ統合を使用して選択した宛先へJSON形式でイベントをプッシュ可能です。 カスタムヘッダーは設定可能で、多様なベンダーとの互換性があります。 詳細情報は、カスタムHTTPプッシュ統合によるデータ送信を参照してください。
AIセキュリティイベントのフィルター
どの統合を選択しても、アカウントの全イベントボリュームを転送するのではなく、AIセキュリティイベントに絞ることができます。 これは、イベントフィルターで行われ、フィルターグループとして設定されます。グループ内の条件は「かつ」で結合され、グループ間は「または」で結合されるので、どれかのグループに一致するとイベントが転送されます。 どのイベントフィールドも条件として利用可能です。
イベントフィルターにフィルターグループを追加。 統合構成でイベントフィルターを開き、フィルターグループを追加します。
イベントタイプの条件を設定。 フィールドイベントタイプ、値AIセキュリティ。 これにより、グループはすべてのサブタイプのAIセキュリティイベントにスコープされます。

(オプション)サブタイプの条件を設定。 フィールド サブタイプ、値 AIユーザーインタラクションおよびアプリケーションランタイム保護、またはこの統合に必要なものだけが選ばれます。 同じグループに両方の条件があるため、「かつ」で結ばれたので、選択されたサブタイプのAIセキュリティイベントのみ転送されます。

(オプション)2つのサブタイプを別々にルート設定。 両方の値を持つ単一グループは、同じ宛先に両方のサブタイプを送信します。 異なる宛先に配達するためには、2つのイベント統合を設定し、各グループに1つのサブタイプをスコープします。
必要に応じてさらに絞り込みます。 同じグループに条件を追加してボリュームを削減可能。 たとえば、ガード名フィルターを追加すると、特定のガードに一致するアプリケーション ランタイム保護イベントのみを転送できます。

APIを使用して機密コンテンツを取得
AIセキュリティイベントは、インタラクションの内容を意図的に除外しており、プロンプト、モデル応答、またはモデルとのやり取りされた生メッセージ データは含まれていません。 そのコンテンツは要求に応じてCatoのGraphQL APIから取得され、APIキーに必要な権限が付与された呼び出し元にのみ提供されます。 2つのクエリが利用可能で、イベントサブタイプごとに1つ。
APIキーと権限
クエリは、CMAで生成されたCato APIキーで認証されます。 APIキーの作成方法の詳細については、Cato APIのためのAPIキー生成をご覧ください。
インタラクションコンテンツへのアクセスはキーのRBAC権限によって制御されます。
アクセス | 権限 |
|---|---|
AIユーザーインタラクションにおける機密コンテンツ | AIセキュリティ > ユーザー向けAIセキュリティ > 機密コンテンツの読み取り |
アプリケーションランタイム保護における機密コンテンツ | AIセキュリティ > アプリ向けAIセキュリティ > 機密コンテンツの読み取り |
APIエンドポイントとスキーマ
APIエンドポイントとスキーマのURLは、お使いのCMAインスタンスがホストされているロケーションに特定されています。
リソース | URL形式 |
|---|---|
APIエンドポイント | https://api.<prefix>.catonetworks.com/api/v1/graphql2 |
APIスキーマ | https://api.<prefix>.catonetworks.com/api/schema |
異なるCMA地域に対するプレフィックス
CMA地域 | CMA URL | プレフィックス | APIエンドポイント |
アイルランド | cc.catonetworks.com | なし | https://api.catonetworks.com/api/v1/graphql2 |
米国 - バージニア | cc.us1.catonetworks.com | us1 | https://api.us1.catonetworks.com/api/v1/graphql2 |
インド | cc.in1.catonetworks.com | in1 | https://api.in1.catonetworks.com/api/v1/graphql2 |
日本 | cc.jp1.catonetworks.com | jp1 | https://api.jp1.catonetworks.com/api/v1/graphql2 |
あなたのCMAアカウントのURLからプレフィックスを識別し、各リクエストで対応するエンドポイントを使用してください。 詳細については、Cato APIとは何かをご覧ください。
GraphQLプレイグラウンドでのクエリ実行
GraphQL Playgroundは、ブラウザから直接Cato APIに対してクエリを実行するために使用され、即席の調査やスクリプト化前の接続性確認に役立ちます。 手順については、GraphQLプレイグラウンドからCato APIへの接続をご覧ください。
AIユーザーインタラクション
AIユーザーインタラクションイベントの背後にあるユーザープロンプトとモデルレスポンスを取得します。 同じ会話はCMAにあるAIセキュリティユーザー向け>セッションエクスプローラーで利用可能です。
ポリシーで設定された検出器に一致したAIユーザーインタラクションは、app_activity_typeフィールド内で検出を含みます。 これらのイベントは、セキュリティ調査に最も関連があります。
リクエストフィールド
変数 | タイプ | ソース |
|---|---|---|
accountId | ID! | このイベントのaccount_id。 |
sessionId | ID! | このイベントのsession_id。 |
messageId | ID! | このイベントのmessage_id。 セッション内の個々のプロンプトを識別します。 |
appId | ID! | このイベントのapplication_id。 |
userId | ID | このイベントのuser_id。 オプション。 |
GraphQL
query SessionConversation(
$accountId: ID!
$sessionId: ID!
$messageId: ID!
$appId: ID!
) {
aiSecurity(accountId: $accountId) {
endUsers {
sessionConversation(
input: { sessionId: $sessionId, messageId: $messageId, appId: $appId }
) {
userPrompt
llmResponse
}
}
}
}変数:
{
"accountId": "<ACCOUNT_ID>",
"sessionId": "<session_id from the event>",
"messageId": "<message_id from the event>",
"appId": "<application_id from the event>"
}カール
curl -s -X POST https://api.<prefix>.catonetworks.com/api/v1/graphql2 \
-H "x-api-key: $CATO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"query": "query SessionConversation($accountId: ID!, $sessionId: ID!, $messageId: ID!, $appId: ID!) { aiSecurity(accountId: $accountId) { endUsers { sessionConversation(input: {sessionId: $sessionId, messageId: $messageId, appId: $appId}) { userPrompt llmResponse } } } }",
"variables": {
"accountId": "",
"sessionId": "",
"messageId": "",
"appId": ""
}
}' | jq . Python
import json, urllib.request
API_KEY = "<API_KEY>"
QUERY = """
query SessionConversation($accountId: ID!, $sessionId: ID!, $messageId: ID!, $appId: ID!) {
aiSecurity(accountId: $accountId) {
endUsers {
sessionConversation(input: {sessionId: $sessionId, messageId: $messageId, appId: $appId}) {
userPrompt
llmResponse
}
}
}
}
"""
payload = json.dumps({"query": QUERY, "variables": {
"accountId": "<ACCOUNT_ID>",
"sessionId": "<session_id from event>",
"messageId": "<message_id from event>",
"appId": "<application_id from event>",
}}).encode("utf-8")
req = urllib.request.Request(
"https://api.<prefix>.catonetworks.com/api/v1/graphql2",
data=payload,
headers={"x-api-key": API_KEY, "Content-Type": "application/json"},
method="POST",
)
with urllib.request.urlopen(req, timeout=30) as resp:
print(json.dumps(json.load(resp), indent=2)) 対応項目
パス | イベントタイプ | 説明 |
|---|---|---|
userPrompt | 文字列 | ユーザーがGenAIアプリケーションに送信したテキスト。 |
llmResponse | 文字列 | アプリケーションの応答テキスト。 |
例の対応
{
"data": {
"aiSecurity": {
"endUsers": {
"sessionConversation": {
"userPrompt": "",
"llmResponse": ""
}
}
}
}
} アプリケーション ランタイム保護
アプリケーションのランタイム保護イベントに関連する呼び出しメタデータと生のチャットメッセージを取得します。 同じ呼び出しがアプリケーションのセキュリティ > インタラクションエクスプローラー内のCMAにあります。
要求項目
Variable | タイプ | 送信元 |
|---|---|---|
accountId | ID! | イベントのaccount_id。 |
iD | ID! | イベントのinvocation_id。 特定のインタラクションを識別します。 |
GraphQL
query GetInvocation($accountId: ID!, $id: ID!) {
aiSecurity(accountId: $accountId) {
apps {
invocation(input: { id: $id }) {
id
sessionId
timestamp
tokenCount
guard {
id
name
}
action
data {
message {
role
content {
text
}
}
}
}
}
}
}変数:
{
"accountId": "",
"id": "<イベントからのinvocation_id>"
} Curl
curl -s -X POST https://api..catonetworks.com/api/v1/graphql2 \
-H "x-api-key: ” \
-H "Content-Type: application/json" \
-d '{
"query": "query GetInvocation($accountId: ID!, $id: ID!) { aiSecurity(accountId: $accountId) { apps { invocation(input: {id: $id}) { id sessionId timestamp tokenCount guard { id name } action data { message { role content { text } } } } } } }",
"variables": {
"accountId": "",
"id": "<イベントからのinvocation_id>"
}
}' | jq . Python
import json, urllib.request
API_KEY = "<CATO_API_KEY>"
QUERY = """
query GetInvocation($accountId: ID!, $id: ID!) {
aiSecurity(accountId: $accountId) {
apps {
invocation(input: {id: $id}) {
id
sessionId
timestamp
tokenCount
guard { id name }
action
data { message { role content { text } } }
}
}
}
}
"""
payload = json.dumps({"query": QUERY, "variables": {
"accountId": "<ACCOUNT_ID>",
"id": "<invocation_id from the event>",
}}).encode("utf-8")
req = urllib.request.Request(
"https://api.<prefix>.catonetworks.com/api/v1/graphql2",
data=payload,
headers={"x-api-key": API_KEY, "Content-Type": "application/json"},
method="POST",
)
with urllib.request.urlopen(req, timeout=30) as resp:
print(json.dumps(json.load(resp), indent=2)) 対応項目
パス | イベントタイプ | 説明 |
|---|---|---|
invocation.id | ID! | グローバルに一意のinvocation ID。 |
.sessionId | ID | 同じ会話セッションからの呼び出しをグループ化します。 追跡されない場合はnull。 |
.タイムスタンプ | DateTime! | 呼び出しがインターセプトされたUTCの時間。 |
.tokenCount | Int! | 呼び出しの合計トークン数(プロンプトと完了)。 |
.guard.id / .guard.name | ID! / String! | 呼び出しを受信したガードです。 呼び出しがガードに関連付けられていない場合、ガードオブジェクトはnullになる可能性があります。 |
.アクション | Enum! | 施行結果を大文字のAPI値として表示します: BLOCK, ANONYMIZE, MONITOR, もしくは NONE。 イベントではこれらの値が異なるキャピタリゼーションで表示されます。例: Anonymize。 |
.data.message[] | [InvocationMessage!]! | 生のチャットメッセージ。 それぞれが役割(USER, ASSISTANT, TOOL_CALL, TOOL_MESSAGE, またはカスタムロール)および内容[](それぞれにテキストフィールドを含む)を持ちます。 これはsensitiveデータであり、「Read Sensitive Content」権限の背後にゲートされています。 |
例の対応
{
"data": {
"aiSecurity": {
"apps": {
"invocation": {
"id": "01a00ada-c424-700b-9898-ed1ea05a82fb",
"sessionId": "8cf9384d-9a45-4d01-aeff-c3eb31164599",
"timestamp": "2026-08-16T13:55:04.392Z",
"tokenCount": 30,
"guard": {
"id": "d3918cad-ffab-408d-b079-bfecd4842ed1",
"name": ""
},
"action": "BLOCK",
"data": {
"message": [
{
"role": "user",
"content": [
{
"text": ""
}
]
}
]
}
}
}
}
}
} 付録: サンプルイベントとAPIコール
サンプルイベントとコンテンツを取得するためのAPIコール、両方のイベントサブタイプに対して。
ユーザー向けAIセキュリティ
サンプルイベント
[
{
"account_id": ,
"account_name": "",
"ad_name": "",
"ai_app_risk_level": "中",
"app_activity_type": "確認",
"application_id": "microsoft_copilot",
"application_name": "Microsoft Copilot",
"application_risk": 5,
"application_type": "システム",
"categories": [
"生成AIツール"
],
"cato_app": "microsoft_copilot",
"event_count": 1,
"event_id": "7c41ae90b2d5f318",
"event_sub_type": "AIユーザーインタラクション",
"event_type": "AIセキュリティ",
"interaction_intent": "情報取得",
"interaction_sub_topic": "データプライバシー",
"interaction_topic": "法律",
"invocation_id": "01a01f70-9b12-74ac-8f31-2b6ce0d41aa7",
"is_cloud_app": true,
"is_sanctioned_app": true,
"message_id": "6f2b1c48-55d7-4a9e-9c10-8ab3f7e2d114",
"session_id": "b71f9c02-3ad4-4e8b-90c6-1f5d8e7a4c33",
"time": 1787233820104,
"time_str": "2026-08-20T13:50:20Z",
"url": "https://copilot.microsoft.com/chats",
"user_id": ,
"user_name": "",
"vpn_user_email": ""
},
{
"account_id": ,
"account_name": "",
"app_activity_type": "検出",
"application_id": "microsoft_copilot",
"application_name": "Microsoft Copilot",
"event_count": 1,
"event_id": "b0d3572ea9146fc7",
"event_sub_type": "AIユーザーインタラクション",
"event_type": "AIセキュリティ",
"invocation_id": "01a01f70-9b12-74ac-8f31-2b6ce0d41aa7",
"message_id": "6f2b1c48-55d7-4a9e-9c10-8ab3f7e2d114",
"rule_id": "1296751412582697861",
"rule_name": "",
"session_id": "b71f9c02-3ad4-4e8b-90c6-1f5d8e7a4c33",
"time": 1787233820331,
"time_str": "2026-08-20T13:50:20Z",
"user_id": ,
"user_name": "",
"vpn_user_email": ""
}
] APIコール
curl -s -X POST https://api.catonetworks.com/api/v1/graphql2 \
-H "x-api-key: " \
-H "Content-Type: application/json" \
-d '{
"query": "query SessionConversation($accountId: ID!, $sessionId: ID!, $messageId: ID!, $appId: ID!) { aiSecurity(accountId: $accountId) { endUsers { sessionConversation(input: {sessionId: $sessionId, messageId: $messageId, appId: $appId}) { userPrompt llmResponse } } } }",
"variables": {
"accountId": "",
"sessionId": "b71f9c02-3ad4-4e8b-90c6-1f5d8e7a4c33",
"messageId": "6f2b1c48-55d7-4a9e-9c10-8ab3f7e2d114",
"appId": "microsoft_copilot"
}
}' | jq . API 応答
{
"data": {
"aiSecurity": {
"endUsers": {
"sessionConversation": {
"userPrompt": "",
"llmResponse": ""
}
}
}
}
} アプリ向けAIセキュリティ
サンプルイベント
[
{
"account_id": ,
"account_name": "",
"action": "ブロック",
"detectors": [
"SIMPLE_DETECTOR_TYPE_SAFETY_CONTROLS_SAFETY"
],
"event_count": 1,
"event_id": "f98820262dfb8aa9",
"event_sub_type": "アプリケーション ランタイム保護",
"event_type": "AIセキュリティ",
"guard_id": "d3918cad-ffab-408d-b079-bfecd4842ed1",
"guard_name": "",
"interaction_id": "01a01f71-c3e5-75be-a3cc-d77ec3b9277f",
"internalId": "f98820262dfb8aa9",
"internal_id": "f98820262dfb8aa9",
"invocation_id": "01a01f71-c3e5-75be-a3cc-d77ec3b9277f",
"is_sanctioned_app": false,
"rule_id": "1296751412582697861",
"rule_name": "",
"session_id": "d500d5a4-82cd-4f48-8d70-0ebfc590d605",
"time": 1787233944579,
"time_str": "2026-08-20T13:52:24Z"
},
{
"account_id": ,
"account_name": "",
"action": "ブロック",
"detectors": [
"SIMPLE_DETECTOR_TYPE_SECURITY_CONTROLS_JAILBREAK",
"SIMPLE_DETECTOR_TYPE_SAFETY_CONTROLS_SAFETY"
],
"event_count": 1,
"event_id": "31156257bcf2d54c",
"event_sub_type": "アプリケーション ランタイム保護",
"event_type": "AIセキュリティ",
"guard_id": "d3918cad-ffab-408d-b079-bfecd4842ed1",
"guard_name": "",
"interaction_id": "01a01f72-38ce-782f-96c5-5ca071ac9792",
"internalId": "31156257bcf2d54c",
"internal_id": "31156257bcf2d54c",
"invocation_id": "01a01f72-38ce-782f-96c5-5ca071ac9792",
"is_sanctioned_app": false,
"rule_id": "1296751412582697861",
"rule_name": "",
"session_id": "d500d5a4-82cd-4f48-8d70-0ebfc590d605",
"time": 1787233974486,
"time_str": "2026-08-20T13:52:54Z"
}
] APIコール
curl -s -X POST https://api.catonetworks.com/api/v1/graphql2 \
-H "x-api-key: " \
-H "Content-Type: application/json" \
-d '{
"query": "query GetInvocation($accountId: ID!, $id: ID!) { aiSecurity(accountId: $accountId) { apps { invocation(input: {id: $id}) { id sessionId timestamp tokenCount guard { id name } action data { message { role content { text } } } } } } }",
"variables": {
"accountId": "",
"id": "01a01f72-38ce-782f-96c5-5ca071ac9792"
}
}' | jq . API 応答
{
"data": {
"aiSecurity": {
"apps": {
"invocation": {
"id": "01a01f72-38ce-782f-96c5-5ca071ac9792",
"sessionId": "d500d5a4-82cd-4f48-8d70-0ebfc590d605",
"timestamp": "2026-08-20T13:52:54.486Z",
"tokenCount": 38,
"guard": {
"id": "d3918cad-ffab-408d-b079-bfecd4842ed1",
"name": "<guard_name>"
},
"action": "ブロック",
"data": {
"message": [
{
"role": "ユーザー",
"content": [
{
"text": "<user_prompt>"
}
]
}
]
}
}
}
}
}
}