homeadvisor.com APIhomeadvisor.com ↗
Search HomeAdvisor service professionals, retrieve reviews, project photos, and category data via 5 structured endpoints. No scraping code required.
curl -X GET 'https://api.parse.bot/scraper/6b97d8f1-e78d-47b0-a453-5837fa1c7bac/search_pros?zip=10001&query=plumbing' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for home service professionals by category query. Resolves the query to a HomeAdvisor category via autocomplete, then returns paginated professional listings with business info, ratings, reviews, and contact details.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination. |
| limit | integer | Maximum number of results per page. |
| query | string | Search query for a service category (e.g. 'plumbing', 'HVAC', 'roofing'). Either query or category_slug is required. |
| category_slug | string | Category slug to search directly without autocomplete resolution (e.g. 'plumbing'). Either query or category_slug is required. |
{
"type": "object",
"fields": {
"proData": "object containing searchId, results array of professional listings, resultCount, limit, and page",
"zipCodes": "array of ZIP codes associated with the search results"
},
"sample": {
"data": {
"proData": {
"page": 1,
"limit": 10,
"results": [
{
"id": "c8cd180c-1c40-11ee-b010-12f6eb045c11",
"rating": {
"reviewCount": 137,
"averageOverallRating": 5
},
"legacyId": "157627038",
"profileUrl": "/rated.aviksisplumbing.157627038.html",
"contactInfo": {
"address": {
"city": "Newton",
"state": "MA",
"postalCode": "02458"
}
},
"businessInfo": {
"businessName": "Aviksis Plumbing",
"yearsInBusiness": 19
}
}
],
"searchId": "d019f3fb-86f6-4525-aee0-ffa2ad619251",
"resultCount": 2149
},
"zipCodes": [
"02108",
"02203"
]
},
"status": "success"
}
}About the homeadvisor.com API
The HomeAdvisor API exposes 5 endpoints covering service professional search, detailed business profiles, project photo albums, and category discovery. The search_pros endpoint accepts a free-text query or a category slug and returns paginated listings with business names, aggregate ratings, review counts, and contact details — making it practical to build contractor-comparison tools or lead-qualification workflows without manual lookups.
Search and Discovery
The search_pros endpoint accepts either a plain-language query (e.g. 'HVAC', 'roofing') or a direct category_slug, and returns a proData object containing a results array of professional listings alongside resultCount, limit, and page for pagination. Each result includes legacyId, a profileUrl, business name, ratings, review counts, and contact details. The companion search_categories endpoint accepts a query string and returns autocomplete suggestions — objects with id, name, optionType (either CATEGORY or TASK), and srPathUrl — useful for resolving user input to a canonical category before running a pro search.
Professional Profiles and Reviews
get_pro_details takes a profile_url from search_pros results and returns structured business data modeled on schema.org LocalBusiness: name, address, aggregateRating, and a review array. The reviews field surfaces individual review objects with reviewBody, reviewRating, datePublished, and author. This is the right endpoint when you need per-reviewer text content rather than just aggregate scores.
Photos and Categories
get_pro_photos uses the legacyId from search_pros to return an albums array. Each album carries albumId, albumName, imageCount, a featuredImage, and an images array with fields including id, title, and urlSmallIm (thumbnail URL). For category enumeration without a search query, get_categories returns a flat list of all HomeAdvisor service categories as slug and name pairs, drawn from the near-me directory — useful for building category pickers or syncing a local taxonomy.
- Build a contractor-comparison tool that surfaces ratings, review counts, and contact info from
search_prosresults. - Populate a local business directory with structured address and aggregate rating data from
get_pro_details. - Display project photo galleries for vetted contractors using
get_pro_photosalbum and image arrays. - Sync a service-category taxonomy by periodically calling
get_categoriesto capture new slugs and display names. - Implement a search autocomplete widget backed by
search_categoriesto resolve user input to HomeAdvisor category IDs. - Monitor review sentiment for specific professionals by tracking
reviewBodyandreviewRatingfields over time viaget_pro_details. - Qualify inbound leads by cross-referencing a contractor's
legacyIdprofile data including photos and reviews before contact.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does HomeAdvisor offer an official developer API?+
What does `search_pros` return beyond a business name and rating?+
search_pros returns a proData object whose results array includes each professional's legacyId, profileUrl, aggregate rating, review count, and contact details, plus a zipCodes array tied to the search. Pagination is controlled via the page and limit parameters.Do the review endpoints return all historical reviews for a professional?+
get_pro_details returns the reviews present in the profile's structured data at query time. The number of reviews surfaced reflects what the profile page exposes, which may not include every historical review on record. For deeper review history, you can fork the API on Parse and revise it to add a dedicated paginated reviews endpoint.Can I filter `search_pros` results by location or ZIP code?+
zipCodes in the response. Location-scoped search is not currently supported. You can fork the API on Parse and revise it to add geographic filtering parameters.