Automatizuokite Open Badges su Zapier, Make ir n8n (No-code receptai)

Paleiskite ženklelio išdavimą pagal Typeform užpildymą, Stripe pirkimą ar Mailchimp žymą — trys veikiantys no-code receptai, kuriuos įgyvendinsite per mažiau nei 10 minučių kiekvieną.

Nacho Coll Autorius Atnaujinta 8 min skaitymo
Paleiskite ženklelio išdavimą pagal Typeform užpildymą, Stripe pirkimą ar Mailchimp žymą — trys veikiantys no-code receptai, kuriuos įgyvendinsite per mažiau nei 10 minučių kiekvieną.

Jei vykdote mokymo programą, mokamą kursą ar el. pašto sąrašą su pakopomis, momentas, kai kažkas baigia, perka ar pasiekia kvalifikaciją, dažniausiai jau kažkur fiksuojamas — formos atsakyme, Stripe apmokėjime, Mailchimp žymoje. Ženklelis turėtų būti išduotas automatiškai po šio įvykio. Retai taip nutinka, nes „išduoti kredencialą” nėra įprastas veiksmas daugumoje įrankių, o kurti pasirinktinį webhook priėmėją vienkartinei automatizacijai — per daug darbo.

Būtent tam ir skirti Zapier, Make bei n8n. Visi trys gali tiesiogiai kviesti Badges Ninja API — be papildinio, be tarpinio serverio, be kodo diegimo. Žemiau pateikiami trys veikiantys receptai, kuriuos galite nusikopijuoti jau šiandien, kartu su API rakto tvarkymu ir klaidų kartojimo elgsena, kurią būtina teisingai sutvarkyti, kad ženkleliai tyliai neliktų neišduoti.

Ką jungiate

Kiekvienas receptas turi tą pačią struktūrą: trigeris → (nebūtina) gavėjo paieška → HTTP POST į /awards. /awards endpointas yra tai, kas faktiškai išduoda ženklelį gavėjui — nurodote esamą badgeId, ir jis sukuria unikalų, patikrinamą apdovanojimą su savo patikrinimo URL, QR kodu ir PDF sertifikatu. Žr. API greitąjį startą, jei dar nesukūrėte ženklelio — jo ID reikės, prieš paleidžiant bet kurią iš šių automatizacijų.

Autentifikacija visose trijose platformose vienoda: X-Api-Key antraštė, nešanti raktą, sugeneruotą jūsų prietaisų skydelyje. Automatizacijos platformos nelabai gerai tvarko OAuth srautus su savavališkais REST API, todėl čia tinkamiausias sprendimas — API raktai: ilgai galiojantys, priskirti jūsų paskyrai ir atšaukiami vienu paspaudimu, jei Zap kada nors sugestų.

Pirmiausia sukurkite API raktą

API Keys — empty state

Prietaisų skydelyje atidarykite Settings → API Keys, spustelėkite Create Key ir suteikite pavadinimą, atitinkantį jo paskirtį — zapier-course-completions, o ne key1. Šis pavadinimas svarbesnis, nei atrodo: jei automatizacija po pusmečio pradės elgtis netinkamai, norėsite atšaukti būtent tą raktą, nesugadindami trijų kitų integracijų, kurios atsitiktinai juo dalijasi.

Create key — name form

Raktas parodomas tik vieną kartą, pilnas, iškart po sukūrimo. Nukopijuokite jį į savo automatizacijos platformos saugią prisijungimo duomenų saugyklą iš karto — Zapier „Connection”, Make „Connection” arba n8n prisijungimo duomenis — niekada į paprastą teksto lauką pačiame Zap/scenarijaus/darbo eigos viduje.

1 receptas: Typeform → Badges Ninja (kohortos užbaigimo forma)

Naudojimo atvejis: kohorta baigia kursą ir užpildo trumpą „aš baigiau” formą (arba tokią formą siunčiate kaip paskutinį savarankiško tempo tako žingsnį).

Zapier aplinkoje:

  1. Trigeris: Typeform — New Entry, nukreiptas į jūsų užbaigimo formą.
  2. Veiksmas: Webhooks by Zapier — POST.
  3. URL: https://api.badges.ninja/awards
  4. Antraštės: X-Api-Key: bws_<jūsų raktas>, Content-Type: application/json
  5. Duomenys (susieti su Typeform laukais):
{
  "badgeId": "bdg_9f2a1c",
  "recipient": {
    "name": "{{typeform_name}}",
    "email": "{{typeform_email}}"
  },
  "issuedOn": "2026-08-27"
}

