Αυτοματοποιήστε τα Open Badges με Zapier, Make και n8n (συνταγές χωρίς κώδικα)

Ενεργοποιήστε την έκδοση σήματος από τη συμπλήρωση ενός Typeform, μια αγορά στο Stripe ή μια ετικέτα Mailchimp — τρεις συνταγές χωρίς κώδικα που λειτουργούν, η καθεμία σε λιγότερο από 10 λεπτά.

Nacho Coll Από Ενημερώθηκε 10 λεπτά ανάγνωσης
Ενεργοποιήστε την έκδοση σήματος από τη συμπλήρωση ενός Typeform, μια αγορά στο Stripe ή μια ετικέτα Mailchimp — τρεις συνταγές χωρίς κώδικα που λειτουργούν, η καθεμία σε λιγότερο από 10 λεπτά.

Αν διαχειρίζεστε ένα εκπαιδευτικό πρόγραμμα, ένα επί πληρωμή μάθημα ή μια λίστα email με επίπεδα, η στιγμή που κάποιος ολοκληρώνει, αγοράζει ή πληροί τις προϋποθέσεις συνήθως ήδη καταγράφεται κάπου — μια απάντηση φόρμας, μια χρέωση στο Stripe, μια ετικέτα Mailchimp. Το σήμα θα έπρεπε να ακολουθεί αυτόματα από αυτό το γεγονός. Σπάνια συμβαίνει, επειδή η «έκδοση διαπιστευτηρίου» δεν είναι μια εγγενής ενέργεια στα περισσότερα εργαλεία, και η δημιουργία ενός προσαρμοσμένου δέκτη webhook για μια μεμονωμένη αυτοματοποίηση είναι υπερβολική.

Ακριβώς για αυτό υπάρχουν τα Zapier, Make και n8n. Και τα τρία μπορούν να καλέσουν απευθείας το Badges Ninja API — χωρίς plugin, χωρίς διακομιστή ενδιάμεσου λογισμικού, χωρίς ανάπτυξη κώδικα. Παρακάτω θα βρείτε τρεις λειτουργικές συνταγές που μπορείτε να αντιγράψετε σήμερα, καθώς και τη διαχείριση κλειδιών API και τη συμπεριφορά επαναδοκιμής σφαλμάτων που πρέπει να κάνετε σωστά, ώστε τα σήματα να μην αποτυγχάνουν να εκδοθούν σιωπηλά.

Τι συνδέετε

Κάθε συνταγή ακολουθεί την ίδια μορφή: ενεργοποιητής → (προαιρετική) αναζήτηση παραλήπτη → HTTP POST στο /awards. Το endpoint /awards είναι αυτό που πραγματικά εκδίδει ένα σήμα σε έναν παραλήπτη — το κατευθύνετε σε ένα υπάρχον badgeId και δημιουργεί μια μοναδική, επαληθεύσιμη απονομή με τη δική της σελίδα επαλήθευσης, κωδικό QR και πιστοποιητικό PDF. Δείτε τον οδηγό γρήγορης εκκίνησης του API αν δεν έχετε δημιουργήσει ακόμη ένα σήμα· θα χρειαστείτε το ID του πριν μπορέσει να εκτελεστεί οποιαδήποτε από αυτές τις αυτοματοποιήσεις.

Η ταυτοποίηση και για τις τρεις πλατφόρμες είναι η ίδια: μια κεφαλίδα X-Api-Key που μεταφέρει ένα κλειδί που δημιουργήθηκε από τον πίνακα ελέγχου σας. Οι πλατφόρμες αυτοματοποίησης δεν χειρίζονται καλά τις ροές OAuth για αυθαίρετα REST API, οπότε τα κλειδιά API είναι η σωστή επιλογή εδώ — μακροχρόνια, συνδεδεμένα με τον λογαριασμό σας και ανακλήσιμα με ένα κλικ αν κάποιο Zap δυσλειτουργήσει ποτέ.

