Спрощення статусів електронних листів

Статуси електронних листів — це одна з найважливіших частин API, адже вони точно показують, на якому етапі життєвого циклу знаходиться лист. З часом наш початковий набір статусів розростався хаотично і став заплутаним: яка різниця між error та softfail? Чи означає held те саме, що й pending? Ми вирішили це впорядкувати.
Нові статуси
Тепер у нас є 12 зрозумілих статусів, кожен з яких має чітке значення та колір:
| Статус | Колір | Опис |
|---|---|---|
| accepted | 🟡 | Прийнято до доставки |
| scheduled | 🟡 | Заплановано для майбутньої доставки |
| delivered | 🟢 | Доставлено на поштовий сервер одержувача |
| bounced | 🔴 | Остаточно не доставлено (жорсткий відскок) |
| attempted | 🟠 | Спроба доставки зроблена, але тимчасово не вдалася |
| failed | 🔴 | Не вдалося доставити через конкретну помилку |
| rejected | 🔴 | Спочатку прийнято, потім відхилено |
| loaded | 🔵 | Вміст листа було завантажено (відстеження відкриття) |
| clicked | 🟣 | Натиснуто посилання в листі |
| suppressed | ⚪ | Одержувач у списку заборонених |
| received | 🟢 | Вхідний лист прийнято |
| complained | 🔴 | Зареєстровано скаргу на спам |
Що змінилося порівняно зі старими статусами
Старі статуси застаріли. Ось як вони відповідають новим:
| Старий статус (застарілий) | Новий статус |
|---|---|
pending | accepted або scheduled |
sent | delivered |
held | (видалено) |
hold_cancelled | (видалено) |
softfail | attempted |
hardfail | bounced |
opened | loaded |
error | failed |
delayed | (видалено) |
processed | (видалено) |
Перейменовані статуси стали більш описовими: loaded чітко показує, що ми відстежуємо завантаження вмісту листа (не обов'язково людиною), attempted менш двозначний за softfail, а bounced зрозумілий усім.
Зворотна сумісність
Усі наявні листи та їхні доставки було переведено на нові статуси — ви не побачите жодних старих назв статусів у записах листів чи доставок, незалежно від того, коли їх було створено.
Єдине місце, де старі назви статусів ще можуть з'являтися — це раніше запущені події та webhook-запити, які було надіслано до цієї зміни. Ці історичні дані незмінні й збережуть оригінальні значення статусів, з якими їх було створено.
Якщо ви фільтруєте або порівнюєте значення статусів у своєму коді, оновіть свої інтеграції для використання нових назв.
Блог
Останні новини та оновлення прямо від Emailit.
Будьте в курсі останніх статей з блогу Emailit.


