تغییر ترتیب قانونها
کل ترتیب در یک فراخوانی، چون فهرست قانونها تنها در ترتیب معنا دارد.
فراخوانی واقعی را با کلید خودتان روی فضای کاری شما اجرا میکند.
POST /rules/reorder
کل ترتیب در یک فراخوانی، چون فهرست قانونها تنها در ترتیب معنا دارد.
نمونه
نیازمند rules:write است. بدنه هر قانونِ روی connection را نام میبرد، به همان ترتیبی که میخواهید ارزیابی شوند. فهرست کامل را در ترتیب تازهاش برمیگرداند.
curl -X POST "$OE/rules/reorder" -H "$AUTH" -H "Content-Type: application/json" \ -d '{ "ruleIds": ["rul_7f3a1c94…", "rul_2b81de07…", "rul_c40a95f2…"] }'{ "object": "list", "data": [ { "object": "rule", "id": "rul_7f3a1c94…", "name": "Receipts to their own label", "position": 0 }, { "object": "rule", "id": "rul_2b81de07…", "name": "Newsletters after hours", "position": 1 }, { "object": "rule", "id": "rul_c40a95f2…", "name": "Anything from the old domain", "position": 2 } ], "hasMore": false, "nextCursor": null}فهرست ناقص incomplete_order است، یک 422، و هیچچیز جابهجا نمیشود. پذیرفتنش یعنی از خودمان برای قانونهایی که جا انداختهاید جایگاه بسازیم، و اینکه آنها نسبت به قانونهایی که نام بردهاید کجا بنشینند حدس ما دربارهٔ صندوق پستی شماست نه دستور شما.
بنا به ساختار idempotent است: بدنه کل ترتیب را نام میبرد، پس فرستادن دوبارهاش به همان جا میرسد. تلاش دوباره بیخطر است و اجرا از اسکریپتی که ترتیب کنونی را نمیداند هم بیخطر است.
همهٔ جایگاهها در یک دستور و درون یک تراکنش بازنویسی میشوند، پس لحظهای نیست که دو قانون یک جایگاه داشته باشند یا فهرست نیمهشمارهگذاری شده باشد.
ترتیب تزئینی نیست. تعیین میکند کدامیک از دو قانون پوشهای را نام میبرد که پیام در آن مینشیند، و اینکه قانونِ stopProcessing کجا فهرست را قطع میکند.