Quick overview
This workflow powers a QR code-based event attendance system. A presenter displays a QR code (generated via the companion web app) which participants scan with their phones. Scanning opens a registration form pre-filled with the Event ID; on submission, the form POSTs to this webhook.
How it works
- Receives a POST request via a webhook secured with Basic Auth.
- Validates the request body (name, email format, and optional role/event/day) and generates a timestamp plus a target Google Sheets tab name.
- If validation fails, returns an error JSON response to the caller.
- Reads all existing rows from the Google Sheets tab for the selected day and checks whether the email address is already registered.
- If the email is a duplicate, returns an “already registered” JSON response.
- If the email is new, appends the attendee details to Google Sheets, sends a confirmation email through Gmail, and returns a success JSON response.
Setup
- Configure the webhook Basic Auth credentials and share the webhook URL with the form/app that submits attendance data.
- Add Google Sheets OAuth2 credentials and update the spreadsheet ID and ensure each day has a matching tab name (for example, “Day 1” maps to a “Day1” sheet).
- Add Gmail OAuth2 credentials and confirm the sender name and email content/subject match your event details.
Customization
- Change the duplicate-check key (default: email + eventId) to match your deduplication strategy.
- Add or remove required fields in the validation Code node.
- Customize the error, duplicate, and success JSON response bodies to match what the front-end expects.
- To support multi-day events, extend the Google Sheets column mapping to include the day field sent in the payload.