Руководство по эксплуатации ИИ безопасности

Prev Next

Обзор.

Cato AI Security ведет журналы активности пользователей с приложениями GenAI и вызовами, которые ваши собственные агенты отправляют вызываемым моделям. События видны в приложении управления Cato (CMA) на странице Домашняя > События и могут быть перенаправлены в SIEM, озеро данных или другую внешнюю платформу для хранения, корреляции и оповещения.

События содержат только метаданные. Запросы и ответы, обмененные с моделью, не сохраняются в событии. Этот контент извлекается отдельно, по запросу, из GraphQL API компании Cato тем, у кого есть API-ключ с необходимым разрешением.

Таким образом, исследование инцидента с ИИ в области безопасности представляет собой двухэтапный рабочий процесс:

  1. Перенаправьте события в вашу SIEM-систему. Настройте интеграцию событий, фильтруя по типу событий AI Security, чтобы события AI Security поступали вместе с остальной телеметрией Cato.

  2. Используйте API для извлечения конфиденциального контента для событий, которые этого требуют. Когда событие требует расследования, запросите API с идентификаторами, содержащимися в этом событии, чтобы получить запрос и модельный ответ.

Примечание: Взаимодействия с ИИ в области безопасности, включая конфиденциальные запросы и ответы, можно просмотреть напрямую в CMA без использования API. AI Security для приложений > Исследователь взаимодействий список вызовов для ваших встроенных агентов, а AI Security для пользователей > Исследователь сеансов список пользовательских сессий с приложениями GenAI. Оба позволяют подробно изучить отдельные записи. API предназначен для расследований, начинающихся в вашей SIEM, и для программного извлечения.

События Cato

Все события AI Security относятся к типу события AI Security. Подтип события определяет, какая часть AI Security сгенерировала событие, и определяет, какие поля событие несет и каким запросом API оно извлекает его содержимое. Интерактивный исследователь схемы событий доступен на Cato Event Schema.

Модуль CMA

Подтип события

Описание

AI безопастность для пользователей

Взаимодействие пользователя с ИИ

Сгенерировано активностью пользователя с приложениями GenAI.

Безопасность AI для приложений

Защита выполнения приложений

Сгенерировано, когда политика защиты Guard для одного из ваших встроенных агентов предпринимает действие по взаимодействию.

Поля взаимодействия пользователя с ИИ

Поля

Тип

Описание

id учетной записи / имя учетной записи

длинное / ключевое слово

Идентификатор учетной записи Cato и отображаемое имя.

имя объявления / id пользователя / имя пользователя

ключевое слово / длинное / ключевое слово

Пользователь Cato и имя, отображаемое в Active Directory.

email пользователя vpn

ключевое слово

Адрес электронной почты пользователя. Это поле для фильтрации, когда расследование начинается с адреса электронной почты.

id приложения / имя приложения

ключевое слово

Приложение GenAI, например, microsoft_copilot / Microsoft Copilot.

тип приложения / категории

ключевое слово

Классификация приложений, например, тип Система и категория Инструменты генеративного ИИ.

уровень риска приложения AI / риск приложения

ключевое слово / целое число

Риск-название приложения Cato, как метка и как числовой коэффициент.

является ли облачным приложением / является ли санкционированным приложением

логическое

Является ли приложение облачно размещенным и является ли оно разрешенным для учетной записи.

тип активности приложения

ключевое слово

Активность, которую представляет событие. Возможные значения: Запрос в Web, Запрос, Обнаружение, Ответ LLM, Транзакция файла, Ответ о вовлеченности.

id правила / имя правила

ключевое слово

Соответствие правила политики, при котором одно из них сработало. Независимо от типа активности приложения и не является эксклюзивным для любого значения.

event_id

ключевое слово

Уникальный идентификатор события.

время / строка времени

дата (в миллисекундах с эпохи) / дата (ISO-8601)

Когда произошло взаимодействие, в обеих формах.

идентификатор сессии / идентификатор сообщения

