# Housecall Pro API Documentation

This is the complete API documentation for connecting to the Housecall Pro API using MindCloud's Universal API.

MindCloud offers one normalized API to access 3,400+ apps from a single place. It centralizes authentication and normalizes app APIs so they are easier and more consistent to use.

## Quickstart

1. A **MindCloud account** — sign in or create an account at [MindCloud](https://app.mindcloud.co).
2. A **MindCloud API Key** — create one in [API Keys](https://app.mindcloud.co/user/api-keys). Keep it on your server.
3. At least one **Housecall Pro connection** — create or choose one in [Connections](https://app.mindcloud.co/credentials). Note its `connectionId`.

```text
POST https://connect.mindcloud.co/v2/universal/apps/housecallPro/actions/{actionSlug}/run
```

## Housecall Pro actions

- PUT `bulk-update-estimate-option-line-items` Bulk Update Estimate Option Line Items
- POST `convert-lead-to-estimate-or-job` Convert Lead to Estimate or Job
- POST `create-customer` Create Customer
- POST `create-estimate` Create Estimate
- POST `create-job` Create Job
- POST `create-lead` Create Lead
- GET `get-company` Get Company
- GET `get-customer` Get Customer
- GET `get-estimate` Get Estimate
- GET `get-invoice` Get Invoice
- GET `get-job` Get Job
- GET `get-lead` Get Lead
- GET `list-customers` List Customers
- GET `list-employees` List Employees
- GET `list-estimates` List Estimates
- GET `list-invoices` List Invoices
- GET `list-job-invoices` List Job Invoices
- GET `list-jobs` List Jobs
- GET `list-leads` List Leads
- GET `preview-invoice-by-uuid` Preview Invoice by UUID
- GET `schedule-windows` Schedule Windows
- PUT `update-customer` Update Customer
- PUT `update-job-schedule` Update Job Schedule
