Quick overview
Youtube Link: https://youtu.be/l5ElbsX1-zs
This workflow collects apartment turnover condition reports via an n8n form, looks up unit context in Google Sheets, uses Google Gemini to generate a prioritized maintenance job with an SLA, writes the job back to Google Sheets, and notifies the assigned technician via Gmail and Slack.
How it works
- Receives a turnover condition report from an n8n Form submission (Unit ID and Condition Report).
- Normalizes the submission data and fetches the unit profile and prior turnover history from Google Sheets.
- Sends the submission, unit profile, and history to Google Gemini to classify priority, select a trade, and return structured tasks, estimates, and risk flags.
- Generates a unique job ID and calculates an SLA due date based on the priority level.
- Appends the new turnover job record to a Google Sheets “turnover jobs” sheet and looks up an on-call technician from a Google Sheets “technicians details” sheet by trade.
- Emails the technician the job details via Gmail and posts the assignment summary to a Slack channel, then appends an “Assigned” status update back into Google Sheets.
Setup
- Create or connect a Google Sheets spreadsheet with the required tabs/columns for units, turnover jobs, and technician details, and update the document and sheet references if you use different IDs or names.
- Add Google Sheets service account credentials (Google API) with access to the spreadsheet.
- Add a Google Gemini (Google PaLM) API credential and ensure the workflow is configured to use the gemini-3.1-flash-lite model.
- Add Gmail OAuth2 credentials and update the recipient email address and email template content as needed.
- Add Slack credentials and select the target channel for maintenance notifications.
- Publish the form and share the generated form URL with the team submitting turnover reports.