Δημιουργήστε πρώτα το κλειδί API

API Keys — empty state

Από τον πίνακα ελέγχου σας, ανοίξτε Settings → API Keys, κάντε κλικ στο Create Key και δώστε του ένα όνομα που ταιριάζει με τη δουλειά του — zapier-course-completions, όχι key1. Αυτή η ονομασία έχει μεγαλύτερη σημασία από ό,τι ακούγεται· αν μια αυτοματοποίηση δυσλειτουργήσει σε έξι μήνες, θα θελήσετε να ανακαλέσετε αυτό το κλειδί χωρίς να χαλάσετε τρεις άλλες ενσωματώσεις που τυχαίνει να το μοιράζονται.

Create key — name form

Το κλειδί εμφανίζεται μία φορά, πλήρες, αμέσως μετά τη δημιουργία. Αντιγράψτε το αμέσως στον ασφαλή χώρο αποθήκευσης διαπιστευτηρίων της πλατφόρμας αυτοματοποίησής σας — το «Connection» του Zapier, το «Connection» του Make, ή ένα διαπιστευτήριο n8n — ποτέ σε ένα απλό πεδίο κειμένου μέσα στο ίδιο το Zap/σενάριο/ροή εργασίας.

Συνταγή 1: Typeform → Badges Ninja (φόρμα ολοκλήρωσης ομάδας)

Περίπτωση χρήσης: μια ομάδα ολοκληρώνει ένα μάθημα και συμπληρώνει μια σύντομη φόρμα «το ολοκλήρωσα» (ή στέλνετε μια φόρμα ως τελευταίο βήμα μιας αυτοδιδασκόμενης πορείας).

Στο Zapier:

  1. Ενεργοποιητής: Typeform — New Entry, περιορισμένος στη φόρμα ολοκλήρωσής σας.
  2. Ενέργεια: Webhooks by Zapier — POST.
  3. URL: https://api.badges.ninja/awards
  4. Κεφαλίδες: X-Api-Key: bws_<το κλειδί σας>, Content-Type: application/json
  5. Δεδομένα (αντιστοιχισμένα από τα πεδία του Typeform):
{
  "badgeId": "bdg_9f2a1c",
  "recipient": {
    "name": "{{typeform_name}}",
    "email": "{{typeform_email}}"
  },
  "issuedOn": "2026-08-27"
}

Αυτό είναι όλο το Zap. Δεν χρειάζεται βήμα φίλτρου αν η φόρμα ενεργοποιείται μόνο σε πραγματικές ολοκληρώσεις — αν πρόκειται για γενική φόρμα επικοινωνίας, προσθέστε ένα βήμα Filter by Zapier που ελέγχει ένα κρυφό πεδίο ή τιμή απάντησης πριν ενεργοποιηθεί το webhook, ώστε να μην εκδίδετε σήματα από ανεπιθύμητη αλληλογραφία ή δοκιμαστικές υποβολές.

Συνταγή 2: Stripe → Badges Ninja (αγορά = διαπιστευτήριο)

Περίπτωση χρήσης: μια επί πληρωμή εξέταση πιστοποίησης, ένα premium επίπεδο μαθήματος ή ένα πλάνο συνδρομής όπου το σήμα είναι μέρος αυτού που αγοράζουν οι άνθρωποι.

Στο Zapier:

  1. Ενεργοποιητής: Stripe — New ChargeNew Invoice Payment Succeeded για συνδρομές).
  2. Φίλτρο: το ποσό χρέωσης ισούται με την ακριβή τιμή του προϊόντος με διαπίστευση — αυτό έχει σημασία αν ο λογαριασμός σας στο Stripe διαχειρίζεται πολλαπλά προϊόντα μέσω ενός webhook.
  3. Ενέργεια: Webhooks by Zapier — POST στο https://api.badges.ninja/awards, ίδιες κεφαλίδες όπως παραπάνω.
  4. Δεδομένα: αντιστοιχίστε τα charge.billing_details.email και charge.billing_details.name στα recipient.email / recipient.name.

