AutoBiz Logo

בודק Webhook

בדוק את נקודות הקצה של ה-API שלך בקלות

בודק Webhook חינם - אוטומציה מתקדמת

בדוק ותקן webhooks עם שיטות HTTP שונות, כותרות מותאמות ופרמטרי שאילתה. אידיאלי ל-Make.com, n8n ו-Zapier.

מה זה Webhook? מדריך מהיר

Webhook הוא מנגנון אוטומציה שמאפשר לשירות אחד לשלוח נתונים אוטומטית לשירות אחר בזמן אמת. בניגוד ל-polling (בדיקה תקופתית), webhooks חוסכים משאבים ומאיצים תהליכים.

למד עוד על מדריך webhooks מלא באתר Mavash.

בקשת Webhook

הגדר את פרמטרי בקשת ה-webhook שלך

תגובה

שלח בקשה כדי לראות את התגובה כאן

אין נתוני תגובה זמינים עדיין

קבלת Webhooks

קבל כתובת ייחודית לקבלת webhooks וראה אותם בזמן אמת

כתובת ה-Webhook הייחודית שלך

Webhooks שהתקבלו (0)

עדיין לא התקבלו webhooks

שלח בקשה לכתובת הייחודית שלך למעלה

מה זה Webhook? המדריך המלא בעברית

Webhook הוא מנגנון תקשורת שמאפשר לשירות אחד לשלוח נתונים אוטומטית לשירות אחר — ברגע שמשהו קורה, בזמן אמת. בניגוד ל-API רגיל (שבו אתה שואל ומקבל תשובה), webhook "דוחף" מידע אליך בלי שתצטרך לבקש.

דוגמה מהחיים: כשלקוח משלם בחנות האונליין שלך, Stripe שולח webhook לאתר שלך עם פרטי התשלום. האתר שלך מקבל את ההודעה ומפעיל אוטומציה — שולח מייל אישור, מוסיף רשומה ב-CRM, ומעדכן מלאי — הכל בשנייה אחת.

למה Webhook עדיף על Polling?

Polling = לבדוק כל X שניות אם יש עדכון. כמו לרענן כל הזמן את תיבת המייל. Webhook = לקבל התראה ברגע שיש עדכון. כמו צלצול בטלפון. Webhooks חוסכים שרת, מהירים יותר, ומתאימים בדיוק לאוטומציות עם n8n, Make.com ו-Zapier.

איך להשתמש ב-Webhook עם n8n — מדריך צעד אחר צעד

