
Tell another tool when a student finishes a lesson, a course or joins my list
Your course lives in bernard, but you might still use another tool for some things: ActiveCampaign while you move, a spreadsheet of who finished, a community app that needs to know who has joined. A webhook is how bernard tells that tool, straight away, when something happens.
The prompt
“Connect [my site] to [Zapier / Make / my own system] so it hears when [a student finishes a course / someone new joins my contacts / a tag is added]. Tell me exactly what personal data will be sent before you switch it on.”
Signed in, Get my prompt fills in your site for you. Otherwise press Copy and fill in the [bracketed] parts. First time? Connect your AI to bernard once: Use your own AI (opens in a new tab).
What bernard can tell it
You choose which of these each connection hears about:
- a student joins a course;
- a student finishes a lesson or finishes a module;
- a student passes a quiz, or passes every required quiz;
- a student finishes a course, or gets their certificate;
- a new person arrives in your contacts from a sale, an enrolment or a form on your site (not people you import or add by hand);
- a person is given a tag.
A lesson counts as finished when its video ends or most of it has played, the same moment your course emails use (Email my students when they reach each point in my course).
Exactly what leaves bernard
Each message carries the person’s email address and name. A course message also says which course, and which lesson, module, quiz or certificate. A tag message says which tag. That is all: no phone number, no postal address, no payment details, and none of their form answers.
That is still personal data going to another company, so only the account owner can switch a connection on. Bernard shows you the sentence first, for example “bernard will send the email address, name and course progress of your students to hooks.zapier.com”, and nothing is connected until you approve it.
The messages always have the same shape, so the other tool keeps working. Bernard cannot invent a new one.
Setting one up
Ask Bernard in the Workshop, for example “tell Zapier when a student finishes a
course”. It will ask for the address the other tool gave you (it must start
https://), show you what will be sent, and wait for your yes.
The answer includes a secret, shown once. If the other tool can check a signature, paste the secret in there straight away. Then ask Bernard to send a test: it sends a made-up sample student, never a real one, and tells you what the other tool answered.
For the technically minded: each message is a POST of JSON, signed with
HMAC-SHA256 over the timestamp, a full stop, and the exact body, in the
X-Bernard-Signature header, with the timestamp in X-Bernard-Timestamp.
Reject a message whose timestamp is more than a few minutes old.
Checking it is working
Ask Bernard how your connections are doing. For each one it shows the last 20 deliveries: delivered or failed, what the other tool answered, and when. It never shows what was sent.
If the other tool is down, bernard tries again a few times. If a connection keeps failing, many times in a row, bernard switches it off and puts a note in your activity log. Ask Bernard to switch it back on once the other tool is fixed.
To stop sending, ask Bernard to switch the connection off or delete it; both are shown to you first and wait for your approval. Your contacts themselves are in Where do the people who buy, join or ask end up?.
Questions people ask
- Which things can bernard tell another tool about?
- Nine: a student joins a course, finishes a lesson, finishes a module, passes a quiz, passes every required quiz, finishes a course or gets their certificate; a new person arrives in your contacts; a person is given a tag. You choose which ones each connection hears about.
- What personal data leaves bernard?
- The person’s email address and name, every time. For a course event, also which course and which lesson, module, quiz or certificate. For a tag, the tag. Nothing else: no phone number, no address, no payment details, no answers from your forms. Before anything is switched on, Bernard shows you the exact sentence and the company it goes to, and waits for your approval.
- Who can set this up?
- Only the account owner, because it sends your contacts’ details to another company. A team member who asks is told so.
- What is the secret for?
- Every message bernard sends carries a signature made with a secret, so the other tool can check it really came from bernard. The secret is shown once, when the connection is made. Copy it into the other tool then; it is never shown again. If you lose it, delete the connection and make a new one.
- What happens if the other tool is down?
- bernard tries again five more times over about half an hour, and you can see what happened to each of the last 20 deliveries. If a connection fails many times in a row, bernard switches it off and says so in your activity log, so a dead address stops piling up.
- Can I try it without sending a real person’s details?
- Yes. Ask Bernard to send a test. It sends made-up data, a sample student at an example address, and tells you what the other tool answered.
- Will students who finished lessons before I connected it be sent?
- No. Only things that happen after the connection is made are sent. A student’s older lessons that their browser reports later are not sent either.