MailLandDocs
ارسال ایمیل

SMTP Relay

ارسال ایمیل از طریق SMTP Relay سرویس Mail.Land با استفاده از پروتکل‌های استاندارد SMTP

MailLand یک SMTP Relay برای برنامه‌هایی که ایمیل را از طریق SMTP ارسال می‌کنند فراهم کرده است. از همان اعتبارنامه‌های API برای احراز هویت و ارسال از طریق پورت‌های استاندارد SMTP استفاده کنید.

تنظیمات اتصال

تنظیممقدار
Hostsmtp.mail.land
پورت 587ارسال با STARTTLS (اجباری)
احراز هویتالزامی
نام کاربریهر مقداری (مثلاً ایمیل شما یا apikey)
رمز عبورکلید API سرویس MailLand شما
حداکثر حجم پیام۱۵ مگابایت (۱۵٬۷۲۸٬۶۴۰ بایت)؛ پیام‌های بزرگ‌تر با خطای 552 رد می‌شوند

در محیط تولید، فقط پورت 587 (STARTTLS) برای relay منتشر شده است. پورت 465 (TLS ضمنی) منتشر نشده و پورت 25 به دروازهٔ ورودی جداگانه هدایت می‌شود، نه به relay.

احراز هویت

احراز هویت SMTP از کلید API سرویس MailLand شما به عنوان رمز عبور استفاده می‌کند. نام کاربری می‌تواند هر مقداری باشد: MailLand آن را نادیده می‌گیرد و صرفا بر اساس کلید API احراز هویت انجام می‌دهد.

اعتبارنامه شما باید کانال Smtp فعال داشته باشد. اگر اعتبارنامه شما فقط Api فعال دارد، احراز هویت SMTP رد خواهد شد.

Username: apikey
Password: ml_pet_Ab3Kx9mN2pQ7rT4wL8yD...

ایمیل و رمز عبور حساب شما برای SMTP پذیرفته نمی‌شود. در پنل یک اعتبارنامهٔ SMTP بسازید و آن را به‌عنوان رمز عبور به کار ببرید.

نمونه‌های پیکربندی

nodemailer-config.js
const nodemailer = require('nodemailer');

const transporter = nodemailer.createTransport({
  host: 'smtp.mail.land',
  port: 587,
  secure: false, // STARTTLS
  auth: {
    user: 'apikey',
    pass: 'ml_pet_Ab3Kx9mN2pQ7rT4wL8yD...',
  },
});

await transporter.sendMail({
  from: '"Your App" <[email protected]>',
  to: '[email protected]',
  subject: 'Hello from MailLand',
  html: '<h1>Hello!</h1><p>Sent via SMTP relay.</p>',
  text: 'Hello! Sent via SMTP relay.',
});

اعمال قوانین اعتبارنامه

همان قوانین اعتبارنامه REST API برای SMTP نیز اعمال می‌شود:

  • جریان: اعتبارنامه‌های تراکنشی حداکثر ۵ گیرنده در هر پیام دارند؛ اعتبارنامه‌های بازاریابی تا ۱٬۰۰۰ گیرنده در هر پیام مجازند
  • محدوده دامنه: اگر اعتبارنامه به دامنه‌های خاصی محدود شده باشد، دامنه فرستنده باید در لیست مجاز باشد
  • لیست سفید IP: اگر اعتبارنامه محدودیت IP داشته باشد، IP متصل شونده باید مجاز باشد
  • محدودیت نرخ: محدودیت‌های اعتبارنامه به ازای هر دقیقه (در صورت تنظیم)، هر ساعت (پیش‌فرض ۱٬۰۰۰) و هر روز (پیش‌فرض ۱۰٬۰۰۰) پیش از محدودیت‌های پلن فضای کاری اعمال می‌شوند. عبور از هرکدام، خطای موقتی 421 برمی‌گرداند. محدودیت به ازای هر ثانیه امروز اعمال نمی‌شود
  • حالت: اعتبارنامه‌های Sandbox ایمیل را می‌پذیرند و ثبت می‌کنند اما هرگز تحویل نمی‌دهند، صرف‌نظر از sandboxBehavior

محدودیت اتصال IP

مستقل از محدودیت‌های نرخ اعتبارنامه، اتصالات SMTP بر اساس آدرس IP محدود می‌شوند:

محدودیتمقدار پیش‌فرض
اتصال در دقیقه30
اتصال در ساعت300

این محدودیت‌ها قبل از احراز هویت اعمال می‌شوند. در صورت تجاوز، اتصال با پیامی مبنی بر تلاش مجدد بعدا رد می‌شود.

کدهای پاسخ SMTP

کدمعنی
250پیام برای تحویل پذیرفته شد
421موقتی: محدودیت نرخ اعتبارنامه یا فضای کاری، سهمیه یا تنظیم سرعت گرم‌سازی. بعداً دوباره تلاش کنید؛ این یک رد دائمی نیست
451موقتی: ارسال به‌خاطر افزایش ناگهانی حجم، توقف بازاریابی یا توقف تحویل‌پذیری متوقف شده است. پیام را در صف نگه دارید و دوباره تلاش کنید؛ پس از رفع توقف پذیرفته می‌شود
550دائمی: دامنه تأیید نشده، فرستنده/گیرنده مسدود شده، تأیید لازم است، یا محدودیت گیرندگان بازاریابی (۱٬۰۰۰ در هر پیام) رد شده، یا همهٔ گیرندگان در فهرست سرکوب هستند (5.7.1)
552دائمی: پیام از حداکثر حجم (۱۵ مگابایت) بیشتر است، مجموع پیوست‌ها پس از رمزگشایی از ۱۰ مگابایت بیشتر است، یا پیام نهایی از بودجهٔ حجم پیام پلتفرم فراتر می‌رود (5.3.4)

مدیریت خطا

هنگامی که پیامی رد می‌شود، پاسخ SMTP شامل دلیلی قابل‌فهم است. یک رد موقتی (قابل تلاش مجدد) این‌گونه است:

421 Try again later: rate limit exceeded
421 Try again later: monthly quota exceeded
421 Try again later: credential rate limit exceeded
451 4.7.0 Marketing emails are paused for this account

و یک رد دائمی این‌گونه است:

550 5.7.1 Domain is not verified. Add DNS records at https://app.mail.land

بر خلاف REST API (که 202 Accepted برمی‌گرداند و به صورت غیرهمزمان پردازش می‌کند)، SMTP می‌تواند پیام‌ها را به صورت همزمان در سطح اتصال برای نقض‌های دامنه، محدودیت نرخ و سهمیه رد کند.

مقایسه SMTP و REST API

ویژگیREST APISMTP Relay
پروتکلHTTPSSMTP
احراز هویتهدر X-API-KeySMTP AUTH (کلید به عنوان رمز عبور)
پاسخغیرهمزمان (202 Accepted)همزمان (250 OK یا خطا)
پیوست‌هاBase64 در JSONMIME استاندارد
قالب‌هافیلد templateIdپشتیبانی نمی‌شود (از MIME استفاده کنید)
ارسال زمان‌بندی شدهفیلد scheduledAtپشتیبانی نمی‌شود
ردیابیفیلد trackingتنظیم شده بر اساس دامنه
متغیرهای هر گیرندهto[].variablesپشتیبانی نمی‌شود
ارسال دسته‌ایendpoint send-batchپشتیبانی نمی‌شود

مراحل بعدی

در این صفحه