ключевое слово

Передается, вместе с идентификатором приложения, в запрос sessionConversation. id сообщения связывает событие Запрос с его соответствующими событиями Обнаружение и Ответ LLM.

идентификатор вызова

ключевое слово

Связывает тот же набор событий, что и идентификатор сообщения, в отдельном пространстве имен идентификаторов и не используется ни одним из запросов контента.

намерение взаимодействия

ключевое слово

Классифицированное намерение за запросом, например, получение информации.

тема взаимодействия / подтема взаимодействия

ключевое слово

Классифицированная тема, например, юриспруденция / защита данных.

url / referer_url

ключевое слово

URL страницы и URL страницы-реферера, если применимо

file_name

ключевое слово

Имя переданного файла. Присутствует только при app_activity_type равно File Transaction.

engagement_outcome_action

ключевое слово

Действие после ответа пользователя на приглашение политики взаимодействия.

user_justification

ключевое слово

Ответ пользователя на запрос политики развертывания,

event_count

integer

Количество случаев, которое представляет запись.

cato_app

ключевое слово

Идентификатор Cato для приложения GenAI, например, chatgpt.

Примечание: не каждое событие имеет извлекаемый контент. session_id и message_id появляются только в событиях, где app_activity_type равно Prompt, Detection или LLM Response. События Web Request и File Transaction не содержат их.

Поля защиты времени выполнения приложения

Поле

Описание

event_type / event_sub_type

Всегда AI Security / Application Runtime Protection для этих событий. Используйте эти значения для фильтрации в вашей интеграции или на странице событий.

event_id / event_count

Уникальный идентификатор события и количество случаев, которое представляет запись.

time / time_str

Когда взаимодействие было перехвачено, как метка времени эпохи в миллисекундах и строка UTC ISO-8601.

account_id / account_name

Идентификатор учетной записи Cato и отображаемое имя. account_id — это значение, переданное в качестве accountId в запросах API.

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 Security для Apps расследований.

Терминология. То, что CMA называет Самодельным Агентом, называется приложением в событии. Поле application_id идентифицирует Самодельный Агент, который Охранник защищает.

Отправка Событий в SIEM

Интеграции событий автоматически пересылают данные события Cato на внешние платформы и в места хранения, без ручного экспорта или постоянного опроса. Интеграции настраиваются в Ресурсы > Интеграции > Настроенные Интеграции в CMA. Для обзора, смотрите Начало работы с Интеграциями Событий.

Если нативная интеграция недоступна, интеграция Custom HTTP Push может использоваться для отправки событий в формате JSON в выбранное вами место назначения. Пользовательские заголовки можно настроить, чтобы сделать это совместимым с различными поставщиками. Для дополнительной информации, смотрите Отправка данных с помощью интеграции Custom HTTP Push.

Фильтрация для событий AI Security

Независимо от того, какую интеграцию вы выберете, ограничьте её до событий AI Security вместо переправки полного объёма событий учетной записи. Это делается в Фильтре Событий, который составляет из одной или более групп фильтров: условия внутри группы объединяются с AND, а группы объединяются с OR, поэтому событие переправляется, если оно соответствует любой группе. Любое поле события доступно как условие.

  1. Добавьте группу фильтров в Фильтр Событий. В конфигурации интеграции, откройте Фильтр Событий и добавьте группу фильтров.

  2. Установите условие тип события. Поле Тип события, значение AI Security. Это определяет группу для событий AI Security всех подтипов.
     

  3. (Необязательно) Установите условие Подтип. Поле Подтип, со значениями AI User Interaction и Application Runtime Protection, или только тот, который нужен для этой интеграции. Поскольку оба условия находятся в одной и той же группе, они объединены с AND, поэтому только события AI Security выбранных подтипов переправляются.

  4. (Необязательно) Маршрутизируйте два подтипа отдельно. Одна группа с обоими значениями отправляет оба подтипа в одно место назначения. Чтобы доставить их в разные места назначения, настройте две Интеграции Событий, каждая с группой, определенной для одного подтипа.

  5. Сузьте диапазон, если требуется. Дополнительные условия могут быть добавлены к той же группе для уменьшения объема. Например, фильтр Имя Охранника можно добавить, чтобы отправлять только события Application Runtime Protection, которые соответствуют определенному Охраннику.
     

