Global Job Search API - Remote Jobs, All-in-One, 18 Job Boards

io.github.AnshumanAtrey由 GitHub 帳號 AnshumanAtrey 發布v1.0.7更新於 Nov 13, 2026

Global Job Search API for All Job Boards, Remote

已驗證Streamable HTTP可網頁執行網頁搜尋與抓取商業與電商

概覽

AI 產生的概覽

託管於 Apify 的 MCP 伺服器,讓助理一次搜尋 18 個求職網站與 ATS 招募頁面,回傳最新符合的職缺與應徵連結。

可以做什麼
  • 一次執行同時搜尋 18 個求職網站與 ATS 企業招募頁,依最新排序並去重
  • 依職稱、地點、遠端/混合/進辦公室、刊登期間、工作類型、經驗、排除字詞與公司篩選
  • 回傳每筆職缺的職稱、公司、地點、薪資、刊登日期、來源網站、職缺連結與應徵連結
  • 取得完整詳情,例如描述文字與 HTML、數值化薪資與地址
  • 檢查貼上的職缺連結,回傳開放、已關閉或找不到
  • 提供各網站的彙總,包括符合數、儲存數、耗時與錯誤
適用情境
適合讓助理跨多個求職網站尋找某職稱或城市的最新職缺而不必逐一查詢、建立每日更新的職缺來源,或了解目前哪些公司正在招募某類職位。
執行需求
遠端 MCP 端點 mcp.apify.com,需登入 Apify 帳號,或以 Authorization 標頭帶入 Bearer 形式的 Apify API 權杖。執行費用計入該 Apify 帳號,不需其他金鑰或本機執行環境。
安裝前請注意
每次執行都會在 Apify 帳號產生費用:依儲存的職缺、含詳情的職缺以及搜尋的網站分別計費,網站與職缺越多花費越高。Authorization 權杖是可計費的憑證,應妥善保密。結果來自第三方求職網站,使用時須遵守各網站條款與適用的隱私法規。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Global Job Search API - Remote Jobs, All-in-One, 18 Job Boards,將其新增到工作區。
  2. 連接 所需的 憑證。它們會被私密儲存,絕不會在公開頁面上展示。
  3. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/io.github.AnshumanAtrey%2Fglobal-job-search-api/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。 客戶端會在首次連接時完成 OAuth 登入。

{
  "mcpServers": {
    "global-job-search-api-remote-jobs-all-in": {
      "type": "http",
      "url": "https://mcp.apify.com/?tools=anshumanatrey/global-job-search-api"
    }
  }
}

README

Global Job Search API - Remote Jobs, All-in-One, 18 Job Boards

Global job search API for 18 job boards at once, worldwide and remote: type a job title and get the newest matching jobs from Hiring Cafe, Greenhouse, Lever, Workday, Ashby, SmartRecruiters, Workable, Cornerstone, Deel, Y Combinator, Wellfound, Welcome to the Jungle (with Otta), eFinancialCareers, Naukri, foundit, Instahyre, Hirist and Cutshort, searched live and in parallel, each job once. Every row has the title, company, places, remote or office, job type, published pay, posting date, the board it came from and the apply link. Turn on full details for the description.

Use it as an all-in-one, universal job search: one multi job board scraper and API with no login and no API key, an ATS jobs API for company career sites, a job aggregator feed for your own job board, or a daily job alert, from the Apify Console, the Apify API, Python, JavaScript, n8n, Make or an AI agent over MCP, and export JSON, CSV or Excel. It is the alternative to running 18 job scrapers one after another: every board is searched at the same time, so a run takes about as long as its slowest board. Available as an Apify Actor. $0.004 per job, $0.005 with full details, and $0.01 per board searched.

Use it from an AI assistant:

  • Claude (claude.ai and the desktop app): Add Global Job Search to Claude, click Continue, sign in to Apify, Allow, and ask in plain words.
  • Claude Code: claude mcp add --transport http global-job-search-api "https://mcp.apify.com?tools=anshumanatrey/global-job-search-api", then run /mcp to sign in to Apify.
  • Codex: codex mcp add global-job-search-api --url "https://mcp.apify.com?tools=anshumanatrey/global-job-search-api", then codex mcp login global-job-search-api.
  • Any other MCP client: https://mcp.apify.com?tools=anshumanatrey/global-job-search-api, signed in with Apify or an Authorization: Bearer <APIFY_TOKEN> header.