n8n הוא כלי האוטומציה הפופולרי ביותר לטכנאים ועסקים שרוצים שליטה מלאה. כך מחברים webhook ב-n8n:

  1. צור Workflow חדש ב-n8n
  2. הוסף Webhook Node כ-trigger ראשון (הצומת הראשון)
  3. בחר Method — לרוב POST
  4. העתק את ה-URL שנוצר (נראה כך: https://your-n8n.com/webhook/abc123)
  5. הדבק ב-כלי הבדיקה שלנו למעלה — שלח בקשת POST עם JSON לפי הצורך
  6. ב-n8n לחץ "Listen for test event" — תראה את הנתונים מגיעים בזמן אמת

טיפ: ב-n8n יש שני סוגי URLs — Test URL ו-Production URL. בשלב הפיתוח השתמש ב-Test, ובפריסה עבור ל-Production.

Webhook עם Make.com (לשעבר Integromat)

Make.com הוא פלטפורמת האוטומציה הוויזואלית הנפוצה ביותר. הנה איך מגדירים webhook:

  1. פתח Scenario חדש ב-Make.com
  2. לחץ על הכפתור הראשון ובחר "Webhooks" → "Custom webhook"
  3. לחץ "Add" ותן שם ל-webhook
  4. העתק את ה-URL שנוצר
  5. הדבק בכלי הבדיקה — שלח בקשה ו-Make.com "ילמד" את מבנה הנתונים
  6. המשך לבנות את שאר ה-Scenario עם המודולים שרוצה

יתרון ב-Make.com: אחרי ששלחת בקשה אחת, Make.com מזהה אוטומטית את כל שדות ה-JSON ומאפשר לך למפות אותם בשאר הזרימה — בלי לכתוב שורת קוד.

Webhook עם Zapier

Zapier הוא הפופולרי ביותר בקרב משתמשים לא טכניים. שימוש ב-Webhooks ב-Zapier דורש תוכנית Pro ומעלה:

  1. צור Zap חדש ובחר "Webhooks by Zapier" כ-Trigger
  2. בחר "Catch Hook"
  3. העתק את ה-Webhook URL
  4. שלח בקשת בדיקה מהכלי שלנו
  5. Zapier יזהה את הנתונים — ותוכל להמשיך לבנות את ה-Zap

שגיאות Webhook נפוצות ואיך לפתור אותן

שגיאה 400 Bad Request

הנתונים שנשלחו לא תואמים למה שהשרת מצפה. בדוק שה-Content-Type header מוגדר כ-application/json ושמבנה ה-JSON תקין.

שגיאה 401 Unauthorized

חסר אימות. הוסף Authorization header עם ה-token הנכון. לדוגמה: Authorization: Bearer YOUR_TOKEN

שגיאה 408 / Timeout

השרת לא ענה תוך 30 שניות. בדוק שה-webhook URL נכון ושהשרת פעיל. ב-n8n — ודא שה-Workflow במצב Active.

שגיאה 500 Internal Server Error

בעיה בצד השרת. בדוק את הלוגים של ה-Workflow שלך ב-n8n או Make.com.

Webhook מגיע פעמיים (Duplicate)

בעיה נפוצה בפרודקשן. הפתרון: הוסף Idempotency Key — שדה ייחודי בכל בקשה (למשל event_id). שמור ב-DB את ה-IDs שעובדו כבר ובדוק לפני עיבוד.

אבטחת Webhooks — 5 כללי ברזל

  1. אמת חתימה (Signature Verification) — שירותים כמו Stripe ו-GitHub שולחים HMAC signature. תמיד אמת אותה לפני עיבוד.
  2. HTTPS בלבד — אף פעם אל תקבל webhooks על HTTP רגיל.
  3. ענה מהר (תוך 5 שניות) — החזר 200 OK מיד, ועבד את הנתונים ברקע. אם לוקח זמן — שים בqueue.
  4. לוגים על הכל — שמור כל webhook שהתקבל, גם אם לא עיבדת אותו. לאבחון בעיות.
  5. Rate Limiting — הגן על ה-endpoint מפני הצפה עם כלים כמו Cloudflare.

שאלות נפוצות על Webhooks

מה ההבדל בין Webhook ל-API?

API הוא תקשורת "pull" — אתה מבקש ומקבל. Webhook הוא תקשורת "push" — השירות שולח אליך כשמשהו קורה. Webhook יעיל יותר לאירועים כי לא צריך לסקור כל הזמן.

האם צריך שרת כדי לקבל Webhooks?

לא בהכרח. כלים כמו n8n, Make.com, ו-Zapier מספקים webhook URLs מוכנים ללא שרת. לפיתוח מקומי אפשר להשתמש ב-ngrok שיוצר URL זמני לסביבה המקומית שלך.

מה זה Webhook Testing ולמה צריך אותו?

לפני שמפרסמים אוטומציה, חשוב לבדוק שה-webhook מגיע נכון, עם המבנה הצפוי. הכלי שלנו מאפשר לשלח בקשות HTTP מותאמות אישית ולראות את התגובה — חוסך שעות debugging.

כמה עולה להשתמש בכלי הבדיקה?

הכלי חינמי לחלוטין. אין צורך בהרשמה.

צריך עזרה עם Webhooks ואוטומציה?

ב-Mavash אנחנו מתמחים בבניית אוטומציות עסקיות עם n8n, Make.com, ו-WhatsApp Business. אם אתה מתקשה לחבר webhook, לבנות זרימה, או לשלב מערכות — דבר איתנו.

💬 דבר עם ראובן ב-WhatsApp

מדריכים נוספים על אוטומציה עסקית | שירותי אוטומציה

בודק Webhook.mavash.net מול מתחרים – מה עדיף?

תכונה webhook.mavash.net ✅ webhook.site RequestBin
ממשק עברי ✅ כן ❌ לא ❌ לא
שליחה + קבלה ✅ שניהם ⚠️ קבלה בלבד ⚠️ קבלה בלבד
חינמי לחלוטין ✅ כן ⚠️ מוגבל ⚠️ מוגבל
תמיכה בn8n/Make ✅ מותאם ⚠️ כללי ⚠️ כללי
תמיכה בעברית ✅ WhatsApp/טלפון ❌ לא ❌ לא

אימות חתימת Webhook (Signature Verification) – קוד מוכן

שירותים כמו Stripe, GitHub, WooCommerce שולחים חתימה (HMAC-SHA256) עם כל webhook. חובה לאמת אותה – אחרת תקבל requests מזויפים!

Node.js:

const crypto = require('crypto');

function verifyWebhookSignature(payload, signature, secret) {
  const expected = crypto
    .createHmac('sha256', secret)
    .update(payload, 'utf8')
    .digest('hex');
  
  // השוואה בטוחה מפני timing attacks
  return crypto.timingSafeEqual(
    Buffer.from(`sha256=${expected}`),
    Buffer.from(signature)
  );
}

app.post('/webhook', express.raw({type: 'application/json'}), (req, res) => {
  const sig = req.headers['x-hub-signature-256'];
  
  if (!verifyWebhookSignature(req.body, sig, process.env.WEBHOOK_SECRET)) {
    return res.status(401).send('Unauthorized');
  }
  
  const event = JSON.parse(req.body);
  console.log('Event type:', event.type);
  res.json({ received: true });
});

Python (Flask):

import hmac, hashlib
from flask import Flask, request, abort

app = Flask(__name__)
WEBHOOK_SECRET = "your-secret-key"

def verify_signature(payload, signature):
    expected = hmac.new(
        WEBHOOK_SECRET.encode('utf-8'),
        payload,
        hashlib.sha256
    ).hexdigest()
    return hmac.compare_digest(f"sha256={expected}", signature)

@app.route('/webhook', methods=['POST'])
def webhook():
    signature = request.headers.get('X-Hub-Signature-256', '')
    
    if not verify_signature(request.get_data(), signature):
        abort(401)
    
    data = request.get_json()
    print(f"Received event: {data.get('type')}")
    return {'received': True}, 200

בודק Webhook.mavash.net מול מתחרים – מה עדיף?

תכונה webhook.mavash.net ✅ webhook.site RequestBin
ממשק עברי ✅ כן ❌ לא ❌ לא
שליחה + קבלה ✅ שניהם ⚠️ קבלה בלבד ⚠️ קבלה בלבד
חינמי לחלוטין ✅ כן ⚠️ מוגבל ⚠️ מוגבל
תמיכה בn8n/Make ✅ מותאם ⚠️ כללי ⚠️ כללי
תמיכה בעברית ✅ WhatsApp/טלפון ❌ לא ❌ לא

אימות חתימת Webhook (Signature Verification) – קוד מוכן

שירותים כמו Stripe, GitHub, WooCommerce שולחים חתימה (HMAC-SHA256) עם כל webhook. חובה לאמת אותה – אחרת תקבל requests מזויפים!

Node.js:

const crypto = require('crypto');

function verifyWebhookSignature(payload, signature, secret) {
  const expected = crypto
    .createHmac('sha256', secret)
    .update(payload, 'utf8')
    .digest('hex');
  
  // השוואה בטוחה מפני timing attacks
  return crypto.timingSafeEqual(
    Buffer.from(`sha256=${expected}`),
    Buffer.from(signature)
  );
}

app.post('/webhook', express.raw({type: 'application/json'}), (req, res) => {
  const sig = req.headers['x-hub-signature-256'];
  
  if (!verifyWebhookSignature(req.body, sig, process.env.WEBHOOK_SECRET)) {
    return res.status(401).send('Unauthorized');
  }
  
  const event = JSON.parse(req.body);
  console.log('Event type:', event.type);
  res.json({ received: true });
});

Python (Flask):

import hmac, hashlib
from flask import Flask, request, abort

app = Flask(__name__)
WEBHOOK_SECRET = "your-secret-key"

def verify_signature(payload, signature):
    expected = hmac.new(
        WEBHOOK_SECRET.encode('utf-8'),
        payload,
        hashlib.sha256
    ).hexdigest()
    return hmac.compare_digest(f"sha256={expected}", signature)

@app.route('/webhook', methods=['POST'])
def webhook():
    signature = request.headers.get('X-Hub-Signature-256', '')
    
    if not verify_signature(request.get_data(), signature):
        abort(401)
    
    data = request.get_json()
    print(f"Received event: {data.get('type')}")
    return {'received': True}, 200