برگشتیها
درک انواع برگشتی، دستهبندیها، حذف خودکار و رفتار تلاش مجدد
هنگامی که ایمیلی نمیتواند تحویل داده شود، سرور دریافتکننده یک برگشتی ارسال میکند. MailLand برگشتیها را دستهبندی میکند، آدرسهایی که هرگز ایمیل را نمیپذیرند را بهطور خودکار حذف میکند و خرابیهای موقت را مجدداً امتحان میکند.
انواع برگشتی
| نوع | توضیحات | حذف خودکار |
|---|---|---|
| دائمی | خرابی دائمی: صندوق پستی وجود ندارد یا دامنه نامعتبر است. | محدوده عمومی (فوری) |
| موقت | خرابی موقت: صندوق پستی پر است یا سرور مشغول است. | محدوده بازاریابی، انقضای ۳۰ روزه (از همان اولین برگشتی موقت) |
| مسدودشده | صندوق پستی گیرنده مشکلی ندارد: رد شدن دربارهٔ ارسال ما بوده است: فیلتر اسپم یک ارائهدهنده، مشکل احراز هویت/اعتبار فرستنده مانند SPF، DKIM، DMARC یا اعتبار IP، حکم سیاستی گیرنده، رد شدن فرستندهٔ پاکت، یا برگرداندن پیام از صف خود MailLand توسط یک اپراتور. | حذف خودکار ندارد: این سیگنالی دربارهٔ ارسال ماست، نه گیرنده |
دستهبندی برگشتیها
سرویس شکست برگشتی (GET /v1/deliverability/bounce-breakdown) هر برگشتی را بر اساس دستهبندیای که
خودِ سرور انتقال پست (MTA) به رد شدن SMTP اختصاص میدهد گروهبندی میکند، سپس آن دستهبندی را به
دائمی، موقت یا مسدودشده نگاشت میکند. جدول زیر واژگان کامل و ثابتِ نسخهٔ تولید است: هر چیزی که
میزبان صادر کند و در این جدول نباشد، بهجای حدس زدن، بهعنوان نامشخص شمارش میشود:
| دستهبندی میزبان | نوع |
|---|---|
InvalidRecipient | دائمی |
BadDomain | دائمی |
AdminBounce | مسدودشده |
InactiveMailbox | دائمی |
SpamBlock | مسدودشده |
SpamContent | مسدودشده |
AuthenticationFailed | مسدودشده |
QuotaIssues | موقت |
NoAnswerFromHost | موقت |
DNSFailure | موقت |
RoutingErrors | موقت |
MessageExpired | موقت |
TransientFailure | موقت |
PolicyRelated | مسدودشده |
InvalidSender | مسدودشده |
TooManyRecipients | موقت |
ProtocolErrors | موقت |
BadConnection | موقت |
Uncategorized یا هر مقدار ناشناخته | نامشخص: اگر کد وضعیت تکمیلی پاسخ، نشانی گیرنده را برای همیشه غیرقابلاستفاده اعلام کند (مانند 5.1.1)، دائمی |
دو اندپوینتی که در ادامهٔ همین صفحه آمدهاند، برگشتیها را با واژگان خودشان گزارش میدهند.
/v1/transactional/bounces/statistics مقدارهای hardBounces و softBounces را از همان تصمیمی
میشمارد که آدرس را حذف میکند (یا نمیکند)، پس برگشتی مسدودشده هیچوقت دائمی یا موقت شمرده نمیشود.
فیلد byCategory آن، دستهبندی میزبان بالا را در مجموعهای درشتتر گروهبندی میکند
(invalid_recipient، bad_mailbox، bad_domain، mailbox_full، content_rejected،
policy_reason، general_bounce). اندپوینت /v1/transactional/bounces/recent خودِ دستهبندی میزبانِ
پیام را در bounceCategory برمیگرداند.
مدیریت خودکار
برگشتیهای دائمی
- ایمیل گیرنده بلافاصله به لیست حذف عمومی اضافه میشود
- تمام ایمیلهای آینده (تراکنشی و بازاریابی) به این آدرس مسدود میشوند
- یک رویداد وبهوک
message.bouncedباbounce_type: "hard"ارسال میشود (رویداد جداگانهای برایsuppression.addedصادر نمیشود)
برگشتیهای موقت
- وضعیت پیام به
Bouncedتغییر میکند - آدرس برای ایمیلهای بازاریابی به مدت ۳۰ روز حذف میشود (ایمیلهای تراکنشی همچنان تحویل داده میشوند): از همان اولین برگشتی موقت، نه پس از چند بار تلاش مجدد. استثنا: اولین برگشتی
MessageExpiredیک آدرس، یا اولین برگشتی آن به دلیل بزرگ بودن پیام (QuotaIssuesبا کد5.3.4یا5.2.3)، آدرس را حذف نمیکند؛ اگر در ۳۰ روز بعد تکرار شود، آدرس مثل همیشه حذف میشود. - یک رویداد وبهوک
message.bouncedباbounce_type: "soft"ارسال میشود. (خرابیهای موقت پیش از گزارش برگشتی به MailLand، توسط خودِ MTA دوباره امتحان میشوند.) - پس از ۳۰ روز، حذف بهطور خودکار منقضی میشود
برگشتیهای مسدودشده
- وضعیت پیام به
Bouncedتغییر میکند (برایAdminBounceبهFailed)، اما آدرس گیرنده به هیچ لیست حذفی اضافه نمیشود: برگشتی مسدودشده بیانیهای دربارهٔ ارسال ماست، نه دربارهٔ صندوق پستی گیرنده - یک رویداد وبهوک
message.bouncedباbounce_type: "blocked"ارسال میشود؛ برایAdminBounceبهجای آن رویدادmessage.failedباreason: "admin_bounce"ارسال میشود - نرخ پایدار برگشتیهای مسدودشده هشداری داخلی برای بررسی دستی ایجاد میکند؛ هیچ توقف خودکاری در ارسال رخ نمیدهد
ارتقا به برگشتی دائمی صرفاً «پس از ۳ برگشتی موقت» رخ نمیدهد. این ارتقا به حداقل ۳ برگشتی ثبتشده که در بازهای حداقل ۷ روزه پخش شده باشند نیاز دارد، و تنها برخی از دلایل برگشتی واجد شرایط ارتقا هستند: برگشتیهای ناشی از پر بودن سهمیه صندوق پستی، مشکلات جستوجوی DNS یا هاست، خطاهای موقت، مشکلات اتصال، خطاهای مسیریابی، خطاهای پروتکل یا انقضای پیام ارتقا نمییابند. هنگامی که آدرسی واقعاً ارتقا مییابد، حذف از محدوده بازاریابی به برگشتی دائمی (محدوده عمومی) تغییر میکند و پس از ۹۰ روز بهطور خودکار منقضی میشود.
برگشتی مسدودشده (SpamBlock، SpamContent، AuthenticationFailed، PolicyRelated، InvalidSender، AdminBounce) هرگز در دستهٔ دائمی یا موقت
ادغام نمیشود: این کار یا گیرندهای کاملاً قابلدسترس را برای همیشه حذف میکند، یا یک مشکل واقعی
اعتبار فرستنده را پشت برچسبی پنهان میکند که صاحب حساب نمیتواند دربارهٔ آن کاری انجام دهد. همچنین
برخلاف یک برگشتی موقتِ واجد شرایط، با تکرار هرگز به حذف دائمی ارتقا نمییابد: سیگنال تکرارشونده
دربارهٔ اعتبار دامنهٔ ارسالکننده است، نه گیرنده.
آمار برگشتیها
آمار تجمیعی برگشتی برای یک دوره زمانی دریافت کنید:
GET https://api.mail.land/v1/transactional/bounces/statisticsاحراز هویت با Authorization: Bearer <token> یا X-API-Key: <api key> انجام میشود.
curl https://api.mail.land/v1/transactional/bounces/statistics \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIs..."| پارامتر | نوع | پیشفرض | توضیحات |
|---|---|---|---|
from | datetime | ۳۰ روز پیش | تاریخ شروع |
to | datetime | اکنون | تاریخ پایان |
{
"totalBounces": 1125,
"hardBounces": 450,
"softBounces": 385,
"generalBounces": 290,
"byCategory": {
"invalid_recipient": 380,
"mailbox_full": 345,
"content_rejected": 185,
"policy_reason": 95,
"bad_domain": 70,
"general_bounce": 50
}
}برگشتیهای اخیر
آخرین پیامهای برگشتی را دریافت کنید:
GET https://api.mail.land/v1/transactional/bounces/recent?limit=50curl "https://api.mail.land/v1/transactional/bounces/recent?limit=50" \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIs..."| پارامتر | نوع | پیشفرض | توضیحات |
|---|---|---|---|
limit | int | 50 | تعداد برگشتیهای اخیر برای بازگشت |
[
{
"messageId": "t_a1b2c3d4e5f6",
"recipientEmail": "[email protected]",
"subject": "Your order has shipped",
"bounceCategory": "InvalidRecipient",
"bounceReason": "550 5.1.1 The email account does not exist",
"bouncedAt": "2026-02-17T12:34:56Z",
"retryCount": 0
},
{
"messageId": "t_d4e5f6a1b2c3",
"recipientEmail": "[email protected]",
"subject": "Invoice #1234",
"bounceCategory": "QuotaIssues",
"bounceReason": "552 5.2.2 Mailbox full",
"bouncedAt": "2026-02-17T11:00:00Z",
"retryCount": 2
}
]نتایج بر اساس bouncedAt بهصورت نزولی مرتب شده و به ۹۰ روز گذشته محدود هستند. bouncedAt همان زمان ایجاد پیام است، نه یک برچسب زمانی جداگانه برای برگشتی.
تلاش مجدد برای پیام برگشتی
بهصورت دستی تحویل مجدد یک پیام برگشتی را برنامهریزی کنید:
POST https://api.mail.land/v1/transactional/bounces/{messageId}/retrycurl -X POST https://api.mail.land/v1/transactional/bounces/t_a1b2c3d4e5f6/retry \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIs..."تلاش مجدد، محتوای اصلی را از طریق صف صادره (outbox) خود MailLand دوباره ارسال میکند. ردیابی باز شدن و کلیک در نسخههای تلاششده مجدد خاموش است: انتخاب ردیابی ارسال اصلی از روی سطر پیام قابل بازیابی نیست.
| وضعیت | کد | توضیحات |
|---|---|---|
200 | - | Retry accepted (یا در صورت درخواست تکراری، Retry already accepted for this attempt) |
400 | INVALID_REQUEST | پیام برگشت نخورده است |
400 | RECIPIENT_SUPPRESSED | گیرنده حذف شده است |
422 | DOMAIN_NOT_VERIFIED | دامنه ارسال دیگر تأیید نشده است |
429 | MARKETING_PAUSED | ارسال بازاریابی برای این مستأجر متوقف شده است |
404 | RESOURCE_NOT_FOUND | پیام یافت نشد |
نمیتوانید پیامی را مجدداً امتحان کنید اگر گیرنده حذف شده باشد. ابتدا حذف را برطرف کنید (به لیستهای حذف مراجعه کنید)، سپس مجدداً امتحان کنید.
آستانههای نرخ برگشتی
این آستانهها مقادیر پیشفرض هر پلن هستند و فقط زمانی ارزیابی میشوند که حداقل حجم نمونهٔ ارسال در بازهٔ ارزیابی محقق شده باشد:
| پلن | هشدار برگشتی دائمی | توقف ارسال (429) در | هشدار شکایت | توقف شکایت | حداقل حجم نمونه | بازه |
|---|---|---|---|---|---|---|
| Free / Pro | ≥ ۲٪ | ≥ ۵٪ | ≥ ۰.۰۵٪ | ≥ ۰.۱٪ | ۱۰۰ ارسال | ۶۰ دقیقه |
| Max | ≥ ۲٪ | ≥ ۶٪ | ≥ ۰.۱٪ | ≥ ۰.۲٪ | ۵۰۰ ارسال | ۱۲۰ دقیقه |
وقتی آستانهٔ توقف محقق شود، ارسال متوقف میشود (پاسخ 429 از API)؛ این کار امتیاز فرستنده شما را نیز کاهش میدهد.
توقفهای تحویلپذیری (Deliverability Holds)
عبور از آستانهٔ توقف، جدا از توقف موقت 429 بالا، یک توقف دائمی تحویلپذیری نیز روی فضای کاری
میگذارد. تا زمانی که این توقف فعال است، هر ارسالی، چه تراکنشی و چه بازاریابی، رد میشود: از سمت
API با 403 ACTION_REQUIRED و از طریق SMTP relay با کد موقت 451 4.7.0، تا سرور ایمیل شما پیام را در صف نگه دارد و دوباره تلاش کند.
- این توقف یکبار برای هر رویداد نقض گذاشته میشود، نه در هر ارسال.
- تا زمانی که پشتیبانی MailLand آن را بررسی و رفع کند باقی میماند؛ بهبود نرخ برگشتی یا شکایت آن را بهطور خودکار رفع نمیکند و رفع خودکاری وجود ندارد.
- مالکان و مدیران فضای کاری بلافاصله پس از اعمال توقف، ایمیلی دریافت میکنند.
بهترین روشها
- لیستهای خود را پاک کنید: آدرسهای ایمیل را قبل از ارسال با اعتبارسنجی ایمیل تأیید کنید. آدرسهایی که دائماً برمیگردند را حذف کنید.
- دستههای برگشتی را رصد کنید: افزایش ناگهانی برگشتیهای
content_rejectedممکن است نشاندهنده مشکل محتوا باشد، نه کیفیت لیست. - برگشتیهای دائمی را مجدداً امتحان نکنید: برگشتیهای دائمی، دائمی هستند. تلاش مجدد، سهمیه را هدر میدهد و به شهرت آسیب میرساند.
- الگوهای برگشتی موقت را زیر نظر بگیرید: برگشتیهای مکرر
mailbox_fullاز همان دامنه ممکن است نشاندهنده مشکل سطح ارائهدهنده باشد. - از داشبورد قابلیت تحویل استفاده کنید: نرخ برگشتی را بر اساس ارائهدهنده دنبال کنید تا مشکلات خاص دامنه را زودهنگام شناسایی کنید.
مراحل بعدی
- لیستهای حذف: مدیریت لیست حذف
- مرور کلی قابلیت تحویل: نظارت بر امتیاز فرستنده و روندها
- رویدادهای وبهوک: دریافت رویدادهای
message.bounced