فهرست اجراهای قانون
آنچه قانونهای شما واقعاً کردهاند، به ازای هر قانون برای هر پیام یک سطر.
فراخوانی واقعی را با کلید خودتان روی فضای کاری شما اجرا میکند.
GET /rules/runs
آنچه قانونهای شما واقعاً کردهاند، به ازای هر قانون برای هر پیام یک سطر.
نمونه
نیازمند rules:read است. جدیدترین اول. ruleId به یک قانون محدود میکند و threadId به «چرا این پیام اینجا نشست» پاسخ میدهد.
curl "$OE/rules/runs?threadId=thr_5d31c2a8…&limit=25" -H "$AUTH"{ "object": "list", "data": [ { "object": "rule_run", "id": "rrun_9c1f0a4b7e05d3862c1f0a44", "ruleId": "rul_7f3a1c94e05d3862c1f0a44b", "ruleName": "Receipts to their own label", "threadId": "thr_5d31c2a8…", "messageId": "msg_c5f21cc6…", "sender": "[email protected]", "subject": "Your receipt", "actions": ["label", "archive"], "failures": [], "createdAt": "2026-08-29T11:04:12.000Z" } ], "hasMore": false, "nextCursor": null}actions آنچه را اعمال شده نگه میدارد و failures آنچه را رد شده، به صورت type: reason. اینها دو فهرست جدا هستند نه یک فهرست حاشیهدار، چون «قانون آن را بایگانی کرد» و «قانون کوشید آن را بایگانی کند» دو واقعیت متفاوتاند، و لاگی که آنها را در هم بیامیزد به هیچکدام از دو پرسش پاسخ نمیدهد. اینها نوعهای خام اقداماند. مقدارها روی خود قانون زندگی میکنند، و wouldApply در یک آزمون تنها جایی است که آنها نوشته میشوند.
پاسخ خودکار سرکوبشده اینجا پدیدار میشود، به صورت reply: auto-reply suppressed because the message carries List-Id، و تنها جایی همین است. هیچجای دیگری پاسخی را که عمداً نرفته نشان نمیدهد، و وگرنه «چرا پاسخ خودکار من به آن جواب نداد» بیپاسخ میماند.
ruleName روی خود سطر ذخیره میشود نه اینکه هنگام خواندن join شود، پس لاگ پس از تغییر نام یا حذف یک قانون هم درست خوانده میشود. سطری که قانونی را نام ببرد که دیگر وجود ندارد حالت عادی است، نه یک ارجاع آویزان.
محدودیت یک پاسخ خودکار به ازای هر فرستنده در هر روز با یک سطر ادعا در همان جدول اعمال میشود، که این لاگ برنمیگرداند: به همین دلیل است که پیام دوم «بیرون از دفترم» به همان فرستنده درون یک روز هرگز عمل نمیکند.