Angi Scraper | Angie's List HVAC Near Me
Pricing
from $2.20 / 1,000 results
Angi Scraper | Angie's List HVAC Near Me
Scrape Angi.com (formerly Angie's List) HVAC, plumbers, roofers and home-service contractors by ZIP. Export names, nearme street addresses, ratings, and Angi Inc contact phones. HomeStars Canada public phones when listed. Guest pages only — US merchant phones are gated. CSV, Excel, or JSON.
Pricing
from $2.20 / 1,000 results
Rating
0.0
(0)
Developer
kane liu
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
2 days ago
Last modified
Categories
Share
Scrape Angi.com (formerly Angie's List) for US home-service contractors — HVAC, plumbers, roofers, electricians, and 40+ nearme trades — by ZIP code and category. Export company names, JSON-LD street addresses, ratings, Angi Inc contact phones, and HomeStars Canada public phones when listed. Download CSV, Excel, or JSON.
Use this Actor as a practical Angi scraper / Angie's List data API alternative for contractor directories, home-service lead research, and ZIP-level market coverage. Pick searchType=nearme, a category slug such as hvac or roofing, an optional US postalCode, and maxResults. Residential egress is handled by the scrape worker — you do not send cookies, proxyUrl, or Request quote payloads.
- Nearme lists on
www.angi.com/nearme/{slug}/with JSON-LD streetAddress (the cards hide the street; the structured data has it) - US category search via Angi gateway v5 JSON (not the 36KB
/searchHTML shell) plus optional nearme-street merge byreviews-{id} - Company profiles (
…-reviews-{id}.htm) for ZIP and owner / tech names - Angi Inc contact (
/landing/contact-us) — Indianapolis street + customer-servicetel: - HomeStars Canada public profile phones when
__NEXT_DATA__includes them - Guest pages only — no Request quote, no
request.angi.com, no login - Export to Excel / CSV / JSON, or connect Make, n8n, Zapier, Python, or the Apify API
- Pay per event — Actor start + each Dataset result; platform usage is included (you do not pay separate Apify compute on top)
Unofficial tool. This Actor is not affiliated with, endorsed by, or sponsored by Angi Inc. It collects guest / public pages a logged-out visitor can already see. It does not log in, submit Request quote, or scrape private account data.
What does the Angi Scraper do?
Angi Scraper lets you extract structured angi.com contractor listings without running your own US residential proxy and anti-bot stack. Give it a nearme category, a ZIP + categoryId for search, or a batch of live profile URLs, then start a run.
Under the hood, the Actor:
- Validates your input (
searchType,market,category/postalCode, URLs) - Enforces free-tier caps when you are on a free Apify plan
- Calls a managed worker that fetches guest Angi HTML/JSON (Chrome TLS impersonation + US residential egress)
- Parses nearme JSON-LD streets, gateway v5 search cards,
…-reviews-{id}.htmprofiles, Angi Inc contact, and opened HomeStars / Instapro lists - Writes Dataset rows plus
INPUT_ECHO,RUN_SUMMARY(andERROR_SUMMARYon failure) to the key-value store
You run it like any other Apify Actor — schedule it, call it from the API, or plug it into automations.
What Angi data can I extract?
| Data | Nearme | US search | US detail | Angi Inc contact | HomeStars CA |
|---|---|---|---|---|---|
| Company / org name | ✅ | ✅ | ✅ | Angi Inc | ✅ |
Live profile URL (reviews-{id}) | ✅ | ✅ | ✅ | — | /profile/ |
| JSON-LD street address | ✅ | merge optional | often ZIP only | Indianapolis HQ | usually city only |
| ZIP / locality / region | ✅ | ✅ | ✅ | ✅ | city |
| Owner / technician names | — | after enrich | ✅ | — | — |
| Merchant phone | gated | gated | gated | HQ tel: | public when listed |
| Merchant email | usually none | usually none | usually none | — | platform inbox ≠ shop |
| Super Service Award filter | — | ssaFilter | — | — | — |
Identity keys: US contractors use the numeric id in …-reviews-{id}.htm (do not invent ids). HomeStars uses the public profile id. Angi Inc contact is a single HQ entity page, not a contractor SERP.
Honest phone policy: US merchant phones are gated on guest pages. There is no Show phone; Request quote is a submit, not a reveal. Rows include empty phones plus leadAbsences rather than fake numbers. Store peers that advertise “every plumber’s phone” are claiming a channel this Actor will not fake.
Why scrape Angi?
Angi (formerly Angie's List) is one of the largest US home-services marketplaces for HVAC, plumbing, roofing, electrical, windows, flooring, and dozens of other trades. Teams scrape public Angi pages to:
- Build ZIP-level contractor directories (nearme streets + search cards)
- Watch ratings / Super Service Award coverage for a trade
- Pull Angi Inc HQ contact without paging the site by hand
- Enrich CRM-adjacent catalogs with names + addresses when phones are gated
- Cover HomeStars Canada public phones on the same Actor when
market=ca
Compared with a generic URL scraper, this Actor returns Angi-specific fields (kind, reviews-{id} URLs, JSON-LD street, leadAbsences) in one input surface.
How this Angi scraper compares
Store search for “Angi scraper” / “Angie's List scraper” also surfaces crawlers that advertise phone numbers, full addresses, and 150+ categories, often from $0.80 / 1,000 or a $30/month rental. Some of those phones exist only for Angi-advertiser pros; others over-claim guest data. This Actor is the guest table: names, nearme streets, ratings, HQ phones — US merchant phones gated on purpose.
| This Actor | Typical Store peers | |
|---|---|---|
| Nearme JSON-LD street by ZIP | Yes (?postalCode=) | Rare / undocumented |
Gateway v5 search (not /search HTML) | Yes | Often HTML-only |
| US merchant phone on guest pages | No (gated) | Often claimed yes |
| HomeStars CA public phones | Yes when listed | Rare |
Angi Inc /landing/contact-us | Yes | Rare |
Request quote / request.angi.com | Never | Sometimes implied |
| Pricing | PPE $3.00 / 1,000 + $0.005 start; platform usage included | from $0.80 / 1,000, or $30/month + usage |
Use a peer when you need advertiser-tier phones and accept their source. Use this Actor when you want export-ready guest Angi rows and developer-paid platform usage.
Honest scope: city/state /companylist/ hubs have zero merchant cards — they are not a SERP. Map search does not exist on angi.com. angi.ca / angi.co.uk / angi.de are not this product (.co.uk is a domain-sale page). MyBuilder UK and Instapro DE/FR/NL/IT lists are opened for identity; public phones are often still gated.
More Actors like this
Need Care.com caregivers, HomeStars Canada trades, Google Maps local businesses, or a generic protected-page scrape? Use a dedicated Actor below for structured fields. Use this Actor for Angi.com / Angie's List US contractors, nearme streets, and Angi Inc contact.
Similar home-service & local-lead scrapers
- Care.com Scraper — US caregivers, day care, jobs, About/contact phones
- HomeStars Scraper — Canadian home-service directories and public profile phones
- Google Maps Scraper — local businesses, ratings, Maps places
- Phone Number Intelligence — validate / enrich phones from any list
- Email Risk Validator — score emails before you import a CRM
- Stealth Web Scraper — generic protected pages (prefer a dedicated Actor when one exists)
Prefer a dedicated site scraper?
If your target has a specialized Actor below, use that first — usually cheaper and more structured than a generic URL scrape.
Local services & lead gen
Real Estate
- Zoopla UK Scraper
- Rightmove Scraper
- Zillow & Zumper Scraper
- Realtor.com Scraper
- Apartments.com Rental Scraper
- Idealista Scraper
- realestate.com.au Scraper
- Properati LATAM Scraper
Jobs & Freelance
- LinkedIn Jobs Scraper
- Indeed Jobs Scraper
- Upwork Jobs Scraper
- Glassdoor Scraper
- Fiverr Gigs Scraper
- Bayt Jobs Scraper
E-commerce
- Walmart Product Scraper
- Amazon Search Scraper
- Shopee Search Scraper
- Etsy Scraper
- SHEIN Product Scraper
- Temu Product Scraper
- Target Product Scraper
- Allegro Scraper
Travel & Stays
Social & Content
Ads Intelligence
General tools
→ See the full catalog in Related Actors below, or browse apify.com/lentic_clockss.
Need a custom site (listing + detail, your field list)? Submit a custom scraper request.
How to scrape Angi.com (no code required)
- Create a free Apify account
- Open Angi Scraper
- Choose searchType:
nearme,search,detail,contact,about,intl-list, orintl-detail - For nearme, enter a category slug (
hvac,roofing,electrical,windows,flooring,pest-control, …) and optionally a US ZIP (postalCode) so JSON-LD streets match that area - For US search, set postalCode + categoryId (plumbing =
107). Do not paste the/searchHTML page as if it were a listing feed - Click Start and download the Dataset as JSON, CSV, Excel, or JSONL
Start with maxResults: 3–5 to verify the ZIP and trade, then scale up. Empty {} runs a tiny NYC HVAC nearme so the platform auto-test succeeds — for real jobs, pass a fresh ZIP and category.
Find HVAC contractors near a ZIP
In plain English: pick nearme + hvac + a US ZIP → get a table of Angi HVAC pros with JSON-LD street addresses.
You give: searchType=nearme, category=hvac, postalCode=75201, maxResults=20.
Scrape plumbers, roofers, or electricians
In plain English: change the nearme slug (roofing, electrical, windows, flooring). Aliases such as gutters map to the live Angi slug (gutter-repair-replacement).
You give: searchType=nearme, category=roofing, optional postalCode.
Search Angi by category ID and ZIP
In plain English: gateway search returns thinner cards (phones still gated). Turn merge nearme streets on to overlay JSON-LD streets onto matching reviews-{id} rows.
You give: searchType=search, categoryId=107, postalCode=33101, mergeNearmeStreets=true.
Pull Angi Inc contact or a profile URL
In plain English: contact returns Angi Inc Indianapolis street + HQ phones. detail follows live …-reviews-{id}.htm URLs for ZIP and names. Do not paste request.angi.com or /send-request-to links.
HomeStars Canada and Instapro lists
In plain English: market=ca + searchType=intl-list + a city slug such as toronto returns HomeStars cards; enrich follows public profiles for phones when Angi/HomeStars publish them.
Feed AI agents and automations
In plain English: start the Actor from Make, n8n, Zapier, LangChain, or the Apify API → Dataset rows are structured JSON (name, url, address, phones, leadAbsences).
How much does it cost to scrape Angi?
This Actor uses pay-per-event pricing. You are charged for:
| Event | Price |
|---|---|
Actor Start (apify-actor-start) | $0.005 per start |
Result (apify-default-dataset-item) | $3.00 / 1,000 results ($0.003 each on FREE/BRONZE) |
Platform usage costs are included — you do not pay separate Apify compute/proxy usage for this Actor on top of the event prices above (User pays platform usage costs = No).
Volume discount tiers (per result)
| Tier | $/1,000 | per result |
|---|---|---|
| FREE* | $3.00 | $0.003 |
| BRONZE | $3.00 | $0.003 |
| SILVER | $2.60 | $0.0026 |
| GOLD | $2.20 | $0.0022 |
| PLATINUM | $2.00 | $0.002 |
| DIAMOND | $1.60 | $0.0016 |
*FREE matches BRONZE for this Actor.
Example cost estimates (FREE/BRONZE)
| Results collected | Approx. event cost* |
|---|---|
| 100 | ~$0.31 |
| 1,000 | ~$3.01 |
| 10,000 | ~$30.01 |
*Assumes one Actor start at default memory billing for start events, plus $0.003 per Dataset item. Exact start billing can scale with allocated memory (one start event per GB, minimum one). Default memory is 1024 MB.
Empty / failed runs that write zero default-dataset rows are not billed as results (you still pay Actor Start).
Free plan limits
On a free Apify plan, this Actor enforces developer limits of 10 runs and 200 results per run. Upgrade to a paid Apify plan for unlimited runs (event prices still apply).
Input examples
HVAC nearme for a US ZIP
{"searchType": "nearme","category": "hvac","postalCode": "75201","maxResults": 20,"enrichDetails": true}
Roofing nearme
{"searchType": "nearme","category": "roofing","postalCode": "33101","maxResults": 15,"maxPages": 1}
Plumbing search + nearme street merge
{"searchType": "search","category": "plumbing","categoryId": 107,"postalCode": "60601","maxResults": 10,"mergeNearmeStreets": true,"enrichDetails": true}
Angi Inc contact
{"searchType": "contact"}
HomeStars Toronto list
{"searchType": "intl-list","market": "ca","city": "toronto","maxResults": 10,"enrichDetails": true}
Output
Each Dataset row is a lead-shaped object: name, kind, url, category, phones[], emails[], address (street, locality, region, postalCode, country, full), person, org, leadSource, leadReveal, leadAbsences.
US nearme rows should have a real street from JSON-LD, not the placeholder Located In. US search/detail merchant rows often have empty phones plus leadAbsences — that is expected, not a parse bug. HomeStars public phones appear when the profile JSON includes them. Filter out schema.org if you ever see it as a website — that is not a shop URL.
Key-value store: INPUT_ECHO, RUN_SUMMARY, ERROR_SUMMARY.
FAQ
Do I need an Angi account or API key?
No. This Actor reads guest angi.com / HomeStars pages. You do not log in, and you do not pass an Angi developer key.
Can I get every contractor's phone number?
Not on US guest pages. Angi gates merchant phones; Request quote is a lead form, not a reveal. This Actor records that as leadAbsences instead of inventing numbers. HomeStars Canada and Angi Inc contact are the opened phone channels.
Does postalCode work on nearme?
Yes. Use ?postalCode= (Angi ignores ?zip= for geo). Empty {} uses schema default ZIP 10001 so the platform auto-test succeeds.
Which categories are supported?
Free-text nearme slugs as they appear in Angi URLs (hvac, roofing, electrical, windows, flooring, pest-control, …). For searchType=search, plumbing maps to gateway categoryId 107; other trades need the live numeric id (do not reuse request.angi.com category ids — different ID space).
Can I scrape the map or city hub?
No. searchType=map is out of scope (Angi has no map SERP). /companylist/us/{st}/… hubs have zero merchant cards.
Why not Request quote?
Submitting Request quote is a write to Angi, not a public read. This Actor never hits request.angi.com or /send-request-to.
Is scraping Angi legal?
This Actor collects publicly reachable guest pages. You are responsible for how you use the data (including US privacy rules). This is an unofficial third-party tool. Follow Angi’s terms and your own compliance review.
Is this affiliated with Angi or Angie's List?
No.
Do I need to bring proxies?
No. Do not send proxyUrl. The worker provides US residential egress.
What if a run returns 0 rows or a challenge page?
Retry with another opened ZIP / slug, or use searchType=contact to confirm the worker is healthy. Check ERROR_SUMMARY in the key-value store. France city lists use live slugs such as paris-01, not paris.
Can I use it from Make, n8n, Zapier, or LangChain?
Yes. Actor ID lentic_clockss/angi-scraper. See Connect to your tools.
Input reference
| Parameter | Type | Description |
|---|---|---|
searchType | string | nearme, search, detail, contact, about, intl-list, intl-detail. map / city-hub / leads-funnel are out of scope |
market | string | us (angi.com), ca (HomeStars), uk (MyBuilder), de/at/fr/nl/it (Instapro lists) |
category | string | Nearme slug (hvac, roofing, …) |
categoryId | integer | US gateway search id (plumbing = 107) |
postalCode | string | US ZIP; required for search; optional geo for nearme |
ssaFilter | boolean | US search Super Service Award filter |
enrichDetails | boolean | Follow US …-reviews-{id}.htm / Instapro profiles (default on) |
mergeNearmeStreets | boolean | Overlay nearme JSON-LD streets onto search rows (default on) |
maxResults | integer | Cap Dataset rows (free plan ≤ 200) |
maxPages | integer | Search offset pages / Instapro page=N (hard cap 10) |
detailUrls | array | Live angi.com profile / contact or HomeStars /profile/ URLs |
city | string | Instapro / HomeStars city slug (toronto, berlin, paris-01) |
workerBaseUrl | string | Optional HTTPS override. Production source of truth is Actor env |
Do not send proxyUrl, cookies, Request quote payloads, or request.angi.com URLs.
Full output schema is on the Dataset tab. Key-value store: INPUT_ECHO, RUN_SUMMARY, ERROR_SUMMARY.
Connect to your tools
| Platform | How to connect |
|---|---|
| Make.com | Search “Apify” → “Run Actor” → Actor ID lentic_clockss/angi-scraper |
| n8n | Add Apify node → “Run Actor” → same Actor ID |
| Zapier | Apify integration → “Run Actor” |
| LangChain | ApifyActorsTool("lentic_clockss/angi-scraper") |
| Python / Node.js | Apify SDK or direct HTTPS call |
API call example
curl "https://api.apify.com/v2/acts/lentic_clockss~angi-scraper/runs" \-X POST \-H "Authorization: Bearer YOUR_APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"searchType":"nearme","category":"hvac","postalCode":"75201","maxResults":10}'
Results come back in JSON via the Apify Dataset API:
GET https://api.apify.com/v2/datasets/{datasetId}/items?format=json
Related Actors
All public Actors from lentic_clockss. Click a name to open the Store detail page.
Local services & lead gen
- Angi Scraper
- Care.com Scraper
- HomeStars Scraper
- Google Maps Scraper
- Phone Number Intelligence
- Email Risk Validator
Developer / Open source / AI
Jobs & Freelance
- LinkedIn Jobs Scraper
- Bayt Jobs Scraper
- Fiverr Gigs Scraper
- Freelancer.com Scraper
- Glassdoor Scraper
- Himalayas Jobs Scraper
- Indeed Jobs Scraper
- Jobicy Remote Jobs Scraper
- RemoteOK Jobs Scraper
- SEEK Jobs Scraper
- Upwork Jobs Scraper
Real Estate
- Zoopla UK Scraper
- Zillow & Zumper Scraper
- Realtor.com Scraper
- 99.co Scraper
- Realtor.com Agents Scraper
- Apartments.com Rental Scraper
- Bayut Scraper
- Craigslist Housing Scraper
- Daft.ie Scraper
- Dot Property Scraper
- FINN.no Scraper
- Funda Scraper
- Hepsiemlak Scraper
- Idealista Scraper
- Immobiliare.it Scraper
- ImmoScout24 Scraper
- Naver Land Scraper
- OpenSooq Scraper
- Otodom Scraper
- Properati LATAM Scraper
- Property Finder Scraper
- PropertyGuru Scraper
- realestate.com.au Scraper
- Realtor.ca Scraper
- Rightmove Scraper
- SeLoger Scraper
- SUUMO Scraper
- Zillow Group Scraper
E-commerce
- Shopee Search Scraper
- E-commerce Scraper
- 1688 Global Product Search Scraper
- Allegro Scraper
- Amazon Search Scraper
- ASOS Product Scraper
- Cdiscount Product Scraper
- Costco Product Scraper
- Coupang Product Scraper
- Etsy Scraper
- Lazada Scraper
- MercadoLibre Scraper
- Mercari Japan Scraper
- Rakuten Japan Scraper
- SHEIN Product Scraper
- Target Product Scraper
- Temu Product Scraper
- Walmart Product Scraper
- Watsons Product Scraper
Travel & Stays
- Booking.com & Airbnb Scraper
- Agoda Scraper
- Airbnb Listings Scraper
- Booking.com Hotels Scraper
- Despegar Scraper
- Expedia Scraper
- Traveloka Scraper
- Travelstart Flights Scraper
- Trip.com Scraper
- TripAdvisor Scraper
Social & Content
Ads Intelligence
Local & Maps
→ Browse the full profile: apify.com/lentic_clockss
Changelog
- 0.1.4 — Store README SEO (Angi.com / Angie's List / HVAC / plumbers / ZIP nearme), competitor comparison, More Actors + Related Actors. PPE: Actor Start $0.005 + result $3.00/1k with volume tiers. Platform usage paid by developer.
- 0.1.3 — Free-text nearme slugs, search×nearme street merge, Instapro pagination, HomeStars / DE–IT lists.
- 0.1.2 — First Cloud Run worker pairing; US nearme JSON-LD streets + gateway v5 search.