# Remotive Remote Jobs & Salary Scraper (`scrapers_lat/remotive-jobs-scraper`) Actor

Scrape remote job listings from Remotive with title, company, category, skills tags, salary range, candidate location, job type, posting date, apply URL and full description. Filter by category or keyword. Export JSON, CSV or Excel. No login or API key.

- **URL**: https://apify.com/scrapers\_lat/remotive-jobs-scraper.md
- **Developed by:** [Scrapers Lat](https://apify.com/scrapers_lat) (community)
- **Categories:** Jobs, Business, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.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.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

<!-- actor-banner -->
![Remotive Remote Jobs & Salary Scraper](https://scrapers.lat/banners/remotive-jobs-scraper.png)
<!-- /actor-banner -->

## Remotive Remote Jobs & Salary Scraper

> Collect current remote job listings from Remotive as structured data, with title, company, category, skills tags, salary range, candidate location and full description

![Apify](https://img.shields.io/badge/Platform-Apify-1CE1CE?logo=apify&logoColor=white)
![Coverage](https://img.shields.io/badge/Coverage-Remotive%20remote%20jobs-blue)
![Maintained](https://img.shields.io/badge/Maintained-Yes-brightgreen)
![Output](https://img.shields.io/badge/Output-JSON%20%7C%20CSV%20%7C%20Excel-orange)

<table><tr>
<td align="center"><strong>13 fields</strong><br>per job</td>
<td align="center"><strong>Salary + skills</strong><br>when disclosed</td>
<td align="center"><strong>JSON / CSV / Excel</strong><br>output formats</td>
<td align="center"><strong>No login</strong><br>no API key</td>
</tr></table>

<br>

### What you get

Run the scraper and get the latest remote roles listed on Remotive as clean, structured records. Filter by category or keyword, cap the total with Max Items, and export to JSON, CSV or Excel. Each job includes:

- **companyLogo**: the hiring company's logo image
- **jobId**: the unique Remotive listing ID
- **title**: the job title
- **company**: the hiring company name
- **category**: the remote-work category, for example Software Development, Sales or Design
- **jobType**: full time, part time, contract or freelance
- **candidateRequiredLocation**: where candidates need to be based, for example Worldwide, LATAM or Europe
- **salary**: the advertised salary range, when the employer discloses one
- **publicationDate**: when the role was posted
- **url**: the public listing and apply URL
- **tags**: the skills and keywords attached to the role
- **descriptionHtml**: the full job description as HTML
- **descriptionText**: the full job description as clean plain text
- **observedAt**: when this listing was last seen by the scraper

### Who is it for

| Use case | Who benefits |
|---|---|
| Feed a remote job board or aggregator with fresh listings | Job board and marketplace builders |
| Track remote hiring demand by category and skill | Talent and labor market analysts |
| Source companies actively hiring remotely for outreach | Recruiters and sales teams |
| Benchmark advertised remote salary ranges | Compensation and HR researchers |
| Build a personal remote-job alert or dashboard | Remote job seekers and developers |

### Frequently Asked Questions

**Which jobs does it return?**
It returns the current remote roles published on Remotive across every category, each as a structured record with company, category, salary, skills tags, location and the full description.

**Can I filter to one category or a keyword?**
Yes. Pick a Category to keep only jobs in that field, for example Software Development or Marketing, and add a Keyword to keep only jobs whose title, company, tags, location or description contain it, for example "react", "python" or "senior". Leave both empty to return everything.

**Do listings include salary?**
When the employer publishes a salary range it is captured in the salary field. Not every role advertises pay, so this field is filled whenever it is available on the listing.

**How many jobs can it return?**
Use Max Items to cap the total. The scraper collects the most recent remote listings available, so it is best run on a schedule to keep a rolling feed fresh.

**Do I need an account or API key?**
No. The scraper reads only public listing data. No login and no key required.

<!-- example-tasks -->

<!-- /example-tasks -->

<!-- x402 -->
### Export, API and AI agents (x402 + MCP)

Export the scraped data to **JSON, CSV or Excel**, pull it as a **dataset** through the Apify **API**, or wire it into your app with **no code**. This web scraper and data extractor also works for bulk data extraction and scheduled runs.

For AI agents: this Actor is available on **x402**, Apify's agentic payment standard built with Coinbase. An AI agent can discover, pay for and run it on its own with a funded wallet and a single HTTP request: no account, no subscription, no API key and no human in the loop. It also runs as an **MCP** tool inside Claude, Cursor and other AI clients out of the box. Learn more about [x402 agentic payments on Apify](https://docs.apify.com/platform/integrations/x402).
<!-- /x402 -->

<!-- related-actors -->
### Related scrapers

Need data from the same space? Here are other scrapers we build and maintain:

- [RemoteOK Remote Jobs & USD Salary Scraper](https://apify.com/scrapers_lat/remoteok-scraper): Remote job listings and USD salary data from RemoteOK.
- [Working Nomads Remote Jobs Scraper](https://apify.com/scrapers_lat/working-nomads-scraper): Curated remote job listings from Working Nomads.
- [Greenhouse Job Board Listings Scraper](https://apify.com/scrapers_lat/greenhouse-jobs-scraper): Every open role on any company's Greenhouse board.
- [Indeed Job Listings & Salary Scraper](https://apify.com/scrapers_lat/indeed-jobs-scraper): Job postings and salary data from Indeed.
- [GetOnBrd LATAM Tech Jobs Scraper](https://apify.com/scrapers_lat/getonbrd-scraper): Latin American tech job listings with salary data.
- [Seek Australia Jobs & Salary Scraper](https://apify.com/scrapers_lat/seek-jobs-scraper): Job listings and salary data from Seek Australia and New Zealand.

<!-- /related-actors -->

<!-- scrapers-lat-cta -->
### More scrapers at scrapers.lat

This actor is built and maintained by [scrapers.lat](https://scrapers.lat), where we publish scrapers for Latin American and US public platforms: real estate, jobs, e-commerce, company registries and government data. Browse the full catalog, see live sample output for each one, or ask us for a custom scraper at [scrapers.lat](https://scrapers.lat).

---

> This actor is an independent tool and has no affiliation with Remotive. It only accesses data that is publicly available. Remotive is the source of the listings; link back to Remotive and use the data in accordance with Remotive's terms of service.

# Actor input Schema

## `maxItems` (type: `integer`):

Maximum number of remote job listings to collect. Optional.
## `category` (type: `string`):

Keep only jobs in this remote-work category. Leave as Any category to return every field.
## `search` (type: `string`):

Keep only jobs whose title, company, tags, location or description contain this keyword (case-insensitive), for example "react", "python" or "senior". Leave empty to return every job.
## `proxyConfiguration` (type: `object`):

Optional proxy. This actor works without a proxy. Enable one only if you run from a network that is rate-limited.

## Actor input object example

```json
{
  "maxItems": 50,
  "category": "",
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
````

# 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 = {
    "maxItems": 50,
    "search": ""
};

// Run the Actor and wait for it to finish
const run = await client.actor("scrapers_lat/remotive-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 = {
    "maxItems": 50,
    "search": "",
}

# Run the Actor and wait for it to finish
run = client.actor("scrapers_lat/remotive-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 '{
  "maxItems": 50,
  "search": ""
}' |
apify call scrapers_lat/remotive-jobs-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Remotive Remote Jobs & Salary Scraper",
        "description": "Scrape remote job listings from Remotive with title, company, category, skills tags, salary range, candidate location, job type, posting date, apply URL and full description. Filter by category or keyword. Export JSON, CSV or Excel. No login or API key.",
        "version": "0.1",
        "x-build-id": "tkr7yuzmYEceD8t58"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/scrapers_lat~remotive-jobs-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-scrapers_lat-remotive-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/scrapers_lat~remotive-jobs-scraper/runs": {
            "post": {
                "operationId": "runs-sync-scrapers_lat-remotive-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/scrapers_lat~remotive-jobs-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-scrapers_lat-remotive-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": {
                    "maxItems": {
                        "title": "Max Items",
                        "minimum": 1,
                        "maximum": 1000000,
                        "type": "integer",
                        "description": "Maximum number of remote job listings to collect. Optional."
                    },
                    "category": {
                        "title": "Category",
                        "enum": [
                            "",
                            "software-development",
                            "customer-service",
                            "design",
                            "marketing",
                            "sales",
                            "product",
                            "project-management",
                            "artificial-intelligence",
                            "data",
                            "devops",
                            "finance",
                            "human-resources",
                            "qa",
                            "writing",
                            "legal",
                            "medical",
                            "education",
                            "account-management",
                            "business-development",
                            "communications",
                            "compliance",
                            "engineering",
                            "information-technology",
                            "knowledge-management",
                            "operations",
                            "research",
                            "strategy",
                            "supply-chain",
                            "travel-hospitality",
                            "all-others"
                        ],
                        "type": "string",
                        "description": "Keep only jobs in this remote-work category. Leave as Any category to return every field.",
                        "default": ""
                    },
                    "search": {
                        "title": "Keyword",
                        "type": "string",
                        "description": "Keep only jobs whose title, company, tags, location or description contain this keyword (case-insensitive), for example \"react\", \"python\" or \"senior\". Leave empty to return every job."
                    },
                    "proxyConfiguration": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Optional proxy. This actor works without a proxy. Enable one only if you run from a network that is rate-limited.",
                        "default": {
                            "useApifyProxy": false
                        }
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
