الجدولة والإلغاء
أرسِل لاحقًا، أو انقل الموعد، أو أوقف الإرسال.
ينفّذ أيًّا من الاستدعاءات الـ2 في هذه الصفحة على مساحة عملك، بمفتاحك أنت.
الجدولة
scheduledAt تأخذ لحظة بصيغة ISO-8601 أو مدة مثل PT2H، حتى سنة من الآن. والرسالة المجدولة تُجيب بـ 202 مع status: "scheduled" وتظل قابلة للإلغاء حتى لحظة إرسالها.
cancellableForSeconds تفعل الشيء نفسه لإرسال فوري: إنها نافذة التراجع عن الإرسال في المؤلّف، مكشوفة بدل تثبيتها على إعداد مستخدِم لا شأن له بتقرير سلوك واجهة API. والاثنتان متنافيتان: فالرسالة المجدولة قابلة للإلغاء أصلًا.
جدولة إرسال
بعد ساعتين. وتحمل الاستجابة المعرّف الذي ستحتاجه لنقل الموعد أو الإيقاف.
curl -X POST "$OE/emails" -H "$AUTH" -H "Content-Type: application/json" \ -d '{ "from": "[email protected]", "to": ["[email protected]"], "subject": "Your September invoice", "html": "<p>Invoice attached.</p>", "scheduledAt": "PT2H" }'HTTP/1.1 202 Accepted Location: /emails/msg_8cd0a316930b4482a8b8440b { "object": "email", "id": "msg_8cd0a316930b4482a8b8440b", "status": "scheduled", "scheduledAt": "2026-09-01T10:19:41.345Z", "cancellableUntil": "2026-09-01T10:19:41.345Z", "messageId": null, "transport": null, "sentAt": null }202 لا 200: فما زال شيء ينبغي أن يحدث لها. أما الإرسال الفوري فيُجيب بـ 200 مع status: "sent"، فيستطيع المستدعي التفريع على رمز الحالة وحده.
نقل الموعد
PATCH /emails/{id}. لا يتغيّر سوى scheduledAt، وذلك فقط ما دامت في الطابور أو مجدولة.
curl -X PATCH "$OE/emails/msg_8cd0a316930b4482a8b8440b" \ -H "$AUTH" -H "Content-Type: application/json" \ -d '{ "scheduledAt": "PT6H" }'{ "object": "email", "id": "msg_8cd0a316930b4482a8b8440b", "status": "scheduled", "scheduledAt": "2026-09-01T14:20:15.881Z" }إيقافها
POST /emails/{id}/cancel.
curl -X POST "$OE/emails/msg_8cd0a316930b4482a8b8440b/cancel" -H "$AUTH"{ "object": "email", "id": "msg_8cd0a316930b4482a8b8440b", "status": "cancelled" }الإلغاء مرتين ليس خطأً. فالاستدعاء الثاني يعيد الرسالة الملغاة نفسها، ومن ثم فإعادة المحاولة آمنة.
أما إلغاء رسالة ذهبت بالفعل فهو 409 email_not_cancellable. لا يمكن سحبها، وأي جواب آخر سيكون كذبًا.