نظرة عامة على قابلية التسليم
مراقبة سمعة المرسل ومعدلات التسليم وصحة DNS عبر جميع نطاقاتك
يتتبع MailLand سمعة المرسل الخاصة بك من خلال درجة مركبة واتجاهات التسليم والتحليل التفصيلي على مستوى مزودي الخدمة ومراقبة صحة DNS. استخدم واجهة برمجة تطبيقات قابلية التسليم لعرض هذه المقاييس في لوحات التحكم الخاصة بك أو لتشغيل تنبيهات عند انخفاض السمعة.
درجة المرسل
احصل على درجة سمعة من 0 إلى 100 مقسمة إلى أربعة مكونات مرجحة:
GET https://api.mail.land/v1/deliverability/scoreاستخدم Authorization: Bearer <token> أو X-API-Key: <api key> للمصادقة.
curl https://api.mail.land/v1/deliverability/score \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIs..."{
"totalScore": 87,
"label": "Good",
"hasSufficientData": true,
"totalSentLast30Days": 142500,
"dnsScore": {
"name": "DNS Authentication",
"score": 25,
"maxScore": 25,
"detail": "2/2 domains fully authenticated"
},
"bounceScore": {
"name": "Bounce Rate",
"score": 20,
"maxScore": 25,
"detail": "Bounce rate: 1.80%"
},
"complaintScore": {
"name": "Complaint Rate",
"score": 25,
"maxScore": 25,
"detail": "Complaint rate: 0.020%"
},
"engagementScore": {
"name": "Engagement",
"score": 25,
"maxScore": 25,
"detail": "Open rate: 32.0%"
},
"calculatedAt": "2026-02-17T12:00:00Z"
}يساهم كل مكون بما يصل إلى 25 نقطة. عند إرسال أقل من 100 رسالة خلال آخر 30 يومًا، تكون قيمة hasSufficientData هي false. مع ذلك يستمر حساب totalScore، لكنه غير ذي دلالة عند هذا الحجم: بدون أي إرسال، يحصل مكونا الارتداد والشكاوى كلاهما على الدرجة الكاملة (25)، لذا قد يظهر حساب جديد تمامًا حتى 75 نقطة قبل أن يرسل أي رسالة.
سجل الدرجات
تتبع تغيرات درجتك عبر الزمن:
GET https://api.mail.land/v1/deliverability/score/history?days=30curl "https://api.mail.land/v1/deliverability/score/history?days=30" \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIs..."| المعامل | النوع | الافتراضي | الوصف |
|---|---|---|---|
days | int | 30 | نافذة السجل (7–90) |
[
{
"date": "2026-02-17",
"totalScore": 87,
"label": "Good",
"dnsScore": 25,
"bounceScore": 22,
"complaintScore": 25,
"engagementScore": 15,
"bounceRate": 0.8,
"complaintRate": 0.02,
"openRate": 32.0,
"deliveryRate": 98.5,
"totalSent": 4750,
"hasSufficientData": true
}
]إحصائيات نظرة عامة على قابلية التسليم
احصل على مقاييس التسليم الإجمالية لفترة زمنية معينة:
GET https://api.mail.land/v1/deliverability/overview?days=30curl "https://api.mail.land/v1/deliverability/overview?days=30" \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIs..."| المعامل | النوع | الافتراضي | الوصف |
|---|---|---|---|
days | int | 30 | نافذة الفترة الزمنية (تُعادَل إلى 7 أو 30 أو 90) |
{
"totalSent": 142500,
"totalDelivered": 140325,
"totalBounced": 1125,
"totalComplained": 28,
"totalOpened": 44878,
"totalClicked": 5843,
"totalUnsubscribed": 312,
"deliveryRate": 98.47,
"bounceRate": 0.79,
"complaintRate": 0.02,
"openRate": 31.49,
"clickRate": 4.1,
"unsubscribeRate": 0.22
}الاتجاهات اليومية
احصل على مقاييس التسليم اليومية لتصور الاتجاهات:
GET https://api.mail.land/v1/deliverability/trends?days=30curl "https://api.mail.land/v1/deliverability/trends?days=30" \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIs..."[
{
"date": "2026-02-17T00:00:00Z",
"sent": 4750,
"delivered": 4680,
"bounced": 38,
"complained": 1,
"opened": 1498,
"deliveryRate": 98.53,
"bounceRate": 0.8,
"complaintRate": 0.02,
"openRate": 31.53
}
]التحليل التفصيلي حسب المزود
عرض مقاييس قابلية التسليم مجمعةً حسب مزود صندوق البريد للمستلم (Gmail وYahoo وOutlook وغيرها):
GET https://api.mail.land/v1/deliverability/providers?days=30&limit=10curl "https://api.mail.land/v1/deliverability/providers?days=30&limit=10" \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIs..."| المعامل | النوع | الافتراضي | الوصف |
|---|---|---|---|
days | int | 30 | نافذة الفترة الزمنية (تُعادَل إلى 7 أو 30 أو 90) |
limit | int | 10 | الحد الأقصى لعدد المزودين المُرجَعين (1–50) |
[
{
"domain": "gmail.com",
"sent": 58200,
"delivered": 57800,
"bounced": 210,
"opened": 19500,
"clicked": 2540,
"complained": 8,
"deliveryRate": 99.31,
"openRate": 33.51,
"bounceRate": 0.36
},
{
"domain": "outlook.com",
"sent": 31400,
"delivered": 30800,
"bounced": 350,
"opened": 8650,
"clicked": 1120,
"complained": 12,
"deliveryRate": 98.09,
"openRate": 27.55,
"bounceRate": 1.11
}
]التحليل التفصيلي للمرتدات
عرض المرتدات مصنفةً حسب النوع والسبب:
GET https://api.mail.land/v1/deliverability/bounce-breakdown?days=30curl "https://api.mail.land/v1/deliverability/bounce-breakdown?days=30" \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIs..."{
"hardBounces": 450,
"softBounces": 625,
"blockedBounces": 40,
"unknownBounces": 10,
"totalBounces": 1125,
"topReasons": [
{ "reason": "InvalidRecipient", "count": 380 },
{ "reason": "QuotaIssues", "count": 290 },
{ "reason": "SpamBlock", "count": 40 },
{ "reason": "BadDomain", "count": 70 },
{ "reason": "PolicyRelated", "count": 95 },
{ "reason": "TransientFailure", "count": 55 }
]
}يستخدم topReasons أسماء التصنيف الخاصة بـ MTA نفسه (راجع المرتدات للاطلاع على المفردات الكاملة)، وليس فئات snake_case المشتقة من الكلمات المفتاحية المستخدمة في نقاط نهاية المرتدات المعاملاتية.
راجع المرتدات للاطلاع على تفاصيل فئات المرتدات الكاملة وسلوك المعالجة.
حالة DNS
تحقق من حالة مصادقة DNS عبر جميع نطاقاتك:
GET https://api.mail.land/v1/deliverability/dns-statuscurl https://api.mail.land/v1/deliverability/dns-status \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIs..."[
{
"domainId": "k3v9x2m8q1w7z4",
"domainName": "yourdomain.com",
"spfStatus": "Valid",
"dkimStatus": "Valid",
"dmarcStatus": "Valid",
"lastCheckedAt": "2026-02-17T10:00:00Z",
"isFullyAuthenticated": true
},
{
"domainId": "n7p2q9x4m8w1z3",
"domainName": "notifications.yourdomain.com",
"spfStatus": "Valid",
"dkimStatus": "Valid",
"dmarcStatus": "Invalid",
"lastCheckedAt": "2026-02-17T10:00:00Z",
"isFullyAuthenticated": false
}
]يكون النطاق isFullyAuthenticated فقط عندما تكون قيم SPF وDKIM وDMARC جميعها Valid.
| الحالة | الوصف |
|---|---|
Pending | لم يتم فحص السجل بعد |
Valid | السجل مُهيَّأ بشكل صحيح |
Invalid | السجل مفقود أو مُهيَّأ بشكل خاطئ |
التوصيات
احصل على توصيات قابلة للتنفيذ لتحسين سمعة المرسل:
GET https://api.mail.land/v1/deliverability/recommendationscurl https://api.mail.land/v1/deliverability/recommendations \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIs..."[
{
"id": "dns_dmarc_missing_notifications.yourdomain.com",
"category": "dns",
"severity": "critical",
"titleKey": "deliverability.recommendations.dns.dmarcMissing.title",
"descriptionKey": "deliverability.recommendations.dns.dmarcMissing.description",
"actionUrl": "/domains",
"impact": 8,
"parameters": {
"domain": "notifications.yourdomain.com"
}
},
{
"id": "bounce_high",
"category": "bounce",
"severity": "warning",
"titleKey": "deliverability.recommendations.bounce.high.title",
"descriptionKey": "deliverability.recommendations.bounce.high.description",
"actionUrl": "/deliverability",
"impact": 15
}
]| الحقل | النوع | الوصف |
|---|---|---|
id | string | معرّف التوصية. ليس تعدادًا (enum) ثابتًا: تتضمن معرّفات DNS اسم النطاق (مثلاً dns_dmarc_missing_{domain})، لذا تنتج المشكلة نفسها على نطاقين معرّفين مختلفين. |
category | string | dns أو bounce أو complaint أو engagement أو warmup أو volume |
severity | string | critical أو warning أو info |
impact | int | التحسين المحتمل في الدرجة (0–100) عند المعالجة |
actionUrl | string | مسار الواجهة الأمامية لمعالجة المشكلة: واحد من /domains أو /deliverability أو /suppression-lists أو /analytics أو /dashboard |
parameters | object | قيم لاستيفاء i18n. تظهر فقط في توصيات DNS (بالشكل {"domain": "..."})؛ توصيات الارتداد والشكاوى والتفاعل والتسخين والحجم لا تحتوي على parameters. |
في كل مرة يُعاد حد أقصى 10 توصيات، مرتبة حسب الخطورة (الحرجة أولًا) ثم حسب الأثر تنازليًا.
التخزين المؤقت
يتم تخزين جميع نقاط نهاية قابلية التسليم مؤقتًا على جانب الخادم لتقليل حمل الاستعلام على ClickHouse:
| نقطة النهاية | مدة التخزين المؤقت |
|---|---|
/score | 15 دقيقة |
/overview | 5 دقائق |
/trends | 3 دقائق |
/providers | 5 دقائق |
/bounce-breakdown | 5 دقائق |
/score/history | غير مُخزَّن مؤقتًا |
/dns-status | غير مُخزَّن مؤقتًا (في الوقت الفعلي) |
/recommendations | 10 دقائق |
يُطبَّع معامل days إلى 7 أو 30 أو 90: القيم ≤ 7 تُقرَّب إلى 7، ومن 8 إلى 30 تُقرَّب إلى 30، وأي قيمة أعلى من 30 تُقرَّب إلى 90. قيمة مثل 14 تُقرَّب إلى 30، وليس 7.
الخطوات التالية
- المرتدات: فهم أنواع المرتدات والمعالجة التلقائية
- قوائم الحظر: إدارة قوائم الحظر
- إحماء IP: إحماء نطاقات الإرسال الجديدة
- إعداد DNS: تهيئة SPF وDKIM وDMARC