FSA Fellowship Automation Workflow
1. Purpose
This workflow handles new FSA Fellowship form rows from Google Sheets. When a row is added, it cleans fields, validates the row, then creates a record in PocketBase (fs-forms API), tracks the user and sends a message via Interakt, and notifies via Brevo. Invalid rows are skipped.
Status: Active
2. Trigger
Type: Google Sheets (row added)
Details:
Node: Google Sheets Trigger (rowAdded)
The workflow starts when a new row is added to the configured fellowship Google Sheet.
3. Step-by-Step Process
Step 1: Google Sheets Trigger (rowAdded)
What happens here: Detects a new sheet row for an FSA Fellowship submission.
What input it uses: New Google Sheet row payload.
Why this step is needed: Starts automation as soon as a signup / application lands in the sheet.
Step 2: Set - Clean Fields
What happens here: Maps and cleans sheet columns into a consistent payload (trim, rename, normalize).
Operation: manual / Set
What input it uses: Raw sheet row.
What output it produces: Cleaned field object for validation and downstream APIs.
Why this step is needed: Sheet columns vary; APIs need stable field names and values.
Step 3: IF - Valid Row
What happens here: Checks whether the cleaned row meets required criteria (email / name / required fields, etc.).
Branches:
- true - continue to Brevo / Interakt / PocketBase path
- false - Invalid Row (Skip) and stop
Why this step is needed: Avoids creating CRM / messaging noise from incomplete or test rows.
Step 4: Ready For Brevo/Interakt
What happens here: Pass-through / junction after a valid row, before the API chain.
Why this step is needed: Clear handoff point into the external integrations.
Step 5: Create RAD in PocketBase
What happens here: Creates a fellowship / RAD record via HTTP POST to the fs-forms PocketBase API.
Method / URL pattern: POST https://fs-forms-api.fs...
What input it uses: Cleaned valid row fields.
What output it produces: Created record response from PocketBase.
Why this step is needed: Persists the submission in the forms backend.
Step 6: Interakt Track User
What happens here: Upserts / tracks the user in Interakt (WhatsApp CRM).
Method / URL pattern: POST https://api.interakt.ai/v...
Why this step is needed: Ensures the contact exists in Interakt before messaging.
Step 7: Interakt Send Message
What happens here: Sends the fellowship WhatsApp (or Interakt) message template to the user.
Method / URL pattern: POST https://api.interakt.ai/v...
Why this step is needed: Immediate applicant outreach on Interakt.
Step 8: Brevo Direct
What happens here: Sends email (or related Brevo action) via Brevo API.
Method / URL pattern: POST https://api.brevo.com/...
Why this step is needed: Parallel email notification / welcome path alongside Interakt.
Invalid path: Invalid Row (Skip)
What happens here: Ends the run for rows that failed the IF Valid Row check. No PocketBase, Interakt, or Brevo calls.
4. Workflow Logic Summary
- New Google Sheet row triggers the flow
- Clean and normalize fields
- If invalid - skip
- If valid - create PocketBase RAD record
- Track user in Interakt, then send Interakt message
- Send Brevo notification
5. Diagram / Screenshot
Google Sheets Trigger (rowAdded)
-> Set - Clean Fields
-> IF - Valid Row
false -> Invalid Row (Skip)
true -> Ready For Brevo/Interakt
-> Create RAD in PocketBase (POST fs-forms-api)
-> Interakt Track User (POST api.interakt.ai)
-> Interakt Send Message (POST api.interakt.ai)
-> Brevo Direct (POST api.brevo.com)
6. Dependencies
Google Sheets
- Purpose: Fellowship form / application intake
- Trigger:
rowAdded - Requires Auth: Yes (Google Sheets OAuth in n8n)
PocketBase / fs-forms API
- Purpose: Create RAD / fellowship record
- Endpoint pattern:
https://fs-forms-api.fs...(POST) - Requires Auth: As configured on the HTTP Request node
Interakt
- Purpose: Track user + send WhatsApp / messaging
- Endpoint pattern:
https://api.interakt.ai/v...(POST) - Requires Auth: Interakt API key in n8n
Brevo
- Purpose: Email / direct Brevo API notification
- Endpoint pattern:
https://api.brevo.com/...(POST) - Requires Auth: Brevo API key in n8n
External Services
| Service | Role |
|---|---|
| Google Sheets | Row trigger / intake |
| fs-forms PocketBase API | Persist RAD |
| Interakt | Track + message |
| Brevo | Email notify |
7. Source Links
n8n Instance
Workflow URL: https://agent.fsgarage.in/workflow/yj6pfdlapEghoaxN
Workflow Name: FSA Fellowship automation
Workflow ID: yj6pfdlapEghoaxN
n8n Instance URL: https://agent.fsgarage.in
Related Workflows
- Wally Signup Users Info - Similar signup / Slack / email onboarding pattern
- Email Automation - Campaign SMTP email from Sheets
- Workflows Index - View all workflows
- Workflow Template - Template for new workflow docs