למפתחים
API ציבורי לכל עסק, ואירועים יוצאים חתומים. אותם מנעולים ואותן מגבלות שחלים על הממשק חלים גם כאן.
API ציבורי
מפתח נוצר בהגדרות העסק, נושא קידומת מזהה ומוגבל להיקפים שבחרתם. בקשה אחת — ו-WeHub בוחרת ערוץ ומופע לפי הנמען, שולחת טקסט אם חלון-המענה פתוח ותבנית מאושרת אם לא, ועוברת את אותם שערים כמו שליחה מהתיבה.
- שליחה חכמה: channel: auto בוחר וואטסאפ, מסנג׳ר, אינסטגרם או אימייל לפי הנמען והחלון הפתוח.
- תבניות מטא עם פרמטרים לפי שם או מיקום, מדיה מכתובת, ומפתח אידמפוטנטיות נגד שליחה כפולה.
- ניהול תבניות מה-API: יצירה עם כותרת, משתנים וכפתורים, בדיקת סטטוס האישור, מחיקה — ואירוע יוצא כשמטא מאשרת או דוחה.
- אנשי קשר ושיחות: יצירה, קריאה, עדכון, חיפוש לפי זהות — וסטטוס-מסירה לכל הודעה.
- מפרט OpenAPI ומדריך מלא, פתוחים לכולם. בונה-הבקשות והמפתחות בתוך החשבון.
curl https://api.wehub.co.il/api/v1/public/messages \
-H "Authorization: Bearer wh_live_…" \
-H "Idempotency-Key: order-12345-shipped" \
-H "Content-Type: application/json" \
-d '{
"to": "+972521234567",
"channel": "auto",
"text": "ההזמנה יצאה למשלוח",
"template": {
"name": "order_shipped",
"language": "he",
"body": { "name": "דנה", "order": "12345" }
}
}'Webhooks יוצאים
לכל אירוע נשלחת בקשת POST עם חתימת HMAC-SHA256 וחותמת זמן. אם היעד לא ענה, יש חמישה ניסיונות חוזרים במרווחים גדלים, ויומן משלוחים במסך האינטגרציות.
האירועים
message.receivedהודעה נכנסהmessage.sentהודעה יצאהmessage.deliveredהודעה נמסרהmessage.readהודעה נקראהmessage.failedשליחה נכשלהconversation.openedשיחה נפתחהconversation.assignedשיחה שויכהconversation.closedשיחה נסגרהcsat.receivedהתקבל ציון שביעות רצוןcall.endedשיחת טלפון הסתיימהtemplate.status_changedסטטוס תבנית השתנה
אימות חתימה
משווים בהשוואה בזמן קבוע. חותמת זמן ישנה מ-5 דקות נדחית.
const signed = `${timestamp}.${rawBody}`;
const expected = crypto
.createHmac('sha256', webhookSecret)
.update(signed)
.digest('hex');
crypto.timingSafeEqual(
Buffer.from(expected),
Buffer.from(req.header('X-Wehub-Signature')),
);התיעוד המלא
המפרט המלא והמדריך פתוחים לכל אחד, בלי חשבון ובלי מפתח — אפשר לקרוא אותם עוד לפני שיחה איתנו.
המפתחות של העסק, בונה-הבקשות ויומן המשלוחים נמצאים בתוך החשבון: למסך האינטגרציות
כרטיס אינטגרציה משלכם
אם אתם רק רוצים להציג נתונים מהמערכת שלכם בתוך השיחה, אין צורך ב-API. מגדירים כתובת אחת, מקבלים POST חתום עם זהות הפונה, ומחזירים JSON.
מתחילים בשיחה, מסיימים עם ערוץ מחובר
אחרי שיחת ההיכרות פותחים לכם חשבון, ואשף קצר מחבר ערוץ ראשון ומזמין את הצוות. בסוף שולחים לעצמכם הודעה כדי לראות אותה נוחתת.