
Foundit New Jobs Alert Monitor
hipersoft/foundit-monitor
Watch any Foundit (foundit.in) job search on a schedule and get ONLY newly-posted jobs since the last run. Runs in Apify Schedules, n8n, Make or Zapier for automated new-job alerts — quiet runs return nothing, so it is cheap to watch a keyword and location 24/7 and never miss a fresh opening.
Total users
2Monthly users
1Total runs
50Per new job alert
$0.003Last rebuilt
Oct 26, 2026Overview
Watch any Foundit (foundit.in) job search and get alerted the moment a new job is posted. Point this monitor at a job keyword and location — developer, data analyst, digital marketing, sales, anything on Foundit — put it on a schedule, and each run returns only the jobs newly posted since the last run. Quiet runs return nothing, so you can watch a search every few minutes, all day, and only ever see fresh openings.
Built for automation: drop it into Apify Schedules, n8n, Make or Zapier and turn every new job into an email, a Slack message, a Google Sheet row or a webhook.
Why a monitor instead of a scraper?
A scraper gives you everything every time — and you then have to figure out what's new. This monitor remembers what it saw last time and hands you a clean feed of just the new jobs:
- 🆕 New jobs — the moment a posting matching your search goes live.
- 🗑️ Removed jobs — optional. Jobs that were present before but have now been filled, withdrawn or expired.
Perfect for job seekers who want to apply first, recruiters tracking a market, job boards aggregating fresh roles, and anyone building automated job alerts.
How it works
- Give it a search — one or more keywords like
developerordata analyst, and optionally one or more Locations likeMumbaiorBengaluru. You can also paste a Foundit search URL from your browser. - Put it on a schedule (e.g. every 30 minutes) in Apify or your automation tool.
- First run quietly records the current jobs as a baseline and returns nothing — so a fresh schedule doesn't dump the whole board at you. (Prefer the full list up front? Turn on Emit all jobs on the first run.)
- Every run after that returns only the jobs posted since the previous run.
Each monitor keeps its own separate memory, so you can run several different searches side by side without them interfering — just give each one a Monitor name.
What you get
One row per newly-posted job:
| Field | Description |
|---|---|
changeType |
new (newly posted) or removed (no longer in results). |
jobId |
Foundit job ID. |
title |
Job title (e.g. "Scala Developer"). |
company |
Hiring company name. |
location |
Job location (e.g. "Bengaluru, India"). |
experience |
Required experience (e.g. "5-7 Years"). |
salary |
Salary when disclosed. |
skills |
Key skills for the role. |
employmentType |
Full time, contract, etc. |
industry |
Industry of the role. |
postedDate |
When the job was posted. |
url |
Link to the job on Foundit. |
applyUrl |
Direct apply link. |
firstSeenAt |
When this monitor first saw the job. |
lastSeenAt |
When the job was last seen (on removals). |
detectedAt |
When this change was detected. |
Example new-job row
{
"changeType": "new",
"jobId": 65621986,
"title": "Scala Developer",
"company": "Infosys",
"location": "Bengaluru, India",
"experience": "5-7 Years",
"employmentType": "Full Time, Permanent",
"url": "https://www.foundit.in/job/scala-developer-infosys-bengaluru-65621986",
"firstSeenAt": "2026-09-05T12:34:56.000Z",
"detectedAt": "2026-09-05T12:34:56.000Z"
}
How to use it
- Add Foundit New Jobs Alert Monitor to your Apify account and open its input.
- Enter one or more Job keywords (e.g.
developer,data analyst) and optionally one or more Locations. - Optionally set a Monitor name so this search keeps its own memory.
- Save it, then create a Schedule (e.g. every 30 minutes) — or trigger it from n8n, Make or Zapier.
- Connect the output to email, Slack, a spreadsheet or a webhook and let the new-job alerts come to you.
Input
{
"queries": ["developer", "data analyst"],
"locations": ["Mumbai", "Bengaluru"],
"maxItems": 200,
"monitorName": "dev-jobs-watch",
"emitBaselineOnFirstRun": false,
"detectRemoved": false
}
| Field | Description |
|---|---|
queries |
One or more job keywords to watch. Each is monitored as its own search. |
locations |
Optional cities to narrow every keyword search. Each keyword is watched in every listed location. |
maxItems |
How many jobs from the top of each search to check each run. 0 = no limit. |
monitorName |
Optional label so this search keeps its own separate memory. |
emitBaselineOnFirstRun |
Output every current job as new on the first run instead of seeding silently. |
detectRemoved |
Also report removed jobs (default off). |
FAQ
How often should I run it? As often as you like — every 15 or 30 minutes works well. Runs with no new jobs return nothing, so frequent checks stay cheap.
Will the first run flood me with results? No. By default the first run silently records a baseline and returns nothing; you only start getting rows from the second run onward. Turn on Emit all jobs on the first run if you'd rather get the full list up front.
Can I watch several searches at once? Yes. Give each one a different Monitor name and each keeps its own independent memory of what it has seen.
Can I watch multiple cities? Yes — add several Locations and every keyword is watched in each of them.
What export and integration options are there? JSON, CSV, Excel and XML, plus the Apify API, webhooks and native integrations with n8n, Make, Zapier and more.
Input
| Field | Type | Description |
|---|---|---|
queriesJob keywords to watch | array | One or more job keywords to monitor on Foundit — for example 'developer', 'data analyst' or 'digital marketing'. Each keyword is watched as its own saved search and each run reports only the jobs that were newly posted since the previous run. You can also past |
locationsLocations (optional) | array | Optional. One or more cities to narrow every keyword search — for example 'Mumbai', 'Bengaluru' or 'Delhi'. Each keyword is watched in every listed location. Leave empty to watch across all locations. |
maxItemsMax jobs to check per run | integer | How many jobs from the top of each search to check every run (0 = no limit). The newest jobs appear first, so 200 comfortably covers fresh arrivals for most searches. Removed-job detection is only reported when this cap is not reached. Default: 200 |
monitorNameMonitor name | string | Optional label for this monitor. Each named monitor keeps its own separate memory of the jobs it has already seen, so you can run several different searches side by side without them interfering. Leave blank to derive it automatically from the search. |
emitBaselineOnFirstRunEmit all jobs on the first run | boolean | By default the very first run silently records the current jobs as a baseline and returns nothing, so a fresh schedule does not dump the whole job board at you. Turn this on to instead output every current job as 'new' on that first run. Default: false |
detectRemovedReport removed jobs | boolean | Also report jobs that were present before but have now disappeared from the search (filled, withdrawn or expired). Only reported when the whole search fits within 'Max jobs to check per run'. Default: false |
proxyConfigurationProxy configuration | object | Optional. This monitor runs fine without a proxy and none is used by default. |
API
curl -X POST "https://api.apify.com/v2/acts/hipersoft~foundit-monitor/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"queries": [
"developer"
],
"emitBaselineOnFirstRun": true
}'from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("hipersoft/foundit-monitor").call(run_input={
"queries": [
"developer"
],
"emitBaselineOnFirstRun": True
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('hipersoft/foundit-monitor').call({
"queries": [
"developer"
],
"emitBaselineOnFirstRun": true
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);Pricing
| Event | Price | Paid plans from |
|---|---|---|
| New Job Alert Charged once for each newly-posted job emitted since the previous run. | $0.003 | $0.0015 |
You pay only for what the run returns. Set a maximum cost per run and it stops cleanly at that limit.
Related scrapers
Dribbble Shots Scraper
Scrape public design shots from Dribbble: title, high-res image, tags, likes, views and designer credit. Filter by category or sort, export JSON, CSV or Excel.
359 runs · 5 users · $0.003 / shot scrapedComputrabajo Scraper
Scrape Computrabajo job listings across Latin America (Mexico, Colombia, Argentina, Chile, Peru and more): title, company, location, salary, posted date and apply URL. Filter by country and keyword. No setup.
206 runs · 4 users · $0.002 / listing scrapedKraken Market Data Scraper
Fetch Kraken spot market data in bulk: ticker stats (ask, bid, last, 24h high/low/volume/vwap), OHLC candles for any interval, order book depth (top bids/asks), and tradable pair metadata. Fast, clean and cheap.
165 runs · 4 users · $0.001 / pair scrapedBayt Scraper
Scrape Bayt.com job listings across the Middle East (UAE, Saudi Arabia, Egypt, Qatar and more): title, company, location, posted date and apply URL. Filter by country and keyword.
134 runs · 4 users · $0.003 / job scrapedGitHub Scraper
Search GitHub and scrape repositories (stars, forks, language, topics, license, dates) or user profiles (name, company, location, bio, followers, public email, repos). Uses the GitHub REST API; optional token for higher rate limits. For developer lead generation, OSS research and recruiting.
131 runs · 7 users · $0.0008 / item scrapedHacker News Scraper
Scrape Hacker News stories, comments, Ask HN, Show HN, jobs and polls by keyword, points, comments and date range. Sort by relevance or newest. Title, URL, author, points, comment count, text and HN link. Fast clean HTTP via the HN Algolia API, no setup.
130 runs · 2 users · $0.004 / item scrapedSend the site and the fields. We build it and you get it first.