🦖 TinyRex Data Toolspractical guides for web data APIs

How to scrape remote jobs from Himalayas, Remote OK, We Work Remotely and more in one run

Updated 2026-10-08 · Tool used: Remote Jobs Scraper - Himalayas, Remote OK, We Work Remotely on Apify · Price: $0.80 per 1,000 jobs with full descriptions; filtered-out, duplicate and already-seen jobs are free

Remote job boards each have their own feed format: Himalayas has a search API, Remote OK a JSON feed, We Work Remotely and Working Nomads RSS, Arbeitnow a paged API. Combining them by hand means five parsers and a lot of duplicates, because the same job is often posted on several boards.

This guide shows how to search all five boards by keyword in one run and get one clean, deduplicated dataset: title, company, who can apply (country and timezone restrictions), employment type, seniority, salary where published, tags and the full description.

Open Remote Jobs Scraper on Apify →

Steps

  1. Add job titles or skills to keywords (e.g. python, customer support), or leave it empty for the newest remote jobs.
  2. Filter by candidate countries, publishedWithinDays, employment type, seniority or only jobs with a salary (filtered jobs are free).
  3. Schedule it daily with Only new jobs on to build a remote job feed for a newsletter, Slack channel or job board.

Example input

{
  "keywords": [
    "python",
    "customer support"
  ],
  "sources": [
    "himalayas",
    "remoteok",
    "weworkremotely",
    "workingnomads",
    "arbeitnow"
  ],
  "countries": [
    "Germany"
  ],
  "includeWorldwide": true,
  "publishedWithinDays": 7,
  "maxResultsPerSearch": 200
}

Example output (one item, shortened)

{
  "source": "himalayas",
  "sourceName": "Himalayas",
  "jobId": "1159-senior-full-stack-software-engineer",
  "title": "1159 - Senior Full-Stack Software Engineer",
  "company": "GoFasti",
  "companyLogo": "https://cdn-images.himalayas.app/mkq7vgtrpv0gkvsvgxrhrhpaggir",
  "location": "Worldwide",
  "locationRestrictions": [],
  "timezoneRestrictions": [
    -11,
    -10,
    -9.5,
    "..."
  ],
  "employmentType": "fulltime",
  "seniority": [
    "Senior"
  ],
  "categories": [
    "Developer"
  ],
  "tags": [
    "Full Stack Engineer",
    "Full Stack Developer",
    "Software Engineer",
    "..."
  ],
  "salary": {
    "min": 3000,
    "max": 3200,
    "currency": "USD",
    "period": "monthly"
  },
  "postedAt": "2026-10-07T23:20:46.000Z",
  "expiresAt": "2026-12-06T23:20:44.000Z",
  "url": "https://himalayas.app/companies/gofasti/jobs/1159-senior-full-stack-software-engineer",
  "applyUrl": "https://himalayas.app/companies/gofasti/jobs/1159-senior-full-stack-software-engineer",
  "descriptionText": "We Make Remote Work Remarkable • TopTalent from LatAm\n\nHello! We are GoFasti, a Talent-as-a-Service. GoFasti bridges the gap between world-class developers and designers from LatAm and first-class companies around the gl...",
  "searchKeyword": "python",
  "isNew": true,
  "scrapedAt": "2026-10-07T23:35:37.867Z",
  "remote": true
}

Every run's dataset can be downloaded as JSON, CSV, Excel, XML or HTML from the Apify Console, or via https://api.apify.com/v2/datasets/<datasetId>/items?format=csv.

Run it from code

Python

from apify_client import ApifyClient  # pip install apify-client

client = ApifyClient("<YOUR_APIFY_TOKEN>")
run_input = {
  "keywords": [
    "python",
    "customer support"
  ],
  "sources": [
    "himalayas",
    "remoteok",
    "weworkremotely",
    "workingnomads",
    "arbeitnow"
  ],
  "countries": [
    "Germany"
  ],
  "includeWorldwide": true,
  "publishedWithinDays": 7,
  "maxResultsPerSearch": 200
}
run = client.actor("tinyrex/remote-jobs-scraper").call(run_input=run_input)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

JavaScript / Node.js

import { ApifyClient } from 'apify-client'; // npm i apify-client

const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('tinyrex/remote-jobs-scraper').call({
  "keywords": [
    "python",
    "customer support"
  ],
  "sources": [
    "himalayas",
    "remoteok",
    "weworkremotely",
    "workingnomads",
    "arbeitnow"
  ],
  "countries": [
    "Germany"
  ],
  "includeWorldwide": true,
  "publishedWithinDays": 7,
  "maxResultsPerSearch": 200
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

curl (no SDK)

# Runs the actor and returns the results directly (CSV here; use format=json for JSON)
curl -X POST "https://api.apify.com/v2/acts/tinyrex~remote-jobs-scraper/run-sync-get-dataset-items?format=csv" \
  -H "Authorization: Bearer $APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"keywords": ["python", "customer support"], "sources": ["himalayas", "remoteok", "weworkremotely", "workingnomads", "arbeitnow"], "countries": ["Germany"], "includeWorldwide": true, "publishedWithinDays": 7, "maxResultsPerSearch": 200}' > results.csv

Get your API token in Apify Console → Settings → API & Integrations. The free Apify plan includes monthly credit that is enough to try this.

Use it from an AI agent (MCP)

The Apify MCP server exposes this actor as a tool for Claude, Cursor, VS Code, n8n and other MCP clients. Add this to your client's MCP config (or use the OAuth flow at mcp.apify.com instead of a token):

{
  "mcpServers": {
    "apify": {
      "url": "https://mcp.apify.com?tools=tinyrex/remote-jobs-scraper",
      "headers": {
        "Authorization": "Bearer <YOUR_APIFY_TOKEN>"
      }
    }
  }
}

Then ask in plain language, e.g. "Remote jobs api for this list and give me a table".

Pricing

Pay per result: $0.80 per 1,000 jobs with full descriptions; filtered-out, duplicate and already-seen jobs are free. You can cap the cost of every run in the run options.

FAQ

Is there a free remote jobs API?

Several boards publish free public feeds (Himalayas, Remote OK, We Work Remotely RSS, Arbeitnow). The actor reads those official feeds, merges them into one schema and removes duplicates, so you do not have to maintain five integrations.

Can I get only jobs open to candidates in my country?

Yes. Set countries (e.g. ["Germany"]) and choose whether to keep worldwide jobs with includeWorldwide.

Can I republish the jobs on my own site?

The boards ask for attribution and a link back to the original job; url and sourceName are included for that. Himalayas and Remote OK do not allow resubmitting their jobs to aggregators such as Google Jobs or LinkedIn.

Try it on Apify →

More guides