Извлечение конфиденциального контента с помощью API

События AI Security намеренно исключают содержимое взаимодействия: они не содержат запросы, ответы модели или любые сырые данные сообщений, обменяемых с моделью. Этот контент извлекается из GraphQL API Cato по запросу и только теми абонентами, чей API ключ обладает необходимыми разрешениями. Доступны два запроса, по одному для каждого подтипа события.

API ключ и разрешения

Запросы аутентифицируются с помощью API ключа Cato, сгенерированного в CMA. Для подробной информации о создании API ключа, смотрите Создание API ключей для Cato API.

Доступ к контенту взаимодействия контролируется разрешениями RBAC на ключе:

Доступ к облаку

Разрешение

Конфиденциальный контент в AI User Interactions

AI Security > AI Security для пользователей > Чтение конфиденциального контента

Конфиденциальный контент в Application Runtime Protection

AI Security > AI Security для Apps > Чтение конфиденциального контента

Конечная точка API и схема

URL для конечной точки API и схемы специфичен для места, где размещена ваша инстанция CMA. Значение <prefix> может быть добавлено к URL для вашей учетной записи CMA и к конечной точке API и схеме.

Ресурс

Формат URL

Конечная точка API

https://api.<prefix>.catonetworks.com/api/v1/graphql2

Схема API

https://api.<prefix>.catonetworks.com/api/schema

Префиксы для различных регионов CMA

Регион CMA

URL CMA

Префикс

Конечная точка 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

Идентифицируйте префикс по URL вашей учетной записи CMA и используйте соответствующую конечную точку в каждом запросе. Для получения дополнительной информации см. Что такое API Cato.

Выполнение запросов в GraphQL Playground

GraphQL Playground выполняет запросы к API Cato непосредственно из браузера, что полезно для разовых расследований и для подтверждения подключения перед скриптованием запроса. Смотрите Подключение к API Cato из GraphQL Playground для инструкций.

AI User Interaction

Извлеките пользовательский запрос и модельный ответ за событием AI User Interaction. Те же самые разговоры доступны в CMA под AI Security для пользователей > Исследователь сессий.

AI User Interactions, которые соответствуют сконфигурированным в политике детекторам, содержат Detection в поле 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

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": "<ACCOUNT_ID>",
      "sessionId": "<session_id from the event>",
      "messageId": "<message_id from the event>",
      "appId": "<application_id from the event>"
    }
  }' | 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)) 

Поля ответа

Путь

Тип доверенной сети

Description

userPrompt

Строка

Текст, отправленный пользователем в приложение GenAI.

llmResponse

Строка

Текст ответа приложения.

Пример ответа

{
  "data": {
    "aiSecurity": {
      "endUsers": {
        "sessionConversation": {
          "userPrompt": "<user prompt>",
          "llmResponse": “<llm response or null>”
        }
      }
    }
  }
}

Защита времени выполнения приложений

Получить метаданные вызова и необработанные сообщения чата в событии защиты времени выполнения приложений. Те же вызовы доступны в CMA под AI Security for Apps > Interaction Explorer.

Поля запроса

Переменная

Тип

Источник

accountId

ID!

account_id события.

id

ID!

invocation_id события. Определяет конкретное взаимодействие.

GraphQL

запрос 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": "<ACCOUNT_ID>",
  "id": "<invocation_id from the event>"
}

Curl

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 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": "<ACCOUNT_ID>",
      "id": "<invocation_id from the event>"
    }
  }' | 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)) 

Поля ответа

Путь

Тип доверенной сети

Description

invocation.id

ID!

