API отправки писем
Отправляйте из кода ровно один раз.

Один вызов отправляет письмо или пакет из ста. У каждой отправки есть id ещё до того, как она уйдёт, а повтор возвращает прежний результат вместо новой отправки.

Коротко

Что такое API транзакционной почты?

Так приложение отправляет свои письма, например чеки, ссылки для входа и оповещения, HTTP-запросом, а не человеком, который жмёт «Отправить».

100

писем в одном пакетном вызове

365

дней, на сколько вперёд можно запланировать

900

секунд на отмену немедленной отправки

Как это работает

Пакет, который не бывает «всё или ничего»

До 100 писем за вызов, каждое проверяется отдельно. Неверный адрес проваливает только свой пункт, остальные всё равно уходят.

Сейчас, позже или с окном отмены

Планируйте до года вперёд или придержите немедленную отправку до 15 минут. Отменить или перенести можно, пока письмо не ушло.

История каждого письма

Каждая отправка сразу получает id msg_. Смотрите её статус, события по каждому получателю, открытия и клики.

Отправить пакет

TypeScript SDK или тот же JSON по обычному HTTP.

Повтор с тем же ключом возвращает уже отправленное и досылает только остальное.
import { init, openemail } from '@openemail/sdk' init({ apiKey: process.env.OPENEMAIL_API_KEY }) const result = await openemail.emails.sendBatch(  [    { from: '[email protected]', to: '[email protected]', subject: 'Order AC-4192 has shipped', text: 'It is on its way.' },    { from: '[email protected]', to: '[email protected]', subject: 'Order AC-4193 has shipped', text: 'It is on its way.' },  ],  { idempotencyKey: 'shipments:2026-09-23' },) console.log(result.sent, result.failed)

Что вы получаете

Уже в продукте

Шаблоны по id

Отправьте сохранённый шаблон и закрепите проверенную версию.

На их языке

Добавьте translate, и каждый получатель прочтёт письмо на своём языке, иначе оно не уйдёт.

И в формате Resend

Направьте Resend SDK на /compat/resend и оставьте код как есть.

Советы

Как извлечь максимум

  1. 01

    Выводите ключ идемпотентности

    Берите то, что вызвало отправку, например номер заказа, а не метку времени.

  2. 02

    Читайте статус

    202 значит в очереди или запланировано. Проверьте status, прежде чем считать письмо доставленным.

  3. 03

    Помечайте отправки

    До 10 тегов на письмо, они возвращаются при каждом чтении.

Положение дел

Полезно знать

Нет тестового режима
Все ключи боевые, поэтому каждая отправка доставляется по-настоящему.
Нет статуса возврата у отправки
Возврат попадает в переписку и в вебхук email.bounced, но не в GET /emails.
Отправки из редактора не видны
Письма, отправленные из приложения, не появляются в GET /emails.

Вопросы

Часто спрашивают

Что дальше

Хорошо сочетается с

API-ключи

Ключ на каждую задачу, только с нужными правами и отправителями, и каждый вызов в журнале.

Вебхуки

Сообщаем вашему эндпоинту о приходе письма, вместо того чтобы заставлять вас опрашивать.

Шаблоны

Текст, написанный один раз, с версиями, отправленный много раз: из редактора, из вашего кода или агентом.

Начать

Ваш домен,
ваша почта.

Направьте домен на OpenEmail и читайте его почту в ящике, построенном вокруг него. Бесплатный тариф включает один домен.

Ваши входящие,
на ваших условиях.

Почтовая инфраструктура для бизнеса, ИИ, агентов и личной почты. Создана для масштаба, приватности и контроля. Всё, что должно было быть в почте с первого дня.

OpenEmail

Почтовая инфраструктура для бизнеса, ИИ, агентов и личной почты. Создана для масштаба, приватности и контроля. Всё, что должно было быть в почте с первого дня.

© 2026 OpenEmail. Все права защищены.