# Remote Jobs Scraper (`hello.datawizards/remote`) Actor

Extract remote job listings with ease using keyword searches, employment types, and locations. Get structured JSON data with job titles, company details, and more for job market analysis. Use Apify Proxy to avoid blocks. Ideal for career tracking and remote work insights.

- **URL**: https://apify.com/hello.datawizards/remote.md
- **Developed by:** [datawizards](https://apify.com/hello.datawizards) (community)
- **Categories:** Automation, Jobs, Lead generation
- **Stats:** 38 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $5.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/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
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.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## 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.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

***

### 🖥️ Remote-Jobs-Scraper

Search and extract remote job listings effortlessly with the **Remote-Jobs-Scraper** Apify Actor. This powerful tool fetches detailed job data using keyword-based searches, employment types, and workplace locations. It delivers clean, structured JSON outputs containing job titles, company details, application links, and more — perfect for job market analysis, remote work research, or career opportunity tracking.

> ⚠️ **Note:** Activate **Apify Proxy** with the **Residential group** to avoid scraping blocks. Running without a proxy may lead to incomplete data or failures.

***

### 🚀 How Remote-Jobs-Scraper Works

- Run the **Remote-Jobs-Scraper** to access structured remote job listings instantly.
- Enter a keyword in the **`query`** field (e.g., `"react developer"`, `"data scientist"`, `"designer"`) to target specific job roles.
- Define the **`employmentType`** (e.g., `"full-time"`, `"part-time"`, `"contract"`) and **`workplaceLocation`** (e.g., `"remote"`, `"on-site"`, `"hybrid"`) to refine your search.
- Optionally, set an **`item_limit`** to cap the number of job listings retrieved.
- Enable **Residential Proxy** in `proxyConfiguration` to ensure uninterrupted scraping.
- Receive detailed JSON results ready for automation, analysis, or reporting.

***

### 🧾 Input Configuration

Use this sample input to get started:

```json
{
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  },
  "query": "react developer",
  "employmentType": "full-time",
  "workplaceLocation": "remote",
  "item_limit": 20
}
```

- **`query`**: The job title or keyword to search for.
- **`employmentType`**: Type of employment (e.g., "full-time").
- **`workplaceLocation`**: Job location preference (e.g., "remote").
- **`item_limit`** (optional): Maximum number of job listings to scrape.

***

### 📦 Output Sample

The scraper returns an array of job listings with key details such as:

- Search query, employment type, and workplace location
- Job title and company name
- Company logo and website URLs
- Hiring regions and workplace type
- Employment type and seniority level
- Application URL and job description
- Compensation details and more

Here’s a sample output:

```json
[
  {
    "query": "react developer",
    "employmentType": "full-time",
    "workplaceLocation": "remote",
    "title": "React + Node Developer – Web Applications",
    "company_name": "Oowlish Technology",
    "company_logo_url": "https://cdn.talent-assets.remote.com/company_logos/912acae5-a0f3-4891-959a-f20cf8534ae2company_logo.png",
    "company_website_url": "https://www.oowlish.com",
    "workplace_location_type": "remote",
    "hiring_location": [
      {
        "type": "region",
        "value": {
          "code": "latin-america",
          "name": "Latin America"
        }
      },
      {
        "type": "region",
        "value": {
          "code": "north-america",
          "name": "North America"
        }
      },
      {
        "type": "region",
        "value": {
          "code": "europe",
          "name": "Europe"
        }
      }
    ],
    "employment_type": "full_time",
    "seniority": ["mid_level"],
    "apply_url": "https://jobs.lever.co/oowlish/3cf864d5-d6e8-4e52-8f31-45391a7928a0",
    "description": "Join Our Team Oowlish, one of Latin America's rapidly expanding software development companies, is seeking experienced technology professionals to enhance our diverse and vibrant team. As a valued member of Oowlish, you will collaborate with premier clients from the United States and Europe, contributing to pioneering digital solutions...",
    "baseSalary": null,
    "currency": null,
    "published_at": "2025-05-07T19:37:44Z",
    "travel_frequency": "never",
    "quick_apply": false
  }
]
```

***

### 📌 Use Cases

- **Job Market Analysis**: Study trends in remote job opportunities.
- **Career Monitoring**: Track openings for specific roles or industries.
- **Company Research**: Identify remote-friendly employers and their offerings.
- **Employment Insights**: Analyze job demands by region or seniority.

***

### 📞 Support

Need custom outputs or help with a bug? Reach out to us:

- 📧 **<hello.datawizard@gmail.com>**
- 🔗 [LinkedIn](https://www.linkedin.com/in/data-wizards-aa8080342)

> 💡 **Tip:** Use the subject **“Remote-Jobs-Scraper Support Request”** for faster assistance.

***

This documentation is optimized for SEO with keywords like "remote job scraper," "Apify Actor," "job listings data," and "structured JSON output," while maintaining clarity and usability.

### 🖥️ Remote f-Scraper

Search and extract remote job listings effortlessly with the **Remote-Jobs-Scraper** Apify Actor. This powerful tool fetches detailed job data using keyword-based searches, employment types, and workplace locations. It delivers clean, structured JSON outputs containing job titles, company details, application links, and more — perfect for job market analysis, remote work research, or career opportunity tracking.

> ⚠️ **Note:** Activate **Apify Proxy** with the **Residential group** to avoid scraping blocks. Running without a proxy may lead to incomplete data or failures.

***

### 🚀 How Remote-Jobs-Scraper Works

- Run the **Remote-Jobs-Scraper** to access structured remote job listings instantly.
- Enter a keyword in the `query` field (e.g., `"react developer"`, `"data scientist"`, `"designer"`) to target specific job roles.
- Define the `employmentType` (e.g., `"full-time"`, `"part-time"`, `"contract"`) and `workplaceLocation` (e.g., `"remote"`, `"on-site"`, `"hybrid"`) to refine your search.
- Optionally, set an `item_limit` to cap the number of job listings retrieved.
- Enable **Residential Proxy** in `proxyConfiguration` to ensure uninterrupted scraping.
- Receive detailed JSON results ready for automation, analysis, or reporting.

***

### 🧾 Input Configuration

Use this sample input to get started:

```json
{
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  },
  "query": "react developer",
  "employmentType": "full-time",
  "workplaceLocation": "remote",
  "item_limit": 20
}
```

- `query`: The job title or keyword to search for.
- `employmentType`: Type of employment (e.g., "full-time").
- `workplaceLocation`: Job location preference (e.g., "remote").
- `item_limit` (optional): Maximum number of job listings to scrape.

***

### 📦 Output Sample

The scraper returns an array of job listings with key details such as:

- Search query, employment type, and workplace location
- Job title and company name
- Company logo and website URLs
- Hiring regions and workplace type
- Employment type and seniority level
- Application URL and job description
- Compensation details and more

Here’s a sample output:

```json
[
  {
    "query": "react developer",
    "employmentType": "full-time",
    "workplaceLocation": "remote",
    "title": "React + Node Developer – Web Applications",
    "company_name": "Oowlish Technology",
    "company_logo_url": "https://cdn.talent-assets.remote.com/company_logos/912acae5-a0f3-4891-959a-f20cf8534ae2company_logo.png",
    "company_website_url": "https://www.oowlish.com",
    "workplace_location_type": "remote",
    "hiring_location": [
      {
        "type": "region",
        "value": {
          "code": "latin-america",
          "name": "Latin America"
        }
      },
      {
        "type": "region",
        "value": {
          "code": "north-america",
          "name": "North America"
        }
      },
      {
        "type": "region",
        "value": {
          "code": "europe",
          "name": "Europe"
        }
      }
    ],
    "employment_type": "full_time",
    "seniority": ["mid_level"],
    "apply_url": "https://jobs.lever.co/oowlish/3cf864d5-d6e8-4e52-8f31-45391a7928a0",
    "description": "Join Our Team Oowlish, one of Latin America's rapidly expanding software development companies, is seeking experienced technology professionals to enhance our diverse and vibrant team. As a valued member of Oowlish, you will collaborate with premier clients from the United States and Europe, contributing to pioneering digital solutions...",
    "baseSalary": null,
    "currency": null,
    "published_at": "2025-05-07T19:37:44Z",
    "travel_frequency": "never",
    "quick_apply": false
  }
]
```

***

### 📌 Use Cases

- **Job Market Analysis**: Study trends in remote job opportunities.
- **Career Monitoring**: Track openings for specific roles or industries.
- **Company Research**: Identify remote-friendly employers and their offerings.
- **Employment Insights**: Analyze job demands by region or seniority.

***

### 📞 Support

Need custom outputs or help with a bug? Reach out to us:

- 📧 **hello.datawizard@gmail.com**
- 🔗 LinkedIn

> 💡 **Tip:** Use the subject **“Remote-Jobs-Scraper Support Request”** for faster assistance.

***

# Actor input Schema

## `query` (type: `string`):

The query term to search for location.

## `employmentType` (type: `string`):

The type of employment to filter results by.

## `workplaceLocation` (type: `string`):

The workplace location to filter results by.

## `proxyConfiguration` (type: `object`):

Specifies proxy servers that will be used by the scraper in order to hide its origin.

## Actor input object example

```json
{
  "query": "python developer",
  "employmentType": "full-time",
  "workplaceLocation": "remote",
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

# 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 = {
    "query": "python developer",
    "employmentType": "full-time",
    "workplaceLocation": "remote",
    "proxyConfiguration": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("hello.datawizards/remote").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 = {
    "query": "python developer",
    "employmentType": "full-time",
    "workplaceLocation": "remote",
    "proxyConfiguration": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("hello.datawizards/remote").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "query": "python developer",
  "employmentType": "full-time",
  "workplaceLocation": "remote",
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}' |
apify call hello.datawizards/remote --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,hello.datawizards/remote"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/pIectYNECXBDcDKCu/builds/7Ct0gjgCSD9axbNee/openapi.json
