# Working Nomads Jobs Scraper - Remote Job Data (`benthepythondev/workingnomads-jobs-scraper`) Actor

Scrape Working Nomads remote jobs: title, company, category, tags, location, published date, job URL and description.

- **URL**: https://apify.com/benthepythondev/workingnomads-jobs-scraper.md
- **Developed by:** [Ben](https://apify.com/benthepythondev) (community)
- **Categories:** Jobs, Business, Lead generation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## 🌍 Working Nomads Jobs Scraper - Remote Job Data

Scrape remote job listings from **Working Nomads** in one run. Get job titles, hiring companies, categories, tags, locations, publication dates, job URLs and cleaned descriptions from the public Working Nomads job feed. Export to JSON/CSV/Excel, run on a schedule, call via API, or connect to Make, Zapier or n8n.

### 🔎 What is the Working Nomads Jobs Scraper?

Working Nomads is a remote-job board focused on distributed work across software development, customer success, operations, marketing, management and other professional categories. This actor turns the public Working Nomads job feed into a structured dataset that can be used for recruiting, job aggregation, market research and lead generation.

The actor uses the public Working Nomads job API directly. It does not need a browser, account, proxy or API key, which makes it fast and suitable for scheduled monitoring.

#### What data does it extract?

- **Job title** - the public role title.
- **Company** - hiring company name.
- **Category** - Working Nomads job category.
- **Tags** - role tags and skills when exposed by the feed.
- **Location** - remote location text or timezone requirements.
- **Published date** - date when the listing was published.
- **Job URL** - direct Working Nomads listing URL.
- **Description** - cleaned HTML description, optional for smaller datasets.
- **Remote flag** - every row is marked as remote.
- **Stable ID** - extracted from the job URL for deduplication.

### ⬇️ Input

| Field | Type | Description |
| --- | --- | --- |
| `keyword` | string | Optional keyword filter matched against title, company, category, location, tags and description. |
| `category` | string | Optional category filter, for example development, marketing or customer success. |
| `includeDescriptions` | boolean | Include cleaned job descriptions in the output. |
| `maxResults` | integer | Maximum remote jobs to return. |

#### Example input

```json
{
  "keyword": "python",
  "includeDescriptions": true,
  "maxResults": 50
}
````

Filter by category:

```json
{
  "category": "development",
  "maxResults": 100
}
```

### ⬆️ Output

Each dataset item is one remote job.

```json
{
  "id": "1701460",
  "title": "Client Success Manager",
  "company": "Integrated Hire",
  "category": "Customer Success",
  "tags": ["customer success", "remote"],
  "location": "Remote",
  "is_remote": true,
  "published_date": "2026-07-02",
  "job_url": "https://www.workingnomads.com/job/go/1701460/",
  "description": "Position: Client Success Manager...",
  "description_short": "Position: Client Success Manager...",
  "source": "workingnomads"
}
```

### 💡 Use cases

- **Remote-job aggregation** - feed current Working Nomads roles into a jobs product or newsletter.
- **Recruiting lead generation** - identify companies actively hiring remote talent.
- **Sales triggers** - remote hiring can signal distributed-team tooling needs.
- **Market research** - track remote roles by category, company and publication date.
- **Talent sourcing** - monitor new remote openings matching a candidate profile.
- **Automation** - send new jobs to Airtable, Google Sheets, Notion, HubSpot, Make, Zapier or n8n.

### 🧭 How to use the data

Run the actor daily with a small `maxResults` value for monitoring, or increase it to collect the full current feed. Use `id` or `job_url` as the deduplication key in your database. If you only need new-job alerts, compare each run against the previous dataset and trigger workflows only for unseen IDs.

For broad remote hiring coverage, combine this actor with We Work Remotely, Remotive, RemoteOK, Jobicy, Greenhouse, Lever, Ashby, Workable and SmartRecruiters actors. Working Nomads is especially useful when you need a clean feed of curated remote roles rather than a broad general-purpose job search engine.

Descriptions can be long. Disable `includeDescriptions` if you only need lightweight lead records with title, company, category, tags, location and URL.

Because the source is remote-first, the dataset is also useful for tracking distributed-work demand by category. For example, you can monitor whether customer success, engineering, marketing or operations roles are appearing more often, then use those changes as recruiting, content or sales signals.

### ❓ FAQ

**Does this require a Working Nomads account?** No. It reads public job feed data.

**Does it use a browser?** No. The actor calls the public JSON feed directly.

**Can I search by keyword?** Yes. The `keyword` input filters across title, company, category, tags, location and description.

**Can I filter by category?** Yes. Use `category` for broad categories like development, marketing, management or customer success.

**Are all jobs remote?** Working Nomads is a remote-job board, and the actor marks every row with `is_remote: true`.

**Does it include the full job description?** Yes, when `includeDescriptions` is true. The actor also emits a short description preview.

**Is this suitable for lead generation?** Yes. Companies posting remote jobs are often actively growing distributed teams, making them useful prospects for recruiting, HR, payroll, collaboration and SaaS workflows.

**How often should I run it?** Daily is usually enough for monitoring new listings. Hourly runs are possible but rarely necessary.

**Is it legal to scrape Working Nomads jobs?** The actor collects publicly available job listings. You are responsible for using the output lawfully and respecting privacy, employment, anti-spam and platform rules.

**How do I avoid duplicates?** Use `id` or `job_url` as the stable key.

### 🔗 You might also like

- [We Work Remotely Jobs Scraper](https://apify.com/benthepythondev/weworkremotely-jobs-scraper)
- [Ashby Jobs Scraper](https://apify.com/benthepythondev/ashby-jobs-scraper)
- [Recruitee Jobs Scraper](https://apify.com/benthepythondev/recruitee-jobs-scraper)
- [Workable Jobs Scraper](https://apify.com/benthepythondev/workable-jobs-scraper)
- [SmartRecruiters Jobs Scraper](https://apify.com/benthepythondev/smartrecruiters-jobs-scraper)
- [StepStone Scraper](https://apify.com/benthepythondev/stepstone-scraper)

**Keywords:** Working Nomads scraper, Working Nomads jobs scraper, remote jobs scraper, scrape Working Nomads, remote job board API, remote hiring data, job postings scraper, recruitment leads, job board scraper, distributed teams, remote work data, remote developer jobs, hiring intelligence, recruiting automation, Apify jobs scraper.

# Actor input Schema

## `keyword` (type: `string`):

Optional keyword filter matched against title, company, category, location, tags and description.

## `category` (type: `string`):

Optional category filter, for example development, marketing, management or customer success.

## `includeDescriptions` (type: `boolean`):

Include cleaned job descriptions in the output.

## `maxResults` (type: `integer`):

Maximum remote jobs to return.

## Actor input object example

```json
{
  "keyword": "python",
  "includeDescriptions": true,
  "maxResults": 10
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "keyword": "python",
    "maxResults": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("benthepythondev/workingnomads-jobs-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "keyword": "python",
    "maxResults": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("benthepythondev/workingnomads-jobs-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "keyword": "python",
  "maxResults": 10
}' |
apify call benthepythondev/workingnomads-jobs-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=benthepythondev/workingnomads-jobs-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Working Nomads Jobs Scraper - Remote Job Data",
        "description": "Scrape Working Nomads remote jobs: title, company, category, tags, location, published date, job URL and description.",
        "version": "1.0",
        "x-build-id": "QwWfCcFAIbObwQES1"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/benthepythondev~workingnomads-jobs-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-benthepythondev-workingnomads-jobs-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/benthepythondev~workingnomads-jobs-scraper/runs": {
            "post": {
                "operationId": "runs-sync-benthepythondev-workingnomads-jobs-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/benthepythondev~workingnomads-jobs-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-benthepythondev-workingnomads-jobs-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "keyword": {
                        "title": "Keyword filter",
                        "type": "string",
                        "description": "Optional keyword filter matched against title, company, category, location, tags and description."
                    },
                    "category": {
                        "title": "Category filter",
                        "type": "string",
                        "description": "Optional category filter, for example development, marketing, management or customer success."
                    },
                    "includeDescriptions": {
                        "title": "Include descriptions",
                        "type": "boolean",
                        "description": "Include cleaned job descriptions in the output.",
                        "default": true
                    },
                    "maxResults": {
                        "title": "Max results",
                        "minimum": 1,
                        "maximum": 1000,
                        "type": "integer",
                        "description": "Maximum remote jobs to return.",
                        "default": 10
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
