Skip to main content
POST
/
outbound
/
maintenance
/
schedule
curl -X POST https://api.avoca.ai/v1/outbound/maintenance/schedule \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "X-Workspace-ID: YOUR_WORKSPACE_ID" \
  -H "Content-Type: application/json" \
  -d '{
    "team_id": 123,
    "customer_name": "Bob Wilson",
    "phone_number": "+13105551234",
    "last_service_date": "2023-07-15",
    "equipment_type": "HVAC System",
    "maintenance_due": "2024-01-25",
    "equipment_details": {
      "brand": "Carrier",
      "model": "58CVA090",
      "age_years": 8,
      "warranty_status": "expired"
    },
    "maintenance_plan": {
      "plan_type": "premium",
      "expires": "2024-12-31",
      "services_included": ["Spring tune-up", "Fall tune-up", "Filter changes"],
      "discount_percentage": 15
    },
    "schedule_options": {
      "days_before_due": 10,
      "preferred_days": ["tuesday", "wednesday", "thursday"],
      "preferred_time": "morning"
    },
    "incentive_offer": {
      "type": "discount",
      "value": "$30 off when you book this week",
      "expires": "2024-01-20"
    }
  }'
{
  "success": true,
  "data": {
    "id": "maint_call_789",
    "customer_id": "cust_456",
    "scheduled_for": "2024-01-15T10:00:00Z",
    "status": "scheduled",
    "campaign_type": "premium_maintenance_reminder"
  },
  "meta": {
    "request_id": "req_abc123",
    "timestamp": "2024-01-05T09:00:00Z"
  }
}
Maintenance calls proactively reach out to customers when their equipment is due for service, helping prevent breakdowns and generating predictable revenue through maintenance agreements.

Request

team_id
number
required
Your ServiceTitan team/tenant ID
customer_name
string
required
Customer’s full name
phone_number
string
required
Customer’s phone number
last_service_date
string
required
Date of last maintenance service (YYYY-MM-DD)
equipment_type
string
required
Type of equipment needing maintenance:
  • HVAC System
  • AC Unit
  • Furnace
  • Water Heater
  • Heat Pump
  • Boiler
  • Generator
maintenance_due
string
required
Date when maintenance is due (YYYY-MM-DD)
equipment_details
object
Equipment information for personalized calls
maintenance_plan
object
Customer’s maintenance agreement details
schedule_options
object
When to place the maintenance call
incentive_offer
object
Special offer to encourage booking
assistant_id
string
Specific AI assistant for maintenance calls

Response

success
boolean
Whether the maintenance call was scheduled successfully
data
object
Maintenance call details
curl -X POST https://api.avoca.ai/v1/outbound/maintenance/schedule \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "X-Workspace-ID: YOUR_WORKSPACE_ID" \
  -H "Content-Type: application/json" \
  -d '{
    "team_id": 123,
    "customer_name": "Bob Wilson",
    "phone_number": "+13105551234",
    "last_service_date": "2023-07-15",
    "equipment_type": "HVAC System",
    "maintenance_due": "2024-01-25",
    "equipment_details": {
      "brand": "Carrier",
      "model": "58CVA090",
      "age_years": 8,
      "warranty_status": "expired"
    },
    "maintenance_plan": {
      "plan_type": "premium",
      "expires": "2024-12-31",
      "services_included": ["Spring tune-up", "Fall tune-up", "Filter changes"],
      "discount_percentage": 15
    },
    "schedule_options": {
      "days_before_due": 10,
      "preferred_days": ["tuesday", "wednesday", "thursday"],
      "preferred_time": "morning"
    },
    "incentive_offer": {
      "type": "discount",
      "value": "$30 off when you book this week",
      "expires": "2024-01-20"
    }
  }'
{
  "success": true,
  "data": {
    "id": "maint_call_789",
    "customer_id": "cust_456",
    "scheduled_for": "2024-01-15T10:00:00Z",
    "status": "scheduled",
    "campaign_type": "premium_maintenance_reminder"
  },
  "meta": {
    "request_id": "req_abc123",
    "timestamp": "2024-01-05T09:00:00Z"
  }
}

Maintenance Call Completion Webhook

When the maintenance call completes, receive detailed results:
{
  "event": "maintenance_call.completed",
  "timestamp": "2024-01-15T10:15:00Z",
  "data": {
    "id": "maint_call_789",
    "customer_id": "cust_456",
    "status": "completed",
    "duration": 156,
    "connected": true,
    "appointment_scheduled": true,
    "appointment_details": {
      "date": "2024-01-25",
      "time": "10:00 AM - 12:00 PM",
      "service_type": "HVAC Maintenance",
      "technician": "Available"
    },
    "offer_accepted": true,
    "callback_requested": false,
    "opt_out": false,
    "transcript_url": "https://api.avoca.ai/v1/calls/call_123/transcript"
  }
}

Best Practices

  1. Timing: Call 2-3 weeks before maintenance is due
  2. Personalization: Reference specific equipment and last service
  3. Value Proposition: Emphasize preventing breakdowns and saving money
  4. Offers: Include time-limited incentives to drive action
  5. Frequency: Don’t call same customer more than once per quarter