تخطَّ إلى المستندات
API

سرد النطاقات

كل نطاق في مساحة العمل، مع حالته في الاستقبال والإرسال والتتبع والملفات.

GETapi.openemail.uk/domains

ينفّذ الاستدعاء الحقيقي على مساحة عملك، بمفتاحك أنت.

GET /domains

كل نطاق في مساحة العمل، مع حالته في الاستقبال والإرسال والتتبع والملفات.

الاستقبال والإرسال منفصلان

كل نطاق يبلّغ عن الاستقبال والإرسال ككائني حالة مستقلين. فـ receiving.verified تعني أن سجل MX الخاص بالنطاق يجلب بريده إلى هنا وأن تحدي ملكيته منشور، أي أن النطاق يستطيع تلقّي التسليم. وهي لا تقول شيئًا عن الصادر.

sending هو النصف الصادر، ويُقرأ من فحص التوقيع المخزّن للنطاق لا من فحص جديد. وتكون sending.status واحدة من verified أو pending أو failed أو no_identity أو unknown، وsending.canSend تقول ما إذا كان إرسال من النطاق سيُقبل الآن، وsending.checkedAt تؤرّخ ذلك الحكم، وsending.error تحمل آخر إخفاق، وsending.note جملة تشرح الحالة. والحكم السلبي الأقدم من يوم يُعامَل كمجهول لا كرفض، ولذلك قد تكون canSend صحيحة بينما status هي pending.

tracking كائن ثالث، يخص نطاق التتبع المخصّص الاختياري للنطاق لا بريده. وتبقى tracking.status هي none حتى يُضبط واحد، في التطبيق أو عبر PATCH /domains/{id}، وصفحته تصف كل حقل.

storage كائن رابع بالحقول نفسها، يخص نطاق الملفات المخصّص الاختياري للنطاق: أي الاسم الذي تستخدمه روابط تنزيل الملفات المرسلة من النطاق. ويُضبط بالطريقة نفسها وفي الصفحة نفسها، وتبقى storage.status هي none حتى يُضبط واحد.

مثال

يتطلب domains:read.

curl
curl "$OE/domains" -H "$AUTH"
الاستجابة
{  "object": "list",  "data": [    {      "object": "domain",      "id": "b3e1f0a4-6c2d-4e8a-9f17-2d5c8a0b4e6f",      "domain": "acme.com",      "receiving": {        "verified": true,        "verifiedAt": "2026-08-14T10:02:00.000Z",        "catchAll": false,        "lastCheckedAt": "2026-08-29T06:00:00.000Z",        "error": null      },      "sending": {        "status": "verified",        "canSend": true,        "checkedAt": "2026-08-29T06:00:00.000Z",        "error": null,        "note": "Mail from this domain is signed and can be sent."      },      "tracking": {        "host": "links.acme.com",        "status": "active",        "active": true,        "target": "oelinks3f9a1c7e2b8d4a60.edge.openemail.uk",        "record": { "type": "CNAME", "name": "links.acme.com", "value": "oelinks3f9a1c7e2b8d4a60.edge.openemail.uk" },        "checkedAt": "2026-08-29T06:10:00.000Z",        "verifiedAt": "2026-08-29T06:10:00.000Z",        "error": null      },      "storage": {        "host": "files.acme.com",        "status": "active",        "active": true,        "target": "oefiles81c40d6b2f7e9a35.edge.openemail.uk",        "record": { "type": "CNAME", "name": "files.acme.com", "value": "oefiles81c40d6b2f7e9a35.edge.openemail.uk" },        "checkedAt": "2026-08-29T06:10:00.000Z",        "verifiedAt": "2026-08-29T06:10:00.000Z",        "error": null      },      "createdAt": "2026-08-14T09:55:11.000Z"    }  ]}

قيمة lastCheckedAt الفارغة تعني أن DNS لم يُفحص قط: "لم ننظر بعد"، لا "أخفق". والقراءتان مختلفتان تمامًا بعد ثلاثين ثانية من إضافة نطاق.