Μια πλατφόρμα παρακολούθησης συνδέσμων καταγράφει τι έγινε με τους συνδέσμους σας. Ένα webhook είναι η πλατφόρμα που ενημερώνει τα άλλα συστήματά σας τη στιγμή που συμβαίνει κάτι, αντί να περιμένει να ανοίξει κάποιος τον πίνακα ελέγχου. Ο συνδυασμός τους επιτρέπει σε έναν νέο σύνδεσμο καμπάνιας να εμφανιστεί στο CRM σας τη στιγμή που δημιουργείται, ή στην εμφάνιση ενός μυστικού συνδέσμου να ενημερώσει ένα αίτημα υποστήριξης.
Όταν διαλέγετε πλατφόρμα παρακολούθησης συνδέσμων με ενσωματώσεις webhook, δεν αρκεί το «έχει webhook». Χρειάζεται να δείτε ποια γεγονότα στέλνει, πώς τα προστατεύει και τι δεν στέλνει. Ο οδηγός καλύπτει όλα αυτά, πώς φτιάχνετε έναν αξιόπιστο δέκτη, και πότε το API είναι το καλύτερο εργαλείο.
Σε τι χρησιμεύουν τα webhook μιας πλατφόρμας συνδέσμων
Συνήθως χρησιμοποιούνται για τρία πράγματα.
- Συγχρονισμός συστημάτων. Ένας σύνδεσμος που δημιουργείται στην πλατφόρμα εμφανίζεται στην εγγραφή της καμπάνιας στο CRM ή στο εργαλείο διαχείρισης έργων, με την κατάληξη και τον προορισμό του, χωρίς να τον αντιγράψει κανείς.
- Εκκίνηση ροών εργασίας. Ένας μυστικός σύνδεσμος που άνοιξε σημαίνει ότι η παράδοση ολοκληρώθηκε. Ένας σύνδεσμος που διαγράφηκε οριστικά χωρίς επιβεβαίωση από τον παραλήπτη ανοίγει περιστατικό ασφαλείας.
- Τροφοδοσία αποθήκης δεδομένων. Τα γεγονότα μπαίνουν σε μια ουρά και μετά σε έναν πίνακα, όπου ενώνονται με τα υπόλοιπα δεδομένα σας.
Τα webhook δεν είναι κατάλληλα για καταμέτρηση. Ένας πίνακας ελέγχου που αυξάνει έναν αριθμό σε κάθε webhook θα αποκλίνει από την αναφορά της ίδιας της πλατφόρμας την πρώτη φορά που μια αποστολή επαναληφθεί ή καθυστερήσει. Για αριθμούς χρησιμοποιήστε το API ή μια εξαγωγή, και τα webhook για ενέργειες.
Ποια γεγονότα να αναζητήσετε
Οι πλατφόρμες διαφέρουν στο τι στέλνουν. Ζητήστε τη λίστα, όχι απλώς την επιβεβαίωση ότι η λειτουργία υπάρχει.
| Κατηγορία γεγονότων | Τυπικά γεγονότα | Χρήσιμα για |
|---|---|---|
| Κύκλος ζωής συνδέσμου | δημιουργία, ενημέρωση, διαγραφή | Συγχρονισμό με CRM, ιστορικό ενεργειών, εντοπισμό αλλαγών κατά λάθος |
| Κύκλος ζωής μυστικού | δημιουργία, προβολή, οριστική διαγραφή | Επιβεβαίωση παράδοσης, εκκίνηση περιστατικών |
| Γεγονότα κλικ | ανά κλικ ή σε δέσμες | Αυτοματισμούς σε πραγματικό χρόνο, σε μεγάλο όγκο |
| Γεγονότα domain | επαλήθευση, έκδοση πιστοποιητικού | Ειδοποιήσεις λειτουργίας |
Τα webhook του LinkPilot καλύπτουν τον κύκλο ζωής των συνδέσμων (link.created, link.updated, link.deleted) και τον κύκλο ζωής των μυστικών (secret.created, secret.viewed, secret.burned). Τα δεδομένα κλικ είναι διαθέσιμα μέσω του API στατιστικών και της εξαγωγής CSV, όχι ως webhook ανά κλικ. Για τις περισσότερες ομάδες αυτός είναι ο σωστός διαχωρισμός: τα κλικ είναι δεδομένα αναφορών μεγάλου όγκου, ενώ τα γεγονότα κύκλου ζωής είναι αυτά που πρέπει να ξεκινούν κάποια ενέργεια.
Αν η ροή εργασίας σας χρειάζεται πραγματικά αντίδραση σε κάθε κλικ, βεβαιωθείτε ότι η πλατφόρμα τα στέλνει σε δέσμες ή περιορίζει τον ρυθμό τους. Αλλιώς θα φτιάξετε έναν δέκτη που καταρρέει την πρώτη φορά που μια ανάρτηση γίνει viral.
Τι άλλο να αξιολογήσετε
- Υπογραφή. Κάθε αποστολή πρέπει να φέρει υπογραφή που υπολογίζεται με ένα μυστικό κλειδί που έχετε εσείς, ώστε το endpoint σας να απορρίπτει τις πλαστές. Μια πλατφόρμα που στέλνει webhook χωρίς υπογραφή σας ζητά να εμπιστεύεστε οποιοδήποτε αίτημα POST.
- Επαναλήψεις και σειρά. Μάθετε πόσες φορές επαναλαμβάνεται μια αποτυχημένη αποστολή και σε ποιο διάστημα, και θεωρήστε δεδομένο ότι τα γεγονότα μπορεί να φτάσουν εκτός σειράς.
- Αναγνωριστικά γεγονότων. Ένα μοναδικό ID ανά γεγονός είναι αυτό που κάνει δυνατή την idempotency.
- Διαχείριση endpoint. Πολλά endpoint ανά χώρο εργασίας, συνδρομή ανά γεγονός, και αρχείο καταγραφής αποστολών που μπορείτε να διαβάσετε όταν κάτι πάει στραβά.
- Το API δίπλα στα webhook. Τα webhook για να ξεκινούν ενέργειες, το API για όλα τα άλλα. Ελέγξτε ότι η δημιουργία συνδέσμων, τα στατιστικά και οι εξαγωγές είναι όλα διαθέσιμα μέσω κώδικα και ότι τα κλειδιά μπορούν να περιοριστούν σε συγκεκριμένα δικαιώματα. Το API του LinkPilot χρησιμοποιεί κλειδιά bearer
lp_live_και υπάρχει σε κάθε πακέτο. - Πρόσβαση ομάδας. Έχει σημασία ποιος μπορεί να προσθέσει endpoint για webhook, επειδή ένα endpoint λαμβάνει δεδομένα. Οι ρόλοι πρέπει να επιτρέπουν στον «admin» (διαχειριστή) να διαχειρίζεται τα endpoint και να κρατούν όλους τους άλλους έξω.
Φτιάξτε έναν δέκτη που δεν καταρρέει
- Επαληθεύστε πρώτα την υπογραφή. Υπολογίστε την αναμενόμενη υπογραφή από το ακατέργαστο σώμα του αιτήματος και το μυστικό κλειδί σας, συγκρίνετε σε σταθερό χρόνο, και απορρίψτε ό,τι αποτυγχάνει πριν το αναλύσετε.
- Απαντήστε γρήγορα. Επιστρέψτε 2xx μέσα σε ένα ή δύο δευτερόλεπτα. Την πραγματική δουλειά κάντε τη από μια ουρά, ώστε ένα αργό CRM να μην προκαλεί επαναλήψεις.
- Αποθηκεύστε τα ID των γεγονότων και παραλείψτε όσα έχετε ήδη δει. Οι επαναλήψεις είναι φυσιολογικές. Η διπλή επεξεργασία είναι δικό σας σφάλμα.
- Αντιστοιχίστε τα πεδία ρητά. Πάρτε την κατάληξη, τον προορισμό, τις ετικέτες και τις χρονοσημάνσεις που χρειάζεστε και βάλτε τα στο δικό σας σχήμα. Μην αποθηκεύετε ολόκληρο το payload ως αξιόπιστη πηγή δεδομένων. Είναι ειδοποίηση, όχι εγγραφή.
- Καταγράψτε κάθε αποστολή με το ID και το αποτέλεσμά της. Έτσι, όταν το αρχείο της πλατφόρμας λέει ότι παραδόθηκε και το σύστημά σας λέει ότι δεν έγινε τίποτα, μπορείτε να βρείτε πού χάθηκε.
- Ορίστε ειδοποίηση για τη σιωπή. Αν ένα endpoint που συνήθως λαμβάνει γεγονότα κάθε ώρα σωπάσει για μία ημέρα, κάτι χάλασε στη μία από τις δύο πλευρές.
Πριν από την πρώτη πραγματική καμπάνια, δοκιμάστε με ένα endpoint δοκιμαστικού περιβάλλοντος και τη δοκιμαστική αποστολή της πλατφόρμας. Δημιουργήστε έναν σύνδεσμο, αλλάξτε τον, διαγράψτε τον, και δείτε να φτάνουν τα τρία γεγονότα.
Προστατέψτε τα δεδομένα
Τα payload των webhook περιγράφουν συνδέσμους και μυστικά, όχι ανθρώπους. Κρατήστε τα έτσι.
- Μη βάζετε ποτέ προσωπικά δεδομένα σε καταλήξεις συνδέσμων ή σε ετικέτες, επειδή θα περιλαμβάνονται σε κάθε payload για αυτόν τον σύνδεσμο.
- Περιορίστε το endpoint στην κίνηση της πλατφόρμας, με την υπογραφή και, όπου γίνεται, με τη διεύθυνση προέλευσης.
- Φυλάξτε το μυστικό κλειδί υπογραφής σε διαχειριστή μυστικών, όχι στο αρχείο ρυθμίσεων του δέκτη, και να το αντικαθιστάτε με νέο σε τακτά διαστήματα. Αν πρέπει να δώσετε το κλειδί σε έναν εξωτερικό συνεργάτη που φτιάχνει τον δέκτη, στείλτε το με μυστικό σύνδεσμο μίας χρήσης. Ο οδηγός για το μυστικό κλειδί υπογραφής webhook καλύπτει αυτή την παράδοση.
- Λάβετε υπόψη τη συγκατάθεση όταν τα δεδομένα κλικ περνούν σε ένα CRM. Μια εγγραφή κλικ συνδεδεμένη με έναν πελάτη είναι προσωπικό δεδομένο κατά τους περισσότερους κανόνες προστασίας προσωπικών δεδομένων.
Μετρήστε την ίδια την ενσωμάτωση
- Ποσοστό επιτυχών αποστολών, από το αρχείο καταγραφής της πλατφόρμας.
- Καθυστέρηση επεξεργασίας, από τη χρονοσήμανση του γεγονότος έως την εγγραφή στο σύστημά σας.
- Ποσοστό διπλότυπων, που πρέπει να είναι χαμηλό αλλά ποτέ μηδέν.
- Συμφωνία: μία φορά την εβδομάδα, συγκρίνετε τον αριθμό συνδέσμων και τα σύνολα κλικ από το API με όσα έχουν τα συστήματά σας. Η απόκλιση σημαίνει χαμένη αποστολή ή σφάλμα στον δέκτη.
Μια πλατφόρμα παρακολούθησης συνδέσμων με webhook εντάσσει τους συνδέσμους σας στα υπόλοιπα συστήματά σας. Διαλέξτε μία που υπογράφει ό,τι στέλνει, σας λέει ακριβώς ποια γεγονότα υπάρχουν, και σας δίνει API για τους αριθμούς. Μετά φτιάξτε τον δέκτη σαν να είναι οι επαναλήψεις ο κανόνας, γιατί είναι.
