Best Job Search
Pricing
from $2.00 / 1,000 results
Best Job Search
Job scraper API for LinkedIn, Indeed & Glassdoor. Returns salary ranges, company profiles, and contact info — normalized across 60+ countries. Pay per result.
Pricing
from $2.00 / 1,000 results
Rating
5.0
(3)
Developer
CheapGET
Actor stats
19
Bookmarked
550
Total users
34
Monthly active users
2 hours ago
Last modified
Categories
Share
Aggregate job listings from LinkedIn, Indeed, Glassdoor, and regional platforms in one unified API call.
Stop juggling multiple job boards. Get comprehensive job market data with salary insights, company details, and full descriptions—all normalized into a consistent format ready for your ATS, analytics dashboard, or recruitment pipeline.
🤝 Support & Community
📧 Support: Contact Us 💬 Community: Telegram Group
🏆 Key Features
🌍 Multi-Platform Aggregation
- 🎯 5+ Job Platforms: Search LinkedIn, Indeed, Glassdoor, Naukri (India), and Bayt (Middle East) simultaneously.
- 🔄 Unified Schema: All job data normalized into a consistent format—no manual data cleaning or field mapping required.
- 🌐 Smart Region Detection: Automatically selects the best platforms based on your target country (60+ countries supported).
- ⚡ Parallel Processing: Scrape multiple platforms concurrently for maximum speed and efficiency.
📊 Comprehensive Job Data
- 💼 Complete Job Details: Extract job titles, descriptions, requirements, employment types, seniority levels, and remote work options.
- 💰 Salary Intelligence: Get salary ranges, currency, and payment periods (hourly/monthly/yearly) when available.
- 🏢 Company Enrichment: Includes company name, industry, size, revenue, ratings, reviews, logo, and official website.
- 📍 Location Data: Precise job location, remote work status, and work-from-home arrangement details.
🎯 Advanced Filtering
- 📅 Date Filtering: Filter jobs by posting date (e.g., "7 days", "1 month", or specific dates like "2024-08-25").
- 🔍 Keyword Search: Search by job titles, skills, or company names across all platforms.
- 📌 Location Targeting: Specify country and optional city/region for precise geographic targeting.
- 📈 Result Control: Set maximum results per platform to control data volume and costs.
💰 Pricing
| Resource | Cost | Description |
|---|---|---|
| Actor Usage | $0.00001 | Charged for Actor runtime, proxy and storage. Cost depends on resource consumption during execution |
| Job Details | $0.0023 | Charged for each job posting scraped. Includes complete metadata such as salary, company, and location |
Example Cost Calculation:
- Searching 1 keyword × 3 platforms × 100 jobs each = 300 jobs max
- Cost: 300 × $0.0023 = $0.69 + minimal runtime fees
🎯 Use Cases
👔 Recruiters & Talent Acquisition
Monitor competitor job postings daily to track hiring trends. Identify which skills are in demand across industries, benchmark your job descriptions, and spot talent gaps before they become urgent.
keyword: "Senior Data Engineer" country: "United States" posted_since: "7 days"→ Get 300+ fresh postings across LinkedIn, Indeed, Glassdoor in one run
💰 Salary Benchmarking & Compensation Research
Pull salary data across multiple platforms and geographies to build accurate compensation models. Filter by salary_minimum to focus on postings with disclosed pay ranges.
keyword: "Product Manager" country: "United Kingdom" currency: "GBP"→ Normalized salary_minimum / salary_maximum fields ready for Excel pivot tables
🔔 Automated Job Alerts
Schedule this Actor on Apify and route results to Telegram, Slack, or email via Make.com/n8n. Get notified within hours when your dream job is posted—before the application window fills up.
Schedule: every 6 hours → filter new results → push to Telegram bot
📊 Labor Market Research & Analytics
Track hiring velocity, remote work adoption, and in-demand skills across regions over time. Export to Excel or feed directly into your BI dashboard for workforce trend analysis.
🏗️ ATS & Job Board Development
Seed your applicant tracking system or niche job board with real listings. Use the unified schema to skip parsing logic entirely—data arrives clean and structured.
🌟 Why choose this Actor?
Built for comprehensive job market intelligence, this Actor aggregates multiple job platforms into one unified data stream.
| Feature | Best Job Search | JobsPikr | Coresignal | Bright Data | ScraperAPI |
|---|---|---|---|---|---|
| Pricing Model | ✅ $0.0023/job | ❌ $299+/month | ❌ Enterprise only | ❌ $500+/month | ❌ $49+/month |
| Platforms | ✅ 5+ in one API | ✅ Multiple | ✅ Multiple | ✅ Multiple | ⚠️ Limited |
| No Commitment | ✅ Pay-per-result | ❌ Monthly contract | ❌ Annual contract | ❌ Monthly contract | ❌ Monthly contract |
| Regional Platforms | ✅ Naukri, Bayt, etc | ⚠️ Major only | ⚠️ Major only | ⚠️ Major only | ❌ No |
| Unified Schema | ✅ Normalized output | ✅ Yes | ✅ Yes | ✅ Yes | ⚠️ Varies |
| Setup Complexity | ✅ No-code, 1-click | ⚠️ API integration | ❌ Complex setup | ⚠️ Technical setup | ⚠️ API integration |
| Free Trial | ✅ Yes | ⚠️ Limited | ❌ No | ⚠️ Limited | ⚠️ Limited |
💻 Input Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
keyword | string | ✅ Yes | Job title, skill, or company name to search for |
country | string | ✅ Yes | Target country where the job listings are currently located |
max_results | integer | ✅ Yes | Maximum number of jobs to fetch per platform |
remote_only | boolean | ❌ No | Restrict results to remote-friendly positions only |
distance | integer | ❌ No | The search radius in miles around your specified location |
location | string | ❌ No | Specific city or region to filter results. Default: empty |
job_type | string | ❌ No | Employment type filter such as fulltime, parttime, or contract |
currency | string | ❌ No | Target currency for converting salary figures |
posted_since | string | ❌ No | Filter job listings posted within this specified timeframe |
🌐 Supported Countries (60+)
Americas: United States, Canada, Brazil, Mexico, Argentina, Chile, Colombia, Peru, Uruguay, Venezuela, Costa Rica, Panama, Ecuador
Europe: United Kingdom, Germany, France, Netherlands, Switzerland, Ireland, Sweden, Denmark, Norway, Austria, Belgium, Finland, Italy, Spain, Poland, Portugal, Czech Republic, Greece, Hungary, Romania, Bulgaria, Croatia, Slovakia, Slovenia, Estonia, Latvia, Lithuania, Luxembourg, Malta, Cyprus, Ukraine
Asia-Pacific: India, Singapore, Japan, South Korea, Australia, New Zealand, China, Hong Kong, Taiwan, Malaysia, Thailand, Philippines, Indonesia, Vietnam, Bangladesh, Pakistan
Middle East & Africa: United Arab Emirates, Saudi Arabia, Qatar, Kuwait, Bahrain, Oman, Israel, Turkey, South Africa, Nigeria, Morocco, Egypt
📝 Example Input
{"keyword": "Software Engineer","country": "United States","max_results": 100,"remote_only": false,"distance": 200,"location": "New York","job_type": "all","currency": "USD","posted_since": "1 month"}
📤 Output Structure
| Field | Type | Description |
|---|---|---|
processor | string | URL of the Apify actor that processed this data |
processed_at | string | ISO 8601 timestamp when the data was processed |
platform | string | Source platform (LinkedIn, Indeed, Glassdoor, etc.) |
platform_url | string | Job URL on the platform |
official_url | string | Direct link to company's job posting |
title | string | Job position title |
posted_date | string | ISO 8601 timestamp when job was posted |
location | string | Job location or city |
is_remote | boolean | Whether the job allows remote work |
description | string | Full job description in markdown format |
job_type | string | Employment type (full-time, part-time, contract) |
job_level | string | Seniority level (entry, mid, senior, executive) |
job_function | string | Job category or function area |
listing_type | string | Type of job listing (standard, featured, sponsored) |
emails | array | List of contact emails found in job or company website |
phones | array | List of contact phone numbers found on company website |
social_links | object | Map of social media profiles (LinkedIn, Twitter, etc.) |
skills | string | Required skills and technologies keywords |
work_from_home | string | Work arrangement (remote, hybrid, on-site) |
vacancy_count | integer | Number of open positions |
experience_range | string | Required years of experience |
salary_period | string | Payment period (yearly, monthly, hourly) |
salary_minimum | number | Minimum salary amount |
salary_maximum | number | Maximum salary amount |
salary_currency | string | Currency code (USD, EUR, GBP, etc.) |
company_name | string | Name of the hiring company |
company_industry | string | Industry sector of the company |
company_url | string | Company profile URL on job platform |
company_website | string | Official company website |
company_logo | string | URL to company logo image |
company_addresses | string | Company office locations |
company_revenue | string | Annual revenue range |
company_description | string | About the company |
company_rating | number | Company rating score (out of 5) |
employee_count | string | Number of employees |
review_count | integer | Number of company reviews |
easy_apply | boolean | Whether the job supports one-click easy apply |
company_type | string | Company type (public, private, nonprofit, etc.) |
company_founded | integer | Year the company was founded |
📤 Example Output
{"processor": "https://apify.com/cheapget/best-job-search?fpr=aiagentapi","processed_at": "2025-11-20T14:30:00+00:00","platform": "LinkedIn","platform_url": "https://www.linkedin.com/jobs/view/3958472615","official_url": "https://company.com/careers/senior-python-developer","title": "Senior Python Developer","posted_date": "2025-11-18T00:00:00+00:00","location": "San Francisco, CA","is_remote": true,"description": "We are looking for a Senior Python Developer to join our team...\n\n## Requirements\n- 5+ years of Python experience\n- Strong knowledge of Django/FastAPI\n- Experience with cloud platforms (AWS/GCP)","job_type": "full-time","job_level": "senior","job_function": "Engineering","listing_type": "standard","emails": ["careers@company.com", "hr@company.com"],"phones": ["+1-415-555-0123"],"social_links": {"linkedIns": ["https://www.linkedin.com/company/techcorp"],"twitters": ["https://x.com/techcorp"]},"skills": "Python, Django, FastAPI, AWS, PostgreSQL","work_from_home": "hybrid","vacancy_count": 2,"experience_range": "5-8 years","salary_period": "yearly","salary_minimum": 150000,"salary_maximum": 200000,"salary_currency": "USD","company_name": "TechCorp Inc.","company_industry": "Technology","company_url": "https://www.linkedin.com/company/techcorp","company_website": "https://www.techcorp.com","company_logo": "https://media.licdn.com/company/techcorp/logo.png","company_addresses": "123 Market Street, San Francisco, CA 94105","company_revenue": "$50M - $100M","company_description": "TechCorp is a leading software company specializing in AI solutions...","company_rating": 4.2,"employee_count": "500-1000","review_count": 245,"easy_apply": false,"company_type": "private","company_founded": 2015}
🔌 Integrations
Seamlessly connect this actor to your existing pipelines via the Apify API.
🐍 Python SDK
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_API_TOKEN")run_input = {"keyword": "Software Engineer","country": "United States","max_results": 100,"posted_since": "7 days","currency": "USD",}run = client.actor("cheapget/best-job-search").call(run_input=run_input)for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["title"], item["company_name"], item["salary_minimum"])
🟨 JavaScript / Node.js SDK
import { ApifyClient } from "apify-client";const client = new ApifyClient({ token: "YOUR_APIFY_API_TOKEN" });const run = await client.actor("cheapget/best-job-search").call({keyword: "Data Scientist",country: "United Kingdom",maxResults: 50,postedSince: "1 month",currency: "GBP",});const { items } = await client.dataset(run.defaultDatasetId).listItems();items.forEach(({ title, companyName, salaryMinimum }) =>console.log(title, companyName, salaryMinimum));
🌐 REST API (curl)
curl -X POST "https://api.apify.com/v2/acts/cheapget~best-job-search/runs?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{"keyword": "DevOps Engineer","country": "Germany","max_results": 50,"posted_since": "2 weeks","currency": "EUR"}'
Ⓜ️ Make.com Integration
Get Started with Make.com (1000 Free Credits) 🎁
┌────────────────────────────────────────────┐│ Step 1: Configure Actor Module ││ ├─ Add Module: "Run an Actor" ││ ├─ Enable Map: Toggle ON ││ ├─ Actor ID: 8QfidRKcSVYICkwrq ││ ├─ Refresh: Click Refresh button ││ └─ Input JSON: Add job search parameters │└────────────────────────────────────────────┘↓┌────────────────────────────────────────────┐│ Step 2: Set Execution Mode ││ └─ Run synchronously: YES │└────────────────────────────────────────────┘↓┌────────────────────────────────────────────┐│ Step 3: Retrieve Results ││ ├─ Add Module: "Get Dataset Items" ││ └─ Dataset ID: defaultDatasetId │└────────────────────────────────────────────┘
🎱 N8N.io Integration
Open Source Workflow Automation ⚡
┌────────────────────────────────────────────┐│ Step 1: Add Apify Node ││ ├─ Search: "Run an Actor and get dataset" ││ └─ Category: Apify │└────────────────────────────────────────────┘↓┌────────────────────────────────────────────┐│ Step 2: Configure Actor ││ ├─ Selection Mode: By ID ││ ├─ Actor ID: 8QfidRKcSVYICkwrq ││ └─ Paste from Actor ID section above │└────────────────────────────────────────────┘↓┌────────────────────────────────────────────┐│ Step 3: Set Input Parameters ││ └─ Modify Input JSON with search criteria │└────────────────────────────────────────────┘
📚 API Documentation
- MCP API - Model Context Protocol integration
- Python API - Complete Python client documentation with examples
- JavaScript API - Node.js and browser integration guide
🏗️ Metadata for Developers (JSON-LD)
{"@context": "https://schema.org","@type": "SoftwareApplication","name": "Best Job Search - Multi-Platform Job Aggregator","alternateName": ["Job Search API","Multi-Platform Job Scraper","Job Aggregator Tool","Job Market Intelligence"],"applicationCategory": "DeveloperApplication","applicationSubCategory": "Job Market Data Extraction","operatingSystem": "Cloud","offers": {"@type": "Offer","price": "0.00","priceCurrency": "USD","priceValidUntil": "2099-12-31","availability": "https://schema.org/InStock"},"description": "Aggregate job listings from LinkedIn, Indeed, Glassdoor, and regional platforms in one unified API call. Get comprehensive job market data with salary insights, company details, and full descriptions—all normalized into a consistent format.","featureList": ["Multi-platform job aggregation from 4+ sources","Unified normalized data schema","Smart region detection for 60+ countries","Comprehensive salary intelligence","AI-powered contact extraction (emails, phones, socials)","Company enrichment and metadata","Advanced date and location filtering","Parallel processing for maximum speed","Export to JSON, CSV, Excel formats","API integration ready for automation"],"keywords": "job search api, job scraper, linkedin jobs scraper, indeed scraper, glassdoor api, job aggregator, job board scraper, recruitment data api, job listing extractor, salary data scraper, job market intelligence, hiring trends api, job posting scraper, multi-platform job search, job data aggregation, employment data api, job search automation, bulk job scraper, job feed api, career data extraction, job monitoring tool, recruitment automation, talent acquisition data, job board api","author": {"@type": "Organization","name": "cheapget","url": "https://apify.com/cheapget?fpr=aiagentapi"},"softwareVersion": "0.1","datePublished": "2024-01-01","dateModified": "2026-04-05"}
🚀 Performance Tips
Optimize your extraction runs for speed, cost, and data quality with these best practices:
💰 Cost Optimization
- Test First: Start with
max_results: 10and a single keyword before scaling up. - Monitor Costs: Check the "Usage" tab in Apify Console for real-time cost tracking. Each job costs $0.0023.
- Narrow Search: Use specific job titles instead of broad keywords to reduce irrelevant results.
⚡ Speed Optimization
- Tighter Keywords: Use a specific keyword and a reasonable
max_resultsvalue to reduce runtime and irrelevant results. - Regional Focus: Specify a location to reduce results and speed up processing.
- Recent Posts: Use shorter
posted_sinceperiods (e.g., "7 days") for faster results.
🛡️ Data Quality Tips
- Valid Country: Ensure the country name matches exactly (e.g., "United States", not "USA").
- Salary Data: Not all jobs include salary info. Filter by
salary_minimumfield to get jobs with disclosed salaries. - Fresh Data: Job postings change rapidly. Schedule daily runs for time-sensitive applications.
- Remote Jobs: Set
remote_only: trueto request remote-friendly positions only. In the output, useis_remoteandwork_from_hometo verify whether each listing is remote or hybrid.
📊 Best Practices
- Rate Limits: The Actor handles rate limiting automatically with retries.
- Partial Results: If a platform fails, results from other platforms are still saved.
- Monitor Progress: Use Apify Console's live log to track scraping progress across platforms.
❓ FAQ
Which job platforms are supported?
We support LinkedIn, Indeed, Glassdoor, Naukri (India), and Bayt (Middle East). Platform selection is automatic based on your chosen country.
Is this free to use?
Yes — Apify offers a free tier. You can run this Actor and get your first results at no cost. Beyond the free tier, pricing is pay-per-result at $0.0023 per job, with no monthly commitment.
How many jobs can I extract?
There's no hard limit, but we recommend starting with 10-50 jobs per platform for testing. Large extractions (100+) may take longer but are fully supported.
Why are some salary fields empty?
Not all job postings include salary information. Approximately 30-40% of jobs disclose salary ranges. Use the salary_minimum field to filter jobs with disclosed compensation.
How long does a typical scrape take?
Runtime depends on the selected country, platform coverage, and max_results setting. A typical run with one keyword and 100 results per platform completes in 2-5 minutes.
How do I get only jobs posted today?
Set posted_since to "1 day". This filters listings to those posted within the last 24 hours across all platforms.
Can I scrape LinkedIn jobs legally?
This Actor extracts publicly available job listings — the same data visible to any unauthenticated visitor. No login is required or used. You are responsible for ensuring your use complies with applicable laws and platform terms.
Does this work with Zapier?
Yes. Use the Apify Zapier integration to trigger runs and route results automatically. Connect to Gmail, Google Sheets, Slack, Notion, or any of Zapier's 5,000+ apps.
Why do some job titles not match my search keywords?
This is expected behavior. Each platform (LinkedIn, Indeed, Glassdoor, etc.) uses its own search algorithm that considers job relevance, not just exact keyword matching. Platforms may return jobs based on:
- Related job titles and synonyms (e.g., "Developer" may return "Engineer" roles)
- Skills mentioned in job descriptions
- Industry and category associations
- Location-based relevance
This is the same behavior you would see when searching directly on these platforms.
How to export job listings to Excel?
After the run completes, go to the Output tab in the Apify Console. Click the Export button and select Excel format. You will receive a neatly formatted spreadsheet with all job listings ready for analysis.
What output formats are available?
The Actor outputs data in JSON format by default. You can export results to CSV or Excel formats using Apify's dataset export features.
How accurate is the data?
All data is extracted directly from job platforms, ensuring high accuracy. Job details reflect real-time values at the moment of extraction.
🏷️ Best Job Search
🔥 Search Terms: job search api, job scraper, linkedin jobs scraper, indeed scraper, glassdoor api, job aggregator, job board scraper, recruitment data api, job listing extractor, salary data scraper, job market intelligence, hiring trends api, job posting scraper, multi-platform job search, job data aggregation, employment data api, job search automation, bulk job scraper, job feed api, career data extraction, job monitoring tool, recruitment automation, talent acquisition data, job board api
💼 Use Case: job-aggregation recruitment-automation salary-benchmarking labor-market-research talent-acquisition hr-tech job-board-development career-services competitive-hiring-intelligence workforce-analytics job-alert-systems ats-integration recruitment-marketing skills-gap-analysis employment-trends compensation-research job-market-monitoring
⚖️ Legal & Compliance
This actor extracts publicly available data only. It does not bypass authentication, access private content, or violate platform terms of service. You are responsible for:
- Data Rights: Ensuring you have permission to collect and use the extracted data
- Privacy Compliance: Adhering to GDPR, CCPA, and other applicable privacy laws when processing data
- Platform Terms: Respecting the platform's terms of service and usage policies
- Ethical Use: Using extracted data responsibly and in compliance with applicable laws
🔗 Related Actors
- Best Job Search - Aggregates job listings from LinkedIn, Indeed, Glassdoor, and regional platforms. Automatically selects optimal platforms based on target country across 60+ regions.
- Glassdoor Job Search - Extracts crowd-sourced salary ranges, company ratings, employee review counts, and workplace culture data unique to Glassdoor's platform.
- Indeed Job Search - Scrapes job postings with salary disclosure data, full descriptions, and company profiles from Indeed's aggregated listings across 60+ countries.
- LinkedIn Job Search - Captures applicant counts, company growth indicators, skills taxonomy, and hiring team visibility specific to LinkedIn's professional network.
- Best Video Downloader - Downloads videos in 4K/HD/SD quality from 1000+ platforms including YouTube, TikTok, Instagram, and Twitter. Extracts metadata, comment threads, and engagement statistics.
- TikTok Video Downloader - Downloads watermark-free TikTok videos with quality selection. Captures hashtag trends, audio track details, creator profiles, and viral metrics.
- Youtube Video Downloader - Downloads YouTube videos with selectable quality. Extracts video metadata, comment sections, thumbnail images, and channel statistics.
- TikTok Live Recorder - Records TikTok live streams with real-time viewer count tracking, streamer profile data, and engagement metrics during broadcast.
- TikTok Video Profile - Extracts 50+ data points per TikTok video including metadata, engagement statistics, nested comment threads, and creator information.
- Video To Text - Transcribes videos from 1000+ platforms using AI. Detects language automatically, generates time-stamped segments, and translates to 100+ languages.
- Instagram To Text - Transcribes Instagram videos with automatic language detection and multi-language translation capabilities.
- Social Media Marketing - Generates 864 unique variations from a single video using AI. Creates platform-specific content across 12 platforms, 12 writing tones, and 6 AI models with styled images.
- Reddit User Profile - Analyzes Reddit user activity with forensic timeline reconstruction, karma distribution, influence patterns, and moderator role identification.
- Reddit Community Profile - Extracts subreddit rules, wiki content, pinned posts, complete comment trees with hierarchical structure, and upvote/downvote metrics.
- Reddit Community Post - Extracts posts from specific subreddits with 40+ metadata fields including titles, content, authors, vote counts, timestamps, and flair. Captures full comment threads with hierarchical reply structure.
- Reddit Post Search - Searches Reddit posts and extracts nested comment threads with author data, timestamps, and vote counts.
- Telegram Group Member - Extracts member profiles from Telegram groups. Offers standard mode for public groups and deep search mode for discovering hidden members and historical data.
- Telegram Channel Message - Scrapes Telegram channel messages with media downloads. Captures view counts, reply threads, forward chains, and reaction data.
- Telegram Profile - Batch extracts Telegram profiles for users, bots, groups, and channels using MTProto. Retrieves verification status, premium indicators, and privacy settings.
- Google Business Profile - Extracts Google Business listings from Maps including business details, customer reviews, star ratings, photos, and geographic coordinates.
- X Community Profile - Scrapes Twitter/X community profiles with follower statistics, engagement metrics, and member activity data.
- X User Profile - Extracts comprehensive X (Twitter) user profile data with 35+ rich data points including verification status, follower analytics, and engagement metrics.
Last Updated: April 5, 2026

