Ugrás a dokumentációra
API

Szabály tesztelése

A legutóbbi üzeneteid közül melyiket fogta volna meg ez a szabály. Semmit nem változtat.

POSTapi.openemail.uk/rules/{id}/test

A valódi hívást futtatja le a munkaterületén, a saját kulcsával.

POST /rules/{id}/test

A legutóbbi üzeneteid közül melyiket fogta volna meg ez a szabály. Semmit nem változtat.

Példa

rules:read szükséges. A próbafuttatás olvas egy postafiókot és semmit nem ír, így nem rules:write művelet. A days alapértelmezése 30, maximuma 365, a limit alapértelmezése 50, maximuma 200, a threadIds pedig időablak helyett megnevezett szálakat tesztel.

curl
curl -X POST "$OE/rules/rul_7f3a1c94e05d3862c1f0a44b/test" -H "$AUTH" \  -H "Content-Type: application/json" \  -d '{ "days": 30, "limit": 50 }'
Válasz
{  "object": "rule_test",  "ruleId": "rul_7f3a1c94e05d3862c1f0a44b",  "scanned": 50,  "matched": 3,  "wouldApply": ["label:USER_RECEIPTS", "archive"],  "messages": [    {      "threadId": "thr_5d31c2a8…",      "from": "[email protected]",      "subject": "Your receipt",      "receivedAt": "2026-08-28T10:00:00.000Z"    }  ],  "warnings": [{ "code": "forward_unverified", "value": "[email protected]" }]}

Ugyanaz a motor válaszol erre, amely a kézbesítési útvonalon fut. Egyetlen modul, szándékosan tiszta (nincs adatbázis, nincs hálózat), így a beállítások képernyője, a próbafuttatás és az SMTP kezelő nem lehet eltérő véleményen arról, hogy egy szabály egyezik-e. Egy kétszer megírt előnézet két válasz egy kérdésre, és amelyiket egy embernek megmutatják, az a hibás.

Felépítésénél fogva korlátos: legfeljebb 200 üzenet, legfeljebb egy évre visszamenőleg. Egy Workerben fut, falióra-alapú időkerettel, és egy korlátlan vizsgálat olyan kérés, amely félúton elhal, eredmény nélkül.

Egy kikapcsolt szabály is tesztelhető. Épp ez a lényeg: megírod, teszteled, majd bekapcsolod.

A warnings az a hely, ahol egy értelmezhető, de nem megfelelően viselkedő szabály megjelenik. Egy senki által meg nem erősített továbbítási cím az, amellyel találkozni fogsz. Egy figyelmeztetés soha nem állítja le a tesztet: a próbafuttatás lényege, hogy egy menetben jelentsen mindent, amit talált, ne pedig az első dolognál bukjon el.

Nincs „futtasd le a postafiókomon”

Szándékosan nincs POST /rules/{id}/run, és nem is lesz. Egy szabály visszamenőleges alkalmazása egy teljes postafiókra korlátlan, visszafordíthatatlan és nem vonható vissza (egy trash művelet tízévnyi levélre egy hívás, második esély nélkül), és az írási útvonal, amelyet használnia kellene, beolvaszt a tárolt szálba, ami a rendrakás mellékhatásaként minden érintett üzenetet a beérkezett levelek tetejére tolna.

Ez a végpont a kérés őszinte fele: arra felel, hogy „mit tett volna ez”, ami a valódi kérdés, és utána a ténylegesen szándékolt üzeneteket a PATCH /threads/{id} hívással sorolod be.