Remote Jobs Feed: Remote OK and We Work Remotely avatar

Remote Jobs Feed: Remote OK and We Work Remotely

Pricing

from $0.60 / 1,000 job returneds

Go to Apify Store
Remote Jobs Feed: Remote OK and We Work Remotely

Remote Jobs Feed: Remote OK and We Work Remotely

Remote job listings from Remote OK and We Work Remotely in one normalized schema, with salary, tags and categories, cross-board de-duplication and a changes-since-last-run mode for scheduled alerts.

Pricing

from $0.60 / 1,000 job returneds

Rating

0.0

(0)

Developer

Todd Handler

Todd Handler

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Remote Jobs Feed: Remote OK and We Work Remotely jobs in one schema

Get every current remote job from Remote OK and We Work Remotely in one clean schema, ready for a job board, an alert bot or a spreadsheet. Schedule it in changes mode and each run returns only the jobs that are new, updated or removed since the last run.

  • Two big remote boards, one schema. Title, company, locations, employment type, seniority, salary (where published), category, tags, dates, links and the full description.
  • Change detection built in. Daily new and closed remote jobs without diffing anything yourself.
  • Cross-board de-duplication. The same opening posted on both boards comes through once.
  • Same schema as ATS Jobs Feed. Rows line up with our Greenhouse, Lever and Ashby feed, so remote boards and company career boards can share one table.
  • Cheap and predictable. You pay per job returned, $0.80 per 1,000 jobs.

Who uses it

  • Niche and remote job boards backfilling listings with credit to the source board
  • Job alert bots for Slack, Discord, Telegram or email (schedule changes mode)
  • Recruiters and researchers tracking which companies hire remotely and for what
  • AI agents that need fresh, structured remote job data (see "For AI agents" below)

Sources and attribution

BoardWhat the Actor readsWhat the board asks of you
Remote OKIts public API: the newest ~100 jobs, plus the newest ~100 for each extra tag you addLink to the job on Remote OK with a normal followed link (no nofollow) and name Remote OK as the source. Do not use the Remote OK logo.
We Work RemotelyIts public RSS feeds, one per category, which list every open jobLink back to the job on We Work Remotely and credit We Work Remotely as the source.

Every row carries source_name, job_url and an attribution field with that board's request, so you can honor it wherever you show the job. If you display these jobs, follow the attribution in each row. The boards can cut off access for anyone who does not.

Quick start

  1. Leave both boards selected, or pick one.
  2. Leave Mode on Full snapshot for a one-off pull.
  3. Click Start. Results appear in the Jobs table and can be exported as JSON, CSV or Excel.

A full run with no filters returns roughly 500 to 650 jobs (about 100 from Remote OK and 450 from We Work Remotely).

  1. Set Mode to Changes since last run.
  2. Create a schedule (daily or every few hours) under Schedules in Apify Console.
  3. Connect the run to Google Sheets, Slack, Airtable, a webhook, Make or n8n with Apify integrations.

The first run returns every current job as new and saves a baseline. After that you get only:

  • new: posted since the last run
  • updated: title, company, location, employment type, salary, description, category or apply link changed
  • removed: no longer listed, usually filled or expired (removed rows carry the job ID, title, company, locations and URL from the last time it was seen)

Remote OK only publishes its newest jobs, so a Remote OK job that simply scrolls out of the feed is not reported as removed. Removals are reported only for jobs recent enough that they should still be in the feed.

The baseline is keyed to your boards, tags, categories and filters, so changing any of them starts a fresh baseline. Set State key to give it a fixed name.

Filters and options

OptionWhat it does
Remote OK extra tagsEach tag (for example python, marketing, design) adds that tag's newest ~100 Remote OK jobs. Up to 10
We Work Remotely categoriesPick categories, or leave empty for all 11
Title keywords (any)Keep jobs whose title contains any keyword. Optionally also search the description
Exclude title keywordsDrop jobs whose title contains any of these
Locations (any)Keep jobs whose stated location contains any value, for example United States, Europe, Canada. Jobs open worldwide or with no stated location also match, unless Strict locations is on
Categories or tags (any)Match on the board's category or tags, for example design, python, customer support
Employment typesFull time, part time, contract, temporary, internship
Only jobs with a published salaryKeep jobs that state a salary range
Posted within daysKeep recently posted jobs
Max jobs per boardSnapshot mode only, keeps the newest
Remove cross-board duplicatesOn by default. Same company and title on both boards gives one row

