تدوير مفاتيح DKIM
مفاتيح توقيع DKIM لنطاق الإرسال الخاص بك
لكل نطاق مفتاح DKIM واحد (المحدد mlnd، RSA-2048)، يُنشأ تلقائياً عند إضافة النطاق.
تدوير مفتاح DKIM أو إلغاء تفعيله غير متاح مؤقتاً: يُعيد كل من POST /v1/domains/{id}/dkim/{keyId}/rotate وDELETE /v1/domains/{id}/dkim/{keyId} الحالة 409 CONFLICT. مفتاحك الحالي يبقى دون تغيير في الحالتين. إذا اشتبهت في اختراق مفتاح، تواصل مع الدعم: هذا سير عمل حوادث معتمد من المالك، وليس نقطة نهاية للخدمة الذاتية.
عرض مفاتيح DKIM
اعرض مفتاح (مفاتيح) DKIM لنطاق:
GET https://api.mail.land/v1/domains/{id}/dkimقم بالمصادقة باستخدام Authorization: Bearer <token> أو X-API-Key: <api key>.
curl https://api.mail.land/v1/domains/k3v9x2m8q1w7z4/dkim \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIs..."[
{
"id": "d7f2k9m1x3w8z",
"domainId": "k3v9x2m8q1w7z4",
"domain": "yourdomain.com",
"selector": "mlnd",
"publicKey": "MIIBIjANBgkqhkiG9w0BAQE...",
"keyType": "rsa",
"isActive": true,
"createdAt": "2026-02-17T10:00:00Z",
"rotatedAt": null,
"dnsRecordValue": "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQE...",
"dnsRecordHost": "mlnd._domainkey.yourdomain.com"
}
]| الحقل | النوع | الوصف |
|---|---|---|
id | string | معرّف المفتاح العام |
domainId | string | معرّف النطاق العام المرتبط |
domain | string | اسم النطاق |
selector | string | محدد DKIM: دائماً mlnd حالياً |
publicKey | string | المفتاح العام (Base64) |
keyType | enum | rsa |
isActive | boolean | هل هذا المفتاح نشط حالياً |
createdAt | datetime | وقت إنشاء المفتاح |
rotatedAt | datetime | وقت آخر تدوير للمفتاح (حالياً دائماً null، التدوير غير متاح) |
dnsRecordValue | string | قيمة سجل TXT الكاملة لـ DNS |
dnsRecordHost | string | اسم مضيف DNS الذي يجب إضافة السجل إليه: {selector}._domainkey.{domain} |
إنشاء مفتاح DKIM
POST https://api.mail.land/v1/domains/{id}/dkim/generateهذا ينجح فقط لنطاق لا يملك أي مفتاح DKIM على الإطلاق. كل نطاق يحصل على مفتاح تلقائياً عند إضافته، لذا استدعاء هذا على نطاق عادي يُعيد 409 CONFLICT. يوجد لاستعادة نطاق لا يملك أي مفتاح بطريقة ما.
عند النجاح (201 Created)، شكل الاستجابة هو:
{
"key": {
"id": "d7f2k9m1x3w8z",
"domainId": "k3v9x2m8q1w7z4",
"domain": "yourdomain.com",
"selector": "mlnd",
"publicKey": "MIIBIjANBgkqhkiG9w0BAQE...",
"keyType": "rsa",
"isActive": true,
"createdAt": "2026-02-17T10:00:00Z",
"rotatedAt": null,
"dnsRecordValue": "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQE...",
"dnsRecordHost": "mlnd._domainkey.yourdomain.com"
},
"dnsInstructions": {
"recordType": "TXT",
"hostName": "mlnd._domainkey.yourdomain.com",
"value": "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQE...",
"instructions": "Add a TXT record with hostname 'mlnd._domainkey' and the value shown above. DNS propagation may take up to 48 hours."
},
"message": "DKIM key generated successfully. Please add the DNS record and verify your domain."
}تدوير أو إلغاء تفعيل مفتاح
يُعيد كل من POST /v1/domains/{id}/dkim/{keyId}/rotate وDELETE /v1/domains/{id}/dkim/{keyId} الحالة 409 CONFLICT حالياً (احتواء UNG-127، ريثما يتوفر تبديل موقّع مُتحقَّق منه عبر DNS). لا يغيّر أي من الاستدعاءين مفتاحك، ولا حالة DNS، ولا Redis/التخزين المؤقت: لا شيء يُلغى ولا شيء يوقف الإرسال.
إذا اشتبهت في اختراق مفتاح DKIM، تواصل مع الدعم. هذا سير عمل حوادث معتمد من المالك، وليس متاحاً عبر هذه النقاط.
استجابات الأخطاء
| الحالة | الرمز | الوصف |
|---|---|---|
409 | CONFLICT | التدوير/الإلغاء: غير متاح مؤقتاً. الإنشاء: النطاق يملك مفتاحاً بالفعل. |
404 | RESOURCE_NOT_FOUND | "DKIM key not found": معرّف المفتاح غير موجود لهذا النطاق |
404 | DOMAIN_NOT_FOUND | النطاق غير موجود |