Skip to main content

Overview

Manage customers, jobs, estimates, and invoices in HouseCall Pro. Call actions with automationType, action, and params from any workflow node that supports automations.

Authentication

  • HouseCall Pro API Key (per-company).

Available Actions

Click any action to jump to its example payload. Application
  • Disable Application
  • Enable Application
Checklists Customer Addresses Customers Employees Estimate Options
  • Approve Estimate Options
  • Create Estimate Option Link
  • Create Estimate Option Note
  • Decline Estimate Options
  • Update Estimate Option Schedule
Estimates Events
  • Get Event
Invoices
  • Get Invoice
  • Get Invoice Preview
  • List Invoices
Job Appointments Job Dispatch
  • Update Job Dispatch
Job Input Materials
  • Bulk Update Job Input Materials
Job Invoices Job Line Items
  • List Job Line Items
Job Links
  • Create Job Link
Job Notes
  • Delete Job Note
Job Schedule
  • Delete Job Schedule
Job Tags
  • Add Job Tag
  • Delete Job Tag
Job Types
  • Update Job Type
Jobs Lead Sources Leads Material Categories
  • Delete Material Category
  • List Material Categories
Materials
  • Create Material
  • Delete Material
  • List Materials
Price Book
  • List Price Book Services
Price Forms
  • Delete Price Form
  • Get Price Form
  • List Price Forms
  • Update Price Form
Schedule
  • Get Company Schedule Availability
  • Update Company Schedule Availability
Tags

Examples

Example 1: Housecall Pro - List Customers

List all customers with pagination
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-list-customers-001",
  "nodeParams": {
    "action": "list_customers",
    "params": {
      "apiKey": "your-api-key",
      "page": 1,
      "page_size": 50
    }
  }
}

Example 2: Housecall Pro - Create Customer

Create a new customer with contact information
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-create-customer-001",
  "nodeParams": {
    "action": "create_customer",
    "params": {
      "apiKey": "your-api-key",
      "first_name": "John",
      "last_name": "Doe",
      "email": "john.doe@example.com",
      "mobile_number": "+15551234567",
      "notifications_enabled": true
    }
  }
}

Example 3: Housecall Pro - Get Customer

Retrieve customer details by ID
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-get-customer-001",
  "nodeParams": {
    "action": "get_customer",
    "params": {
      "apiKey": "your-api-key",
      "id": "customer-123"
    }
  }
}

Example 4: Housecall Pro - Update Customer

Update customer information
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-update-customer-001",
  "nodeParams": {
    "action": "update_customer",
    "params": {
      "apiKey": "your-api-key",
      "id": "customer-123",
      "email": "newemail@example.com",
      "mobile_number": "+15559876543"
    }
  }
}

Example 5: Housecall Pro - Create Customer Address

Add a new address for a customer
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-create-address-001",
  "nodeParams": {
    "action": "create_customer_address",
    "params": {
      "apiKey": "your-api-key",
      "customer_id": "customer-123",
      "street": "123 Main St",
      "city": "San Francisco",
      "state": "CA",
      "zip": "94102",
      "country": "USA"
    }
  }
}

Example 6: Housecall Pro - List Customer Addresses

List all addresses for a customer
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-list-addresses-001",
  "nodeParams": {
    "action": "list_customer_addresses",
    "params": {
      "apiKey": "your-api-key",
      "customer_id": "customer-123"
    }
  }
}

Example 7: Housecall Pro - Get Customer Address

Get a specific address by ID
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-get-address-001",
  "nodeParams": {
    "action": "get_customer_address",
    "params": {
      "apiKey": "your-api-key",
      "customer_id": "customer-123",
      "address_id": "address-456"
    }
  }
}

Example 8: Housecall Pro - Update Customer Address

Update an existing customer address
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-update-address-001",
  "nodeParams": {
    "action": "update_customer_address",
    "params": {
      "apiKey": "your-api-key",
      "customer_id": "customer-123",
      "address_id": "address-456",
      "street": "456 Oak Ave",
      "city": "Los Angeles",
      "state": "CA",
      "zip": "90001"
    }
  }
}

