Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Cloud Functions
  • Сопоставление с другими сервисами Yandex Cloud
    • Обзор
    • Функция
    • Вызов функции
    • Асинхронный вызов функции
    • Долгоживущие функции
    • Уведомления о завершении выполнения функции
    • Сетевое взаимодействие
    • Монтирование внешних ресурсов на файловую систему функции
    • Сборщик
      • Обзор
      • Таймер
      • Триггер для Message Queue
      • Триггер для Object Storage
      • Триггер для Container Registry
      • Триггер для Cloud Logging
      • Триггер для Yandex IoT Core
      • Триггер для бюджетов
      • Триггер для Data Streams
      • Триггер для почты
    • Dead Letter Queue
    • Логи функции
    • Резервное копирование
    • Квоты и лимиты
  • Инструменты
  • Правила тарификации
  • Управление доступом
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • История изменений
  • Вопросы и ответы
  • Обучающие курсы

В этой статье:

  • Батчинг
  • Роли, необходимые для корректной работы триггера для почты
  • Формат сообщения от триггера для почты
  • См. также
  1. Концепции
  2. Триггер
  3. Триггер для почты

Триггер для почты, который вызывает функцию Cloud Functions

Статья создана
Yandex Cloud
Обновлена 30 июля 2024 г.
  • Батчинг
  • Роли, необходимые для корректной работы триггера для почты
  • Формат сообщения от триггера для почты
  • См. также

Триггер для почты запускает функцию Cloud Functions, когда на электронную почту приходит письмо. Адрес электронной почты генерируется сервисом автоматически во время создания триггера.

Триггеру для почты необходим сервисный аккаунт для вызова функции.

О том, как создать триггер для почты, читайте в инструкции Создать триггер для почты, который вызывает функцию Cloud Functions.

БатчингБатчинг

Настройки батчинга позволяют передавать в функцию сразу несколько сообщений. Эти настройки задают ограничение сверху по размеру группы сообщений и по времени ее накопления. Например, если размер группы сообщений равен 3, то в функцию могут поступать группы, в которых содержится от 1 до 3 сообщений.

Роли, необходимые для корректной работы триггера для почтыРоли, необходимые для корректной работы триггера для почты

  • Для создания триггера вам необходимо разрешение на сервисный аккаунт, от имени которого триггер выполняет операцию. Это разрешение входит в роли iam.serviceAccounts.user, editor и выше.
  • Для работы триггера сервисному аккаунту необходима роль functions.functionInvoker на функцию, которую вызывает триггер.
  • Для сохранения вложений в бакет Object Storage сервисному аккаунту необходима роль storage.uploader.

Формат сообщения от триггера для почтыФормат сообщения от триггера для почты

После того как триггер сработает, он отправит в функцию следующее сообщение:

{
   "messages":[
      {
         "received_at":"2022-09-15 14:42:23.983842092 +0000 UTC m=+260285.403254765",
         "headers":[
            {
               "name":"X-Yandex-Fwd",
               "values":[
                  "1"
               ]
            },
            {
               "name":"Authentication-Results",
               "values":[
                  "myt6-22bd3499f8ff.qloud-c.yandex.net; dkim=pass header.i=@yandex.ru"
               ]
            },
            {
               "name":"Dkim-Signature",
               "values":[
                  "v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1663252943; bh=5mogyQPnK9aR1QY58xdFic7MyJaCt1srWO58********; h=Message-Id:Date:Subject:To:From; b=en6OA2ufXC06U3rYWymIMaETTbm2yR0ryNhNY7h0nzyiCCftzlvxOWaoA4ObXhiAE mTdrT8R1kVaHFTa3ljkD6m5fx********/83Es5mZw4s8Q3Rn********//L8y414e 1T6rD********/2JEq45AaiqlS4Pw6NCp********"
               ]
            },
            {
               "name":"From",
               "values":[
                  "John Doe <somebody@yandex.ru>"
               ]
            },
            {
               "name":"Content-Transfer-Encoding",
               "values":[
                  "7bit"
               ]
            },
            {
               "name":"Date",
               "values":[
                  "Thu, 15 Sep 2022 17:42:23 +0300"
               ]
            },
            {
               "name":"X-Mailer",
               "values":[
                  "Yamail [ http://yandex.ru ] 5.0"
               ]
            },
            {
               "name":"To",
               "values":[
                  "'a1serq2n5f3u********-mtff****@serverless.yandexcloud.net' <a1serq2n5f3u********-mtff****@serverless.yandexcloud.net>"
               ]
            },
            {
               "name":"Subject",
               "values":[
                  "Example email topic for documentation"
               ]
            },
            {
               "name":"Message-Id",
               "values":[
                  "<5519545********@mail.yandex.ru>"
               ]
            },
            {
               "name":"Content-Type",
               "values":[
                  "text/html"
               ]
            },
            {
               "name":"Received",
               "values":[
                  "from forward501j.mail.yandex.net (forward501j.mail.yandex.net. [5.45.198.251]) by serverless.yandexcloud.net (YandexCloudFunctions) with SMTP for <a1serq2n5fk9********-mtff****@serverless.yandexcloud.net>; Thu, 15 Sep 2022 14:42:23 +0000 (UTC)",
                  "from myt6-22bd3499f8ff.qloud-c.yandex.net (myt6-22bd3499f8ff.qloud-c.yandex.net [IPv6:2a02:6b8:c12:239b:0:640:22bd:3499]) by forward501j.mail.yandex.net (Yandex) with ESMTP id C57******** for <a1serq2n5fk9********-mtff****@serverless.yandexcloud.net>; Thu, 15 Sep 2022 17:42:23 +0300 (MSK)",
                  "from 2a02:6b8:c12:1584:0:640:71d5:0 (2a02:6b8:c12:1584:0:640:71d5:0 [2a02:6b8:c12:1584:0:640:71d5:0]) by myt6-22bd3499f8ff.qloud-c.yandex.net (mxback/Yandex) with HTTP id KgdCMT3fZCg1-********; Thu, 15 Sep 2022 17:42:23 +0300",
                  "by 7f4cvd2xm7d2gxse.myt.yp-c.yandex.net with HTTP; Thu, 15 Sep 2022 17:42:23 +0300"
               ]
            },
            {
               "name":"Mime-Version",
               "values":[
                  "1.0"
               ]
            }
         ],
         "attachments":{
            "bucket_id":"trigger-bucket-id",
            "keys":[
               "attachement-object-key1",
               "attachement-object-key2"
            ]
         },
         "message":"<div>This is example body for documentation</div>\r\n"
      }
   ]
}

См. такжеСм. также

  • Триггер для почты, который вызывает контейнер Serverless Containers
  • Триггер для почты, который отправляет сообщения в веб-сокет WebSocket-соединения

Была ли статья полезна?

Предыдущая
Триггер для Data Streams
Следующая
Dead Letter Queue
Проект Яндекса
© 2025 ООО «Яндекс.Облако»