What does it do?

  • Searches 18 job boards in one run, all at the same time. Job boards that index jobs themselves (Hiring Cafe's 6 million jobs from employers' career sites, Y Combinator's Work at a Startup, Wellfound, Welcome to the Jungle and Otta, eFinancialCareers, and India's Naukri, foundit, Instahyre, Hirist and Cutshort) and company career sites on eight applicant tracking systems (Greenhouse's 8,357 job boards, Lever's 2,396, Workday's 2,207, Ashby's 3,814, SmartRecruiters' 2,917, Workable's 2,196, Cornerstone's 1,110 and Deel's 161).
  • The newest jobs of all of them, newest first. Each board finds its newest matches, then the newest of them all are saved, up to Number of jobs (maxJobs), with the board each came from in platform.
  • Each job once. A job listed on two boards (a company's Greenhouse posting that Hiring Cafe and eFinancialCareers also carry) is saved once: the same job link, the same company, title and city, or the same company and title posted at the same second.
  • The same filters on every board. Job titles, places (cities, states, countries, regions, Worldwide), remote or office, job type, posting period, years of experience, words to leave out, and companies.
  • Links go to their own board. A company link pasted in the search (job-boards.greenhouse.io/stripe) searches that board only; job links of any of the 18 boards are checked by their own board and come back open, closed or not found.
  • A summary per board. The OUTPUT record says, for every board, how many jobs matched and were saved, how long it took, and any trouble it met.

How is it different from other job search scrapers?

  • Job boards and company career sites together. The multi-board actors on the Apify Store read applicant tracking systems or general job boards; this one reads both, India's job boards included, and keeps each job once across them.
  • Live at the moment of your run. Every board is read when you run it, not from an index built earlier, so a job posted an hour ago can be in your results.
  • Titles that match. A job matches when its title has every word of one of your lines, so 100 rows for data analyst are 100 data analyst jobs.
  • Parallel, with a time cap. The boards are read at the same time, and Time per board (secondsPerBoard) caps how long any one of them searches: a slow board delivers what it found and the run goes on.
  • Open source. The search engine behind it, one adapter per board, is public on GitHub under the MIT license.

When should I use it?

  • Job seekers: one search across every board for your title and city, newest first, each with its apply link.
  • Job boards and aggregators: a fresh feed of jobs from career sites and job boards in one schema.
  • Recruiters and sales teams: who is hiring for a role right now, and on which hiring system.
  • AI agents: one tool that searches every board, instead of a tool per board.

How much does it cost to search 18 job boards?

Pay per event: $4.00 per 1,000 jobs, or $5.00 per 1,000 with full details, plus $0.01 for each board a search reads, charged when the run starts. Apify's free $5 monthly credit covers about 8 runs of 100 jobs on all 18 boards, or about 20 runs of 50 jobs on 5 boards. Platform usage is included, and there is no monthly fee.

EventPriceWhen it is charged
Job$0.004One saved job, and one checked job link that is closed or not found
Job with details$0.005One saved job with full details on
Board searched$0.01Once for each board a search reads, when the run starts (18 when every board is searched); checking job links charges none

On Apify's paid plans a job costs less: $0.004 on BRONZE, $0.0036 on SILVER and $0.0032 on GOLD and above; a job with details $0.005, $0.0045 and $0.004. The board fee is the same on every plan.

RunCost
100 jobs from all 18 boards$0.58
50 jobs from 5 boards$0.25
100 jobs from all 18 boards with full details$0.68

Set a maximum cost per run in Apify and the run reads only the boards that fit, keeping room for at least one job, then stops saving at the limit.

How does the price compare with other job search scrapers?

Every actor on the Apify Store that searches several job boards or applicant tracking systems in one run and had 80 or more users in the last 30 days on 2026-11-13, ordered by users. Prices are each actor's live price on Apify's free plan that day, with the run start at its default memory.

ActorUsers, 30 daysWhat its description namesPer jobStart fee100 jobs
fantastic-jobs/career-site-job-listing-api1,607275,000+ career sites on 58 ATS, AI enrichment$0.012$0.01$1.21
fantastic-jobs/career-site-job-listing-feed280The same career sites, as a feed$0.0025$0.10$0.35
agentx/all-jobs-scraper20442 job platforms$0.0035$0.01$0.36
jobo.world/ats-jobs-api1647 million jobs on 200+ ATS$0.004$0.0002$0.40
hirebase/job-search1454 million jobs from Greenhouse, Workday, Lever and 20+ ATS$0.005$0.004$0.50
factpipe/ats-jobs-feed144800,000 jobs on 8 ATS$0.005none$0.50
yugenox/ats-jobs-search143Live search of 12,000 career sites on Greenhouse, Lever and Ashby$0.002none$0.20
memo23/career-site-ats-jobs-api84116 ATS, fetched at run time$0.004$0.03$0.43
bovi/greenhouse-lever-ashby-job-scraper80Greenhouse, Lever and Ashby, by company or preset list$0.0015$0.00005$0.15
jtpalms/ats-jobs-index8017,000 career sites, indexed twice a day$0.003$0.00005$0.30
This actornew18 boards: 10 job boards and 8 ATS, live$0.004$0.01 a board$0.58 (18 boards), $0.45 (5 boards)

Where others are cheaper: all but fantastic-jobs' API cost less than a search of all 18 boards here, because this actor reads every company on every board at the moment of your run, and the board fee pays for that reading; a search of 5 boards ($0.45) costs less than hirebase and factpipe. bovi, yugenox and jtpalms cost far less when Greenhouse, Lever and Ashby are all you need. For one board, the matching actor below costs far less: Hiring Cafe Jobs Scraper charges $0.000062 a job. Where others do more: the database actors cover more applicant tracking systems (58 to 200+) and add AI-extracted fields.

Which inputs does it take?

FieldWhat it does
Job titles to find (searchTerms)Job titles or keywords, one per line. A job matches when its title has every word of a line. Empty: the newest jobs of every kind. A pasted board link searches that board only
Job boards (platforms)The boards to search, all at the same time. Empty: all 18. Keys or names (Hiring Cafe, YC, Otta)
Where the job is (location)Cities, states, countries or regions; Worldwide; Remote alone asks for remote jobs
Remote or onsite (workType)remote, hybrid or onsite
Posted in the last (postedWithin)24 hours, 3, 7, 14 or 30 days (the default), any time, or your own period
Number of jobs (maxJobs)How many jobs in all, newest first across every board: 100 by default; 0 for every match
Full details (includeDetails)Adds the description as text and HTML, pay as numbers and the address
Leave out words (excludeTerms)Words that leave a job out when its title has them
Job type (employmentType)full-time, part-time, contract, intern or temporary
Experience (experienceYears)Your years: 3, 2-5, 5+ or fresher. Only boards that state years can match then
Match descriptions (searchDescriptions)Matches your words in descriptions too; slower
Only these companies (companies)Company names or board links; a board where none is found sits the run out
Job links to check (jobUrls)Job links of any of the 18 boards to check instead of searching
Time per board (secondsPerBoard)How long each board may search: 240 seconds by default; 0 for no cap of its own

Example input:

json
{  "searchTerms": ["data analyst"],  "location": ["London"],  "platforms": ["hiringcafe", "greenhouse", "lever", "ashby", "efinancialcareers"],  "postedWithin": "7 days",  "maxJobs": 50}

What does the output look like?

One row per job, newest first across every board searched. A row from a search for data analyst in London on 2026-11-12:

json
{  "title": "EMEA | Senior Data Business Analyst / Product Owner (Contractor)",  "company": "Infinite Lambda",  "location": "London",  "otherLocations": ["Romania", "Sofia I Bulgaria", "Hungary", "Spain", "Slovakia", "Portugal"],  "workType": "remote",  "employmentType": "full-time",  "department": "Customer Success",  "team": "Customer Success",  "salary": null,  "postedAt": "2026-11-11T10:52:26.238+00:00",  "expiresAt": null,  "jobUrl": "https://jobs.ashbyhq.com/Infinite%20Lambda/4bdf2b62-422f-4036-8645-cd1ffeef0a27",  "applyUrl": "https://jobs.ashbyhq.com/Infinite%20Lambda/4bdf2b62-422f-4036-8645-cd1ffeef0a27/application",  "status": "open",  "platform": "ashby",  "companySlug": "Infinite Lambda",  "companyWebsite": "https://infinitelambda.com",  "jobId": "4bdf2b62-422f-4036-8645-cd1ffeef0a27",  "checkedAt": "2026-11-12T20:12:25+00:00"}
FieldWhat it holds
Job title (title)The job title as the employer wrote it
Company name (company)The company that is hiring
Main location (location), Other locations (otherLocations)Every place the job names
Remote or onsite (workType)remote, hybrid or onsite, when the job says
Job type (employmentType)full-time, part-time, contract, intern or temporary, when the job says
Pay summary (salary)Published pay as text; with full details also salaryMin, salaryMax, salaryCurrency, salaryPeriod
Posted on (postedAt)When the job was posted
Job board (platform)The board the row came from
Job link (jobUrl), Apply link (applyUrl)The job on its board, and where to apply
Job description (description)With full details: the description as text, and descriptionHtml

Each board adds the fields its own actor gives, such as Hiring Cafe's seniority, skills and visaSponsorship, Y Combinator's batch, or Naukri's experience; the dataset schema names the boards that fill each field. The OUTPUT record holds the run summary: boards has one entry per board with matchingJobs, jobsSaved, seconds, duplicatesOfOtherBoards and any boardsWithErrors.

How fast is it?

Minutes, because the boards are read at the same time, the company career sites each in a process of their own. On Apify at the default 8 GB on 2026-11-13: data analyst in London on all 18 boards took 236 s and read every company on every board (Greenhouse's 8,357 job boards in 178 s, Ashby's 3,814 in 83 s, SmartRecruiters' 2,917 in 130 s, Lever's 2,396 in 145 s, Workday's 2,207 in 231 s); the job boards with their own search answered in 2 to 77 s. The example input, software engineer on 5 boards, took 113 s. Apify gives a run one CPU core for each 4 GB: at 4 GB, a search of all 18 boards is cut at Time per board (secondsPerBoard) with part of the big boards unread, and 16 GB runs faster. On a laptop the same day, software engineer on 16 boards took 255 s in one run, while the same search one board at a time added up to 938 s.

Common questions

Which boards does it search?

All 18 unless you pick some in Job boards (platforms): hiringcafe, greenhouse, lever, workday, ashby, smartrecruiters, workable, cornerstone, deel, ycombinator, wellfound, welcometothejungle, efinancialcareers, naukri, foundit, instahyre, hirist and cutshort. Names work too: Hiring Cafe, YC, Otta, Monster India.

Why does a run take a few minutes?

Company career sites have no search of their own across companies, so Greenhouse, Lever, Ashby and the other applicant tracking systems read every company's job list. The run takes about as long as its slowest board; lower Time per board (secondsPerBoard) to cap it, or pick the boards you need.

How does it keep each job once?

A job is left out when a board earlier in the newest-first list already gave the same job link, the same company and title in the same city, or the same company and title posted at the same second. In a search for data analyst in London on all 18 boards (Apify, 2026-11-13), 31 jobs that two boards listed were saved once; in the example input's software engineer search on 5 boards, 40.

Why did a board return nothing?

Its jobs may be older than the newest jobs of the other boards (raise Number of jobs), or it has none for your words and place: India's boards rarely list London jobs. The OUTPUT record's boards says what each board matched.

Does it work on Apify's free plan?

Global Job Search works on Apify's free plan, which pays $0.004 a job and $0.01 a board. The free $5 monthly credit pays for about 8 runs of 100 jobs on all 18 boards, or 20 runs of 50 jobs on 5 boards.

How often should I run it?

Running Global Job Search once a day keeps a job feed fresh: set Posted in the last (postedWithin) to 24 hours, schedule it under Schedules in Apify Console, and match rows on jobUrl to skip jobs you already have.

How do I check a list of job links?

Paste them in Job links to check (jobUrls), one per line, from any of the 18 boards. Each goes to its own board and comes back open with the job, closed or not found, in the order pasted. A link of another site is skipped with a note.

How do I call it from the API, Python, JavaScript, n8n or an AI agent?

Global Job Search runs from the Apify API, Python, JavaScript, n8n, Make or an AI agent over MCP. Each way uses your Apify token (Apify Console, Settings, API & Integrations) and takes the input as JSON keyed by the field names, such as searchTerms and platforms.

API. One call runs the actor and returns its rows (Apify waits up to 300 seconds):

bash
curl -X POST "https://api.apify.com/v2/acts/anshumanatrey~global-job-search-api/run-sync-get-dataset-items" \  -H "Authorization: Bearer <YOUR_APIFY_TOKEN>" \  -H "Content-Type: application/json" \  -d '{"searchTerms": ["data analyst"], "location": ["London"], "platforms": ["hiringcafe", "greenhouse", "ashby"]}'

Python (pip install apify-client):

python
from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")run = client.actor("anshumanatrey/global-job-search-api").call(run_input={"searchTerms": ["data analyst"]})for row in client.dataset(run.default_dataset_id).iterate_items():  # apify-client 3+; on 2.x use run["defaultDatasetId"]    print(row["platform"], row["title"], row["company"], row["location"], row["applyUrl"])

JavaScript (npm install apify-client):

js
import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' });const run = await client.actor('anshumanatrey/global-job-search-api').call({ searchTerms: ['data analyst'] });const { items } = await client.dataset(run.defaultDatasetId).listItems();for (const row of items) console.log(row.platform, row.title, row.company, row.location, row.applyUrl);

n8n and Make. In n8n, add the Apify node, pick Run an Actor and get dataset, choose this actor and paste the input JSON. In Make, the Apify app's Run an Actor and Get Dataset Items modules do the same.

AI agents (MCP). Add https://mcp.apify.com?tools=anshumanatrey/global-job-search-api to your MCP client and sign in with Apify, or send Authorization: Bearer <YOUR_APIFY_TOKEN>. The agent gets one tool that searches all 18 boards and sees every input field by its JSON key.

Is it legal to use?

Global Job Search reads public job postings, the pages any visitor sees without logging in. It is not affiliated with any of the boards it reads. You are responsible for how you use the data, including each board's terms and the privacy laws that apply to you.

Limitations

  • A run takes about as long as its slowest board, up to Time per board (secondsPerBoard, 240 seconds by default); a board stopped there delivers what it found, and the OUTPUT record says so.
  • Experience (experienceYears) keeps only jobs that state years: company career sites state none, so with it set only Hiring Cafe, Y Combinator, Wellfound, Welcome to the Jungle and the India boards can match.
  • Each board keeps the limits of its own actor: Workable's jobs feed can end before today's jobs, Instahyre reads its jobs one by one, and HiringCafe shows a search's newest 10,000 employers.
  • Read fast, Workday answers some career sites with HTTP 429: a run can miss a few of its 2,207 sites (8 in one run of 2026-11-13), named in the OUTPUT record.
  • The default 8 GB of memory is what reads all 18 boards in full in about four minutes; a run at 4 GB gets one CPU core and cuts the biggest boards at Time per board.
  • Pay is published on part of the jobs only, and salary is empty for the rest.
  • Places are matched as each board writes them, so a US city next to United States finds more.
  • Two listings of one job written differently on two boards (another title, another city) can both be saved.

Who maintains it?

Built and maintained by Anshuman Atrey (@AnshumanAtrey), who publishes a portfolio of data and OSINT actors on Apify Store. For a feature request or a bug, message LinkedIn (fastest), open an issue on the GitHub repo, or write through atrey.dev.

Sibling actors

One board at a time, for less:

ActorWhat it searches
Hiring Cafe Jobs ScraperHiringCafe's 6 million jobs from employers' own career sites
Greenhouse Jobs ScraperJobs from every company on Greenhouse
Lever Jobs ScraperJobs from 2,300+ companies on Lever
Workday Jobs ScraperJobs from every company on Workday
Ashby Jobs ScraperJobs from every company on Ashby
SmartRecruiters Jobs ScraperJobs from 2,900+ companies on SmartRecruiters
Workable Jobs ScraperJobs from every company on Workable
Cornerstone Jobs ScraperJobs from every company on Cornerstone
Deel Jobs ScraperJobs from every company on Deel ATS, with pay
Y Combinator Jobs ScraperYC startup jobs from Work at a Startup
Wellfound Jobs ScraperStartup jobs on Wellfound
Welcome to the Jungle Jobs ScraperWelcome to the Jungle and Otta jobs
eFinancialCareers Jobs ScraperFinance, banking and quant jobs
Naukri Jobs ScraperIndia's biggest job board
Foundit Jobs Scraperfoundit (Monster India) in 9 countries
Instahyre Jobs ScraperTech jobs on Instahyre
Hirist Jobs ScraperTech jobs on Hirist
Cutshort Jobs ScraperStartup jobs on Cutshort

Documentation

Last updated

2026-11-13 (version 1.0)

來源:README.md,提交 3e3f06a

工具

0
該伺服器需要登入,因此 SourceWeft 無法在沒有帳號的情況下讀取其工具,也未收錄。已連接帳號所能看到的內容可能因帳號及其權限而異。

版本歷史

1
  1. v1.0.7最新Nov 13, 2026

評分

已滿足適用檢查項的 85%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分