פלטפורמה למעקב אחר קישורים רושמת מה קרה לקישורים שלכם. webhook הוא הדרך של הפלטפורמה לעדכן את המערכות האחרות שלכם ברגע שזה קורה, במקום לחכות שמישהו יסתכל בלוח הבקרה. השילוב הזה הוא מה שמאפשר לקישור קמפיין חדש להופיע ב-CRM ברגע שנוצר, או להצגה של קישור סודי לעדכן כרטיס תמיכה.
כשבוחרים פלטפורמה למעקב אחר קישורים עם אינטגרציות webhook, צריך להסתכל מעבר ל"יש webhooks" ולבדוק אילו אירועים היא שולחת, איך היא מאבטחת אותם ומה היא לא שולחת. המדריך הזה עובר על כל אלה, על בניית מקלט אמין ועל המקרים שבהם ה-API הוא הכלי המתאים יותר.
בשביל מה webhooks של פלטפורמת קישורים
שלוש משימות חוזרות שוב ושוב.
- סנכרון בין מערכות. קישור שנוצר בפלטפורמה מופיע ברשומת הקמפיין ב-CRM או בכלי ניהול הפרויקטים, עם סיומת הקישור והיעד, בלי שמישהו יעתיק אותו.
- הפעלת תהליכים. קישור סודי שנפתח מסמן מסירה שהושלמה, וקישור שנמחק בלי שהנמען אישר קבלה פותח אירוע אבטחה.
- הזנת מחסן נתונים. האירועים נכנסים לתור ומשם לטבלה, שבה הם מצטרפים לשאר הנתונים שלכם.
ספירה היא לא מה ש-webhooks טובים בו. לוח בקרה שמעלה מונה בכל webhook יסטה מהדוח של הפלטפורמה עצמה בפעם הראשונה שמשלוח נשלח שוב או מתעכב. השתמשו ב-API או בייצוא בשביל מספרים, וב-webhooks בשביל פעולות.
אילו אירועים לחפש
פלטפורמות שונות שולחות אירועים שונים. בקשו את הרשימה, לא את שם התכונה.
| משפחת אירועים | אירועים אופייניים | שימושים מתאימים |
|---|---|---|
| מחזור החיים של קישור | נוצר, עודכן, נמחק | סנכרון ל-CRM, תיעוד לביקורת, זיהוי עריכות בטעות |
| מחזור החיים של סוד | נוצר, נצפה, נמחק | אישור מסירה, הפעלת אירוע אבטחה |
| אירועי הקלקה | לכל הקלקה או באצוות | אוטומציה בזמן אמת, בנפח גבוה |
| אירועי דומיין | אומת, הונפקה תעודה | התראות תפעול |
ה-webhooks של LinkPilot מכסים את מחזור החיים של קישור (link.created, link.updated, link.deleted) ואת מחזור החיים של סוד (secret.created, secret.viewed, secret.burned). נתוני הקלקות זמינים דרך ה-API של הסטטיסטיקות ובייצוא CSV, ולא כ-webhook לכל הקלקה. זו החלוקה הנכונה לרוב הצוותים: הקלקות הן נתוני דיווח בנפח גבוה, ואירועי מחזור החיים הם אלה שצריכים להפעיל משהו.
אם תהליך העבודה שלכם באמת צריך תגובה לכל הקלקה, ודאו שהפלטפורמה שולחת אותן באצוות או מגבילה את הקצב, אחרת תבנו מקלט שקורס בפעם הראשונה שפוסט הופך לוויראלי.
מה עוד לבדוק
- חתימה. כל משלוח צריך לשאת חתימה שמחושבת עם סוד שנמצא אצלכם, כדי שנקודת הקצה תוכל לדחות זיופים. פלטפורמה ששולחת webhooks בלי חתימה מבקשת מכם לסמוך על כל בקשת POST.
- ניסיונות חוזרים וסדר. בררו כמה פעמים משלוח שנכשל נשלח שוב ובמשך כמה זמן, והניחו שאירועים יכולים להגיע שלא לפי הסדר.
- מזהי אירועים. מזהה ייחודי לכל אירוע הוא מה שמאפשר אידמפוטנטיות.
- ניהול נקודות קצה. כמה נקודות קצה לכל סביבת עבודה, הרשמה לפי סוג אירוע, ויומן משלוחים שאפשר לקרוא כשמשהו משתבש.
- ה-API שלצדם. webhooks בשביל טריגרים, API בשביל כל השאר. ודאו שיצירת קישורים, סטטיסטיקות וייצוא זמינים כולם דרך קוד, ושאפשר להגביל את ההרשאות של המפתחות. ה-API של LinkPilot משתמש במפתחות bearer מסוג
lp_live_וזמין בכל תוכנית. - גישת הצוות. חשוב מי יכול להוסיף נקודת קצה ל-webhook, כי נקודת קצה מקבלת נתונים. התפקידים צריכים לאפשר למנהל לנהל נקודות קצה ולהשאיר את כל השאר בחוץ.
בנו מקלט שלא קורס
- אמתו קודם את החתימה. חשבו את החתימה הצפויה מהגוף הגולמי ומהסוד שלכם, השוו בין החתימות בפונקציית השוואה בזמן קבוע, ודחו כל מה שנכשל עוד לפני ניתוח הגוף.
- אשרו קבלה מהר. החזירו 2xx תוך שנייה או שתיים. את העבודה עצמה עשו מתור, כדי ש-CRM איטי לא יגרום לניסיונות חוזרים.
- שמרו את מזהי האירועים ודלגו על כל מזהה שכבר ראיתם. ניסיונות חוזרים הם דבר רגיל, ועיבוד כפול הוא באג אצלכם.
- מפו שדות במפורש. העבירו לסכמה שלכם את סיומת הקישור, היעד, התגיות וחותמות הזמן שאתם צריכים. אל תשמרו את כל המטען כמקור אמת: זו התראה, לא רשומה.
- תעדו כל משלוח עם המזהה והתוצאה שלו, כדי שכשהיומן של הפלטפורמה אומר "נמסר" והמערכת שלכם אומרת שלא קרה כלום, תוכלו לגלות לאן הוא הלך.
- התריעו על שקט. אם נקודת קצה שבדרך כלל מקבלת אירועים כל שעה שותקת יום שלם, משהו נשבר באחד הצדדים.
לפני הקמפיין האמיתי הראשון, בדקו עם נקודת קצה של סביבת staging ועם משלוח הניסיון של הפלטפורמה. צרו קישור, ערכו אותו, מחקו אותו, וצפו בשלושת האירועים כשהם מגיעים.
הגנה על הנתונים
מטעני webhook מתארים קישורים וסודות, לא אנשים. שמרו על זה כך.
- אל תכניסו אף פעם מידע אישי לסיומות קישורים או לתגיות, כי הם יעברו בכל מטען שנוגע לאותו קישור.
- הגבילו את נקודת הקצה לתעבורה של הפלטפורמה לפי חתימה, וכשאפשר גם לפי כתובת המקור.
- שמרו את סוד החתימה במנהל סודות, לא בקובץ התצורה של המקלט, והחליפו אותו לפי לוח זמנים. אם אתם צריכים למסור את הסוד לקבלן שבונה את המקלט, שלחו אותו בקישור סודי חד-פעמי. המדריך לסוד חתימה של webhook מסביר את המסירה הזו.
- זכרו את נושא ההסכמה כשנתוני הקלקות זורמים ל-CRM. רשומת הקלקה שמקושרת ללקוח היא מידע אישי לפי רוב כללי הפרטיות.
מדדו את האינטגרציה עצמה
- שיעור המשלוחים שהצליחו, מתוך היומן של הפלטפורמה.
- השהיית עיבוד, מחותמת הזמן של האירוע עד הרשומה במערכת שלכם.
- שיעור הכפילויות, שצריך להיות נמוך אבל אף פעם לא אפס.
- התאמה: פעם בשבוע השוו את מספר הקישורים ואת סך ההקלקות מה-API למה שיש במערכות שלכם. סטייה פירושה משלוח שאבד או באג במקלט.
פלטפורמה למעקב אחר קישורים עם webhooks משלבת את הקישורים בשאר המערכות שלכם. בחרו פלטפורמה שחותמת על מה שהיא שולחת, אומרת לכם בדיוק אילו אירועים קיימים ונותנת API בשביל המספרים. אחר כך בנו את המקלט כאילו ניסיונות חוזרים הם המקרה הרגיל, כי הם באמת המקרה הרגיל.
