Enroll new student intake form responses in Blackboard

Every intake form response becomes a Blackboard account, a course enrollment, a welcome email, and a logged row in your intake spreadsheet.

Deterministic Code
BlackboardGoogle FormsGmailGoogle SheetsOperationsHR & PeopleOnboarding AutomationData SyncEmail Automation
PromptCreate

Whenever a new response lands on our student intake Google Form, create the student in Blackboard and enroll them automatically. Trigger the workflow on a new Google Forms response and read the submission with List Responses to pull out the student's full name, email address, student ID, and the course code they are joining.

Next, check whether that person already has a Blackboard account. Call Get Users and look them up by the email address from the form. Blackboard IDs accept secondary ID prefixes, so pass emailAddress:<the address from the form> instead of trying to guess the internal _123_1 primary key. If a matching user comes back, reuse it. If nobody matches, call Create User with the student's given and family name, their email address, the student ID as the external ID, and a username derived from the local part of the email. Creating a user who already exists returns a 409 conflict on the duplicate external ID, which is exactly what the lookup is there to prevent, so never call Create User without checking first.

Enroll the student with Create Course Membership. Address the course as courseId:<the course code from the form> so the human readable code people type on the form works directly, and address the user with the id returned from the lookup or the create step. Set the course role to Student and make the membership available. If Blackboard reports that the membership already exists, treat that as success rather than failing the run, but skip the welcome email in that case so a returning student is not emailed twice. Then call Get Course on the same courseId so the email can use the course's real display name rather than the raw code.

Send the student a welcome message through Gmail with Send a Message. Address it to the email from the form, use a subject along the lines of "You are enrolled in <course name>", and write a short friendly body that greets them by first name, confirms the course they have been added to, tells them where to sign in to Blackboard, and lists two or three first steps: set a password if the account was just created, open the course, and read the syllabus and any announcements. Plain text, no attachments.

Finally, append one row to our student intake log in Google Sheets with Append Values. Record the submission timestamp, student name, email address, student ID, course code, course name, the Blackboard user id, and whether the account was newly created or already existed. Write a row for every response, including the ones that fail.

Two rules to bake in. If the course code on the form does not resolve to a real Blackboard course, skip the enrollment and the welcome email, and still write the log row with the failure reason so someone can follow up. And process each form response exactly once, so no student is ever enrolled or emailed twice. Note that the Blackboard connection needs write access on top of read, because this workflow creates users and memberships.

Additional information

What does this prompt do?
  • Watches your student intake form and picks up each new response as it arrives, pulling the student's name, email address, student ID, and the course code they are joining.
  • Checks Blackboard for an existing account first, creates one only if the student is new, then enrolls them in the course they picked with the Student role.
  • Emails the student a friendly welcome with their course name and the first few things to do.
  • Adds a row to your intake log spreadsheet for every submission, noting whether the account was newly created or already there.
What do I need to use this?
  • A Google account with your student intake form and your intake log spreadsheet
  • A Blackboard Learn login for your institution, with permission to add people and enroll them in courses
  • A Gmail account to send the welcome message from
  • An intake form that collects the student's name, email address, student ID, and the course code they are joining
How can I customize it?
  • Rewrite the welcome email in your own voice, or send it from a shared admissions address instead of a personal one.
  • Swap the Student role for another course role if some responses are for teaching assistants or guests.
  • Add columns to the intake log, or point it at a fresh spreadsheet tab each term.

FAQs

What happens if the student already has a Blackboard account?
The workflow looks them up by email address first and reuses the existing account instead of creating a duplicate. The log row records that the account already existed.
Does this work with any course?
Yes, as long as the course code a student types on the form matches the course code in Blackboard. If it does not match anything, the workflow skips the enrollment and writes the reason into the log so someone can follow up.
How soon after submitting the form does a student get set up?
The workflow watches for new responses continuously, so students are normally created, enrolled, and emailed within a few minutes of hitting submit.
Will a student get emailed twice if they submit the form again?
No. Each response is handled once, and if the person is already enrolled in that course the workflow just records it in the log rather than sending another welcome message.
Do I need to be technical to set this up?
No. You connect your Google account, your Blackboard login, and Gmail, then point the workflow at your intake form and your log spreadsheet. After that it runs on its own.

Related templates

Chase past-due JobNimbus invoices with escalating emails

Every weekday, find every unpaid JobNimbus invoice, email each customer one reminder that gets firmer as it ages, and post a receivables summary to Slack.

JobNimbus
Gmail
Slack Bot
Agentic Task
Turn website roof inspection requests into JobNimbus leads

New roof inspection requests from your website form land in JobNimbus within a minute, with no duplicate records and nothing retyped by your team.

JobNimbus
Google Forms
Slack
Agentic Task
Flag at-risk students in Canvas before they fall behind

Every weekday at 7am, your active courses are checked for missing work, silent logins, and slipping grades, with a ranked list sent to your advising channel.

Canvas
Google Sheets
Slack Bot
Agentic Task
Weekly Canvas grading backlog report in Slack and Sheets

Every Monday at 8am, see exactly which assignments have work waiting, sorted worst first, posted to Slack and logged to a spreadsheet.

Canvas
Slack Bot
Google Sheets
Deterministic Code
Weekday early alert digest for at-risk students in Slack

Every weekday morning your advising team gets a ranked list of students slipping behind in each course, plus a tracking log that shows whether outreach worked.

Blackboard
Slack Bot
Google Sheets
Agentic Task
Turn every completed roofing job into a review request

Every evening we find the jobs you just finished, email each customer a personal review request, and log it on the job so nothing slips.

JobNimbus
Gmail
Agentic Task

Stop hand-keying student enrollments.

Let every intake form response create the account, enroll the student, and send the welcome email without anyone touching it.