شروع سریع
ارسال اولین ایمیل خود با Mail.Land در کمتر از 5 دقیقه
پیشنیازها
- یک حساب MailLand (ثبتنام)
- یک دامنه ارسال تایید شده
- یک کلید API (اعتبارنامه)
اعتبارنامههای Sandbox نیز به یک دامنهٔ ارسال ثبتشده و تأییدشده نیاز دارند. آنها هرگز به گیرندگان عادی تحویل نمیدهند: ارسال Sandbox پذیرفته و ثبت میشود، یا فقط به نشانیهای فهرست مجاز Sandbox شما (تنظیمات ← Sandbox Allow List) تحویل میشود. فضاهای کاری جدید تا زمان تأیید هویت به همان فهرست مجاز محدودند.
ارسال اولین ایمیل
دریافت کلید API
پس از ایجاد حساب و فضای کاری، از نوار کناری اعتبارنامهها (Credentials) را باز کنید و یک اعتبارنامه جدید ایجاد کنید:
- محصول: Sending
- حالت: Production (یا Sandbox برای تست)
- جریان: Transactional
- کانال: API
کلید API را کپی کنید: فقط یک بار نمایش داده میشود. کلید به این شکل است:
ml_pet_Ab3Kx9mN2pQ7rT4wL8yD...پیشوند نوع اعتبارنامه را مشخص میکند:
ml_: تمام کلیدهای MailLand با این شروع میشوندpیاs: حالت Production یا Sandboxe،iیاv، محصول Sending/Email، Inbound یا Validation (کلیدهای Sending یک حرف جریان هم دارند:etبرای تراکنشی،emبرای بازاریابی، مثلاًml_pet_...)
ارسال یک ایمیل
یک درخواست POST به endpoint ارسال با جزئیات ایمیل خود بفرستید:
curl -X POST https://api.mail.land/v1/transactional/send \
-H "X-API-Key: ml_pet_Ab3Kx9mN2pQ7rT4wL8yD..." \
-H "Content-Type: application/json" \
-d '{
"from": {
"email": "[email protected]",
"name": "Your App"
},
"to": [
{
"email": "[email protected]",
"name": "Jane Doe"
}
],
"subject": "Welcome to our platform",
"htmlContent": "<h1>Welcome!</h1><p>Thanks for signing up.</p>",
"textContent": "Welcome! Thanks for signing up."
}'بررسی پاسخ
یک پاسخ موفق 202 Accepted با جزئیات ایمیل در صف قرار گرفته برمیگرداند:
{
"success": true,
"jobId": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"messageIds": ["t_a1b2c3d4e5f6..."],
"acceptedRecipients": ["[email protected]"],
"rejectedRecipients": [],
"queuedAt": "2026-02-17T10:30:00Z",
"isSandboxed": false
}فیلدهای کلیدی:
- jobId: شناسه یکتا برای ردیابی این عملیات ارسال
- messageIds: شناسههای پیام فردی (با پیشوند
t_برای تراکنشی،m_برای بازاریابی) - acceptedRecipients: ایمیلهایی که برای تحویل پذیرفته شدند
- rejectedRecipients: ایمیلهایی که رد شدند (با ذکر دلایل)
- isSandboxed:
trueاگر درخواست با اعتبارنامهٔ Sandbox ارسال شده باشد: ایمیل ثبت شده اما ارسال نشده، یا فقط به گیرندگان فهرست مجاز ارسال شده است
خطاهای رایج
| وضعیت | کد خطا | معنا |
|---|---|---|
401 | UNAUTHORIZED | X-API-Key وجود ندارد، نامعتبر است، منقضی شده یا لغو شده است |
422 | DOMAIN_NOT_VERIFIED | دامنه فرستنده تایید نشده است |
429 | RATE_LIMIT_EXCEEDED | درخواستهای بیش از حد: هدر Retry-After را بررسی کنید |
429 | QUOTA_EXCEEDED | سهمیه ارسال ماهانه تمام شده است |
429 | SENDING_BLOCKED | سطح تأیید حساب شما هنوز اجازهٔ این ارسال را نمیدهد: تأیید حساب را کامل کنید (ارسال بازاریابی نیاز به تأیید کسبوکار دارد) |
403 | SENDING_BLOCKED | ارسال برای این حساب بهطور کامل مسدود شده است. تلاش دوباره کمکی نمیکند؛ با پشتیبانی تماس بگیرید |
تمام خطاها یک بدنهٔ JSON با فیلدهای code و message برمیگردانند:
{
"code": "DOMAIN_NOT_VERIFIED",
"message": "Domain is not verified",
"timestamp": "2026-02-17T10:30:00Z",
"traceId": "00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01"
}ادامه مسیر
- مرجع REST API: مستندات کامل API با تمام فیلدها و گزینهها
- SMTP Relay: ارسال ایمیل از طریق SMTP به جای REST
- راهاندازی دامنه: اضافه کردن و تایید دامنه ارسال
- کلیدهای API: پیکربندی اعتبارنامهها با محدودیتهای نرخ و محدودیتهای IP