Если вашему ПО нужно принимать входящие письма — на адреса вашего домена, с автоматической передачей разобранного содержимого в формате JSON в любую вашу систему через вебхук или API — встречайте Даша.Роутер. Это новый инструмент в DashaMail для разработчиков: тикеты из писем, ответы из форм, парсинг отчётов от партнёров, интеграция с CRM. Без отдельного почтового сервера и без подписки на сторонние сервисы вроде Mailgun или SendGrid.

Что такое Даша.Роутер?
Даша.Роутер — это API для входящих писем, встроенный в Dashamail.
Принцип простой:
- Вам выдаётся персональный поддомен вида
bold-gold-owl.route.dashamail.ru(или вы подключаете свой — например,support.your-company.ru). - На любой адрес
*@<ваш-домен>приходят письма. - Каждое письмо проверяется по вашим маршрутам — это правила «если выполнено условие, сделать действие».
- Действие — это либо вебхук (DashaMail отправляет POST-запрос с разобранным письмом на ваш сервер), либо сохранение в хранилище (вы заберёте письмо позже через API).
По логике это аналог Mailgun Inbound Routes или SendGrid Inbound Parse. Только бесплатно, в рамках вашего тарифа, и с документацией на русском.
Где использовать
- Поддержка и тикеты. Адрес
support@<ваш-поддомен>→ вебхук в вашу helpdesk-систему (Jira Service Desk, Zammad, OTRS, самописный тикет-менеджер). Каждое входящее письмо моментально становится тикетом с темой, телом и вложениями. - Ответы на рассылки в CRM. Если вам нужно обработать ответы подписчиков с помощью вашего ПО — например, автоматически прикрепить их к карточке контакта в CRM (Bitrix24, amoCRM, HubSpot), — настройте вебхук на отдельном адресе. (Если же ответы нужно читать руками в инбоксе кабинета DashaMail — это задача Даша.Диалогов, см. раздел выше.)
- Парсинг отчётов от партнёров. Партнёр шлёт ежедневный CSV-отчёт письмом на
reports@<ваш-поддомен>. Вебхук передаёт его вашему скрипту, который сразу импортирует данные в BI. - Уведомления и автоматизация. Если внешний сервис не отдаёт API, но шлёт email-уведомления — принимайте их Роутером, парсите регуляркой в фильтре маршрута, дёргайте дальше нужный обработчик в своей системе.
- Транзакционный приём. Подтверждения, формы обратной связи, запросы на восстановление пароля, любой UGC-контент по email — все эти сценарии раньше требовали либо своего SMTP-сервера, либо подписки на сторонний сервис вроде Mailgun. Теперь хватит маршрута в DashaMail и вебхука на ваш бэкенд.
Как это работает изнутри
Домены
В разделе Интеграции → Даша.Роутер автоматически создаётся ваш дефолтный домен — анонимный поддомен вида bold-gold-owl.route.dashamail.ru. Этот адрес можно использовать сразу, без настройки DNS. Если хотите свой брендированный домен — добавляйте support.your-company.ru, прописываете одну MX-запись, и через несколько минут он начинает принимать письма.

Маршруты
Маршрут — это пара (фильтр → действия):
- Фильтр — условия, при которых маршрут срабатывает. Поддерживаются поля:
recipient(кому пришло),from(от кого),sender(envelope-sender, важно для пересылок),header.X(любой заголовок). Операторы:equals(точное совпадение),contains(подстрока),matches(регулярное выражение с поддержкой именованных и пронумерованных групп). Несколько условий комбинируются через AND или OR. - Действия — что сделать с письмом. Сейчас три типа:
webhook(POST на URL),store(сохранить в хранилище),stop(прекратить обработку — все маршруты ниже по приоритету будут пропущены).
У каждого маршрута есть приоритет (порядок выполнения) и флаг активности. Маршруты перетаскиваются мышью в нужном порядке прямо в интерфейсе.

