Snupit South Africa Business Directory Scraper: Service Leads
Pricing
from $2.93 / 1,000 provider records
Snupit South Africa Business Directory Scraper: Service Leads
Collect Snupit South Africa service providers for lead generation. Export names, services, locations, ratings, badges, reviews, and visible contacts to datasets for CRM, Sheets, Make, and Zapier. Use profile URLs or bounded pages, then monitor new and changed providers with pay-per-event billing.
Pricing
from $2.93 / 1,000 provider records
Rating
0.0
(0)
Developer
GetAScraper
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
πΏπ¦ Snupit South Africa Business Directory Scraper: Service Leads
|
Get verified South African service providers, ready for your CRM. Collect names, services, locations, ratings, badges, reviews, and public contact fields from Snupit, without an account and without writing a line of code. |
|
π’ Rich provider records Name, services, location, tagline, description, and source link on every row. |
β
Quality signals Ratings, review counts, Pro Verified and Background Checked badges per profile. |
π Visible contacts Public phone, email, and website fields only, exactly as Snupit shows them. |
π Recurring monitor Snapshot every match, or track only new and changed providers on a schedule. |
Point this Actor at any Snupit service category, South African city, or public profile URL. It returns structured provider data with quality signals and public contacts, ready to download as JSON, CSV, or Excel.
π What does this actor do?
Snupit is a South African marketplace for local services. This Actor turns its public provider pages into structured business-directory data for sales research, local SEO, market mapping, and CRM enrichment.
Start from public Snupit profile URLs, service pages, location pages, or public sitemap files. The output keeps each record tied to its Snupit source page.
The Actor reads public fields only. It does not access accounts, quote forms, hidden contact details, reviewer phone fragments, or linked provider websites.
π‘ Who is this for?
- I run a B2B lead agency serving South African SMEs. I need a verified list of local service providers by city and category so I can pre-qualify cold outreach targets before the first call.
- I manage the CRM for a local marketing agency. I need to enrich our prospect database with Snupit's public ratings, badge status, and contact fields so our sales team calls warm leads.
- I am an independent SEO consultant in Johannesburg. I need to identify high-rating service providers without a website so I can pitch my services before a competitor does.
- I map the home-services landscape in South Africa. I need structured provider data by category and province to understand market density and service coverage across the country.
π How to use it
|
STEP 1 Choose your sources Keep the prefilled profile for a quick test, or add public Snupit URLs for your target city and service. |
STEP 2 Set depth and filters Enable profile following, reviews, photos, or verified-only filtering to shape your export. |
STEP 3 Export your dataset Use the Providers, Contacts, or Changes view in your next workflow or CRM import. |
Quick start
The default input includes one public profile so a new run confirms the output immediately. To use generated service and location targets, remove the prefilled URL from startUrls and keep searchTerms and locations filled in.
{"startUrls": [{"url": "https://www.snupit.co.za/johannesburg/bramley/vsc-construction-and-projects/425180"}],"scrapeDetails": false,"maxItems": 10,"requestDelayMs": 1000}
For a direct profile export, add one or more public profile URLs and set scrapeDetails to false or true. Direct profile URLs are always opened.
For a broader discovery test, use an empty startUrls list:
{"startUrls": [],"searchTerms": ["builders", "plumbers"],"locations": ["Johannesburg", "Cape Town"],"scrapeDetails": true,"maxItems": 50,"maxSearches": 4}
Snupit service and location pages may contain descriptions and review counts without provider profile links. When a source page publishes no provider links, that target produces zero provider records. Use direct profile URLs for dependable records, and treat service-page discovery as source-dependent.
π§ Input
| Field | Type | Required | Description |
|---|---|---|---|
startUrls | array of URLs | No | Public Snupit profile, service, location, or sitemap URLs. Supplied URLs take precedence over generated targets. |
searchTerms | array of strings | No | Snupit service or category terms used with each location when startUrls is empty. |
locations | array of strings | No | South African city or town names combined with each service term. |
verifiedOnly | boolean | No | Keep only profiles that visibly show Snupit's Pro Verified badge. |
minRating | integer | No | Keep records with a visible rating at or above this value. Use 0 to disable the filter. |
sortBy | enum | No | Keep source order, or sort locally by rating, review count, or provider name. |
scrapeDetails | boolean | No | Follow provider profile links published by discovery pages. Direct profile URLs are always read. |
includeReviews | boolean | No | Add visible reviews as a JSON string, excluding masked reviewer phone fragments. |
includePhotos | boolean | No | Add visible logo and gallery image URLs from the profile page. |
runMode | enum | No | snapshot publishes every matching record. changes publishes only new or changed records. |
monitorScope | string | No | Name the saved comparison scope used by change-monitoring runs. |
maxItems | integer | No | Maximum unique provider records to publish. Range: 1 to 250. |
maxPages | integer | No | Maximum linked pages inspected per target. Range: 1 to 25. |
maxSearches | integer | No | Maximum generated service and location combinations. Range: 1 to 50. |
requestDelayMs | integer | No | Minimum delay between source requests. Range: 500 to 5000 milliseconds. |
π¦ Data table
| Field | Type | Description |
|---|---|---|
companyName | string | Public provider name. |
companyId | string | Snupit provider identifier when present in the profile URL. |
serviceCategories | string | Comma-separated services shown on the public profile. |
workFocus | string | Comma-separated work-focus terms shown on the public profile. |
searchCategory | string | Service term taken from the source target URL. |
searchCity | string | City taken from the source target URL. |
city | string | Public city. |
suburb | string | Public suburb or area. |
province | string | Public province or region. |
street | string | Public street or street-level address. |
address | string | Public address as displayed by Snupit. |
postalCode | string | Public postal code. |
tagline | string | Public provider tagline. |
description | string | Public page description. |
about | string | Public About Us text. |
businessHours | string | Public business-hours text. |
verified | boolean | Whether the Pro Verified badge is visible. |
backgroundChecked | boolean | Whether a Background Checked badge is visible. |
rating | number | Visible provider rating. |
reviewCount | number | Visible provider review count. |
yearsInBusiness | number | Visible years-in-business value. |
employeeCount | number | Visible employee count. |
latestReview | string | The latest visible review as a JSON string. |
reviewsJson | string | All visible reviews as a JSON string when enabled. |
phone | string | Public phone value explicitly shown by the provider page. |
email | string | Public email explicitly shown by the provider page. |
website | string | Public provider website explicitly linked inside the profile content. |
logoUrl | string | Public provider logo URL. |
imageUrlsJson | string | Visible gallery image URLs as a JSON string when enabled. |
profileUrl | string | Canonical public Snupit profile URL. |
sourceUrl | string | URL that caused the profile to be collected. |
recordType | string | Record type, currently provider. |
scrapedAt | string | UTC timestamp for this collection. |
changeType | string | new or updated in changes mode. |
firstSeenAt | string | First successful observation in the monitor scope. |
lastSeenAt | string | Most recent successful observation in the monitor scope. |
Example output
{"companyName": "VSC Construction And Projects","companyId": "425180","serviceCategories": "Builders, Electricians, Fencing, Gardeners, Gate Motors, Home Improvements, Painters, Paving, Plastering","city": "Johannesburg","suburb": "Bramley","province": "Gauteng","address": "East Avenue, Bramley, Johannesburg - 2018","verified": true,"rating": 5,"reviewCount": 4,"profileUrl": "https://www.snupit.co.za/johannesburg/bramley/vsc-construction-and-projects/425180","sourceUrl": "https://www.snupit.co.za/johannesburg/bramley/vsc-construction-and-projects/425180","recordType": "provider","scrapedAt": "2026-09-22T18:10:39.046Z"}
ποΈ Dataset views
Every run uses exactly three dataset views:
- π Providers: Names, services, location, quality signals, and source links.
- π Contacts: Public phone, email, website, address, and profile links.
- π Changes: New and updated records from monitoring runs.
The Actor also stores a small run summary and, in changes mode, source-backed comparison state. It never stores cookies, challenge pages, or private data.
π‘ Change monitoring
Set runMode to changes and reuse the same monitorScope across scheduled runs. The Actor compares public source fields by provider ID or canonical profile URL.
- The first observation is marked
new. - A source-backed field change is marked
updated. - An unchanged provider is not published again.
- Snapshot mode always publishes every unique matching provider.
π° Pricing
This Actor uses pay-per-event pricing. Empty runs cost nothing, and there is no subscription. Current event pricing is shown on the Apify Store page.
β Enjoying Snupit South Africa Business Directory Scraper: Service Leads?
|
β β β β β Got a useful Snupit provider export? A short rating helps other lead teams find this Actor and guides what gets built next. |
| β Β Β Rate this Actor on Apify |
π Tips
- Use direct profile URLs for reliable results. Service and location discovery pages sometimes publish no profile links. A direct profile URL always returns one record.
- Filter by verified status first. Set
verifiedOnlyto keep Pro Verified providers. These profiles tend to be more complete and more responsive. - Layer
minRatingwithverifiedOnly. A rating of 4 or 5 combined with verified status surfaces the highest-quality leads in a category. - Schedule in changes mode for ongoing lead flow. Set
runModetochanges, fix amonitorScope, and schedule weekly runs. The Changes view shows only new or updated providers.
β FAQ
Does this Actor need a Snupit account?
No. It reads public Snupit pages. Account-only fields and quote workflows are outside the scope.
Why did a service search return no providers?
Snupit may publish a service page with descriptions, counts, and reviews but no provider profile links. Add public profile URLs to startUrls, or enable scrapeDetails when your chosen source publishes profile links.
Can it find private phone numbers or hidden emails?
No. The output includes only contact values explicitly visible on the public profile page. Masked reviewer contact fragments are excluded.
How do I run a recurring lead monitor?
Use runMode: "changes" and keep the same monitorScope. Schedule the Actor in Apify, then read the Changes view for new and updated public profiles.
β οΈ Limits and public-data boundaries
- Snupit can change its page layout, available provider links, or public fields.
- Service and location pages may contain no provider profile links in the returned page.
- The Actor does not submit quote requests or use login-only pages.
- The Actor does not follow linked provider websites.
- Missing fields are omitted. No placeholder values are invented.
- Requests are serialized and bounded. A declined or challenge-like page is skipped without bypass attempts.
- Use only public data in line with Snupit's terms and applicable privacy rules.
π Other actors
- Bizi.si Slovenia Scraper: Slovenska podjetja for Business Leads β: Collect public Slovenian company records and contacts.
- Grotal India Business Scraper for Leads: City and Category Data β: Build Indian business lists by city and category.
- BUSINESS.bg scraper: Bulgarian company leads, ΡΠΈΡΠΌΠ΅Π½ΠΈ ΠΊΠΎΠ½ΡΠ°ΠΊΡΠΈ β: Collect Bulgarian company leads and public contact fields.
- Fonecta scraper for Finnish leads: yrityshaku data in JSON β: Search Finnish business-directory data for lead lists.
- Expertise.com MSP lead scraper: providers by city with contacts β: Find managed IT service providers by location.