Уникальный ID вызова в глобальном масштабе.

.sessionId

ID

Группирует вызовы из одной и той же сессии разговора. значение null, если не отслеживается.

.временная метка

DateTime!

Время в формате UTC, когда был перехвачен вызов.

.tokenCount

Int!

Всего токенов для вызова (запрос и завершение).

.guard.id / .guard.name

ID! / Строка!

Страж, который получил вызов. Объект стража может быть null, если вызов не связан со стражем.

.действие

Enum!

Итог применения в виде значения API заглавными буквами: BLOCK, ANONYMIZE, MONITOR или NONE. События предоставляют эти значения с различной капитализацией, например, Anonymize.

.data.message[]

[InvocationMessage!]!

Необработанные сообщения чата. Каждое имеет роль (USER, ASSISTANT, TOOL_CALL, TOOL_MESSAGE или пользовательскую роль) и 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": "<guard_name>"
          },
          "action": "BLOCK",
          "data": {
            "message": [
              {
                "role": "user",
                "content": [
                  {
                    "text": "<user prompt>”
                  }
                ]
              }
            ]
          }
        }
      }
    }
  }
}

Приложение: Примеры событий и вызовов API

Примеры событий и вызовы API, которые извлекают их содержание, для обоих подтипов событий.

AI безопастность для пользователей

Примеры событий

[
  {
    "account_id": <account_id>,
    "account_name": "<account_name>",
    "ad_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_id>,
    "user_name": "<user_name>",
    "vpn_user_email": "<user_email>"
  },
  {
    "account_id": <account_id>,
    "account_name": "<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": "<rule_name>",
    "session_id": "b71f9c02-3ad4-4e8b-90c6-1f5d8e7a4c33",
    "time": 1787233820331,
    "time_str": "2026-08-20T13:50:20Z",
    "user_id": <user_id>,
    "user_name": "<user_name>",
    "vpn_user_email": "<user_email>"
  }
]

Вызыв API

curl -s -X POST https://api.catonetworks.com/api/v1/graphql2 \
  -H "x-api-key: <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": "<account_id>",
      "sessionId": "b71f9c02-3ad4-4e8b-90c6-1f5d8e7a4c33",
      "messageId": "6f2b1c48-55d7-4a9e-9c10-8ab3f7e2d114",
      "appId": "microsoft_copilot"
    }
  }' | jq .

Ответ API

{
  "data": {
    "aiSecurity": {
      "endUsers": {
        "sessionConversation": {
          "userPrompt": "<user_prompt>",
          "llmResponse": "<llm_response>"
        }
      }
    }
  }
}

AI Безопасность для Приложений

Примеры событий

[
  {
    "account_id": <account_id>,
    "account_name": "<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": "<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": "<rule_name>",
    "session_id": "d500d5a4-82cd-4f48-8d70-0ebfc590d605",
    "time": 1787233944579,
    "time_str": "2026-08-20T13:52:24Z"
  },
  {
    "account_id": <account_id>,
    "account_name": "<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": "<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": "<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: <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": "<account_id>",
      "id": "01a01f72-38ce-782f-96c5-5ca071ac9792"
    }
  }' | jq .

Ответ API

{
  "данные": {
    "aiБезопасность": {
      "приложения": {
        "вызов": {
          "id": "01a01f72-38ce-782f-96c5-5ca071ac9792",
          "идентификаторСеанса": "d500d5a4-82cd-4f48-8d70-0ebfc590d605",
          "время": "2026-08-20T13:52:54.486Z",
          "количествоТокенов": 38,
          "охранник": {
            "id": "d3918cad-ffab-408d-b079-bfecd4842ed1",
            "имя": "<имяОхранника>"
          },
          "действие": "Блокировать",
          "данные": {
            "сообщение": [
              {
                "роль": "пользователь",
                "содержание": [
                  {
                    "текст": "<пользовательскийЗапрос>"
                  }
                ]
              }
            ]
          }
        }
      }
    }
  }
}