Tai — visas Zap. Filtro žingsnio nereikia, jei forma suveikia tik realiais užbaigimais — jei tai bendra kontaktų forma, pridėkite Filter by Zapier žingsnį, tikrinantį paslėptą lauką ar atsakymo reikšmę prieš paleidžiant webhook, kad neišduotumėte ženklelių iš šlamšto ar testinių pateikimų.

2 receptas: Stripe → Badges Ninja (pirkimas = kredencialas)

Naudojimo atvejis: mokamas sertifikavimo egzaminas, premium kurso pakopa arba narystės planas, kai ženklelis yra dalis to, ką žmonės perka.

Zapier aplinkoje:

  1. Trigeris: Stripe — New Charge (arba New Invoice Payment Succeeded prenumeratoms).
  2. Filtras: apmokėjimo suma lygi tiksliai kredencialuoto produkto kainai — tai svarbu, jei jūsų Stripe paskyra per vieną webhook tvarko kelis produktus.
  3. Veiksmas: Webhooks by Zapier — POST į https://api.badges.ninja/awards, tos pačios antraštės kaip aukščiau.
  4. Duomenys: susiekite charge.billing_details.email ir charge.billing_details.name su recipient.email / recipient.name.

Malonu tai, kad išdavimo susiejimas su apmokėjimo įvykiu iš prigimties beveik idempotiškas: Stripe apmokėjimo ID yra unikalūs, tad jei nerimaujate dėl Zap pakartotinio suveikimo dėl pakartoto webhook, pridėkite Storage by Zapier žingsnį, kuris patikrina, ar tas apmokėjimo ID jau apdorotas, prieš kviečiant /awards.

3 receptas: Mailchimp žyma → Badges Ninja

Naudojimo atvejis: rankiniu būdu (arba per kitą automatizaciją) pažymite prenumeratorius, kai jie pasiekia etapą — dalyvavo webinare, baigė lašinamą sekvenciją, pakvietė tris žmones — ir norite, kad ta žyma paleistų ženklelio išdavimą, jums patiems neliečiant API.

Zapier aplinkoje:

  1. Trigeris: Mailchimp — New Tag Added to Subscriber, filtruotas pagal konkrečią žymą (pvz., webinar-attended).
  2. Veiksmas: Webhooks by Zapier — POST į https://api.badges.ninja/awards.
  3. Duomenys: susiekite subscriber.email_address ir subscriber.merge_fields.FNAME + LNAME su gavėjo laukais.

Šis modelis populiarus pripažinimo programose — pardavimų SPIFF akcijose, bendruomenės etapuose, renginių dalyvavime — kai kažkas komandoje jau turi įprotį žymėti kontaktus, ir jums tereikia, kad ženklelis atsirastų iš to įpročio automatiškai.

Klaidų ir pakartojimų tvarkymas

Automatizacijos platformos nėra transakcinės jūsų ženklelių duomenų atžvilgiu, todėl įdiekite tą pačią drausmę, kokios tikėtumėtės iš tikros integracijos:

  • Tikrinkite atsakymo kodą. 200 reiškia, kad apdovanojimas sukurtas; 4xx paprastai reiškia netinkamą badgeId ar netaisyklingą el. paštą — tai konfigūracijos klaida Zap, o ne kažkas, ką reikia aklai kartoti. 5xx galima saugiai kartoti.
  • Zapier: nepavykusios Zap vykdymo eigos atsiduria Zap History su visu užklausos/atsako turiniu. Įjunkite Auto-Replay trumpalaikėms klaidoms, bet nustatykite el. pašto/Slack įspėjimą pasikartojančioms klaidoms, kad tyliai sugedęs Zap nereikštų trijų mėnesių trūkstamų ženklelių.
  • Make: scenarijai palaiko įgimtą Error Handler maršrutą — pridėkite Resume arba Rollback direktyvą prie HTTP modulio ir nukreipkite nuolatines klaidas į pranešimo modulį, o ne tiesiog jas atmeskite.
  • n8n: kadangi tai savarankiškai talpinama arba debesijos versija su detalesne kontrole, apgaubkite HTTP Request mazgą Error Trigger darbo eiga ir apsvarstykite galimybę rašyti nepavykusius siuntinius į lengvą atsarginę saugyklą (Airtable, Google Sheets), kurią galėtumėte peržiūrėti ir pakartoti rankiniu būdu.

