ایران ناتیفیکیشن

ساخت قانون

قانون جدید برای نامه‌های ورودی.

POSThttps://api.irnoti.com/v1/email/rules
scope: email.manage

نمونه: هر نامه‌ای که فرستنده‌اش شامل billing@ است برچسب «مالی» بخورد و خوانده شود. فوروارد خودکار فقط به نشانی‌های معتبر انجام می‌شود.

پارامترها

ناممحلنوعتوضیح
name *بدنهstringنام قانون.
mailboxIdبدنهstring | nullفقط یک صندوق؛ null یعنی همه.
matchAllبدنهbooleantrue یعنی همهٔ شرط‌ها (و)، false یعنی هرکدام (یا). پیش‌فرض true.
conditions *بدنهobject[]{field, op, value?}؛ field: from، to، subject، body، hasAttachment، category؛ op: contains، equals، startsWith، endsWith، not_contains، is_true (حداکثر ۱۰).
actions *بدنهobject[]یکی از: {type:"move",folder}، {type:"label",labelId}، markRead، star، {type:"forward",to}، {type:"category",category}، stop (حداکثر ۱۰).
sortبدنهnumberترتیب اجرا؛ کوچک‌تر زودتر.
enabledبدنهbooleanفعال یا غیرفعال.

خطاهای خاص این endpoint

401unauthorizedکلید API نامعتبر یا منقضی است.
403insufficient_scopeکلید API دامنهٔ دسترسی لازم را ندارد.
400validation_errorورودی نامعتبر است؛ خطای هر فیلد در details آمده است.

اجرای زنده (محیط تست)

باز کردن در کنسول کامل ←

این endpoint در محیط تست پشتیبانی نمی‌شود؛ برای اجرا، کلید واقعی را در حالت «اجرای واقعی» وارد کنید.

curl -X POST 'https://api.irnoti.com/v1/email/rules' \
  -H "Authorization: Bearer $IRNOTI_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
  "name": "صورت‌حساب‌ها",
  "actions": [
    {
      "type": "label",
      "labelId": "5"
    },
    {
      "type": "markRead"
    }
  ],
  "matchAll": true,
  "conditions": [
    {
      "op": "contains",
      "field": "from",
      "value": "billing@"
    }
  ]
}'
پاسخ نمونه200 OK
{
  "id": "2",
  "name": "صورت‌حساب‌ها",
  "sort": 0,
  "actions": [
    {
      "type": "label",
      "labelId": "5"
    },
    {
      "type": "markRead"
    }
  ],
  "enabled": true,
  "matchAll": true,
  "mailboxId": null,
  "conditions": [
    {
      "op": "contains",
      "field": "from",
      "value": "billing@"
    }
  ]
}
ساخت قانون — مستندات API | ایران ناتیفیکیشن