Remote OK Jobs Feed - Remote Job Postings, Salaries & Tags
Pricing
from $1.00 / 1,000 results
Remote OK Jobs Feed - Remote Job Postings, Salaries & Tags
Latest remote job postings from the public Remote OK API: title, company, tags, location, USD salary range, posted date, Remote OK job URL and apply link. Keyword, tag, location, salary and date filters. No job descriptions or contact data. Unofficial; not affiliated with Remote OK.
Pricing
from $1.00 / 1,000 results
Rating
0.0
(0)
Developer
JP Open Data
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Remote OK Jobs Feed — Remote Job Postings, Salaries & Tags
Get the latest remote job postings from the public Remote OK API as clean, flat rows: job title, company, tags, location, USD salary range, posted date, the job's Remote OK URL and the apply link. Filter by keyword, tags, location, minimum salary and posting age. One run takes a few seconds.
If you publish or display this data, link back to Remote OK. Remote OK's API terms ask you to link to each job's URL on Remote OK with a normal, followed link (no
rel="nofollow") and to name Remote OK as the source; otherwise they may suspend API access. Every row gives you the job's Remote OK URL (url) and the source name (source) for this. Do not use the Remote OK logo without written permission.
Unofficial tool — not affiliated with, endorsed or sponsored by Remote OK. Job descriptions and contact details are not included (see below).
What you get
- One row per job posting, newest first, with the fields buyers ask for:
title,company,location,tags,salaryMinUsd/salaryMaxUsd,postedAt,url(the job on Remote OK),applyUrl,companyLogoUrl. - Clean text: text that the feed delivers garbled (for example "Ciudad de México" or "für") is repaired to "Ciudad de México" / "für"; HTML entities and stray spaces are removed;
0salaries becomenull. - Filters done for you: keyword (title, company and tags), tags (any of), location text, minimum yearly salary, posted within N days.
- Attribution in every row:
source= "Remote OK",url/sourceUrl= the job's Remote OK page, andlicense= Remote OK's API terms word for word, so every export carries them. - No job descriptions, no e-mail addresses, no phone numbers (privacy and copyright — see "Legal and privacy").
Quick start — verified input
{"maxItems": 50}
Returns the 50 newest postings, in about 5 seconds. An empty input {} does the same.
More examples:
{ "keyword": "engineer", "maxItems": 0 }
Every current posting with "engineer" in the title, company or tags.
{ "tags": ["dev", "golang", "python"], "postedWithinDays": 7 }
Developer postings tagged dev, golang or python from the last 7 days.
{ "location": "United States", "minSalaryUsd": 100000 }
Postings located in the United States that state a salary range reaching 100,000 USD a year.
Input
| Field | What it does |
|---|---|
keyword | Words that must all appear in the title, company name or tags, e.g. react, senior designer. Case, accents and hyphens are ignored; a word also matches inside longer words. |
tags | Keep postings with at least one of these Remote OK tags, e.g. dev, design, marketing, python, golang, customer support. Whole tags only. |
location | Text that must appear in the location the employer gave, e.g. United States, Germany, London. |
minSalaryUsd | Keep postings whose salary range reaches at least this yearly amount in US dollars, e.g. 100000. 0 = no filter. |
postedWithinDays | Keep postings published in the last N days. 0 = no limit. |
maxItems | Most rows to return, newest first (default 50; 0 = every matching posting). |
All fields are optional and combine with AND.
Output example (one row)
Illustrative values (not a real posting):
{"id": "1000001","title": "Senior Backend Engineer","company": "Example Co","location": "Remote","tags": ["backend", "senior", "engineer"],"salaryMinUsd": 90000,"salaryMaxUsd": 130000,"postedAt": "2026-10-13T08:00:00.000Z","url": "https://remoteok.com/remote-jobs/remote-senior-backend-engineer-example-co-1000001","applyUrl": "https://remoteok.com/remote-jobs/remote-senior-backend-engineer-example-co-1000001","companyLogoUrl": null,"contactRemoved": false,"source": "Remote OK","sourceUrl": "https://remoteok.com/remote-jobs/remote-senior-backend-engineer-example-co-1000001","license": "Source: Remote OK (https://remoteok.com/). Remote OK API terms, as sent with the data: \"API Terms of Service: Please link back (with follow, and without nofollow!) to the URL on Remote OK and mention Remote OK as a source, ...\" ...","retrievedAt": "2026-10-14T11:00:00.000Z"}
Field notes:
urlis the job's page on Remote OK — the page the API terms ask you to link to.sourceUrlis the same link.applyUrlis the apply link from the feed (onlyhttp/httpslinks). In practice the feed currently gives the Remote OK job page here too.salaryMinUsd/salaryMaxUsdare as the employer entered them (yearly USD in most cases; a few employers enter an hourly rate such as40–48). About 1 posting in 5 states a salary.locationis the employer's own text (a country, a city, "Remote - US" ...). About 4 in 10 postings give none (null).companyLogoUrlis a link to the hiring company's logo image when the feed has one (oftennull). The logos belong to the companies; only the link is passed on. The Remote OK logo is never output.contactRemovedistruewhen an e-mail address or phone number was cut out of the row (shown as "[contact removed]"), or a link was left out because it was one.postedAtis UTC (ISO 8601).
Common input mistakes
| You wrote | Write instead |
|---|---|
"location": "Remote" | Leave location empty — every Remote OK job is remote. "Remote" only keeps postings whose location text says "Remote". |
"tags": ["go"] | "tags": ["golang"] (whole tags only) or "keyword": "golang" |
"minSalaryUsd": 100 (meaning 100k) | "minSalaryUsd": 100000 |
"location": ["US", "Canada"] | One location per run: "location": "United States", then "location": "Canada" |
"keyword": "react, node" (meaning either) | "tags": ["react", "node"] — keyword words must all match |
Empty results?
A run that finds nothing succeeds with 0 rows and a warning. Typical causes:
- the feed holds only the latest ~100 postings (no history), so a narrow keyword may simply have no current posting;
- a location written differently from the postings (try the country name, e.g.
Germany; many postings give no location at all); - a high
minSalaryUsd(most postings do not state a salary); - a short
postedWithinDays.
How it works, speed and limits
- One run sends two requests to remoteok.com:
robots.txt(checked before anything else) and the public APIhttps://remoteok.com/api, at least 1.5 seconds apart (robots.txt asks for a 1-second crawl delay). The API returns the latest ~100 postings in one response; there is no paging and no history. - Want a history? Schedule the Actor (for example every few hours) and keep the rows;
ididentifies a posting across runs. - If Remote OK answers "too many requests" (HTTP 429), the Actor waits as asked (or 30 seconds) and tries once more. If the site refuses the connection (HTTP 403), the run stops with a clear message — the Actor does not try to get around it.
- Each run stores
RUN_SUMMARY(postings in the feed, matches, rows, the date range the feed covers, the robots.txt check) andLICENSE(Remote OK's API terms as sent with the data) in its key-value store.
Data source, attribution and terms
-
Source: the public Remote OK API,
https://remoteok.com/api. Remote OK'sllms.txtpoints automated clients to it: "Structured, machine-readable job data is available at the public API". -
Remote OK's API terms, sent with every API response and copied into every row's
licensefield:API Terms of Service: Please link back (with follow, and without nofollow!) to the URL on Remote OK and mention Remote OK as a source, so we get traffic back from your site. If you do not we'll have to suspend API access.
Please don't use the Remote OK logo without written permission as it's a registered trademark, please DO use our name Remote OK though.
-
Remote OK Terms of Service (https://remoteok.com/legal): "You agree to link back with a web hyperlink or in-app hyperlink to our site on the page or app screen where you use the data from our APIs or site."
-
What you need to do: If you publish or display this data, link to each job's Remote OK URL (the url field) with a normal, followed link (no rel="nofollow") and name Remote OK as the source. Do not use the Remote OK logo without written permission.
-
If the API's terms text ever changes, the rows carry the new text and the run log and
RUN_SUMMARY.apiTermsChangedsay so.
Legal and privacy
- Public data only. The Actor reads Remote OK's public API, which Remote OK offers for this purpose, and follows robots.txt. No login, no web pages scraped.
- Unofficial / not affiliated with Remote OK. "Remote OK" names the data source only.
- You are responsible for using the data in line with Remote OK's terms (above) and the laws that apply to you.
- GDPR / personal data: job postings are business information published by the hiring companies. The Actor does not output the job description (it is written by the employer, and it often contains recruiters' personal e-mail addresses and phone numbers). E-mail addresses, phone numbers and contact links are also cut out of the title, company, location and tags, and an apply link that is an e-mail address or a messaging link is left out. There are no fields for people's names. A posting whose own Remote OK URL contains a phone number is left out.
- Remote OK provides its data "as is" and states that it takes no responsibility for the accuracy of postings; check important details on the job's Remote OK page.