Вебхук: что приходит и зачем подпись
Когда срабатывает действие webhook, DashaMail отправляет POST-запрос на ваш URL со следующим телом (JSON):
{
"timestamp": "1716800000",
"token": "abc123def456...",
"signature": "f8a3...",
"recipient": "support@bold-gold-owl.route.dashamail.ru",
"sender": "client@example.com",
"from": "Ivan Petrov <client@example.com>",
"subject": "Не работает кнопка восстановления пароля",
"body-plain": "Здравствуйте, у меня перестала работать...",
"body-html": "<div>Здравствуйте, у меня перестала работать...</div>",
"message-headers": [["Received", "..."], ["DKIM-Signature", "..."]],
"attachments": [
{"name": "screenshot.png", "content-type": "image/png", "size": 145820, "url": "https://storage.dashamail.ru/..."}
],
"route-captures": {"ticket_id": "T-4582"}
}
Формат подобран близким к Mailgun Inbound — если вы раньше работали с Mailgun, переезд минимальный.
Поле signature — это HMAC-SHA256 от строки timestamp + token, подписанный персональным ключом маршрута. Прежде чем доверять данным, на стороне приёма обязательно проверьте подпись:
import hmac, hashlib
expected = hmac.new(signing_key.encode(), (timestamp + token).encode(), hashlib.sha256).hexdigest()
if not hmac.compare_digest(expected, signature):
return 403
Это гарантирует, что запрос пришёл именно от DashaMail, а не от злоумышленника, угадавшего ваш URL. Ключ подписи у каждого маршрута свой — можете перегенерировать, если ключ скомпрометирован.
Доставка с ретраями
Если ваш сервер ответил 2xx — доставка считается успешной. Если 4xx — DashaMail зафиксирует ошибку и не будет повторять (вашему серверу не нравится содержимое — повтор не поможет). Если 5xx или timeout — DashaMail повторит запрос пять раз с возрастающим интервалом: 1 минута, 5 минут, 30 минут, 2 часа, 6 часов. Всего около 9 часов на восстановление вашего сервиса.
В разделе Логи доставки видно каждую попытку: статус (delivered / retrying / failed), HTTP-код ответа, время, фрагмент ответа сервера для отладки.

Хранилище
Если вебхук вам не подходит (например, обработку вы запускаете по расписанию, а не реактивно), используйте действие store. Письмо целиком сохраняется в защищённое хранилище, и вы забираете его методами router.messagesList / router.messagesGet в API. Срок хранения настраивается — от 1 до 30 дней.

Вложения
Вложения обрабатываются по выбору на каждом маршруте:
- Off (по умолчанию) — в payload приходит только метадата (имя, тип, размер). Если содержимое не нужно, ничего лишнего не передаётся.
- URL — DashaMail сохраняет вложения в S3-совместимое хранилище и кладёт в payload одноразовые подписанные ссылки (TTL 24 часа).
- Inline — вложения упаковываются в base64 прямо в JSON. Удобно для коротких документов, но есть лимит 25 МБ на письмо.
Безопасность и фильтрация
По умолчанию DashaMail сам отфильтровывает автоответы («Я в отпуске»), рассылочные письма (List-Unsubscribe), технические уведомления о недоставке и явный спам. В Настройках приёма можно включить пропуск автоответов и list-mail, если они вам нужны (например, для парсинга bounce’ов из сторонних систем).
Кроме того, все письма проходят через SPF/DKIM/DMARC-проверки на стороне MTA — результаты попадают в поле Authentication-Results заголовков, и вы можете использовать их в фильтрах маршрутов (например, отбрасывать всё без dkim=pass).
Чем Даша.Роутер отличается от Даша.Диалогов?
Это разные инструменты под разные задачи — важно не перепутать.
Даша.Диалоги — это готовый инбокс прямо в кабинете DashaMail. Когда подписчик нажимает «Ответить» в почтовом клиенте, его сообщение появляется у вас в разделе Диалоги в виде чата. Вы отвечаете в один клик — мышкой, через интерфейс. Никакой настройки на стороне клиента не нужно. Это для маркетологов и менеджеров поддержки.
Даша.Роутер — это API и вебхуки для обработки писем вашим ПО. Письмо приходит на адрес вашего поддомена, мы его разбираем и передаём в вашу систему в формате JSON — либо POST-запросом на ваш сервер (вебхук), либо складываем в хранилище для получения через API. Никакого UI для просмотра писем не предполагается — это инструмент для разработчиков, которые хотят встроить email-канал в своё приложение.
Кратко: Диалоги — это для общения руками через инбокс, Роутер — для интеграции с вашим ПО через вебхуки и API. Использовать можно как один инструмент, так и оба — на разных доменах для разных задач.
Как начать

- Откройте раздел Интеграции в личном кабинете DashaMail и нажмите «Подключить» на карточке Даша.Роутер — Обработка входящих.
- Скопируйте свой дефолтный адрес (или подключите свой домен — это займёт 2 минуты + время на обновление DNS).
- Создайте первый маршрут: укажите фильтр (например,
recipientcontainssupport@), выберите действиеwebhookи впишите URL своего сервера. - Отправьте тестовое письмо на свой адрес и проверьте логи доставки — там видно каждое срабатывание.
Подробное описание всех методов API, формат payload вебхука и примеры верификации подписи на PHP, Python и Node.js — в документации для разработчиков.
Что дальше
В планах: действие forward-email (пересылка письма на другой адрес с сохранением заголовков), интеграция с Даша.Диалогами (входящее письмо может одновременно стать диалогом и сработать как маршрут), визуальный конструктор фильтров для нетехнических пользователей.
Если у вас есть сценарий, который не покрывается текущей версией, — напишите нам в саппорт, многие фичи road-map’а появились ровно из таких разговоров.
Полезные ссылки: Документация API · Лендинг с обзором · Открыть в кабинете