Το καλό μέρος της σύνδεσης της έκδοσης με ένα γεγονός πληρωμής: είναι εκ φύσεως σχεδόν ιδεμποτεντικό. Τα ID χρεώσεων του Stripe είναι μοναδικά, οπότε αν ανησυχείτε ότι ένα Zap θα ενεργοποιηθεί ξανά σε ένα επαναλαμβανόμενο webhook, προσθέστε ένα βήμα Storage by Zapier που ελέγχει αν έχετε ήδη επεξεργαστεί αυτό το ID χρέωσης πριν καλέσετε το /awards.

Συνταγή 3: Ετικέτα Mailchimp → Badges Ninja

Περίπτωση χρήσης: επισημαίνετε συνδρομητές χειροκίνητα (ή μέσω μιας άλλης αυτοματοποίησης) όταν φτάνουν σε ένα ορόσημο — παρακολούθησαν ένα webinar, ολοκλήρωσαν μια αλληλουχία σταδιακών email, παρέπεμψαν τρία άτομα — και θέλετε αυτή η ετικέτα να ενεργοποιεί ένα σήμα χωρίς να αγγίζετε εσείς οι ίδιοι το API.

Στο Zapier:

  1. Ενεργοποιητής: Mailchimp — New Tag Added to Subscriber, φιλτραρισμένος στη συγκεκριμένη ετικέτα (π.χ. webinar-attended).
  2. Ενέργεια: Webhooks by Zapier — POST στο https://api.badges.ninja/awards.
  3. Δεδομένα: αντιστοιχίστε τα subscriber.email_address και subscriber.merge_fields.FNAME + LNAME στα πεδία παραλήπτη.

Αυτό το μοτίβο είναι δημοφιλές για προγράμματα αναγνώρισης — SPIFF πωλήσεων, ορόσημα κοινότητας, συμμετοχή σε εκδηλώσεις — όπου κάποιος στην ομάδα έχει ήδη τη συνήθεια να επισημαίνει επαφές, και απλώς θέλετε το σήμα να προκύπτει από αυτή τη συνήθεια δωρεάν.

Διαχείριση σφαλμάτων και επαναλήψεων

Οι πλατφόρμες αυτοματοποίησης δεν είναι συναλλακτικές με τα δεδομένα των σημάτων σας, οπότε ενσωματώστε την ίδια πειθαρχία που θα θέλατε από μια πραγματική ενσωμάτωση:

  • Ελέγξτε τον κωδικό απόκρισης. Ένα 200 σημαίνει ότι η απονομή δημιουργήθηκε· ένα 4xx συνήθως σημαίνει μη έγκυρο badgeId ή κακοδιατυπωμένο email — αυτό είναι σφάλμα ρύθμισης στο Zap, όχι κάτι που πρέπει να επαναλαμβάνεται τυφλά. Ένα 5xx είναι ασφαλές να επαναληφθεί.
  • Zapier: οι αποτυχημένες εκτελέσεις Zap καταλήγουν στο Zap History με το πλήρες αίτημα/απόκριση. Ενεργοποιήστε το Auto-Replay για παροδικά σφάλματα, αλλά ρυθμίστε μια ειδοποίηση email/Slack για επαναλαμβανόμενα σφάλματα, ώστε ένα σιωπηλά χαλασμένο Zap να μη σημαίνει τρεις μήνες λείπουν σήματα.
  • Make: τα σενάρια υποστηρίζουν μια εγγενή διαδρομή Error Handler — συνδέστε μια οδηγία Resume ή Rollback στη μονάδα HTTP και δρομολογήστε τα επίμονα σφάλματα σε μια μονάδα ειδοποίησης αντί απλώς να τα απορρίπτετε.
  • n8n: καθώς είναι αυτοφιλοξενούμενο ή cloud με πιο λεπτομερή έλεγχο, τυλίξτε τον κόμβο HTTP Request σε μια ροή εργασίας Error Trigger και εξετάστε το ενδεχόμενο να γράφετε τα αποτυχημένα ωφέλιμα φορτία σε έναν ελαφρύ εφεδρικό χώρο αποθήκευσης (Airtable, Google Sheets) που μπορείτε να επαναλάβετε χειροκίνητα.

