Сценарий из mcp-everything. Актуально на 2026-10-24.
Рассылка по списку получателей — из готового черновика или с текстом в запросе.
curl -L -X POST "https://api.sendsay.ru/general/api/v100/json/<аккаунт>" \
-H 'Content-Type: application/json' \
-d '{
"action": "issue.send",
"apikey": "<API-ключ>",
"sendwhen": "now",
"group": "masssending",
"letter": {"draft.id": 125},
"users.list": [
{"member": {"email": "ivan@example.ru"}, "personal": {"product": "кружка"}},
{"member": {"email": "anna@example.ru"}, "personal": {"product": "чайник"}}
]
}'
https://api.sendsay.ruhttps://api.sendsay.ru/general/api/v100/json/{account}Тип: API-ключ
Рекомендуемый способ — API-ключ (создаётся вызовом sys.user.apikey.create, лучше на отдельный саблогин с минимальными правами). Ключ передаётся полем apikey в теле JSON или заголовком Authorization: sendsay apikey=... (ключ URL-кодируется). Аутентификация действует на один вызов, выход не нужен. Также поддерживаются логин с паролем (сессия), JWT, двухфакторная аутентификация и OpenID.
В ответе — letter, по нему письмо отслеживается в статистике.
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
account |
path | string | да | Код аккаунта |
action |
body | string | да | issue.send |
sendwhen |
body | string | да | now — отправить сразу |
group |
body | string | да | personal |
email |
body | string | да | Получатель |
letter.subject |
body | string | да | Тема |
letter.from.name |
body | string | нет | Имя отправителя |
letter.from.email |
body | string | да | Адрес отправителя |
letter.message.html |
body | string | да | HTML-текст |
extra |
body | object | нет | Значения для подстановки в шаблон |
relink |
body | integer | нет | Перелинковка ссылок |
Переменные в тексте вида [% anketa.personal.product %] должны совпадать с ключами в запросе.
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
account |
path | string | да | Код аккаунта |
action |
body | string | да | issue.send |
name |
body | string | нет | Название черновика |
sendwhen |
body | string | да | now |
group |
body | string | да | masssending |
letter |
body | object | да | draft.id существующего черновика либо тема, отправитель и HTML |
users.list |
body | object | нет | Получатели: массив с блоками member и personal или объект caption + rows |
Content-Type: application/json; обязательное поле — action; размер запроса — до 400 МБ.warnings означает частичное выполнение, а не ошибку.error/auth/failed с уточнением force_change_password смените пароль через sys.user.set и повторите запрос.https://app.sendsay.ru/queue).Если этого недостаточно — официальная документация: https://docs.sendsay.ru/sendsay-api/sendsay-api-guide Вся интеграция одним документом: https://mcp-everything.ru/integrations/sendsay.md