Singapore MyCareersFuture Jobs Scraper
Pricing
from $30.00 / 1,000 job listings
Singapore MyCareersFuture Jobs Scraper
Live Singapore job postings from MyCareersFuture (WSG / gov.sg) — title, company, UEN, sector, location, SGD salary band, employment type, seniority, posting/expiry date, required skills, full job URL. Filter by keyword, sector, location, employment type, salary band, recency.
Pricing
from $30.00 / 1,000 job listings
Rating
0.0
(0)
Developer
Stephan Corbeil
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Live job market data from Singapore's national government-run job portal, delivered as clean JSON — keyword search, sector filter, salary band, employment type, seniority, recency window. This actor pulls active job postings from MyCareersFuture (mycareersfuture.gov.sg), the country's central job-matching portal operated by Workforce Singapore (WSG), and returns one structured record per posting with the title, company name, UEN (Unique Entity Number), sector / industry category, formatted Singapore address, monthly SGD salary band, employment type, seniority level, posting and expiry dates, required skills list, and the direct posting URL.
If you are recruiting in Singapore, running an HR-tech or staffing agency, scraping leads from job boards for B2B outreach, or doing labour-market research, this actor gives you the most authoritative public dataset for the SG market — without scraping LinkedIn (paid, captcha-gated, weak SG-specific search), Indeed (aggregator with stale postings), or JobStreet (region-wide noise that drowns out SG signal).
Why MyCareersFuture is the canonical Singapore job dataset
Under Singapore's Fair Consideration Framework (FCF), every Singapore employer that wants to hire a foreign professional on an Employment Pass (EP) must first advertise the role on MyCareersFuture for a minimum window (currently 14 days for most roles). The portal is therefore not an optional employer board — it is the de-facto compliance layer for the entire formal job market in Singapore for jobs paying SGD 5,000/month or more.
That regulatory requirement has two huge implications for data buyers:
- Coverage is unmatched. Almost every white-collar role in Singapore at SGD 5,000+ monthly will pass through the portal at some point in its hiring cycle. There is no equivalent regulatory funnel forcing roles onto LinkedIn or Indeed.
- Data is structured. Unlike scraped HTML from third-party aggregators, MyCareersFuture data is keyed by UEN (Singapore's national company identifier) and uses ACRA's official SSIC industry codes + Singapore's SSOC occupation taxonomy. That means the records you pull here are joinable to ACRA company data, MAS financial-institution filings, IRAS tax records, and any other Singapore government dataset that uses UEN as the primary key.
What you get — schema
Each run produces one dataset row per matching job. Fields:
| Field | Type | Notes |
|---|---|---|
job_id | string | MyCareersFuture UUID — stable per posting (use as deduplication key). |
title | string | Job title as posted. |
company | string | Posted company legal name. |
company_uen | string | Singapore Unique Entity Number — joins to ACRA, IRAS, MAS datasets. |
company_url | string | Company website if disclosed. |
sector | array<string> | MyCareersFuture categories (e.g. ["Information Technology", "Engineering"]). |
location | string | Formatted Singapore address: block + street + building, #floor-unit, postal code, optional district. |
is_overseas | boolean | True for the handful of foreign-based roles posted by SG employers. |
salary_min_sgd | integer | Lower bound of advertised band, in SGD per salary_type period. |
salary_max_sgd | integer | Upper bound. |
salary_type | string | Monthly, Annual, Hourly, Daily. |
employment_type | array<string> | One or more of Full Time, Part Time, Contract, Permanent, Temporary, Flexi Work, Internship, Freelance. |
seniority | array<string> | One or more position-level tags (Manager, Executive, Senior Management, etc.). |
minimum_years_experience | integer | As declared by the employer. |
posting_date | string | ISO date — the current posting date (metadata.newPostingDate, refreshed on repost). |
original_posting_date | string | ISO date — first time the job ID appeared. |
expiry_date | string | ISO date — when the listing expires. |
vacancies | integer | Number of openings under this posting. |
job_url | string | Direct URL to the MyCareersFuture posting page. |
skills_required | array<string> | Skill taxonomy — the employer's tagged skills, useful for skills-gap analysis and recommender systems. |
ssoc_code | string | Singapore Standard Occupational Classification 2020. |
occupation_id | string | MyCareersFuture-internal occupation identifier. |
description_summary | string | First ~600 chars of the job description with HTML stripped. |
data_source | string | Provenance string. |
Input parameters
| Parameter | Type | Notes |
|---|---|---|
searchQuery | string | Free-text keyword passed to the upstream search endpoint. Matches title, description, and skill fields. |
sector | string | Optional sector filter — must match a MyCareersFuture category exactly (Information Technology, Banking and Finance, Engineering, etc.). |
location | string | Substring match on the assembled address (region name, building, postal code). Applied client-side. |
salaryMin | integer | Minimum monthly SGD salary. Sent as the API's salary floor. |
salaryMax | integer | Maximum monthly SGD salary. Applied client-side as a band-overlap test. |
employmentType | enum | ALL / FULL_TIME / PART_TIME / CONTRACT / PERMANENT / TEMPORARY / FLEXI_WORK / INTERNSHIP / FREELANCE. |
seniorityLevel | string | Exact-match position-level. |
postedWithinDays | integer | Restrict to jobs posted within the last N days based on newPostingDate. |
maxResults | integer | Hard cap (1–500). Default 100, prefilled 50. |
How it compares — Singapore-specific job data sources
| This actor | LinkedIn Jobs | Indeed SG | JobStreet | Glassdoor SG | |
|---|---|---|---|---|---|
| Government-issued data? | Yes (MyCareersFuture / WSG) | No | No | No | No |
| Coverage of EP-mandated roles | 100% (regulatory requirement) | Partial | Partial | Partial | Partial |
| Salary band disclosed | Yes (structured min/max SGD) | Rare, scraped from text | Rare | Rare | Rare |
| Company UEN included | Yes (joinable to ACRA) | No | No | No | No |
| Captcha / login required | No (public REST API) | Yes | Frequent | Yes | Yes |
| Cost | $0.03 per job | LinkedIn Jobs Scraper $0.02/job | Free scrapers exist but break | Subscription | Subscription |
| Update frequency | Live (per-run) | Daily | Daily | Daily | Weekly |
| Skills taxonomy | Yes (employer-tagged) | Yes | No | No | No |
The LinkedIn Jobs Scraper in our fleet is the top earner per result-count for global job data and excellent for cross-market analysis, but if your operating geography is Singapore specifically, MyCareersFuture is the higher-signal source — the dataset where every formally-advertised EP-eligible role must surface by law, and where the records are pre-joined to Singapore's national identifier system.
Use cases
1. Singapore recruiting agencies — pipeline sourcing
If you run a recruitment desk, the bread-and-butter workflow is "find every open role in my vertical, in my client's salary band, posted in the last 7 days, that we are not already pitching." MyCareersFuture is uniquely good for this because:
- The salary band is structured (min/max in SGD), not free-text in a job description.
- The posting date is the current date (the portal forces a repost on edits), so you can prove freshness.
- The UEN lets you join against your existing CRM by national company identifier without name-fuzzy-matching.
A 5-minute run with searchQuery="data engineer", salaryMin=8000, postedWithinDays=7, maxResults=200 pulls every senior data engineering role posted in Singapore in the last week at SGD 8k+/month. Pair it with the Singapore ACRA Companies actor to enrich each hiring company with directors, paid-up capital, and SSIC business classification.
2. HR teams and TA leaders — market intelligence
Internal talent acquisition teams use this dataset to benchmark their own compensation bands against the live market. Pull every posting for Software Engineer titles in the IT sector over the last 90 days, group by seniority, and you have a real distribution of advertised SGD salary bands — not the smoothed self-reported numbers on Glassdoor or the headcount-filtered survey data from Mercer / Aon.
Combine the skills list with the salary band to answer questions like "do Singapore employers pay more for Rust + Kubernetes than for Python + AWS at the senior level?" in concrete dollar terms.
3. B2B sales / lead-gen agencies — buyer-intent signals
A new MyCareersFuture posting is a direct buyer-intent signal. A company posting three new DevOps roles is buying cloud infrastructure. A company posting a Head of Compliance is buying compliance software. A company posting an in-house counsel is buying legal tech.
Cross-link the company_uen back to Singapore MAS Financial Institutions to enrich the regulated-entity context, or to Singapore ACRA Companies for paid-up capital and director profiles. The combination is a Singapore-specific signal-to-account flow that beats generic intent vendors (Bombora, G2 buyer-intent) for SG-only ICPs.
4. Labour-market researchers and policymakers
Because MyCareersFuture is the regulatory funnel, longitudinal pulls give you a real-time read on Singapore's formal job market — vacancy growth by sector, salary inflation by occupation, skill-demand shifts. Pull weekly into your warehouse, key by job_id for deduplication, and join against ACRA company data and IRAS tax filings to build a real labour-market dashboard.
5. Investment analysts — Singapore equity coverage
If you cover SGX-listed companies, hiring is a leading indicator. A bank ramping up its private credit team, a manufacturer ramping up its automation engineers, or a fintech hiring a Head of Risk all signal capital allocation choices before they show up in earnings. Pull every posting from your watch-list of UENs (you have UEN already — Singapore lists every SGX issuer's UEN in its profile) and you have a structured hiring tracker.
Pairs well with
- LinkedIn Jobs Scraper — global coverage for cross-market pulls.
- WeWorkRemotely Jobs Scraper — remote-only role discovery.
- Singapore ACRA Companies — enrich each
company_uenwith directors, address, paid-up capital, SSIC code. - Singapore MAS Financial Institutions — regulated-entity context for banking / asset-management roles.
- Singapore Rental Market Tracker — residential rental data for relocation cost-modelling.
- Singapore URA Commercial Property — commercial property data to triangulate office expansion vs hiring signals.
Example input
{"searchQuery": "software engineer","sector": "Information Technology","location": "","salaryMin": 6000,"salaryMax": 0,"employmentType": "FULL_TIME","seniorityLevel": "","postedWithinDays": 30,"maxResults": 50}
Example output (one record)
{"job_id": "551cdfbe5ee60286be0a6d243c02cc03","title": "Day 2 Software Engineer (AMK)","company": "MAESTRO TECHNOLOGY SOLUTIONS PTE. LTD.","company_uen": "201734933C","company_url": "https://www.maestrosolutions.com.sg","sector": ["Information Technology"],"location": "30 Ang Mo Kio Industrial Park 2, Singapore 569508","is_overseas": false,"salary_min_sgd": 4500,"salary_max_sgd": 7500,"salary_type": "Monthly","employment_type": ["Full Time", "Permanent"],"seniority": ["Executive"],"minimum_years_experience": 2,"posting_date": "2026-05-19","original_posting_date": "2026-05-19","expiry_date": "2026-06-18","vacancies": 2,"job_url": "https://www.mycareersfuture.gov.sg/job/information-technology/day-2-software-engineer-...","skills_required": ["MongoDB", "Kubernetes", "Customer Support", "Software Engineering", "Docker"],"ssoc_code": "25121","occupation_id": "OCC002119","description_summary": "Day 2 Software Engineer. Job Description: As a Day 2 Software Engineer, you will be responsible for ensuring the smooth operation of our software products post-deployment...","data_source": "mycareersfuture.gov.sg public API"}
Pricing
This actor uses Apify's pay-per-event model. You pay only for what you pull — there is no monthly subscription, no minimum spend, no per-seat fee.
- Actor start: a flat micro-charge per run.
- Per job posting: a per-row charge for each posting pushed to the dataset.
Pricing for this actor is calibrated to sit slightly above the LinkedIn Jobs Scraper per-row price ($0.02/job), because Singapore-specific job data is rarer than global LinkedIn coverage and the regulatory funnel (FCF) makes MyCareersFuture a higher-signal source for the SG market. A representative 50-row pull costs well under USD 2.
If your monthly spend would justify a flat subscription, contact us — large Singapore recruiting and HR-tech buyers usually move to a private fork with custom price brackets.
Limits and edge cases
- Hard ceiling: the actor caps pulls at 500 rows per run regardless of
maxResultsto prevent runaway pagination. For deeper backfills, run multiple jobs with disjointpostedWithinDayswindows or non-overlappingsearchQuerykeywords and dedupe byjob_iddownstream. - Sector / seniority strings are case-sensitive. Use the exact taxonomy values (e.g.
Information Technology, notIT). Leave empty if unsure — the upstream API will return everything and you can filter post-hoc. - Salary fields are integers in SGD. The
salary_typefield tells you whether the band is monthly, annual, hourly, or daily — you must read both fields when comparing roles. - Graceful degradation: if the MyCareersFuture API is rate-limited or unreachable, the actor emits a single placeholder row
{ "_blocked": true, ... }describing the failure mode and exits cleanly. Your downstream pipeline can detect this and retry after a few minutes. - Overseas roles posted by SG-registered employers (
is_overseas: true) show foreign address fields. Filter them out client-side if you only want SG-domestic jobs.
Frequently asked questions
How fresh is the data?
Every run hits the live MyCareersFuture REST API. posting_date is the portal's newPostingDate field, which is refreshed every time the employer edits the listing. For a true first-listed date, use original_posting_date.
Is this scraping or an official API?
MyCareersFuture exposes a public, unauthenticated REST endpoint at api.mycareersfuture.gov.sg/v2/jobs. The actor calls it the same way the consumer-facing site does. There is no scraping of HTML, no captcha bypass, no headless browser — just clean JSON in and out.
What about rate limits?
The upstream API is generous for occasional pulls — we have not observed hard blocks at reasonable cadences. If you need 10K+ rows per day, run multiple smaller pulls spaced through the day rather than one huge pagination loop, and the actor's _blocked: true placeholder will surface any block immediately if it does happen.
Can I get historical postings?
MyCareersFuture exposes only currently-active roles via the public API. For historical longitudinal data, run this actor on a daily schedule and snapshot the results into your own warehouse — over 12 months you build the historical dataset that does not exist as a backfill anywhere else.
Will my pulled data go stale?
Each posting has an expiry_date (typically 30–90 days after first posting). After expiry, the posting falls off the public API. Pull frequently and snapshot if you need a permanent archive.
How does this compare to using the consumer-facing site?
The consumer site shows ~25 jobs per page, captures interaction events, and is designed for individual job seekers. This actor hits the same data layer that powers the site, returns up to 500 structured records per run, and gives you skills + UEN + SSOC code in the response — none of which are exposed on the rendered page.
Can I cross-join the company_uen to other Singapore datasets?
Yes — that is the main reason to use this actor over LinkedIn Jobs. Every company_uen is a primary key into ACRA's corporate registry, IRAS tax filings, MAS financial-institution disclosures, and BCA construction-licence data. Pair this actor with Singapore ACRA Companies and Singapore MAS Financial Institutions for a deep enrichment graph.
Compliance and lawful use
MyCareersFuture is a public-data portal operated by Workforce Singapore (WSG) under the Singapore government. The job listings are published by employers explicitly for public consumption and the API endpoint that this actor uses is the same public endpoint the consumer-facing portal uses. You can lawfully use this data for talent sourcing, market research, recruitment outreach, and competitive intelligence, subject to Singapore's PDPA (Personal Data Protection Act) where individual person-data is involved — note that this actor returns company records and job postings, not personal candidate data, so PDPA concerns are minimal for typical use cases.
If you intend to use this data at scale, we recommend (a) respecting upstream cadence (run hourly at most for the same query), (b) attributing the source as MyCareersFuture / WSG in any published derived dataset, and (c) consulting your own counsel for use cases that involve onward distribution.
Get the data
Singapore is a high-density, high-signal market for B2B sourcing, recruiting, and labour-market research. MyCareersFuture is the canonical dataset — and this actor is the cleanest path to it.