Και στις τρεις περιπτώσεις, αποφύγετε την παγίδα του «έτρεξε πράσινο, άρα λειτούργησε». Μια απόκριση που φαίνεται σαν 200 από ένα κακώς ρυθμισμένο βήμα webhook (λάθος URL, απούσα κεφαλίδα) μπορεί ακόμα να αποτύχει στην πλευρά του Badges Ninja. Κάντε δειγματοληπτικό έλεγχο στη λίστα απονομών του πίνακα ελέγχου εβδομαδιαία κατά τον πρώτο μήνα κάθε νέας αυτοματοποίησης.

Το αντίστοιχο στο Make.com

Ο οπτικός κατασκευαστής σεναρίων του Make αντιστοιχεί σχεδόν άμεσα στα βήματα του Zapier παραπάνω:

  1. Μονάδα Trigger — μονάδα παρακολούθησης Typeform/Stripe/Mailchimp, ίδια με τον ενεργοποιητή Zapier.
  2. Μονάδα HTTP → Make a Request — Μέθοδος POST, URL https://api.badges.ninja/awards, κεφαλίδες ορισμένες στον πίνακα Headers (X-Api-Key, Content-Type: application/json), σώμα ως ακατέργαστο JSON με αντιστοιχισμένες μεταβλητές από τον ενεργοποιητή.
  3. Προαιρετικό Filter ανάμεσα σε μονάδες για τον έλεγχο ποσού Stripe ή τη διασφάλιση «πραγματικής ολοκλήρωσης» στο Typeform.

Το πλεονέκτημα του Make εδώ είναι η ορατότητα — ο επεξεργαστής σεναρίων σάς δείχνει το πραγματικό ωφέλιμο φορτίο JSON σε κάθε βήμα προτού το ενεργοποιήσετε, κάτι που κάνει τον εντοπισμό σφαλμάτων μιας κακής αντιστοίχισης πεδίων πολύ πιο γρήγορο από τη πιο γραμμική προβολή δοκιμής βήμα-προς-βήμα του Zapier.

Το αντίστοιχο στο n8n

Το n8n είναι η καλύτερη επιλογή αν θέλετε αυτό αυτοφιλοξενούμενο, ή αν ήδη αυτοματοποιείτε άλλα μέρη της στοίβας σας εκεί:

  1. Κόμβος Trigger — Typeform Trigger / Stripe Trigger / Mailchimp Trigger (όλα ενσωματωμένοι κόμβοι).
  2. Κόμβος HTTP Request — Μέθοδος POST, URL https://api.badges.ninja/awards, ταυτοποίηση ορισμένη σε Header Auth με το X-Api-Key σας αποθηκευμένο ως διαπιστευτήριο n8n (όχι κωδικοποιημένο σκληρά στον κόμβο), σώμα JSON χτισμένο από μια έκφραση που αναφέρεται στην έξοδο του κόμβου ενεργοποιητή.
  3. Κόμβος IF (προαιρετικός) — ίδια διασφάλιση ολοκλήρωσης/ποσού όπως παραπάνω, τοποθετημένη πριν από τον κόμβο HTTP Request.

Επειδή τα διαπιστευτήρια n8n είναι κρυπτογραφημένα και επαναχρησιμοποιήσιμα σε όλες τις ροές εργασίας, αυτή είναι η πιο καθαρή επιλογή αν σχεδιάζετε περισσότερες από μία αυτοματοποιήσεις Badges Ninja — ρυθμίστε το διαπιστευτήριο μία φορά, επαναχρησιμοποιήστε το σε κάθε ροή εργασίας που χρειάζεται να εκδώσει σήματα.