Visose trijose platformose venkite spąstų „jei suveikė žaliai, reiškia, veikė”. Iš pažiūros 200 atsakymas iš neteisingai sukonfigūruoto webhook žingsnio (klaidingas URL, trūkstama antraštė) vis tiek gali nepavykti Badges Ninja pusėje. Kiekvieną savaitę pirmąjį naujos automatizacijos mėnesį patikrinkite prietaisų skydelio apdovanojimų sąrašą.

Make.com atitikmuo

Make vizualus scenarijų kūrėjas beveik tiesiogiai atitinka aukščiau aprašytus Zapier žingsnius:

  1. Trigerio modulis — Typeform / Stripe / Mailchimp stebėjimo modulis, toks pat kaip Zapier trigeris.
  2. HTTP → Make a Request modulis — metodas POST, URL https://api.badges.ninja/awards, antraštės nustatytos Headers lentelėje (X-Api-Key, Content-Type: application/json), turinys — neapdorotas JSON su susietais kintamaisiais iš trigerio.
  3. Nebūtinas Filter tarp modulių Stripe sumos patikrai arba „tikro užbaigimo” apsaugai Typeform.

Make privalumas čia — matomumas: scenarijų redaktorius parodo faktinį JSON siuntinį kiekviename žingsnyje prieš jį įjungiant, tai daro klaidingo lauko susiejimo derinimą daug greitesnį nei Zapier linijiškesnis žingsnis po žingsnio testavimo vaizdas.

n8n atitikmuo

n8n geriausiai tinka, jei norite šio sprendimo savarankiškai talpinamo, arba jei jau automatizuojate kitas savo pakuotės dalis ten:

  1. Trigerio mazgas — Typeform Trigger / Stripe Trigger / Mailchimp Trigger (visi įtaisyti mazgai).
  2. HTTP Request mazgas — metodas POST, URL https://api.badges.ninja/awards, autentifikacija nustatyta kaip Header Auth su jūsų X-Api-Key, saugomu kaip n8n prisijungimo duomenys (ne užkoduotu mazge), JSON turinys sukurtas iš išraiškos, nurodančios į trigerio mazgo išvestį.
  3. IF mazgas (nebūtinas) — ta pati užbaigimo/sumos apsauga kaip aukščiau, patalpinta prieš HTTP Request mazgą.

Kadangi n8n prisijungimo duomenys yra šifruoti ir daugkartinio naudojimo įvairiose darbo eigose, tai švaresnis pasirinkimas, jei planuojate daugiau nei vieną Badges Ninja automatizaciją — nustatykite prisijungimo duomenis kartą ir naudokite juos kiekvienoje darbo eigoje, kuriai reikia išduoti ženklelius.

Kodėl bendras webhook žingsnis, o ne native aplikacija

Zapier, Make ir n8n visi turi aplikacijų rinkas, ir instinktas — ieškoti „Badges Ninja” aplikacijos prieš griebiantis bendro HTTP/webhook modulio. Praleiskite šią paiešką — tokiam nedideliam REST API (sukurti išdavėją, sukurti ženklelį, sukurti apdovanojimą, ir viskas) bendras webhook žingsnis paleidžia jus per dešimt minučių be jokios priklausomybės nuo trečiosios šalies aplikacijos prižiūrėtojo, spėjančio su API pokyčiais. Skirta aplikacija prideda abstrakcijos sluoksnį, kurio nereikia: vis tiek pildytumėte tuos pačius badgeId, recipient.email ir recipient.name laukus, tik per formą, o ne JSON turinį. API dokumentacija pakankamai trumpa, kad ją perskaitytumėte per penkias minutes, o tai padarę, pamatysite, kad tiesioginis HTTP metodas iš tiesų mažiau pažeidžiamas — nėra aplikacijų parduotuvės patvirtinimo ciklo tarp Badges Ninja API pakeitimo ir jūsų automatizacijos, vėl pradedančios veikti.

