# DashaMail REST API v2: Отправить транзакционное письмо

Сценарий из mcp-everything. Актуально на 2026-10-24.

Письма по событию: заказ оплачен, восстановление пароля, счёт.

1. Создай API-ключ в личном кабинете и передавай его в заголовке Authorization: Bearer <ключ>. Домен отправителя должен быть добавлен и подтверждён (DKIM, SPF), иначе письма не уйдут (код 34).
2. Отправь письмо: POST /v2/transactional/messages с to, from_email, subject и message (HTML) или plain_text. message_id — твой ID письма, по нему удобно искать.
3. Доставка асинхронная: ответ 201 с response.data.transaction_id.
4. Проверь статус и историю событий письма: GET /v2/transactional/messages/{transaction_id} — данные хранятся 6 месяцев.
5. Вложения передаются в attachments JSON-строкой с файлами в base64; файлы .php и .exe запрещены.

```bash
curl -X POST https://api.dashamail.com/v2/transactional/messages \
  -H "Authorization: Bearer $DASHAMAIL_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
        "to": "ivan@example.ru",
        "from_email": "noreply@example.ru",
        "from_name": "Магазин",
        "subject": "Заказ №1042 оплачен",
        "message": "<p>Спасибо! Мы начали собирать ваш заказ.</p>",
        "message_id": "order-1042-paid"
      }'
```

## Базовые URL

- Боевой: `https://api.dashamail.com`
- Ресурсы: `/v2`

## Авторизация

Тип: Bearer-токен

API-ключ из личного кабинета передаётся в заголовке `Authorization: Bearer <ключ>` (схема `ApiKey` тоже принимается). Для совместимости ключ можно передать параметром `api_key` в строке запроса — менее безопасно; при заданном заголовке параметр игнорируется.

```
curl 'https://api.dashamail.com/v2/lists' \
  -H 'Authorization: Bearer YOUR_API_KEY'
```

## Методы сценария

### POST /v2/transactional/messages — Транзакционное письмо

Доставка асинхронная; ответ `201` с `response.data.transaction_id`.

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `to` | body | string | да | Получатель; несколько — через запятую (каждому отдельное письмо) |
| `from_email` | body | string | да | Отправитель (можно заменить заголовком From в headers) |
| `message` | body | string | нет | HTML; нужен он или plain_text |
| `plain_text` | body | string | нет | Текстовая версия |
| `from_name` | body | string | нет | Имя отправителя |
| `subject` | body | string | нет | Тема |
| `message_id` | body | string | нет | Свой ID письма |
| `cc` | body | string | нет | Копия |
| `bcc` | body | string | нет | Скрытая копия |
| `headers` | body | string | нет | Заголовки (JSON-строка) |
| `attachments` | body | string | нет | Вложения в base64 (JSON-строка); .php, .exe запрещены |
| `inline` | body | string | нет | Встраиваемые изображения (JPEG, PNG, GIF), ссылка cid: |
| `delivery_time` | body | integer | нет | Отложенная отправка, timestamp |

Пример запроса:

```
curl -X POST 'https://api.dashamail.com/v2/transactional/messages' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"to": "ivan@example.com", "from_email": "noreply@example.ru", "subject": "Заказ №1024 оплачен", "message": "<p>...</p>", "message_id": "order-1024-paid"}'
```

### GET /v2/transactional/messages/{transaction_id} — Статус транзакционного письма

Статус и история событий доступны за последние 6 месяцев.

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `transaction_id` | path | string | да | ID письма |

## Нюансы

- Перед запуском рассылки проверяются тема, отправитель, наличие HTML или текста, ссылка отписки (`id="unsub_link"` в HTML или `%ОТПИСАТЬСЯ%` в тексте) и баланс.
- Домен `from_email` должен быть добавлен и подтверждён (DKIM, SPF), иначе письма не уйдут (код 34).
- Ответы — JSON с `response.data`; журнал и статистика транзакционных писем — `GET /v2/transactional/log` и `GET /v2/transactional/stats`.
- Разделы API: `/lists`, `/campaigns`, `/automations`, `/templates`, `/reports`, `/transactional`, `/account`, `/router`.

## Другие сценарии

- [Добавить подписчика в адресную базу](https://mcp-everything.ru/integrations/dashamail/scenarios/dobavit-podpischika-v-adresnuyu-bazu.md)
- [Создать и запустить массовую рассылку](https://mcp-everything.ru/integrations/dashamail/scenarios/sozdat-i-zapustit-massovuyu-rassylku.md)

---

Если этого недостаточно — официальная документация: https://dashamail.ru/api/
Вся интеграция одним документом: https://mcp-everything.ru/integrations/dashamail.md