Example 9: Housecall Pro - Delete Customer Address

Delete a customer address by ID
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-delete-address-001",
  "nodeParams": {
    "action": "delete_customer_address",
    "params": {
      "apiKey": "your-api-key",
      "customer_id": "customer-123",
      "address_id": "address-456"
    }
  }
}

Example 10: Housecall Pro - List Jobs

List jobs with optional filters
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-list-jobs-001",
  "nodeParams": {
    "action": "list_jobs",
    "params": {
      "apiKey": "your-api-key",
      "customer_id": "customer-123",
      "page": 1,
      "page_size": 25
    }
  }
}

Example 11: Housecall Pro - Create Job

Create a new job for a customer
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-create-job-001",
  "nodeParams": {
    "action": "create_job",
    "params": {
      "apiKey": "your-api-key",
      "customer_id": "customer-123",
      "address_id": "address-456",
      "job_type_id": "job-type-789",
      "description": "Fix leaking pipe in kitchen",
      "schedule_start": "2025-01-15T09:00:00Z",
      "schedule_end": "2025-01-15T11:00:00Z"
    }
  }
}

Example 12: Housecall Pro - Get Job

Retrieve job details by ID
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-get-job-001",
  "nodeParams": {
    "action": "get_job",
    "params": {
      "apiKey": "your-api-key",
      "id": "job-123"
    }
  }
}

Example 13: Housecall Pro - Update Job

Update job details
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-update-job-001",
  "nodeParams": {
    "action": "update_job",
    "params": {
      "apiKey": "your-api-key",
      "id": "job-123",
      "description": "Updated description - Fixed pipe and checked water heater",
      "schedule_end": "2025-01-15T12:00:00Z"
    }
  }
}

Example 14: Housecall Pro - List Employees

List all employees/technicians
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-list-employees-001",
  "nodeParams": {
    "action": "list_employees",
    "params": {
      "apiKey": "your-api-key",
      "page": 1,
      "page_size": 50
    }
  }
}

Example 15: Housecall Pro - Get Employee

Get employee details by ID
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-get-employee-001",
  "nodeParams": {
    "action": "get_employee",
    "params": {
      "apiKey": "your-api-key",
      "id": "employee-123"
    }
  }
}

Example 16: Housecall Pro - Create Estimate

Create an estimate for a job
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-create-estimate-001",
  "nodeParams": {
    "action": "create_estimate",
    "params": {
      "apiKey": "your-api-key",
      "job_id": "job-123",
      "line_items": [
        {
          "name": "Pipe Repair",
          "description": "Fix leaking kitchen pipe",
          "quantity": 1,
          "unit_price": 15000
        },
        {
          "name": "Labor",
          "description": "Plumber labor 2 hours",
          "quantity": 2,
          "unit_price": 7500
        }
      ]
    }
  }
}

Example 17: Housecall Pro - Get Estimate

Retrieve estimate details by ID
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-get-estimate-001",
  "nodeParams": {
    "action": "get_estimate",
    "params": {
      "apiKey": "your-api-key",
      "id": "estimate-123"
    }
  }
}

Example 18: Housecall Pro - Update Estimate

Update an existing estimate
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-update-estimate-001",
  "nodeParams": {
    "action": "update_estimate",
    "params": {
      "apiKey": "your-api-key",
      "id": "estimate-123",
      "line_items": [
        {
          "name": "Pipe Repair",
          "quantity": 1,
          "unit_price": 18000
        }
      ]
    }
  }
}

Example 19: Housecall Pro - List Job Appointments

List all job appointments with pagination
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-list-appointments-001",
  "nodeParams": {
    "action": "list_job_appointments",
    "params": {
      "apiKey": "your-api-key",
      "page": 1,
      "page_size": 25
    }
  }
}

Example 20: Housecall Pro - Create Job Appointment

