Real Estate AI Automation System – Setup Guide

Real Estate AI Automation System – Setup Guide

Overview

This system automates real estate agent prospecting and AI phone system provisioning through 3 n8n workflows:

  1. Agent Finder – Scrapes Realtor.com agents by ZIP code
  2. Outreach Campaign – Sends SMS/email campaigns to prospects
  3. AI Provisioner – Creates voice AI agents for interested prospects

πŸ”§ Environment Variables

Add these to your n8n environment settings:

Required Variables

# Google Sheets
SHEET_ID=1abc123xyz789_your_google_sheet_id

# Apify (for web scraping)
APIFY_TOKEN=apify_api_Ra6a2t4PN5yNSQgjGfJawUPmfr2rL60QbaSS

# Twilio (for SMS)
TWILIO_SID=ACxxxxxxxxxxxxxxxxxxxx
TWILIO_FROM=+15551234567

# SendGrid (for email)
SENDGRID_TOKEN=SG.xxxxxxxxxxxxxxxxxx
FROM_EMAIL=noreply@yourcompany.com
FROM_NAME=Xtream Solutions

# Voice AI Platform
VOICEAI_BASE_URL=https://api.yourvoiceai.com
VOICEAI_API_KEY=vapi_xxxxxxxxxxxxxxxxxx

# Telecom Provider (for phone numbers)
TELCO_BASE_URL=https://api.yourtelco.com  
TELCO_API_KEY=tk_xxxxxxxxxxxxxxxxxx

# Webhooks
VOICE_WEBHOOK_URL=https://your-n8n-host.com/webhook/re/voice/inbound

# Optional
FALLBACK_EMAIL=support@yourcompany.com

πŸ“Š Google Sheets Setup

Create a Google Sheet with these exact headers:

Sheet 1: “agents”

id | name | phone | email | website | market | sales12m | source | url | contacted | status | notes | created_at

Sheet 2: “outreach”

agent_id | channel | body | status | error | ts | phone | email | name

Important Notes:

  • Sheet names must be exactly agents and outreach
  • Headers must match exactly (case-sensitive)
  • Make the sheet publicly accessible or set up Google Sheets API credentials in n8n

πŸš€ Workflow Installation

Step 1: Import Workflows

  1. In n8n, go to Workflows β†’ Import from file
  2. Import all 3 JSON workflows provided
  3. Save and activate each workflow

Step 2: Configure Credentials

Set up these credentials in n8n:

  1. Google Sheets (n8n creds) – OAuth or Service Account
  2. Twilio Basic Auth – Username: TWILIO_SID, Password: TWILIO_TOKEN
  3. Any additional API credentials for your Voice AI and Telecom providers

Step 3: Test Webhooks

Each workflow creates webhook endpoints. Note the URLs:

  • Agent Finder: https://your-n8n-host/webhook/re/agents/realtor-by-zips
  • Outreach: https://your-n8n-host/webhook/re/outreach/run
  • Provisioner: https://your-n8n-host/webhook/re/voice/provision

πŸ“ Usage Examples

1. Scrape Agents by ZIP Code

POST https://your-n8n-host/webhook/re/agents/realtor-by-zips

{
  "zip_codes": ["32926", "32927", "32934", "32935"],
  "market": "Brevard County"
}

Response:

{
  "found": 47,
  "inserted": 12,
  "sample": [
    {
      "id": "a1b2c3d4e5f6...",
      "name": "John Smith",
      "phone": "3214567890",
      "email": "john@realty.com",
      "market": "Brevard County",
      "source": "realtor.com"
    }
  ]
}

2. Run Outreach Campaign

POST https://your-n8n-host/webhook/re/outreach/run

{
  "limit": 25,
  "market": "brevard county",
  "brand": "Xtream Solutions",
  "bookingUrl": "https://calendly.com/yourcompany/demo"
}

Response:

{
  "campaign_complete": true,
  "total_agents": 25,
  "sms_sent": 23,
  "emails_sent": 25,
  "timestamp": "2024-09-07T10:30:00Z"
}

3. Provision AI Agent (when someone replies “YES”)

POST https://your-n8n-host/webhook/re/voice/provision

{
  "agent_id": "a1b2c3d4e5f6..."
}

Response:

{
  "success": true,
  "agent_id": "a1b2c3d4e5f6...",
  "agent_name": "John Smith", 
  "ai_agent_id": "vapi_agent_123",
  "phone_number": "+13214567890",
  "setup_complete": true,
  "message": "AI agent provisioned successfully!"
}

πŸ”„ Typical Workflow

  1. Scrape Agents: Run Agent Finder with target ZIP codes
  2. Campaign Launch: Run Outreach on new/uncontacted agents
  3. Monitor Responses: Check SMS replies for “YES” responses
  4. Provision AI: When agent replies “YES”, trigger Provisioner with their agent_id
  5. Follow-up: Agent receives onboarding email with setup instructions

πŸ“§ SMS & Email Templates

SMS Template (includes required opt-out)

Hey [FirstName], quick win: we set up a 24/7 AI receptionist for solo agents that answers missed calls, books showings, and emails transcripts. Most agents see +30% more captured leads. 14-day free trial. Reply YES for info. Reply STOP to opt-out.

Email Template

Subject: Stop losing Zillow/Realtor calls – 14-day AI trial

Hi [FirstName],

Solo agents lose deals to missed calls. We deploy a 24/7 voice AI that answers, qualifies, and books appointments in minutes.

Benefits:
β€’ Answers every call 24/7
β€’ Qualifies leads automatically  
β€’ Books showings in your calendar
β€’ Emails you transcripts
β€’ Most see +30% more captured leads

Try it FREE for 14 days – no number changes needed.

Ready to stop missing opportunities?

Best regards,
Xtream Solutions
Book a demo: https://calendly.com/yourcompany/demo

πŸ› οΈ Troubleshooting

Common Issues

Apify Task Fails:

  • Verify APIFY_TOKEN is correct
  • Check if task knowledg3~realtor-agents-by-brevard-county-zip-codes-task exists
  • Ensure ZIP codes are valid Florida codes

SMS Not Sending:

  • Verify Twilio credentials and from number
  • Check phone number format (must include country code)
  • Ensure SMS opt-out compliance

Email Failures:

  • Verify SendGrid API key and from email is verified
  • Check email addresses are valid format
  • Monitor SendGrid activity dashboard

Google Sheets Errors:

  • Ensure sheet names are exactly agents and outreach
  • Verify column headers match specification exactly
  • Check Google Sheets API credentials

Monitoring & Logs

  • Check n8n execution logs for detailed error messages
  • Monitor the outreach sheet for campaign performance
  • Use Google Sheets filters to view agent status progression

πŸ” Security Notes

  • Store all API keys as environment variables, never in workflow code
  • Use HTTPS for all webhook endpoints
  • Regularly rotate API keys
  • Monitor usage to prevent abuse
  • Ensure compliance with SMS/email marketing regulations

πŸ“ˆ Scaling Tips

  • Use limit parameter in outreach to control batch sizes
  • Monitor API rate limits for all services
  • Consider adding delays between API calls for large campaigns
  • Set up alerting for failed workflows
  • Regular backup of Google Sheets data

Need help? Check the n8n community forums or contact support!

Share this post

Leave a Reply

Your email address will not be published. Required fields are marked *