Remoteok Job Listings Extractor avatar

Remoteok Job Listings Extractor

Pricing

from $1.99 / 1,000 results

Go to Apify Store
Remoteok Job Listings Extractor

Remoteok Job Listings Extractor

RemoteOK job listings extractor that pulls remote jobs by keyword, so you get titles, companies, salaries, tags, locations, and apply links as clean data ready for your job board, ATS, or research.

Pricing

from $1.99 / 1,000 results

Rating

0.0

(0)

Developer

Kawsar

Kawsar

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Extract remote job listings from RemoteOK by keyword and turn them into clean, structured data you can actually use. Search for a role or skill like python, engineer, or designer, and get back the job title, company, salary range with currency, company logo, tags, location, posting date, apply link, and full description.

No login, no browser extensions, and no manual copy and paste. Point it at a keyword, pick how many results you want, and export everything to JSON, CSV, Excel, or an API feed.

Why use this actor

RemoteOK is one of the largest boards for remote work, but the site is built for browsing, not for bulk data. If you want to feed openings into a job board, track hiring trends, or build a candidate pipeline, copying jobs by hand does not scale. This actor pulls the same listings in a structured form, ready for a spreadsheet, a database, or your own app.

It is a solid fit for:

  • Recruiters and sourcers building lists of remote roles by stack or seniority
  • Job board owners who want to aggregate remote openings into a niche site
  • Market researchers tracking which skills, salaries, and locations are in demand
  • Founders and analysts watching who is hiring across remote tech
  • Developers who need a reliable remote jobs data source without maintaining a scraper

Features

  • Search RemoteOK by one keyword or many in a single run
  • Return the latest remote jobs when you leave the search empty
  • Company logo URL pulled straight from each listing
  • Salary minimum, maximum, and currency, including ranges the public feed leaves blank
  • Full job description as clean plain text or raw HTML
  • Location filter to keep only the regions you care about
  • Deduplication across searches so no job appears twice
  • Adjustable result cap and request timeout
  • Export to JSON, CSV, Excel, XML, or a live API endpoint

Input

FieldTypeDefaultDescription
searchQueriesarray of strings["engineer", "python"]Keywords, roles, or skills to search for. Add several to run multiple searches at once. Leave empty for the latest jobs.
locationstring(empty)Keep only jobs whose location contains this text, for example Europe or Worldwide.
includeCompanyLogobooleantrueFetch each job page to add the company logo URL, salary currency, and salary ranges missing from the feed. Turn off for faster runs.
includeDescriptionbooleantrueAdd the full job description to each result.
stripHtmlbooleantrueReturn the description as clean plain text instead of raw HTML.
maxItemsinteger10Maximum number of jobs to collect per run (up to 1000).
requestTimeoutSecsinteger30Per-request timeout in seconds.

Example input

{
"searchQueries": ["python", "backend"],
"location": "Europe",
"includeCompanyLogo": true,
"includeDescription": true,
"stripHtml": true,
"maxItems": 10
}

Output

Each job is stored as one dataset item. Example:

{
"id": "1137394",
"slug": "remote-sr-solutions-architect-extrahop-1137394",
"position": "Sr Solutions Architect",
"company": "ExtraHop",
"companyLogo": "https://r2.remoteok.com/jobs/a48bd449041236219648aa26a2e2778.png",
"location": "Remote",
"tags": ["architecture", "design", "python", "api"],
"salaryMin": 80000,
"salaryMax": 150000,
"salaryCurrency": "USD",
"postedDate": "2026-09-15T00:00:26+00:00",
"epoch": 1789430426,
"applyUrl": "https://remoteok.com/remote-jobs/remote-sr-solutions-architect-extrahop-1137394",
"url": "https://remoteok.com/remote-jobs/remote-sr-solutions-architect-extrahop-1137394",
"jobDescription": "At ExtraHop, we're on a mission to protect and empower the connected enterprise...",
"scrapedAt": "2026-09-17T08:30:26.926498+00:00"
}

Output fields

FieldTypeDescription
idstringRemoteOK job ID
slugstringURL slug for the job
positionstringJob title
companystringCompany name
companyLogostring or nullCompany logo image URL, or null when the listing has none
locationstring or nullLocation or region text
tagsarraySkills and categories attached to the job
salaryMinnumber or nullLower salary bound
salaryMaxnumber or nullUpper salary bound
salaryCurrencystring or nullSalary currency, USD for RemoteOK listings
postedDatestringISO 8601 posting date
epochnumberPosting date as a Unix timestamp
applyUrlstring or nullLink to apply for the job
urlstring or nullLink to the job on RemoteOK
jobDescriptionstring or nullFull description, plain text or HTML
scrapedAtstringISO 8601 time the record was collected

How to use

  1. Open the actor and go to the Input tab.
  2. Add one or more keywords under Search keywords, or leave it empty for the latest jobs.
  3. Set a location filter and result cap if you need them.
  4. Click Start.
  5. When the run finishes, open the Dataset tab and export to JSON, CSV, or Excel.

You can also schedule runs to keep a dataset fresh, or call the actor through the Apify API to pull jobs into your own system.

Tips and notes

  • Logos and full salaries come from each job page, so keep includeCompanyLogo on when you need them. Turn it off for the fastest possible runs with core fields only.
  • Salaries are in USD. RemoteOK publishes all pay ranges in US dollars, and salaryCurrency reflects that.
  • Not every job lists a salary or logo. Those fields return null when RemoteOK has nothing to show, so your data stays honest.
  • Keyword matching checks the title, tags, company, location, and description, so results stay relevant to what you searched for.
  • Duplicates are removed across multiple keyword searches within the same run.

Frequently asked questions

Can I get all jobs, not just one keyword? Yes. Leave searchQueries empty to collect the latest remote jobs across all categories.

How many jobs can I collect per run? Up to 1000 per run using maxItems. Each keyword search returns the most recent listings for that term.

What export formats are supported? JSON, CSV, Excel, XML, RSS, and a live API endpoint through the Apify dataset.

Does it work on a schedule? Yes. Use Apify Schedules to run it hourly, daily, or on any cron expression and keep your dataset current.