thumbtack.com APIthumbtack.com ↗
Search Thumbtack service providers by ZIP code and service type. Get profiles, ratings, reviews, pricing estimates, and cost guides via 4 structured endpoints.
// select an endpoint above
About the thumbtack.com API
The Thumbtack API exposes 4 endpoints covering local service provider search, detailed business profiles, provider photos, and pricing cost guides. The search_providers endpoint returns provider names, star ratings, review counts, pricing estimates, and business facts filtered by service type slug and 5-digit ZIP code. The get_cost_guide endpoint delivers structured national pricing tables including ranges by bedroom and bathroom count, hourly rates, and service-type breakdowns.
Search and Provider Discovery
The search_providers endpoint accepts a service parameter (a URL slug such as house-cleaning or plumbing) and a zip_code for location-based filtering. Each item in the returned items array includes name, rating, review_count, is_online, price, url, service_pk, and a facts object. The total field gives the integer count of providers returned for that query. Provider url values feed directly into the profile and photo endpoints.
Provider Profiles and Stats
get_provider_profile takes a url path or full URL from search results and returns a detailed profile. Key response fields include about (the business description), stats (an object covering hires, similar_jobs, years_in_business, employees, top_pro, and background_checked), services (an array of category names), and a reviews array. Note that the reviews array may be empty depending on how the profile page renders at request time.
Cost Guides
get_cost_guide accepts the same service slug format used in search_providers. The response includes title (e.g. How much do house cleaners charge?), url, and pricing_data — an object mapping section headers to arrays of pricing table rows or text blocks. Sections typically cover national averages, ranges by number of bedrooms or bathrooms, hourly rates, and breakdowns by specific service variant.
Photos Endpoint
get_provider_photos retrieves project media for a specific provider. The response shape for this endpoint is not fully specified in current documentation, so field availability may vary. Use search_providers and get_provider_profile first to confirm a provider URL before calling the photos endpoint.
- Build a local contractor comparison tool using
rating,review_count, andpricefields fromsearch_providers - Populate a home services directory with business stats such as
hires,years_in_business, andbackground_checkedfromget_provider_profile - Estimate project budgets by querying
get_cost_guidefor services likeplumbingorpaintingand parsing thepricing_datatables - Track provider availability and online status across ZIP codes using the
is_onlinefield in search results - Aggregate reviews and ratings for multiple providers in a service category using
reviewsandreview_countfrom profile responses - Enrich CRM or lead-gen tools with Thumbtack provider profiles by mapping
service_pkandurlfrom search to full profile data
| 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 Thumbtack have an official developer API?+
What does `get_provider_profile` return beyond what `search_providers` includes?+
search_providers returns a summary row per provider: name, rating, review count, price estimate, and a facts object. get_provider_profile adds the full about description, a stats object with fields like hires, similar_jobs, years_in_business, employees, top_pro, and background_checked, plus a services array and a reviews array that may contain individual review objects.Are reviews always included in the `get_provider_profile` response?+
reviews array may be empty depending on how the profile page renders at the time of the request. The review_count field (total number of reviews) is a separate integer and is more consistently populated than the full review objects array.Does the API support filtering providers by price range or minimum rating?+
search_providers endpoint filters by service slug and zip_code only. Client-side filtering on rating, review_count, or price fields is possible after retrieving results, but the API does not accept those as query parameters. You can fork this API on Parse and revise it to add server-side filtering logic on those fields.