Schedule an appointment for a job
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-create-appointment-001",
  "nodeParams": {
    "action": "create_job_appointment",
    "params": {
      "apiKey": "your-api-key",
      "job_id": "job-123",
      "start_time": "2025-01-15T09:00:00Z",
      "end_time": "2025-01-15T11:00:00Z",
      "employee_ids": [
        "employee-123",
        "employee-456"
      ],
      "notes": "Customer prefers morning appointments"
    }
  }
}

Example 21: Housecall Pro - Get Job Appointment

Get appointment details by ID
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-get-appointment-001",
  "nodeParams": {
    "action": "get_job_appointment",
    "params": {
      "apiKey": "your-api-key",
      "id": "appointment-123"
    }
  }
}

Example 22: Housecall Pro - Update Job Appointment

Reschedule an appointment
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-update-appointment-001",
  "nodeParams": {
    "action": "update_job_appointment",
    "params": {
      "apiKey": "your-api-key",
      "id": "appointment-123",
      "start_time": "2025-01-15T14:00:00Z",
      "end_time": "2025-01-15T16:00:00Z"
    }
  }
}

Example 23: Housecall Pro - Delete Job Appointment

Cancel and delete an appointment
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-delete-appointment-001",
  "nodeParams": {
    "action": "delete_job_appointment",
    "params": {
      "apiKey": "your-api-key",
      "id": "appointment-123"
    }
  }
}

Example 24: Housecall Pro - Create Job Invoice

Create an invoice for a completed job
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-create-invoice-001",
  "nodeParams": {
    "action": "create_job_invoice",
    "params": {
      "apiKey": "your-api-key",
      "job_id": "job-123",
      "line_items": [
        {
          "name": "Pipe Repair",
          "quantity": 1,
          "unit_price": 15000
        },
        {
          "name": "Labor",
          "quantity": 2,
          "unit_price": 7500
        }
      ]
    }
  }
}

Example 25: Housecall Pro - Get Job Invoice

Retrieve invoice details by ID
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-get-invoice-001",
  "nodeParams": {
    "action": "get_job_invoice",
    "params": {
      "apiKey": "your-api-key",
      "id": "invoice-123"
    }
  }
}

Example 26: Housecall Pro - Update Job Invoice

Update an existing invoice
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-update-invoice-001",
  "nodeParams": {
    "action": "update_job_invoice",
    "params": {
      "apiKey": "your-api-key",
      "id": "invoice-123",
      "line_items": [
        {
          "name": "Pipe Repair",
          "quantity": 1,
          "unit_price": 18000
        }
      ]
    }
  }
}

Example 27: Housecall Pro - Send Job Invoice

Send invoice to customer via email
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-send-invoice-001",
  "nodeParams": {
    "action": "send_job_invoice",
    "params": {
      "apiKey": "your-api-key",
      "id": "invoice-123"
    }
  }
}

Example 28: Housecall Pro - List Job Types

List all available job types
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-list-job-types-001",
  "nodeParams": {
    "action": "list_job_types",
    "params": {
      "apiKey": "your-api-key"
    }
  }
}

Example 29: Housecall Pro - Get Job Type

Get job type details by ID
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-get-job-type-001",
  "nodeParams": {
    "action": "get_job_type",
    "params": {
      "apiKey": "your-api-key",
      "id": "job-type-789"
    }
  }
}

Example 30: Housecall Pro - List Leads

List all leads with pagination
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-list-leads-001",
  "nodeParams": {
    "action": "list_leads",
    "params": {
      "apiKey": "your-api-key",
      "page": 1,
      "page_size": 25
    }
  }
}

Example 31: Housecall Pro - Create Lead

Create a new lead for follow-up
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-create-lead-001",
  "nodeParams": {
    "action": "create_lead",
    "params": {
      "apiKey": "your-api-key",
      "first_name": "Jane",
      "last_name": "Smith",
      "email": "jane.smith@example.com",
      "mobile_number": "+15551112222",
      "notes": "Interested in HVAC service"
    }
  }
}

Example 32: Housecall Pro - Get Lead