Output

One row per job. Example (description shortened):

{
"company": "Apollo GraphQL",
"ats": "weworkremotely",
"board_token": "weworkremotely.com",
"job_id": "apollo-graphql-senior-solution-engineer-pre-sales",
"title": "Senior Solution Engineer (Pre-sales)",
"department": null,
"team": null,
"locations": ["Anywhere in the World"],
"remote_type": "remote",
"employment_type": "full_time",
"seniority": "senior",
"posted_at": "2026-10-21T20:58:30Z",
"updated_at": null,
"job_url": "https://weworkremotely.com/remote-jobs/apollo-graphql-senior-solution-engineer-pre-sales",
"apply_url": "https://weworkremotely.com/remote-jobs/apollo-graphql-senior-solution-engineer-pre-sales",
"salary_min": null,
"salary_max": null,
"salary_currency": null,
"salary_period": null,
"description_text": "Headquarters: San Francisco, California, United States\n\nAt Apollo GraphQL, we're on a mission...",
"description_html": null,
"category": "Sales and Marketing",
"tags": [],
"source_name": "We Work Remotely",
"attribution": "Link back to job_url on We Work Remotely and credit We Work Remotely as the source.",
"change_type": null,
"source_input": "https://weworkremotely.com/categories/remote-sales-and-marketing-jobs.rss",
"fetched_at": "2026-10-22T01:03:18Z"
}

Field notes

  • ats holds the source board (remoteok or weworkremotely). It keeps the ATS Jobs Feed field name so both feeds share one schema.
  • locations is where the job is open to, as the board states it. A We Work Remotely job locked to certain countries lists those countries. Remote OK leaves it empty for about half its jobs.
  • employment_type: full_time, part_time, contract, temporary, intern or other. Remote OK states it only on some jobs.
  • seniority: intern, entry, senior, lead, manager, director or executive, derived from the title. Null when the title gives no signal.
  • Salary fields are filled when Remote OK publishes pay (annual USD). We Work Remotely's feeds do not include salary.
  • department, team and updated_at are always null here. They exist so rows match the ATS Jobs Feed schema.
  • change_type is null in snapshot mode.
  • Each run also writes a SUMMARY record to the key-value store: every feed read with its job count, duplicates dropped, and any errors.

Pricing

Pay per event. You only pay for what the run delivers.

EventPrice (Free and Starter plans)
Job returned (new, updated, removed or snapshot row)$0.0008 ($0.80 per 1,000)
Job board checked (one per board per run)$0.0005

Higher Apify plans get lower per-job prices. A full snapshot of both boards costs about $0.50. A scheduled changes-mode run costs $0.001 for the two board checks plus $0.0008 per changed job, so a daily alert feed typically costs a few cents a day. Set a maximum cost per run in the run options and the Actor stops cleanly at that limit. In changes mode a board cut off by the limit is not marked as seen, so the next run delivers it.

For AI agents

  • Input: sources (remoteok, weworkremotely), mode (snapshot or changes), and the optional filters above (keywords, locations, categories, employmentTypes, salaryOnly, postedWithinDays, maxJobsPerSource).
  • Output: dataset rows with the fields listed above. The run SUMMARY key-value record lists feeds and errors.
  • Cost: $0.0008 per job plus $0.0005 per board. Use maxJobsPerSource and filters to keep runs small.
  • Attribution: show job_url and source_name wherever you display a job, as each row's attribution field asks.

Limits and good practice

  • The Actor reads only the public API and RSS feeds each board provides for reuse. It does not log in, scrape job pages or collect applicant data.
  • Requests to each board are spaced at least one second apart and retried on temporary errors.
  • Remote OK's API returns its newest jobs only. Add tags to widen coverage.
  • Himalayas and Remotive are not included. Their terms do not allow passing their jobs on to third parties without permission.

Support

Open an issue on the Actor page. If the Actor saves you time, a rating helps other people find it.