Singapore Yellow Pages Scraper (Leads: Phone, Email, Address)
Pricing
from $17.00 / 1,000 results
Singapore Yellow Pages Scraper (Leads: Phone, Email, Address)
Scrape Singapore business listings by keyword: company name, phone number, email, address, category and website. Build local lead lists for sales and outreach. Export to JSON, CSV or Excel.
Pricing
from $17.00 / 1,000 results
Rating
5.0
(1)
Developer
Scrapers Lat
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
14 days ago
Last modified
Categories
Share
Singapore Yellow Pages Scraper (Leads: Phone, Email, Address)
Here is one real result, with every field the actor returns:
{"businessName": "Ace Guard Pte. Ltd.","phone": "+65 6717 9292","whatsapp": "+65 8797 7581","email": "aceguard@agpl.com.sg","address": "205 Balestier Rd, #01-05 The Mezzo, Singapore 329682","category": "Guard & Patrol Service, Security Management, Electronics Components","website": "https://agpl.com.sg/","verified": true,"url": "https://www.yellowpages.com.sg/listing/ace-guard-pte-ltd/","city": "Singapore","source": "Yellow Pages Singapore","observedAt": "2026-08-10T14:28:41.825Z"}
The most complete Singapore Yellow Pages scraper available. It returns every field the business listing exposes, including business name, phone, WhatsApp, email, full address, categories, website and verified status, plus an optional contact-enrichment add-on, and gives you a keyword filter to target exactly the businesses you need.
📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples
Table of contents
- What it does
- Quickstart
- Input reference
- Output reference
- Example output record
- Run via API and CLI
- Fetch results
- Billing and limits
- FAQ and troubleshooting
What it does
The actor searches Yellow Pages Singapore for the business keyword you pass, paginates through the matching listings, and writes one normalized record per business to the run's dataset. Each record carries the business name, phone, WhatsApp, email, full address, listed categories, website, verified status and listing URL, which makes it a strong source for local B2B lead lists. Missing source values are returned as null, and every listing is read live at run time (see observedAt).
An optional paid contact-enrichment add-on can try to find a public business email and contact name for each business that lacks one.
Quickstart
Open the actor, paste this into the input, and press Run. It returns up to 10 plumber businesses in Singapore.
{"keyword": "plumber","maxBusinesses": 10}
Every input field is optional. Change keyword to any business type such as renovation, dentist, aircon or law firm.
Input reference
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
maxBusinesses | integer | no | 10 | Maximum number of business listings to collect. |
keyword | string | no | plumber | Kind of Singapore business to collect, for example plumber, renovation, dentist, aircon, law firm. |
enrichContacts | boolean | no | false | Optional paid add-on. For each result without an email, attempt to find a public business contact email and a contact person's name. Billed per attempt, plus an extra charge only when an email is found. |
enrichContactsMax | integer | no | 50 | Cap how many results the add-on tries to enrich. Free Apify accounts are capped at 3. |
Output reference
One dataset item per business. Types: string, boolean, or null when the source value is absent.
| Field | Type | Description |
|---|---|---|
businessName | string | Business name. |
phone | string | Business phone number, or null. |
whatsapp | string | WhatsApp number, or null. |
email | string | Business email, or null. |
address | string | Full business address. |
category | string | Listed business categories, comma joined. |
website | string | Business website URL, or null. |
verified | boolean | Whether the listing is marked verified. |
url | string | Yellow Pages listing URL. |
city | string | City, typically Singapore. |
source | string | Always Yellow Pages Singapore. |
observedAt | string | ISO 8601 timestamp of when the record was collected. |
enrichedEmail | string | Add-on only. Public business email found, or null. |
enrichedContactName | string | Add-on only. Contact person name found, or null. |
enrichedJobTitle | string | Add-on only. Contact person job title, or null. |
enrichedEmailStatus | string | Add-on only. Verification status of the found email. |
enrichedSource | string | Add-on only. Source URL the contact was found on. |
enrichedConfidence | string | Add-on only. Confidence of the contact match. |
error | string | Present only on a failed run: a single item with a populated error field is written instead of results. |
Example output record
Real record from a live run (input {"keyword": "plumber", "maxBusinesses": 10}):
{"businessName": "Ace Guard Pte. Ltd.","phone": "+65 6717 9292","whatsapp": "+65 8797 7581","email": "aceguard@agpl.com.sg","address": "205 Balestier Rd, #01-05 The Mezzo, Singapore 329682","category": "Guard & Patrol Service, Security Management, Electronics Components","website": "https://agpl.com.sg/","verified": true,"url": "https://www.yellowpages.com.sg/listing/ace-guard-pte-ltd/","city": "Singapore","source": "Yellow Pages Singapore","observedAt": "2026-08-10T14:28:41.825Z"}
Run via API and CLI
Start a run and wait for it to finish, then read the dataset. Replace <TOKEN> with your Apify API token.
Run synchronously and get dataset items in one call:
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~singapore-yellowpages-scraper/run-sync-get-dataset-items?token=<TOKEN>" \-H "Content-Type: application/json" \-d '{"keyword":"renovation","maxBusinesses":25}'
Start a run asynchronously:
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~singapore-yellowpages-scraper/runs?token=<TOKEN>" \-H "Content-Type: application/json" \-d '{"keyword":"dentist","maxBusinesses":100}'
Apify CLI:
apify call scrapers_lat/singapore-yellowpages-scraper \--input '{"keyword":"law firm","maxBusinesses":50}'
Fetch results
Every run writes to a dataset. Fetch items as JSON, CSV, or Excel by changing format:
# JSONcurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"# CSVcurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"# Paginate large datasetscurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&offset=1000&limit=1000"
<DATASET_ID> is returned as defaultDatasetId in the run object. Use offset and limit to page through large result sets. clean=true drops empty and internal fields.
Billing and limits
- Pay per result. You are charged per business returned (
resultevent). See the pricing tab for the current per-result price. - No charge on failure. If a run errors, the actor writes a single item with a populated
errorfield and does not charge for it. Empty runs cost nothing. - Spend cap respected. Set
maxTotalChargeUsdon the run; once reached, the actor stops emitting and charging further billable results. - Free Apify plans are capped at 10 records per run. Upgrade for higher
maxBusinesses. - Contact enrichment is an optional paid add-on, off by default. It is billed per attempt, with an extra charge only when an email is found; free Apify accounts are capped at 3 enrichment attempts.
FAQ and troubleshooting
A run returned 0 records. Why? The keyword matched no current listings, or the source was briefly unreachable. Try a broader keyword and retry. Zero-result runs are not charged.
Do I get emails and phone numbers?
Yes. Each record includes the phone, WhatsApp and email when the listing publishes them, plus the full address and website, which makes it well suited for local lead lists. Enable the enrichContacts add-on to find more emails.
Why is a field null?
The listing did not publish that value. Missing source values are returned as null, never invented.
What does verified mean?
verified reflects the Yellow Pages verified badge on the listing, as published by the source.
Is this an official Yellow Pages tool? No. This actor is independent and has no affiliation with Yellow Pages. It reads only publicly available business listings. Use the results in accordance with the source's terms.
Related scrapers
- Singapore Business Directory Scraper: Singapore business listings with contacts.
- Singapore MyCareersFuture Jobs Scraper: Singapore job listings with salary and company.
- Google Maps Business Leads Scraper: Local business leads worldwide.
More scrapers at scrapers.lat
Built and maintained by scrapers.lat, where we publish scrapers for public platforms: business directories, company registries, government data and more. Browse the catalog or request a custom scraper at scrapers.lat.
Independent tool, not affiliated with Yellow Pages. Accesses only publicly available business listings. Use the results in accordance with the source's terms.