Išbandykite prieš įjungdami gyvai

Kiekviena aukščiau minėta platforma suteikia būdą paleisti vieną testinį vykdymą, nelaukiant tikro trigerio įvykio:

  • Zapier — naudokite „Test” ties trigerio žingsniu, kad gautumėte pavyzdinį įrašą, tada „Test” ties webhook veiksmu, kad išsiųstumėte tiksliai vieną tikrą užklausą. Prieš įjungdami Zap, patikrinkite, ar apdovanojimas atsirado jūsų prietaisų skydelyje.
  • Make — paleiskite scenarijų rankiniu būdu vieną kartą (mygtukas „Run once”) su pavyzdiniu paketu ir apžiūrėkite HTTP modulio išvesties burbulą, kad pamatytumėte tikrą atsako turinį.
  • n8n — naudokite „Execute Node” ties HTTP Request mazgu su testiniais įvesties duomenimis — taip matysite užklausą ir atsaką tiesiai redaktoriuje.

Du dalykai, kuriuos verta patikrinti per pirmąjį testinį paleidimą: ar užkoduotas badgeId iš tikrųjų priklauso tam ženkleliui, kurį manote, kad priklauso (pasenęs ID iš sudubliuoto Zap — dažna klaida), ir ar gavėjo el. pašto laukas ištraukia tikrą adresą, o ne neišspręstą vietos rezervavimo ženklą, pvz., {{email}}, likusį dėl susiejimo klaidos. Abi klaidos nematomos automatizacijos platformos „sėkmės” indikatoriuje — HTTP užklausa vis tiek grąžina 200 bet kuriuo atveju — todėl vienintelis patikimas patikrinimas yra atidaryti apdovanojimą savo prietaisų skydelyje ir įsitikinti, kad gavėjas yra tas, kurio tikitės.

Dvigubų ženklelių išvengimas

Bet kuris iš aukščiau minėtų trigerio šaltinių realiomis sąlygomis gali suveikti daugiau nei kartą dėl to paties įvykio — Stripe pakartoja webhook siuntimą pasibaigus laikui, Typeform gali dvigubai pateikti duomenis esant lėtam ryšiui, Mailchimp automatizacijos gali suveikti pakartotinai, jei žyma pašalinama ir vėl pridedama. Jei jūsų ženklelio išdavimas nėra idempotiškas, tai virsta gavėjais, gaunančiais tą patį kredencialą du kartus — tai atrodo aplaidžiai ir generuoja pagalbos laiškus.

Švariausia apsauga — paieškos prieš kūrimą žingsnis: prieš /awards POST pridėkite Search veiksmą (Zapier „Find Award” per GET užklausą, arba atitinkamas Make/n8n HTTP GET) prieš jūsų pačių apdovanojimų įrašus — lengvas Google Sheet ar Airtable žurnalas, į kurį tas pats Zap rašo iškart po sėkmingo apdovanojimo, čia puikiai tinka, jei nenorite tam užklausti API. Jei įrašas jau egzistuoja tai gavėjo + ženklelio kombinacijai, nukreipkite į tuščią veiksmą, o ne išduokite iš naujo. Tai penkių minučių papildymas, ir tai skirtumas tarp automatizacijos, kuria pasitikite be priežiūros, ir tos, kurią turite prižiūrėti.

Kai no-code neužtenka

Šie receptai gerai apima pavienio įvykio trigerius. Kai pradedate išduoti šimtus ženklelių iš vieno CSV eksporto — baigiamosios kohortos, konferencijos dalyvių sąrašo, masinio CE kreditų atnaujinimo — praleiskite automatizacijos platformą ir naudokite masinį ženklelių įkėlimą tiesiogiai: jis sustoja ir tęsiasi vidury paketo bei išgyvena uždarytą naršyklės skirtuką, ko no-code webhook ciklai netvarko sklandžiai dideliu mastu.


Pasiruošę išduoti savo pirmą patikrinamą kredencialą? Pradėkite nemokamai svetainėje badges.ninja — vizualinis dizaineris, vieša patikrinimo puslapis, PDF sertifikatas, Open Badge v2.0 išvestis. Kreditinės kortelės nereikia.

Nacho Coll

Apie autorių

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.

Grįžti į Tinklaraštį

Susiję straipsniai