Remote Jobs Scraper: Career Pages, Remote OK & Jobicy
Pricing
from $1.40 / 1,000 job results
Remote Jobs Scraper: Career Pages, Remote OK & Jobicy
Remote jobs from 5,800+ employer career pages plus the Remote OK and Jobicy job boards, only from sources that permit reuse. Deduplicated and trust-scored, with region, hybrid, seniority and salary filters and new-job alerts. $2/1K jobs.
Pricing
from $1.40 / 1,000 job results
Rating
0.0
(0)
Developer
Michael Best
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
10 hours ago
Last modified
Categories
Share

Remote jobs straight from 5,800+ employer career pages (Greenhouse, Lever, Ashby, Workable, Recruitee, Personio) plus Remote OK and Jobicy, from sources whose terms allow reuse. One de-duplicated dataset where every job gets a 0-100 trust_score, the regions it is open to, and a remote / hybrid flag, and only new jobs on every scheduled run.
Two of the best-known remote job boards plus remote roles straight from employers' own career pages, one schema. The Actor reads only official public APIs (Remote OK, Jobicy, and the Greenhouse, Lever, Ashby, Workable, Recruitee and Personio job-board APIs), so runs need no browser, no proxies and no login, and they don't break when a website is redesigned. Every record keeps its original listing link and a source credit line, which is all both sources ask for.
Price: $2 per 1,000 jobs. You pay only for jobs that end up in your results. In monitoring mode you pay only for new jobs.
Why this remote jobs scraper?
| 🌍 3 sources, 1 schema | Remote OK (latest ~100 jobs) + Jobicy (every remote job of the last 7 days, typically 1,000–1,500) + company career pages: remote roles from ~5,800 companies that post them on Greenhouse, Lever, Ashby, Workable, Recruitee or Personio (tens of thousands of jobs, straight from the employer). Same field names for all. |
| 🛡️ Trust score + employer confirmation | Board listings are checked against the company's own careers page; when the role is there you get confirmed_on_employer_site and the employer's own employer_apply_url. trust_score (0-100) adds up confirmation, multiple sources, a published salary, recency and stated eligibility, with trust_signals explaining it. Skip stale reposts and ghost listings. |
| 🗺️ Where can I actually work from? | eligible_regions (worldwide, us, canada, north_america, latam, europe, uk, emea, apac, africa, middle_east) parsed from each listing, a region filter, and Exclude hybrid to drop "remote" jobs that want you in an office. |
| 🧹 Cross-source de-duplication | The same job posted on several sources appears once (company and title normalized, "(Remote)" style suffixes ignored); also_listed_on tells you where else it was listed. |
| 📈 Salary you can filter on | salary_min/salary_max/currency/interval, plus a minimum yearly salary filter that annualizes hourly and monthly pay. |
| 🎯 Filters | Keywords (title + tags, optionally description), excluded title words, eligible regions, exclude hybrid, seniority, employment type, has salary, posted since (24 hours, 3 days, 2026-10-01), and Jobicy server-side region/category. |
| 🔔 Only new jobs | Remembers what earlier runs returned. Schedule it hourly or daily and you have a remote-job alert feed. |
| ✅ Terms-friendly | Uses only public APIs whose terms allow reuse with attribution, and caches each source for 60 minutes per account to respect fair-use polling limits. |
What data do you get?
source · job_id · global_id · title · company · company_logo · location · remote · remote_type · eligible_regions · country · employment_type · seniority · category · tags · salary_min · salary_max · salary_currency · salary_interval · posted_at · job_url · apply_url · description_text · attribution · also_listed_on · source_count · confirmed_on_employer_site · employer_apply_url · trust_score · trust_signals · listing_age_days · scraped_at
Export as JSON, CSV, Excel or HTML, or pull it through the Apify API.
Use cases
- Remote job board or newsletter: backfill your board or weekly email with fresh, salaried remote roles.
- Job alerts: schedule hourly with "Only new jobs" and send results to Slack, email or Google Sheets with an Apify integration.
- Job seekers: one daily list of remote roles matching your stack and salary floor.
- Recruiters and sales teams: see which companies are actively hiring remotely right now, and for which roles.
- Market research: track remote salary ranges and demand by category and seniority.
- AI agents: a clean, structured remote-jobs tool for agent workflows.
How to use it
- Click Try for free. The form is prefilled (all three sources, keywords
engineer,developer, 20 results), so the first run takes under a minute and costs about 4 cents. - Adjust keywords and filters, set Max results to 0 for everything that matches. With Max results 0, the career-pages source stops after Career pages: max jobs (default 1,000) matching remote jobs.
- Click Start, then open the Output tab or export the dataset.
Input example
{"sources": ["remoteok", "jobicy", "careers"],"keywords": ["python", "data engineer"],"excludeKeywords": ["intern"],"eligibleRegions": ["us"],"excludeHybrid": true,"seniority": ["senior", "staff"],"requireSalary": true,"minSalaryYearly": 100000,"postedSince": "3 days","onlyNew": true,"stateKey": "python-us","maxResults": 0}
Output example
{"source": "jobicy","job_id": "jobicy:157231","title": "Staff Software Engineer (Android)","company": "TeamSnap","location": "Remote (USA)","remote": true,"remote_type": "remote","eligible_regions": ["north_america","us"],"country": "US","employment_type": "full_time","seniority": "staff","category": "Software Engineering","salary_min": null,"salary_max": null,"salary_currency": null,"salary_interval": null,"posted_at": "2026-10-26T16:38:52Z","job_url": "https://jobicy.com/jobs/157231-staff-software-engineer-android","apply_url": "https://jobicy.com/jobs/157231-staff-software-engineer-android","confirmed_on_employer_site": true,"employer_apply_url": "https://jobs.lever.co/teamsnap/4f98ad5c-024f-4c4c-96f9-df171909aa1f/apply","also_listed_on": [],"source_count": 1,"listing_age_days": 0.2,"trust_score": 65,"trust_signals": ["confirmed on the employer's own careers page","posted in the last 7 days","location eligibility stated","direct apply link"],"description_text": "About Us\n\nAt TeamSnap, we believe when the world connects through sports; the world becomes better...","attribution": "Job via Jobicy (https://jobicy.com)","scraped_at": "2026-10-26T21:10:06.973387Z"}
Field notes
seniorityis taken from the job title (e.g. "Senior", "Staff", "Lead", "Manager"), falling back to the source's own level field.salary_*are only filled when the employer published pay. Remote OK salaries are yearly USD.locationis the region a remote job is open to, e.g.Remote (USA)orRemote (EMEA, LATAM).trust_score: +40 confirmed on the employer's careers page, +15/+20 listed on 2/3 sources, +15 salary published, +15 posted within 7 days (+8 within 30), +5 eligibility stated, +5 direct apply link.eligible_regionsis[]when the listing doesn't say; the region filter drops those (keep Count worldwide jobs on to include "Anywhere" roles).- Employer confirmation checks up to 60 companies per run (
verifyMaxCompanies) found in the built-in directory, at no extra charge. sourceisremoteok,jobicyorcareers(company career page;attributionnames the company and ATS).attributionandjob_urlmust be kept if you republish the jobs (see below).
Pricing
Pay per event: $0.002 per job in your results ($2 per 1,000). No charge for jobs filtered out, duplicates, or jobs already seen in monitoring mode. Set a maximum cost per run in the run options and the Actor stops cleanly when it is reached.
| Run | Results | Cost |
|---|---|---|
| Prefilled test | 20 | $0.04 |
| Daily "new jobs only" for one keyword set | ~30–100 | $0.06–$0.20 |
| Full 7-day remote feed, no filters | ~1,500 | ~$3 |
Career pages, keyword engineer, 1,000 jobs | ~1,000 | ~$2 |
Monitoring: get alerts for new jobs
Turn on Only new jobs, give the search a Monitoring state name, and add a schedule (hourly or daily). Each run outputs only jobs it hasn't returned before. Jobs posted more than 3 days before the previous run are treated as backlog, not new, so a result cap never drips old postings into later runs (counted free as backlog_skipped in RUN_SUMMARY). Connect a Slack, email, Zapier, Make or Google Sheets integration to get alerts automatically.
Run it from the API
curl -X POST "https://api.apify.com/v2/acts/resonating_quoll~remote-jobs-feed/run-sync-get-dataset-items?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{"keywords":["react"],"postedSince":"24 hours"}'
Republishing the jobs (please read)
Both sources allow reuse on the condition that you credit them:
- Remote OK: "Please link back … to the URL on Remote OK and mention Remote OK as a source." Don't use the Remote OK logo.
- Jobicy: "Clearly credit Jobicy as the original source when displaying listings", and apply buttons should go to the job URL in the feed.
Keep job_url/apply_url as the apply link and show the attribution text, and you're covered. Career-page jobs link to the employer's own posting.
FAQ
Which job boards are included? Remote OK, Jobicy and company career pages on Greenhouse, Lever, Ashby, Workable, Recruitee and Personio. Their public APIs allow this use. Remotive, Himalayas, We Work Remotely and Arbeitnow are deliberately not included: their terms forbid passing their jobs to third parties or commercial reuse, or couldn't be verified.
How does the career-pages source work? It uses the verified company directory from our ATS Jobs Scraper (~5,800 companies that had remote openings), reads their public job boards live, keeps only jobs marked remote, and stops once it has enough matches. Use keywords to target it; a full sweep takes about 5-15 minutes.
How fresh is the data? Jobicy publishes jobs with a ~3-hour delay and keeps the last 7 days. Remote OK returns its latest ~100 jobs. The Actor caches each source for 60 minutes per account, so running more often than hourly returns the same data.
Is it legal? The Actor only calls public APIs the sources provide for developers, and keeps the attribution they ask for. You are responsible for how you use the data, including any personal data rules in your country.
Limitations
- Remote OK's API returns only its latest ~100 listings, so schedule it at least daily to build a full history.
- The career-pages source covers companies in the directory; it is not cached, so each run reads boards live. Its Workable, Recruitee and Personio coverage is still small (69 companies with remote roles).
- Regions and hybrid status are read from listing text and can be missing or occasionally wrong.
- Some listings don't publish salary, employment type or region.
Use with AI agents (Apify MCP)
Add this Actor as a tool in Claude, Cursor, ChatGPT or any MCP client through the Apify MCP server:
{"mcpServers": {"apify": { "url": "https://mcp.apify.com?tools=resonating_quoll/remote-jobs-feed" }}}
The first connection signs you in to Apify (OAuth). Then ask, for example: "Find remote senior backend jobs open to Europe, no hybrid, posted this week, only ones confirmed on the employer's site."
Directory credits
The career-pages company directory was built from the LastRound AI ATS directory (CC BY 4.0, LastRound AI), ats-jobs-mcp (MIT License, Copyright (c) 2026 Ground Truth), and Workable / Recruitee / Personio slugs from OpenJobs (MIT, © 2026 Santiago Fernández de Valderrama and Outscal), africa-ats-directory (MIT) and ever-jobs (MIT); full notices in src/DIRECTORY_LICENSES.txt. Every board was verified live.
More from this developer
- ATS Jobs Scraper: search 12,000+ company career boards on 6 ATSs, with new and closed job alerts and hiring velocity per company.
- Startup Funding Tracker: SEC Form D: companies that just raised money, from SEC Form D filings, with a weekly funding drop summary.
Feedback
Missing a field or a source with open terms? Open an issue on the Issues tab and I'll add it.