Tenant Maintenance Request Router
Example prompt: "When a tenant submits a maintenance request through our Typeform, first scan the description for critical safety keywords — gas leak, fire, flooding, no heating, no power, or structural damage — and treat any match as an automatic emergency. Then classify the issue as plumbing, electrical, structural, or general, and rate the urgency as emergency, high, or routine. If it's an emergency by either the keyword check or the classification, send an immediate email to our emergency contractor and a Slack alert to the property management channel. For everything else, create a task in Asana assigned to the relevant trade category with the urgency noted. Either way, send the tenant a confirmation email telling them what happens next and who to call if it's urgent."
The Problem
Tenants report maintenance issues at all hours, and the descriptions range from precise ("the boiler pressure keeps dropping below 0.5 bar") to vague ("something's leaking somewhere"). A property manager receiving these has to read each one, decide whether it is urgent, work out which contractor handles that type of job, and then email the right person — all while fielding calls about other properties. Urgent issues that arrive at the weekend can sit unnoticed until Monday if someone is not actively checking.
How GloriaMundo Solves It
We build a webhook-triggered workflow that fires the moment a tenant submits a maintenance form. A code step first scans the description for critical safety keywords — gas leak, fire, flooding, no heating, no power, structural damage — and flags any match as an automatic emergency regardless of what follows. An LLM step then classifies the issue by trade category and urgency level. A conditional step routes emergencies to an immediate notification path — email to the emergency contractor and a Slack alert — while non-emergency issues create a task in Asana with the trade category, urgency, and tenant details. If the keyword scanner and the LLM disagree, the workflow takes the more urgent of the two and flags the discrepancy in the Slack notification, so the team can review. In all cases, the tenant receives a confirmation email explaining what happens next. Glass Box preview shows the classification decision, any keyword overrides, the drafted emails, and the task details before execution, so the property manager can override the routing if needed.
Example Workflow Steps
- Trigger (webhook): Tenant submits a maintenance request via Typeform.
- Step 1 (code): Scan the description for critical safety keywords (gas leak, fire, flooding, no heating, no power, structural damage). If any match, flag as emergency immediately.
- Step 2 (llm): Analyse the description and classify the issue by category (plumbing, electrical, structural, general) and urgency (emergency, high, routine).
- Step 3 (conditional): If either the keyword scan or the LLM flagged emergency, proceed to the emergency path. If they disagree, take the more urgent classification and note the override. Otherwise, proceed to the standard path.
- Step 4a (integration): Emergency path — Send an email to the emergency contractor with the property address, tenant contact, and issue description. Post an alert to the #maintenance Slack channel, noting if the emergency was keyword-triggered.
- Step 4b (integration): Standard path — Create an Asana task assigned to the relevant trade category with urgency, tenant details, and the full description.
- Step 5 (integration): Send a confirmation email to the tenant via Gmail, explaining that their request has been logged and providing the appropriate contact number for emergencies.
Integrations Used
- Typeform — captures the maintenance request from the tenant
- Gmail — sends contractor notifications and tenant confirmation emails
- Slack — alerts the property management team to emergencies
- Asana — creates and assigns maintenance tasks by trade category
Who This Is For
Property managers and lettings agents overseeing multiple rental properties who need maintenance requests triaged and routed without manual sorting, especially outside office hours.
Time & Cost Saved
Triaging a maintenance request manually — reading the description, deciding urgency, emailing the right contractor, and confirming with the tenant — takes around 10 minutes per request. A portfolio of 50 rental units might generate 15–20 requests per month. This workflow handles the routing in under a minute at a few credits per request, and ensures emergencies are never left sitting in an inbox overnight.