> ## Documentation Index
> Fetch the complete documentation index at: https://docs.livingsecurity.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Журнал фишинговых писем

> Воссоздайте журнал фишинга уровня событий предыдущего поставщика на основе событий и сущностей симуляций отчетности /v1.

Этот отчет представляет собой журнал фишинга уровня событий: одна строка соответствует одному зафиксированному взаимодействию в рамках симуляции (дата, действие, адрес электронной почты получателя, тема, отправитель, сложность). Отчет остается в длинном формате: история отдельного сотрудника не сворачивается в единый результат.

Запрос охватывает последние **12 календарных месяцев** в `occurred_after`
(полночь UTC в тот же день месяца двенадцать месяцев назад, а не период в 365 дней).

<Note>
  Необработанный IP-адрес клиента никогда не передается в `/v1`: это решение принято из соображений конфиденциальности по умолчанию, а не ожидающее реализации сопоставление. Тип устройства — это производный класс в строке события; необработанный
  `user_agent` остается закрытым. См.
  [Отличия от прежнего экспорта](#%D0%BE%D1%82%D0%BB%D0%B8%D1%87%D0%B8%D1%8F-%D0%BE%D1%82-%D0%BF%D1%80%D0%B5%D0%B6%D0%BD%D0%B5%D0%B3%D0%BE-%D1%8D%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82%D0%B0).
</Note>

Настройка, учетные данные, постраничная выборка и повторные попытки при ограничении частоты запросов такие же, как в
[руководстве по подключению Power BI / Excel](/ru/developers/v1/powerbi). Сначала добавьте общий запрос
`Fn_FetchAll`; этот отчет вызывает его по имени.

## Необходимые области действия ключа

| Область действия | Назначение |
| - | - |
| `reporting:read` | `GET /v1/reporting/simulation_events` |
| `entity:read` | `GET /v1/entities` (сопоставление адреса электронной почты и отображаемого имени) |

Ключ, которому предоставлена только область `simulation:read`, не может обращаться к конечной точке событий отчетности (API возвращает `403`). См.
[выбор подходящей детализации](/ru/developers/v1/powerbi#%D0%B2%D1%8B%D0%B1%D0%BE%D1%80-%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D1%8C%D0%BD%D0%BE%D0%B9-%D0%B4%D0%B5%D1%82%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8).

## Исходные конечные точки

| Конечная точка | Роль |
| - | - |
| `GET /v1/reporting/simulation_events` | Факт уровня событий. Детализация — одно типизированное взаимодействие. Поля `email_subject`, `sender_email`, `sender_domain` и `difficulty_tier` находятся в этой строке, поэтому запрос не присоединяет результаты уровня кампании для этих полей. |
| `GET /v1/entities` | Преобразует `entity_id` в адрес электронной почты / отображаемое имя. Событие отчетности не содержит адрес электронной почты получателя (жесткое исключение в модуле чтения отчетности). Обход `/entities` позволяет заполнить прежний столбец «email». |

Допустимые фильтры для списка событий (любые другие возвращают `400`):
`limit`, `page_token`, `simulation`, `entity`, `event_type`,
`occurred_after`.

Это семейство отчетности является [предварительным набором данных](/ru/developers/v1/powerbi#%D0%BE%D1%82%D1%87%D1%91%D1%82%D0%BD%D1%8B%D0%B5-%D0%BD%D0%B0%D0%B1%D0%BE%D1%80%D1%8B-%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85-%D0%BF%D1%80%D0%B5%D0%B4%D0%B2%D0%B0%D1%80%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B9-%D0%B2%D0%B5%D1%80%D1%81%D0%B8%D0%B8-%D1%84%D0%B8%D1%88%D0%B8%D0%BD%D0%B3-%D0%BF%D0%BE-%D0%BE%D1%82%D0%B4%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%BC-%D1%81%D0%BE%D1%82%D1%80%D1%83%D0%B4%D0%BD%D0%B8%D0%BA%D0%B0%D0%BC).
Схему набора данных и политики данных можно просмотреть по адресам
`GET /v1/reporting/datasets` и
`GET /v1/reporting/datasets/simulation_events`.

### Детализация

Одна строка соответствует одному событию симуляции в отчетности. Если сотрудник открыл, а затем нажал на одно и то же сообщение, создаются две строки. События с пустым значением `entity_id`
(нет инициатора / получателя / целевого участника) также отображаются — при этом `email` имеет пустое значение.

Окно API расширено на одну минуту; точная граница
`occurred_at >= WindowStart` повторно применяется локально, чтобы последний год не зависел от того, считает ли сервер `occurred_after` включительным или исключительным.

Бюджет запросов: один постраничный обход событий в рамках окна и один обход сущностей. Всегда задавайте `limit = "500"`.

## Сопоставление столбцов

Названия прежних столбцов взяты из экспорта вашего предыдущего поставщика. Поля `/v1` — это имена в публичном API; запрос присваивает некоторым из них псевдонимы для отчета.

| Прежний столбец | Поле `/v1` или способ получения | Столбец отчета |
| - | - | - |
| Date | `Event.occurred_at` (в виде даты; исходное значение `occurred_at` сохраняется как `datetimezone`) | `date` |
| Action | `Event.event_type` — закрытый набор токенов приведен ниже | `action` |
| Email | `Entity.email` (сопоставление по `entity_id`) | `email` |
| Subject | `Event.email_subject` | `subject` |
| From | `Event.sender_email` | `from` |
| Difficulty | `Event.difficulty_tier` — целое число от 1 до 5, где 1 — самый простой уровень, 5 — самый сложный | `difficulty` |
| Raw IP | Никогда не передается в `/v1` | Опущен, а не заполнен пустыми значениями |
| Device type | `Event.device_type` — производный класс; пусто, если у события нет производного класса | `device_type` |

### Токены действий

`action` — закрытый токен отчетности. Прежнему значению «Email Sent» соответствует
`simulation.delivered` (`delivered` — публичный глагол; передаваемый токен —
`simulation.delivered`).

| Значение `action` |
| - |
| `simulation.delivered` |
| `simulation.opened` |
| `simulation.link_clicked` |
| `simulation.credentials_submitted` |
| `simulation.attachment_opened` |
| `simulation.reported` |
| `simulation.bounced` |
| `simulation.qr_scanned` |
| `simulation.replied` |

Дополнительные поля, сохраненные, поскольку они есть в API: `sender_domain`, `full_name`,
`event_id`, `entity_id`, `simulation_id`, `occurred_at`, а также
`entity_type` и `entity_status` из сопоставления сущностей.

## Отличия от прежнего экспорта

* **Необработанный IP-адрес недоступен.** `/v1` не раскрывает необработанный IP-адрес клиента — это решение принято из соображений конфиденциальности по умолчанию, а не ожидающее реализации сопоставление. Запрос не добавляет столбец-заполнитель для IP-адреса.
* **Тип устройства является производным, а не необработанным.** `device_type` — это производный класс устройства для событий нажатия, отправки и сообщения о письме. Наблюдаемые токены включают
  `desktop`, `mobile`, `tablet` и `unknown`, однако источник сохраняет произвольную строку — рассматривайте ее как свободный текст, а не как закрытое перечисление. Значение пусто, если у события нет производного класса, а необработанная строка `user_agent` остается закрытой.
* **«Email Sent» — это `simulation.delivered`.** Используйте этот токен при фильтрации или подсчете отправок. Не ищите прежнюю строку `email_sent`.
* **Адрес электронной почты получателя определяется сопоставлением, а не полем события.** Событие отчетности не содержит адрес электронной почты; запрос обходит `/entities`, чтобы заполнить его.
* **Последние 12 календарных месяцев**, а не период в 365 дней и не вся история.
* **Длинный формат без сворачивания.** Одна строка на взаимодействие, а не один результат на сотрудника.

## Дальнейшие шаги

<CardGroup cols={2}>
  <Card title="Настройка Power BI и Excel" href="/ru/developers/v1/powerbi">
    Учетные данные, постраничная выборка и загрузка этих запросов в Power BI или Excel.
  </Card>

  <Card title="Наиболее уязвимые пользователи" href="/ru/developers/v1/reports/most-susceptible-users">
    Сводка по каждому сотруднику за 12 месяцев: переходы по ссылкам, ввод учетных данных и сообщения о письмах.
  </Card>

  <Card title="Соответствие требованиям по сотрудникам" href="/ru/developers/v1/reports/per-person-compliance">
    Зачисления на Обучение с детализацией «сотрудник × назначение».
  </Card>

  <Card title="Ключи API" href="/ru/developers/developer-hub/api-keys">
    Предоставьте `reporting:read` и `entity:read` ключу, который обновляет этот отчет.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.