تحديث Webhook
تعديل رابط Webhook موجود على النسخة: تغيير الأحداث المشترك فيها، تفعيل/تعطيل التوصيل، أو تحديث سياسة إعادة المحاولة. (للمشتركين فقط)
تسجيل الدخول مطلوب
سجل الدخول لاستبدال المعرفات (Instance ID) ورمز الوصول (Access Token) بمعلومات حسابك الحقيقي لاختبار ال API مباشرة.
تسجيل الدخوللا توجد معاملات استعلام مطلوبة
هذه النهاية الطرفية لا تتوقع بيانات في الرابط.
توصيات
عندما تحتاج لإيقاف رابط مؤقتاً، استخدم التعطيل بدلاً من الحذف.
بعد تغيير الأحداث، تحقق من أن نقطة النهاية تتعامل مع أشكال الـ Payload الجديدة بشكل صحيح.
أبقِ Webhook النظام مفعّلاً مع حدث 'message' على الأقل إذا كنت تستخدم صندوق الوارد في Wawp.
تحديث Webhook: /v2/webhook/update
تتيح لك نقطة النهاية /v2/webhook/update تعديل رابط Webhook موجود دون استبدال قائمة الروابط بالكامل. يمكنك تغيير فلتر الأحداث، تفعيل أو تعطيل التوصيل، أو تعديل سياسة إعادة المحاولة.
[!IMPORTANT] هذه الميزة متاحة حصرياً للمشتركين في الباقات المدفوعة (Unlimited). محاولة الوصول إليها من حساب مجاني ستُرجع خطأ
403 Forbiddenمع رمزsubscription_required.
🎯 متى تستخدم هذه النقطة؟
استخدم هذه النقطة عندما تريد:
- تفعيل أو تعطيل رابط Webhook مؤقتاً دون حذفه.
- إضافة أو إزالة أحداث معينة من اشتراك Webhook.
- تغيير سياسة إعادة المحاولة (delay و attempts) لرابط معين.
📦 جسم الطلب (Request Body)
url(مطلوب): رابط Webhook الموجود حالياً على النسخة بالضبط.events(اختياري): مصفوفة الأحداث الجديدة. إذا لم تُرسل، تبقى القائمة الحالية.is_active(اختياري):1لتفعيل الرابط أو0لتعطيله. إذا لم تُرسل، تبقى الحالة الحالية.retries(اختياري): كائن سياسة إعادة المحاولة الجديدة. إذا لم تُرسل، تبقى السياسة الحالية.hmac(اختياري): سر HMAC جديد. إذا لم تُرسل، يبقى السر الحالي.
🚀 الأحداث المتاحة
نفس قائمة الأحداث المستخدمة في لوحة تحكم Wawp:
| الفئة | الأحداث |
|---|---|
| الرسائل | message, message.any, message.ack, message.ack.group, message.waiting, message.revoked, message.edited, message.reaction, poll.vote, poll.vote.failed |
| المجموعات | group.join, group.leave, group.v2.join, group.v2.leave, group.v2.update, group.v2.participants |
| الجلسة والمكالمات | session.status, state.change, presence.update, chat.archive, call.received, call.accepted, call.rejected |
| التسميات | label.upsert, label.deleted, label.chat.added, label.chat.deleted |
| متقدم | event.response |
📡 عينات الطلبات
cURL
curl -X PATCH "https://api.wawp.net/v2/webhook/update" -H "Content-Type: application/json" -d '{
"access_token": "YOUR_ACCESS_TOKEN",
"instance_id": "Your_Instance_ID",
"url": "https://my-app.com/webhook",
"name": "Updated CRM",
"events": ["message", "message.ack", "group.v2.update"],
"is_active": 0
}'
JavaScript (Fetch)
const res = await fetch('https://api.wawp.net/v2/webhook/update', {
method: 'PATCH',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
access_token: 'YOUR_ACCESS_TOKEN',
instance_id: 'Your_Instance_ID',
url: 'https://my-app.com/webhook',
events: ['message', 'message.ack', 'group.v2.update'],
is_active: 0
})
});
const data = await res.json();
console.log(data);
🛡️ Webhook النظام
يمكنك تحديث Webhook النظام (https://app.wawp.net/api/webhook/{token}) لتغيير الأحداث التي تُزامن إلى صندوق الوارد في Wawp. لا يمكن تغيير الرابط نفسه عبر هذه النقطة.
البارامترات
قم بتهيئة المعاملات المطلوبة للتفاعل مع نقطة النهاية هذه. جميع وسائط الاستعلام والبيانات مدرجة أدناه مع تفاصيلها.
محتوى الطلب
يرسل كـ JSONstring | معرف النسخة الفريد مثال: | ||
string | مفتاح الوصول الخاص بك مثال: | ||
string | رابط Webhook الموجود حالياً على النسخة بالضبط مثال: | ||
string | — | اسم عرضي محدث للـ Webhook مثال: | |
array | — | قائمة الأحداث المحدثة للاشتراك مثال: | |
number | — | 1 لتفعيل الرابط، 0 لتعطيله مثال: | |
object | — | سياسة إعادة المحاولة المحدثة مثال: | |
string | — | مفتاح HMAC المحدث للتحقق من الطلبات مثال: |
أمثلة الكود
استخدم أمثلة الكود الجاهزة لدمج واجهة برمجة التطبيقات (API) في مشروعك بسرعة وكفاءة. اختر لغة البرمجة والمكتبة التي تفضلها.
الردود المتوقعة
استكشف كافة الردود والنتائج المحتملة من الخادم. قمنا بتوثيق كل كود حالة (Status Code) مع أمثلة للبيانات لتسهيل معالجة الأخطاء والنجاح.
Example
{
"status": "success",
"message": "Webhook updated successfully.",
"webhook": {
"url": "https://my-app.com/webhook",
"events": {
"0": "message",
"1": "message.ack",
"2": "group.v2.update"
},
"is_active": 0,
"enabled": false,
"retries": {
"delay": 5,
"attempts": 10
}
}
}Command Palette
Search for a command to run...