emailService
emailService
- emailService
- GetEmailsTable(params) ⇒
Promise.<ApiResult> - GetSourceMailboxes() ⇒
Promise.<ApiResult.<GetSourceMailboxesResponseDto>> - GetMailboxPermissions() ⇒
Promise.<ApiResult.<GetMailboxPermissionsResponseDto>> - GetEmailById(emailId) ⇒
Promise.<ApiResult.<GetEmailByIdResponseDto>> - UpdateEmailStatus(params) ⇒
Promise.<ApiResult> - UpdateEmailContactRelation(params) ⇒
Promise.<ApiResult> - AddCallbackToEmail(params) ⇒
Promise.<ApiResult> - SendEmail(body) ⇒
Promise.<ApiResult>
- GetEmailsTable(params) ⇒
GetEmailsTable(params) ⇒ Promise.<ApiResult>
Получает таблицу email-сообщений с пагинацией и фильтрами. См. GetEmailsRequestDto
Принимаемые параметры
| Param | Type | Description |
|---|---|---|
| params | GetEmailsRequestDto | Пагинация и фильтры запроса |
Возвращаемые данные
Returns: Promise.<ApiResult> - Страница email-сообщений с фильтрами статусов
INFO
sourceMailboxes: не задан/null — фильтр не применяется; пустой массив — фильтр применяется без совпадений (пустой результат); массив с адресами — только перечисленные почтовые ящики (пересекается с правами доступа).
GetSourceMailboxes() ⇒ Promise.<ApiResult.<GetSourceMailboxesResponseDto>>
Получает список почтовых ящиков, по которым текущий пользователь может фильтровать email-сообщения
Возвращаемые данные
Returns: Promise.<ApiResult.<GetSourceMailboxesResponseDto>> - Список доступных пользователю почтовых ящиков (GetSourceMailboxesResponseDto)
INFO
Для admin (или при выключенной фиче mailbox-permissions) — все настроенные ящики; для обычного пользователя — только разрешённые через права. Пустой массив, если у пользователя нет email-прав.
GetMailboxPermissions() ⇒ Promise.<ApiResult.<GetMailboxPermissionsResponseDto>>
Получает карту прав на почтовые ящики — словарь { permissionId: mailboxAddress }
Возвращаемые данные
Returns: Promise.<ApiResult.<GetMailboxPermissionsResponseDto>> - Карта permissionId → mailbox (GetMailboxPermissionsResponseDto)
INFO
Парный эндпоинт к GetSourceMailboxes(): возвращает не плоский список, а сам Dictionary из конфигурации MailboxPermissions, где ключ — permission-ID (как строка), значение — адрес ящика. Удобно, когда нужно подписать UI permission-ID-ом (например, labels в filter chips).
Фильтрация та же, что в GetSourceMailboxes: admin или выключенный MailboxPermissionsEnabled — весь словарь; обычный пользователь — только entries, у которых ключ парсится в int и совпадает с его PermissionsIds.
GetEmailById(emailId) ⇒ Promise.<ApiResult.<GetEmailByIdResponseDto>>
Получает детали email-сообщения по идентификатору. Письмо возвращается под полем email (EmailDetailsDto)
Принимаемые параметры
| Param | Type | Description |
|---|---|---|
| emailId | number | Идентификатор email-сообщения |
Возвращаемые данные
Returns: Promise.<ApiResult.<GetEmailByIdResponseDto>> - Детали письма с HTML-боди и вложениями под полем email
WARNING
Возвращает санитайзенный HTML-боди (bodyHtml) и плоский список вложений (attachments). Inline-картинки (которые в письме ссылаются как <img src="cid:...">) сервер заменяет на короткоживущие S3 presigned URL прямо в bodyHtml — рендерить как обычный HTML. URL действительны ~10 минут; для долгого хранения тело письма перезапрашивать.
UpdateEmailStatus(params) ⇒ Promise.<ApiResult>
Обновляет статус email-сообщения
Принимаемые параметры
| Param | Type | Description |
|---|---|---|
| params | UpdateEmailStatusRequestParam | Параметры запроса с ID письма и новым статусом |
Возвращаемые данные
Returns: Promise.<ApiResult> - Подтверждение операции
UpdateEmailContactRelation(params) ⇒ Promise.<ApiResult>
Обновляет связь email-сообщения с контактом и сущностью
Принимаемые параметры
| Param | Type | Description |
|---|---|---|
| params | UpdateEmailContactRelationRequestParam | Параметры запроса с ID письма, ID контакта и внешней сущностью |
Возвращаемые данные
Returns: Promise.<ApiResult> - Подтверждение операции
AddCallbackToEmail(params) ⇒ Promise.<ApiResult>
Создаёт callback по email-сообщению
Принимаемые параметры
| Param | Type | Description |
|---|---|---|
| params | AddCallbackToEmailRequestParam | Параметры запроса с ID письма, комментарием и датой перезвона |
Возвращаемые данные
Returns: Promise.<ApiResult> - Подтверждение операции
SendEmail(body) ⇒ Promise.<ApiResult>
Отправляет email-сообщение со ссылками на уже загруженные в FileManagerService вложения. См. ComposeEmailRequestDto
Принимаемые параметры
| Param | Type | Description |
|---|---|---|
| body | ComposeEmailRequestDto | Тело запроса с заголовком, текстом, получателем и списком ссылок на вложения |
Возвращаемые данные
Returns: Promise.<ApiResult> - Результат отправки
INFO
Контракт изменён: вместо FormData с файлами теперь принимает JSON со ссылками на файлы (FilePath возвращается из POST /Api/Files/FromFormFile).