انتقل إلى المحتوى
WbizTool

API v2 (تجريبي)

إلغاء الاشتراك

إلغاء الاشتراك يعني أن شخصًا لا يريد رسائل مساحة عملك. لا يُرسَل أي شيء أبدًا إلى رقم ألغى اشتراكه: تُرفض أي رسالة جديدة إليه، والرسائل التي وُضعت في قائمة الانتظار قبل ذلك تفشل بالخطأ Opted out بدلًا من أن تُرسَل. ويسري ذلك على كل طرق الإرسال: API ‏(v1 وv2)، ولوحة التحكم، والحملات، ورسائل القوالب، والتذكيرات، وGoogle Sheets، وShopify.

القائمة هي نفسها تبويب ألغوا الاشتراك في صفحة جهات الاتصال في لوحة التحكم.

العمليةنقطة النهايةالنطاق
إلغاء اشتراك رقمPOST /api/v2/opt-outscontacts
عرض من ألغوا الاشتراكGET /api/v2/opt-outscontacts
جلب إلغاء اشتراكGET /api/v2/opt-outs/{phone}contacts
إعادة اشتراك رقمDELETE /api/v2/opt-outs/{phone}contacts

تُضاف ردود STOP تلقائيًا#

عندما يرد شخص على أحد أرقام صندوق الوارد لديك برسالة ليست سوى كلمة إلغاء اشتراك، يُلغى اشتراكه تلقائيًا، مع source بقيمة reply ورسالته في keyword. والرسالة التي ليست سوى START (أو Subscribe) تعيد اشتراكه.

  • الكلمات، بأحرف كبيرة أو صغيرة، ومع علامات الترقيم أو بدونها: STOP، Stop all، Unsubscribe، Opt out، Baja، Parar، Sair، Stopp، Abmelden، Arrêt، Désabonner، Basta، Disiscrivi، Стоп، Отписаться، Berhenti، Dur، توقف، إلغاء الاشتراك، עצור، הסר.
  • لا تُحتسب إلا الرسالة التي هي الكلمة وحدها: «من فضلك توقف عن إرسال قائمة الأسعار إليّ» لا تلغي اشتراك أحد.
  • يجب أن يكون صندوق الوارد مفعّلًا على الرقم الذي يردون عليه، لأن أرقام صندوق الوارد وحدها تقرأ الرسائل الواردة. ولا تُحتسب الردود الأقدم من 7 أيام، مثل تلك التي تُقرأ عند إضافة رقم إلى صندوق الوارد.
  • لا يُرسَل إليهم أي شيء ردًا، ولا يجيب أي رد تلقائي على STOP.

إلغاء اشتراك رقم#

POSThttps://wbiztool.com/api/v2/opt-outs

النص (Body): JSON (application/json)

الجسم

phonestringمطلوب

الرقم بالصيغة الدولية مع + ‏(‎+919876543210). تُتجاهل المسافات والشرطات والأقواس. ويعمل أيضًا @username في Telegram.

notestringاختياري

السبب، لفريقك، بحد أقصى 200 حرف. يظهر في تبويب ألغوا الاشتراك.

curl -X POST https://wbiztool.com/api/v2/opt-outs \
  -H "Authorization: Bearer $WBIZTOOL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"phone": "+919876543210", "note": "Asked by email"}'

الاستجابة: 201 مع سجل إلغاء الاشتراك. والرقم الذي ألغى اشتراكه من قبل يُرجع 200 مع سجله الموجود، دون تغيير.

{
  "recipient": "+919876543210",
  "source": "api",
  "keyword": null,
  "note": "Asked by email",
  "created_at": "2026-10-26T09:12:03.120Z"
}

الأخطاء#

HTTPالرمزمتى
400validation_failed‏note ليس نصًا أو أطول من 200 حرف
422invalid_phone‏phone مفقود أو ليس رقم هاتف

عرض من ألغوا الاشتراك#

GEThttps://wbiztool.com/api/v2/opt-outs

كل من ألغى اشتراكه، الأحدث أولًا، في صفحات (limit من 1 إلى 100، والافتراضي 25، وcursor). أضف phone للبحث عن رقم واحد.

curl "https://wbiztool.com/api/v2/opt-outs?limit=100" \
  -H "Authorization: Bearer $WBIZTOOL_API_KEY"
{
  "data": [
    { "recipient": "+919876543210", "source": "reply", "keyword": "STOP", "note": null, "created_at": "2026-10-26T09:12:03.120Z" }
  ],
  "next_cursor": null
}

جلب إلغاء اشتراك#

GEThttps://wbiztool.com/api/v2/opt-outs/{phone}

الرقم في العنوان بالصيغة الدولية بدون + ‏(919876543210). يُرجع 404 opt_out_not_found عندما لا يكون الرقم قد ألغى اشتراكه، لذا فهو فحص سريع قبل الإرسال.

curl https://wbiztool.com/api/v2/opt-outs/919876543210 \
  -H "Authorization: Bearer $WBIZTOOL_API_KEY"

إعادة اشتراك رقم#

DELETEhttps://wbiztool.com/api/v2/opt-outs/{phone}

تُرسَل الرسائل إلى الرقم مجددًا من الآن فصاعدًا. والرسائل التي فشلت بالفعل بالخطأ Opted out تبقى فاشلة. لا تفعل ذلك إلا عندما يطلب الشخص رسائلك مجددًا.

curl -X DELETE https://wbiztool.com/api/v2/opt-outs/919876543210 \
  -H "Authorization: Bearer $WBIZTOOL_API_KEY"
{ "recipient": "+919876543210", "deleted": true }

الرقم الذي لم يُلغِ اشتراكه يُرجع 404 opt_out_not_found.

الإرسال إلى رقم ألغى اشتراكه#

  • ‏POST /messages يُرجع 422 recipient_opted_out، ولا يوضع شيء في قائمة الانتظار. وفي الإرسال الجماعي، تُرفض الدفعة كلها ويذكر field في الخطأ العنصر المعني.
  • الرسالة التي وُضعت في قائمة الانتظار قبل أن يلغي الشخص اشتراكه تفشل مع error بقيمة Opted out عندما يحين دورها، ويتلقى webhook الحدث message.failed.
  • يضع API v1 الرسالة في قائمة الانتظار ثم تفشل بالخطأ Opted out، كما سترى في حالة الرسالة.
  • يتخطى إعادة محاولة الرسائل الفاشلة في الحملات هذه الرسائل.

كائن Opt-out#

الحقلالنوعالوصف
recipientstring‏+ والرقم، أو @username في Telegram
sourcestring‏reply: ردّ بـ STOP على رقم صندوق وارد. dashboard: أُضيف من جهات الاتصال. import: من ملف CSV في جهات الاتصال. api: هذا API
keywordstring or nullالرد الذي ألغى اشتراكه، كما كتبه
notestring or nullملاحظة فريقك
created_atstringوقت إلغاء الاشتراك (ISO 8601، UTC)

صفحات ذات صلة#