For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
info@patternautomation.com
ДокументацияБаза знанийЖурнал измененийСправочник API
ДокументацияБаза знанийЖурнал измененийСправочник API
    • База знаний
  • С чего начать
    • Что такое Agent Inbox?
    • Возможности ящика
    • Первый ящик
    • Получение API-ключа
  • Сценарии для агентов
    • Входящие письма
    • Allowlist и blocklist
    • Тредовые переписки
    • Human-in-the-loop
    • Pods и мультитенантность
    • Метки и состояние
  • Домены и доставляемость
    • Свой домен
    • SPF, DKIM и DMARC
    • Письма в спаме
    • Прогрев домена
    • Конфликты MX
  • Решение проблем
    • Ошибка 403
    • Лимиты запросов
    • Дублирование отправок
    • Домен не верифицируется
    • Отказы доставки (bounce)
  • Настройка DNS
    • Cloudflare
    • GoDaddy
    • Route 53 (AWS)
    • Namecheap
info@patternautomation.com
LogoLogo
On this page
  • Типы
  • Постоянный (permanent)
  • Временный (transient)
  • Webhook message.bounced
  • Автоподавление
  • Низкий bounce rate
Решение проблем

Почему письма отклоняются (bounce)?

Типы отказов и что делать.

Was this page helpful?
Edit this page
Previous

DNS: Cloudflare

Записи Agent Inbox в Cloudflare.

Next
Built with

Bounce — сервер получателя не принял письмо. Тип отказа подсказывает действия.

Типы

Постоянный (permanent)

Адрес или домен недоступен навсегда: нет ящика, удалённый ящик, несуществующий домен.

Действие: сразу уберите адрес из списков. Повторные отправки бьют по репутации.

Временный (transient)

Временная проблема: переполненный ящик, недоступность сервера, слишком большое письмо, greylisting.

Действие: Agent Inbox повторяет доставку; после неудачных попыток отказ может стать постоянным.

Webhook message.bounced

TypeScript
1import { serialization } from "agentinbox";
2
3async function handleWebhook(payload: Record<string, unknown>) {
4 if (payload.event_type === "message.bounced") {
5 const event = await serialization.events.MessageBouncedEvent.parse(payload);
6
7 console.log(`Bounce type: ${event.bounce.type}`);
8 console.log(`Sub type: ${event.bounce.subType}`);
9 console.log(`Message: ${event.bounce.messageId}`);
10
11 for (const recipient of event.bounce.recipients) {
12 console.log(`Bounced address: ${recipient.address}`);
13
14 if (event.bounce.type === "Permanent") {
15 await removeFromList(recipient.address);
16 }
17 }
18 }
19}

Регистрация:

TypeScript
1import { AgentinboxClient } from "agentinbox";
2
3const client = new AgentinboxClient({ apiKey: "am_..." });
4
5await client.webhooks.create({
6 url: "https://your-domain.ngrok-free.app/webhooks",
7 events: ["message.bounced"],
8});

Автоподавление

Повторная отправка на адреса после bounce, отказа или жалобы в спам блокируется — защита репутации. Держите bounce rate ниже 4%, иначе возможна проверка аккаунта.

Низкий bounce rate

ПрактикаЗачем
Валидация адресовМеньше опечаток и «мёртвых» адресов
Удалять permanent сразуРепутация
Не покупные/спарсенные спискиМного невалидных адресов
Прогрев новых доменовРезкий всплеск подозрителен
МониторингЦель < 2% для здоровой репутации

Доставляемость.