Γιατί ένα γενικό βήμα webhook αντί για μια εγγενή εφαρμογή

Τα Zapier, Make και n8n έχουν όλα αγορές εφαρμογών, και το ένστικτο είναι να αναζητήσετε μια εφαρμογή «Badges Ninja» πριν καταφύγετε σε μια γενική μονάδα HTTP/webhook. Παραλείψτε αυτή την αναζήτηση — για ένα REST API τόσο μικρό (δημιουργήστε έναν εκδότη, δημιουργήστε ένα σήμα, δημιουργήστε μια απονομή, τέλος), ένα γενικό βήμα webhook σάς φέρνει σε λειτουργία σε δέκα λεπτά χωρίς καμία εξάρτηση από έναν συντηρητή εφαρμογής τρίτου μέρους που πρέπει να συμβαδίζει με τις αλλαγές του API. Μια αποκλειστική εφαρμογή προσθέτει ένα επίπεδο αφαίρεσης που δεν χρειάζεστε· θα συμπληρώνατε ακόμα τα ίδια πεδία badgeId, recipient.email και recipient.name, απλώς μέσω μιας φόρμας αντί για ένα σώμα JSON. Η αναφορά API είναι αρκετά σύντομη ώστε να διαβαστεί σε πέντε λεπτά, και μόλις το κάνετε αυτό, η ακατέργαστη προσέγγιση HTTP είναι στην πραγματικότητα λιγότερο εύθραυστη — δεν υπάρχει κύκλος έγκρισης καταστήματος εφαρμογών ανάμεσα σε μια αλλαγή του API του Badges Ninja και στο να λειτουργήσει ξανά η αυτοματοποίησή σας.

Δοκιμάστε πριν το ενεργοποιήσετε

Κάθε πλατφόρμα παραπάνω σάς δίνει έναν τρόπο να εκτελέσετε μια μεμονωμένη δοκιμαστική εκτέλεση χωρίς να περιμένετε ένα πραγματικό γεγονός ενεργοποίησης:

  • Zapier — χρησιμοποιήστε το «Test» στο βήμα ενεργοποιητή για να αντλήσετε μια δείγμα εγγραφή, και μετά «Test» στην ενέργεια webhook για να στείλετε ακριβώς ένα πραγματικό αίτημα. Ελέγξτε ότι η απονομή εμφανίζεται στον πίνακα ελέγχου σας πριν ενεργοποιήσετε το Zap.
  • Make — εκτελέστε το σενάριο χειροκίνητα μία φορά (κουμπί «Run once») με ένα δείγμα δέσμης, και επιθεωρήστε τη φούσκα εξόδου της μονάδας HTTP για το πραγματικό σώμα απόκρισης.
  • n8n — χρησιμοποιήστε το «Execute Node» στον κόμβο HTTP Request με δοκιμαστικά δεδομένα εισόδου, το οποίο σας επιτρέπει να δείτε το αίτημα και την απόκριση απευθείας στον επεξεργαστή.

Δύο πράγματα αξίζει να ελέγξετε σε αυτή την πρώτη δοκιμαστική εκτέλεση: ότι το badgeId που κωδικοποιήσατε σκληρά ανήκει πραγματικά στο σήμα που νομίζετε ότι ανήκει (ένα παρωχημένο ID από ένα διπλασιασμένο Zap είναι ένα συνηθισμένο λάθος), και ότι το πεδίο email παραλήπτη αντλεί μια πραγματική διεύθυνση και όχι έναν σύμβολο θέσης όπως {{email}} που έμεινε ανεπίλυτος λόγω τυπογραφικού λάθους αντιστοίχισης. Και τα δύο λάθη είναι αόρατα στον δείκτη «επιτυχίας» της πλατφόρμας αυτοματοποίησης — η κλήση HTTP εξακολουθεί να επιστρέφει 200 σε κάθε περίπτωση — οπότε ο μόνος αξιόπιστος έλεγχος είναι να ανοίξετε την απονομή στον πίνακα ελέγχου σας και να επιβεβαιώσετε ότι ο παραλήπτης είναι αυτός που περιμένετε.