Retrieve lead details by ID
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-get-lead-001",
  "nodeParams": {
    "action": "get_lead",
    "params": {
      "apiKey": "your-api-key",
      "id": "lead-123"
    }
  }
}

Example 33: Housecall Pro - Update Lead

Update lead information
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-update-lead-001",
  "nodeParams": {
    "action": "update_lead",
    "params": {
      "apiKey": "your-api-key",
      "id": "lead-123",
      "notes": "Follow-up scheduled for next week"
    }
  }
}

Example 34: Housecall Pro - List Lead Sources

List all lead sources for tracking
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-list-lead-sources-001",
  "nodeParams": {
    "action": "list_lead_sources",
    "params": {
      "apiKey": "your-api-key"
    }
  }
}

Example 35: Housecall Pro - Get Lead Source

Get lead source details by ID
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-get-lead-source-001",
  "nodeParams": {
    "action": "get_lead_source",
    "params": {
      "apiKey": "your-api-key",
      "id": "lead-source-123"
    }
  }
}

Example 36: Housecall Pro - List Checklists

List all checklists available
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-list-checklists-001",
  "nodeParams": {
    "action": "list_checklists",
    "params": {
      "apiKey": "your-api-key"
    }
  }
}

Example 37: Housecall Pro - Get Checklist

Get checklist details by ID
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-get-checklist-001",
  "nodeParams": {
    "action": "get_checklist",
    "params": {
      "apiKey": "your-api-key",
      "id": "checklist-123"
    }
  }
}

Example 38: Housecall Pro - List Estimates

List all estimates with pagination
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-list-estimates-001",
  "nodeParams": {
    "action": "list_estimates",
    "params": {
      "apiKey": "your-api-key",
      "page": 1,
      "page_size": 25
    }
  }
}

Example 39: Housecall Pro - List Invoices

List all job invoices with pagination
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-list-invoices-001",
  "nodeParams": {
    "action": "list_job_invoices",
    "params": {
      "apiKey": "your-api-key",
      "page": 1,
      "page_size": 25
    }
  }
}

Example 40: Housecall Pro - Filter Jobs by Date Range

List jobs scheduled within a date range
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-filter-jobs-001",
  "nodeParams": {
    "action": "list_jobs",
    "params": {
      "apiKey": "your-api-key",
      "schedule_start_min": "2025-01-01T00:00:00Z",
      "schedule_start_max": "2025-01-31T23:59:59Z",
      "page_size": 100
    }
  }
}

Example 41: Housecall Pro - Delete Customer

Delete a customer by ID
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-delete-customer-001",
  "nodeParams": {
    "action": "delete_customer",
    "params": {
      "apiKey": "your-api-key",
      "id": "customer-123"
    }
  }
}

Example 42: Housecall Pro - Delete Job

Delete a job by ID
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-delete-job-001",
  "nodeParams": {
    "action": "delete_job",
    "params": {
      "apiKey": "your-api-key",
      "id": "job-123"
    }
  }
}

Example 43: Housecall Pro - Get Company Info

Retrieve authenticated company information
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-get-company-001",
  "nodeParams": {
    "action": "get_company",
    "params": {
      "apiKey": "your-api-key"
    }
  }
}

Example 44: Housecall Pro - List Expenses

List all expenses with pagination
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-list-expenses-001",
  "nodeParams": {
    "action": "list_expenses",
    "params": {
      "apiKey": "your-api-key",
      "page": 1,
      "page_size": 25
    }
  }
}

Example 45: Housecall Pro - Create Expense

Create a new expense for a job
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-create-expense-001",
  "nodeParams": {
    "action": "create_expense",
    "params": {
      "apiKey": "your-api-key",
      "job_id": "job-123",
      "amount": 5000,
      "description": "Materials for job",
      "expense_date": "2025-01-15",
      "category": "materials"
    }
  }
}

Example 46: Housecall Pro - Get Expense

Retrieve expense details by ID
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-get-expense-001",
  "nodeParams": {
    "action": "get_expense",
    "params": {
      "apiKey": "your-api-key",
      "id": "expense-123"
    }
  }
}

