MyCareersFuture Scraper — Singapore Jobs, Salaries & Leads
Pricing
$4.00 / 1,000 job scrapeds
MyCareersFuture Scraper — Singapore Jobs, Salaries & Leads
Scrape Singapore's official government job portal, MyCareersFuture. Get real salary ranges, skills, position level, employer UEN, company website, full description and GPS location — turning hiring into B2B leads. Monitor mode emits only new or changed jobs. No login or API key needed.
Pricing
$4.00 / 1,000 job scrapeds
Rating
0.0
(0)
Developer
Scrape Sage
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 hours ago
Last modified
Categories
Share
MyCareersFuture Scraper — Singapore Jobs + Hiring-Company Leads (Salary, Skills & Employer Data)
Extract complete job data from MyCareersFuture.gov.sg — Singapore's official government job portal — including the fields generic job scrapers miss: legally-mandated SGD salary ranges, the full job description, required skills, number of vacancies, SSOC occupation codes, exact geo-coordinates, and the complete hiring-company profile (UEN, website, industry, employee count, logo). Optionally turn every employer into a ready-to-contact B2B lead with aggregated hiring signals.
No login, no cookies, no browser — fast JSON extraction with 99%+ reliability.
Why this MyCareersFuture scraper?
Because employers are legally required to advertise on MyCareersFuture (under the Fair Consideration Framework) and to disclose salary, this is the single richest, most complete source of Singapore hiring data anywhere — and this actor ships the richest dataset in the category:
| Data | Generic job scrapers | This actor |
|---|---|---|
| Real SGD salary min/max + type | ❌ often hidden | ✅ legally mandated |
| Full job description (clean text) | partial | ✅ |
| Required skills (tagged) | ❌ | ✅ |
| Number of vacancies | ❌ | ✅ |
| Min. years experience + SSOC occupation code | ❌ | ✅ |
| Employment type, seniority, work arrangements | partial | ✅ |
| Exact location + lat/lng + district/region | ❌ | ✅ |
| Hiring company UEN (links to ACRA) | ❌ | ✅ |
| Company website, industry (SSIC), employee count, logo | ❌ | ✅ |
| Posting date, expiry date, view & application counts | partial | ✅ |
| Deduplicated hiring-company B2B leads | ❌ | ✅ opt-in |
| Monitor mode — only new & changed jobs | ❌ | ✅ |
Use cases
- Recruitment & sourcing — pull every live role in a sector with real salary bands, skills, and seniority; benchmark compensation and find candidates' target employers.
- B2B lead generation — companies that are hiring are companies that are spending. Export hiring employers with UEN, website, industry, and headcount (
type: "company") and feed your CRM. Perfect for recruiters, staffing agencies, HR-tech/SaaS, payroll, training, corporate services and commercial real estate. - Salary & labour-market intelligence — track SGD salary ranges, in-demand skills, and hiring volume by category, seniority and region across Singapore.
- Hiring-intent monitoring — schedule recurring runs to watch a sector, role, or specific employer and capture only new and changed postings (e.g. salary updates, re-opens).
- Market research & data enrichment — enrich a UEN list, map demand by SSOC occupation, or power dashboards, newsletters and job-aggregator apps.
How to use
- Sign up for Apify — the free plan is enough to try this actor.
- Open the MyCareersFuture Scraper, enter search keywords and/or filters (category, employment type, seniority, minimum salary), or paste MyCareersFuture URLs, and click Start.
- Watch results stream into the dataset table.
- Export as JSON, CSV, Excel, XML, or RSS — or pull results programmatically via the Apify API.
Input
{"searchKeywords": ["software engineer", "data analyst"],"categories": ["Information Technology"],"employmentTypes": ["Permanent", "Full Time"],"positionLevels": ["Manager", "Senior Executive"],"salaryMin": 5000,"sortBy": "new_posting_date","maxItems": 200,"scrapeJobDetails": true,"includeCompanyLeads": true,"monitorMode": false}
- searchKeywords — keywords; each runs its own search and is combined with the filters below. Leave blank to scrape the newest jobs across Singapore.
- startUrls — paste MyCareersFuture job pages (scrape only those jobs) or a search/results URL with your filters applied on the site.
- categories / employmentTypes / positionLevels — restrict results (e.g.
Information Technology,Permanent,Manager). - salaryMin — only jobs whose minimum monthly salary (SGD) is at least this amount.
- sortBy —
new_posting_date(newest, default),min_monthly_salary(lowest salary first), orrelevance. - postedWithinDays — only jobs posted within N days (0 = no limit).
- maxItems (default 100) — cap across all keywords/URLs (0 = no limit, can be 60,000+).
- scrapeJobDetails (default true) — enrich each job with full description, vacancies, experience, SSOC code, screening questions, expiry date, view count, and the employer's website/industry/description.
- includeCompanyLeads (default false) — also output one deduplicated lead record per hiring company with aggregated hiring signals.
- monitorMode (default false) — only output new & changed jobs since the previous run for the same input (state persists across runs — pairs perfectly with Schedules).
- proxyConfiguration — proxy settings (Apify Proxy by default; the API isn't geo-locked, so this is plenty).
Output
One record per job (type: "job"), plus optional hiring-company lead records (type: "company"):
{"type": "job","jobId": "MCF-2026-1000311","uuid": "14d02f410bf9ae035b62dfb9f3ef44dd","url": "https://www.mycareersfuture.gov.sg/job/engineering/software-engineer-...-14d02f410bf9ae035b62dfb9f3ef44dd","title": "Software Engineer / Senior Software Engineer (Automation & SCADA)","description": "Job Responsibilities:\n• Responsible for software prototyping, design, development...","companyName": "EA RECRUITMENT PTE. LTD.","companyUen": "202102411G","companyWebsite": "https://example.com.sg","companyIndustry": "78104","companyEmployeeCount": "50","companyLogoUrl": "https://static.mycareersfuture.gov.sg/images/company/logos/.../logo.jpg","isResponsiveEmployer": true,"salaryMin": 4000,"salaryMax": 6000,"salaryType": "Monthly","employmentTypes": ["Permanent", "Full Time"],"positionLevels": ["Executive"],"categories": ["Engineering", "Information Technology"],"skills": ["C++", "Python", "SCADA", "REST", "SDLC"],"numberOfVacancies": 2,"minimumYearsExperience": 2,"ssocCode": "25121","district": "Islandwide","region": "Islandwide","latitude": 1.3294,"longitude": 103.8021,"postedDate": "2026-06-12","expiryDate": "2026-07-12","numberOfApplications": 0,"status": "Open","applicationUrl": "https://www.mycareersfuture.gov.sg/job/engineering/...","scrapedAt": "2026-06-12T08:11:10.000Z"}
A hiring-company lead (type: "company") carries companyName, companyUen, companyWebsite, companyDescription, companyIndustry (SSIC), companyEmployeeCount, companyLogoUrl, plus aggregated signals across the run: liveJobCount, totalVacancies, salaryMinAcrossJobs/salaryMaxAcrossJobs, categoriesHiring, positionLevelsHiring, and regions.
What to expect (field coverage)
MyCareersFuture is employer-entered data, so a few fields are populated only when the employer fills them in. Verified live, you can typically expect:
| Field group | Coverage |
|---|---|
| title, salary min/max, employment type, seniority, categories, company name + UEN | ~100% |
| skills, posting/expiry dates, status, region | ~95–100% |
full description, vacancies, min. experience, SSOC code (with scrapeJobDetails) | ~95% |
| exact street address + lat/lng | present for jobs with a fixed worksite (blank for "Islandwide"/remote) |
| company website, employee count, description | present when the employer published them |
A blank field means the employer didn't publish it — not that scraping failed. Nothing is dropped, so you always get the richest dataset available.
Automate & schedule
Run this actor on autopilot and pull results into your own stack:
- Apify API — start runs, fetch datasets, and manage schedules over REST.
- apify-client for JavaScript and apify-client for Python — official SDKs.
- Schedules — run it daily/weekly with Monitor mode to capture only new & changed jobs; perfect for hiring-intent feeds and lead pipelines.
- Webhooks — trigger downstream actions (CRM import, Slack alert, email sequence) the moment a run finishes.
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'MY_APIFY_TOKEN' });const run = await client.actor('scrapesage/mycareersfuture-scraper').call({searchKeywords: ['data analyst'],categories: ['Information Technology'],salaryMin: 5000,maxItems: 200,includeCompanyLeads: true,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(`Got ${items.length} jobs & hiring-company leads`);
Integrate with any app
Connect the dataset to 5,000+ apps — no code required:
- Make — multi-step automation scenarios.
- Zapier — push new hiring-company leads straight into your CRM.
- Slack — get notified when a monitored sector or employer posts new jobs.
- Google Drive / Sheets — auto-export every run to a spreadsheet.
- Airbyte — pipe results into your data warehouse.
- GitHub — trigger runs from commits or releases.
Use with AI assistants (MCP)
The output is clean, LLM-ready JSON. Call this actor from Claude, ChatGPT, or any agent framework through the Apify MCP server — ask your assistant to "find Singapore IT jobs paying over $8k and list the hiring companies with their websites" and let it run this scraper for you.
More scrapers from scrapesage
Build a complete Singapore hiring & lead-gen stack:
- LinkedIn Jobs Scraper — job postings and hiring-intent signals from LinkedIn.
- Multi-ATS Job Scraper — jobs straight from company career pages (Greenhouse, Lever, Ashby, SmartRecruiters, Workday).
- SGCarMart Used Car Scraper — Singapore used-car listings, prices (COE/OMV/ARF) and dealer leads.
- Eventbrite Scraper — events plus organizer leads (ticket prices, emails, socials).
- Sched Conference Scraper — speakers, sessions and sponsors as B2B leads.
- Bark Listing Scraper — service-provider leads from Bark.
- Facebook Ad Library Scraper — competitor ad intelligence on Meta & Instagram.
- Google Ads Transparency Scraper — who's advertising what on Google.
- LinkedIn Jobs, Airbnb and more on the scrapesage profile.
Tips
- Hiring-company leads: turn on
includeCompanyLeadsto get one deduplicated record per employer with website, industry and aggregated hiring signals — ideal for B2B outreach. - Whole-of-Singapore pulls: set
maxItems: 0and leave keywords blank to capture every live posting (60,000+); narrow bycategoriesorsalaryMinto stay focused and cheap. - Recurring monitoring: combine Schedules with Monitor mode to track only newly posted or changed jobs — perfect for daily hiring-intent feeds.
- Cost control: turn off
scrapeJobDetailsfor a fast, cheaper run when you only need salary, company, skills and location from the search results.
FAQ
Does it need the MyCareersFuture / WSG API key or a login? No. This actor reads the same public data the website shows — no key, login or cookies needed.
Is the salary data reliable? Yes. Employers on MyCareersFuture must disclose salary under the Fair Consideration Framework, so salary ranges are present on virtually every job — far more complete than LinkedIn or generic job boards.
Can I get the hiring company's contact details? You get the company name, UEN, website, industry (SSIC) and logo. The UEN lets you cross-reference ACRA and enrich further. MyCareersFuture itself doesn't publish employer emails/phones.
Can I export to Google Sheets, CSV, or Excel? Yes — one click in the dataset view, or automatically on every run via the Google Drive integration.
How do I monitor new jobs automatically? Create a Schedule (e.g. daily) with Monitor mode on, and optionally add a webhook or Zapier zap to push new postings/leads into your CRM as they appear.
Does Monitor mode conflict with Apify Schedules? No — they're complementary. The Schedule decides when a run starts; Monitor mode decides which jobs are new or changed within that run (state persists in a named key-value store), so scheduled runs only emit fresh data.
A field is blank — why? Some employers don't publish a website, employee count, or a fixed address (e.g. "Islandwide" / remote roles). Fields are blank only when the employer didn't provide that data — never because the scraper skipped it.
Is scraping MyCareersFuture legal? This actor collects publicly available data only. You are responsible for using the data in compliance with applicable laws (e.g. PDPA/GDPR for personal data) and the site's terms.
Need help?
Open an issue on the actor's Issues tab, or visit the Apify help center. Feature requests are welcome — this actor is actively maintained.