---
title: "Housecall Pro"
description: "Connect Housecall Pro, obtain the required access and configure permitted actions."
url: "https://documentation.verbatik.com/integrations/housecall-pro/"
---

# Housecall Pro

Connect Housecall Pro, obtain the required access and configure permitted actions.

The API adapter is implemented. Validate your own account and authorized actions before routing production calls.

## Before you start

Connect the account belonging to this business and workspace. Vendor subscriptions, API limits and role permissions still apply.

**API:** Housecall Pro Public API v1

**Authentication:** Company API key as Authorization: Token api_key

## Get access and connect

1. Use a Housecall Pro plan with Public API access. An admin opens My Apps/App Store → API Key Management and generates a full-access key.
2. Store that key in Verbatik. Test connection reads a single customer without creating anything.
3. Create/find a customer and its address, then create a job using customer_id and address_id. Pass schedule and optional service line items.
4. For a single-appointment job, use the job schedule update action; multi-day jobs need the separate appointments endpoints.
5. OAuth credentials are issued to approved integration partners; an ordinary Company API key uses Token authentication.

## Account requirements

- Housecall Pro Public API-enabled plan
- Admin-generated API key
- Existing customer/address IDs or permission to create them

## Permissions

- `Company API key full access for customer/job writes`
- `Read-only keys may test/read but cannot create records`

Grant the subset needed for the actions you enable. API scopes do not override the connected user’s record permissions or vendor validation rules.

## Connection fields

- `accessToken` — API key or authorized access token (required). Secret fields are saved as workspace credentials.

## Available actions

- `test_connection` — **Read**. Read customers
- `list_customers` — **Read**. Search customers by name, email or phone.
- `create_customer` — **Write**. Create a customer and optional service addresses, returning the IDs used when creating a job.
- `get_job` — **Read**. Read the current job and schedule.
- `create_job` — **Write**. Create a scheduled service job for an existing customer and address. This does not independently verify technician capacity.
- `reschedule_job` — **Write**. Update one job's schedule. Jobs with more than one appointment require the appointments API instead.

## Provider-specific behavior

Rescheduling currently covers single-appointment jobs. Confirm the account’s appointment model before enabling automated changes.

## Verify before going live

Run Test connection and one read action against a known permitted record. Then test each intended write in an authorized sandbox. Check the provider’s own record and the Verbatik receipt. Publish the agent after assigning its tools. If a write has an unknown outcome, reconcile it with the vendor before trying again.

## Vendor documentation

- [Setup and API documentation](https://help.housecallpro.com/en/articles/8505035-api-overview)
- [Additional provider reference](https://docs.housecallpro.com/docs/housecall-public-api/b87d37ae48a0d-authentication)
- [Additional provider reference](https://docs.housecallpro.com/docs/housecall-public-api/4e0bf8c4d65d7-create-customer)
- [Additional provider reference](https://docs.housecallpro.com/docs/housecall-public-api/2dcf481ed7d69-create-a-job)
- [Additional provider reference](https://docs.housecallpro.com/docs/housecall-public-api/1d344f58672f9-update-job-schedule)