Αποφυγή διπλών σημάτων

Κάθε πηγή ενεργοποίησης παραπάνω μπορεί, υπό πραγματικές συνθήκες, να ενεργοποιηθεί περισσότερες από μία φορές για το ίδιο γεγονός — το Stripe επαναλαμβάνει webhooks σε λήξη χρόνου, το Typeform μπορεί να υποβάλει διπλά σε αργή σύνδεση, οι αυτοματοποιήσεις Mailchimp μπορούν να ενεργοποιηθούν ξανά αν μια ετικέτα αφαιρεθεί και προστεθεί ξανά. Αν η έκδοση σημάτων σας δεν είναι ιδεμποτεντική, αυτό μετατρέπεται σε παραλήπτες που λαμβάνουν το ίδιο διαπιστευτήριο δύο φορές, κάτι που φαίνεται πρόχειρο και δημιουργεί email υποστήριξης.

Η πιο καθαρή προστασία είναι ένα βήμα αναζήτησης-πριν-τη-δημιουργία: πριν από το POST στο /awards, προσθέστε μια ενέργεια Search (το «Find Award» του Zapier μέσω αιτήματος GET, ή το αντίστοιχο HTTP GET του Make/n8n) έναντι των δικών σας εγγραφών απονομών — ένα ελαφρύ Google Sheet ή αρχείο καταγραφής Airtable στο οποίο γράφει το ίδιο Zap αμέσως μετά από μια επιτυχημένη απονομή λειτουργεί καλά για αυτό αν δεν θέλετε να το ρωτήσετε από το API. Αν υπάρχει ήδη μια εγγραφή για αυτόν τον συνδυασμό παραλήπτη + σήματος, διακλαδωθείτε σε ένα no-op αντί να εκδώσετε ξανά. Αυτή είναι μια πρόσθεση πέντε λεπτών, και είναι η διαφορά ανάμεσα σε μια αυτοματοποίηση που εμπιστεύεστε χωρίς επίβλεψη και μία που πρέπει να παρακολουθείτε.

Όταν το χωρίς κώδικα δεν αρκεί

Αυτές οι συνταγές καλύπτουν καλά τους ενεργοποιητές μεμονωμένων γεγονότων. Μόλις εκδίδετε εκατοντάδες σήματα από μία μόνο εξαγωγή CSV — μια ομάδα που αποφοιτά, μια λίστα συμμετεχόντων συνεδρίου, μια μαζική ανανέωση πιστωτικών μονάδων CE — παραλείψτε την πλατφόρμα αυτοματοποίησης και χρησιμοποιήστε απευθείας τη μαζική μεταφόρτωση σημάτων: παύει και συνεχίζει στη μέση μιας παρτίδας και επιβιώνει από ένα κλειστό tab περιηγητή, κάτι που οι βρόχοι webhook χωρίς κώδικα δεν χειρίζονται ομαλά σε μεγάλο όγκο.


Έτοιμοι να εκδώσετε το πρώτο σας επαληθεύσιμο διαπιστευτήριο; Ξεκινήστε δωρεάν στο badges.ninja — οπτικός σχεδιαστής, δημόσια σελίδα επαλήθευσης, πιστοποιητικό PDF, έξοδος Open Badge v2.0. Δεν απαιτείται πιστωτική κάρτα.

Nacho Coll

Σχετικά με τον συγγραφέα

Founder & Engineer at Badges Ninja

Nacho founded Badges Ninja to make issuing verifiable digital credentials as simple as a single API call — Open Badge v2.0 badges and certificates, minted, hosted, and verifiable without standing up your own issuer infrastructure. Writes about the Open Badges spec, credential verification, and running a credentialing platform serverless on AWS, from the operator side of the wire.

Πίσω στο Blog

Σχετικά άρθρα