Example 47: Housecall Pro - Update Expense

Update an existing expense
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-update-expense-001",
  "nodeParams": {
    "action": "update_expense",
    "params": {
      "apiKey": "your-api-key",
      "id": "expense-123",
      "amount": 5500,
      "description": "Updated materials cost"
    }
  }
}

Example 48: Housecall Pro - Delete Expense

Delete an expense by ID
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-delete-expense-001",
  "nodeParams": {
    "action": "delete_expense",
    "params": {
      "apiKey": "your-api-key",
      "id": "expense-123"
    }
  }
}

Example 49: Housecall Pro - List Tags

List all tags available
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-list-tags-001",
  "nodeParams": {
    "action": "list_tags",
    "params": {
      "apiKey": "your-api-key"
    }
  }
}

Example 50: Housecall Pro - Create Tag

Create a new tag for categorization
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-create-tag-001",
  "nodeParams": {
    "action": "create_tag",
    "params": {
      "apiKey": "your-api-key",
      "name": "VIP Customer",
      "color": "#FF5733"
    }
  }
}

Example 51: Housecall Pro - Get Tag

Get tag details by ID
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-get-tag-001",
  "nodeParams": {
    "action": "get_tag",
    "params": {
      "apiKey": "your-api-key",
      "id": "tag-123"
    }
  }
}

Example 52: Housecall Pro - Update Tag

Update tag name or color
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-update-tag-001",
  "nodeParams": {
    "action": "update_tag",
    "params": {
      "apiKey": "your-api-key",
      "id": "tag-123",
      "name": "Premium VIP Customer",
      "color": "#FFD700"
    }
  }
}

Example 53: Housecall Pro - Delete Tag

Delete a tag by ID
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-delete-tag-001",
  "nodeParams": {
    "action": "delete_tag",
    "params": {
      "apiKey": "your-api-key",
      "id": "tag-123"
    }
  }
}

Example 54: Housecall Pro - List Notes

List notes filtered by job or customer
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-list-notes-001",
  "nodeParams": {
    "action": "list_notes",
    "params": {
      "apiKey": "your-api-key",
      "job_id": "job-123",
      "page": 1,
      "page_size": 25
    }
  }
}

Example 55: Housecall Pro - Create Note

Create a note for a job or customer
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-create-note-001",
  "nodeParams": {
    "action": "create_note",
    "params": {
      "apiKey": "your-api-key",
      "job_id": "job-123",
      "content": "Customer requested callback after 3pm"
    }
  }
}

Example 56: Housecall Pro - Get Note

Get note details by ID
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-get-note-001",
  "nodeParams": {
    "action": "get_note",
    "params": {
      "apiKey": "your-api-key",
      "id": "note-123"
    }
  }
}

Example 57: Housecall Pro - Update Note

Update note content
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-update-note-001",
  "nodeParams": {
    "action": "update_note",
    "params": {
      "apiKey": "your-api-key",
      "id": "note-123",
      "content": "Customer callback completed at 3:30pm"
    }
  }
}

Example 58: Housecall Pro - Delete Note

Delete a note by ID
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-delete-note-001",
  "nodeParams": {
    "action": "delete_note",
    "params": {
      "apiKey": "your-api-key",
      "id": "note-123"
    }
  }
}

Example 59: Housecall Pro - List Payments

List payments filtered by job or customer
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-list-payments-001",
  "nodeParams": {
    "action": "list_payments",
    "params": {
      "apiKey": "your-api-key",
      "customer_id": "customer-123",
      "page": 1,
      "page_size": 25
    }
  }
}

Example 60: Housecall Pro - Get Payment

Get payment details by ID
{
  "automationType": "housecallpro",
  "nodeId": "housecallpro-get-payment-001",
  "nodeParams": {
    "action": "get_payment",
    "params": {
      "apiKey": "your-api-key",
      "id": "payment-123"
    }
  }
}

Third-Party Documentation