# Будущие события брокерского счёта Авторизованный пользователь видит до пяти ближайших событий на обзоре `/accounts/:accountId` и открывает полный список известных событий Brokerage Account, доступного через текущее T-Bank connection, на `/accounts/:accountId/events`. Ошибка или пустой результат блока на обзоре не заменяет Portfolio. ```mermaid sequenceDiagram participant U as User participant F as Frontend participant B as Backend participant T as T-Bank gRPC participant M as MOEX ISS U->>F: Открывает будущие события F->>B: GET /api/v1/brokerage-accounts/:accountId/events B->>T: GetAccounts и GetPortfolio B->>T: GetDividends (дивиденты по акциям) B->>M: Получает события облигаций B-->>F: Прогноз на 30 дней F-->>U: Компактный список событий ``` ## API `GET /api/v1/brokerage-accounts/:accountId/events` требует Bearer access token. Ответ содержит `accountId`, `calculatedAt` и отсортированный по календарной дате список `events`. Событие содержит `type` (`coupon`, `dividend`, `maturity`, `offer`), `date`, `dateKind`, идентификаторы и название Instrument, а также nullable `projectedAmount` как Money `{ currency, value }`. Для `offer` и неизвестных денежных условий сумма не создаётся искусственно и передаётся `null`. Дивиденд передаёт `dateKind: registry`: это дата закрытия реестра, а не гарантированная дата зачисления. ## Поведение и ограничения При первом открытии полного списка frontend показывает structural skeleton заголовка и event rows вместо отдельного spinner. Placeholder не представляет данные и не является интерактивным; error и empty outcomes остаются отдельными состояниями после завершения запроса. - Период включает текущую календарную дату и следующие 30 дней. - Суммы до налогов рассчитываются по текущему количеству бумаг на `calculatedAt`; они не учитывают будущие сделки или владение на дату реестра. - Список не имеет фильтров, пагинации, конвертации валют и общего итога. - Поддерживаются только известные события по доступным позициям: дивиденды по акциям из T-Bank `GetDividends` (дата фиксации реестра `record_date`, сумма `dividend_net` на бумагу; отменённые выплаты `Cancelled` не попадают в прогноз), а также купоны, полное погашение и оферты облигаций из MOEX `bondization`. Будущее частичное погашение и амортизация не синтезируются без надёжного расписания. - Ошибка T-Bank или MOEX возвращает `503` без частичного списка. Инструмент без поддерживаемых данных не создаёт строку «нет данных».