Job Search avatar

Job Search

Pricing

from $4.05 / 1,000 results

Go to Apify Store
Job Search

Job Search

Job Search is a job search API for 39 sources that returns 41 normalized job, salary, company, application, and public contact fields. One input can combine compatible sources for the selected country.

Pricing

from $4.05 / 1,000 results

Rating

5.0

(4)

Developer

TrueFetch

TrueFetch

Maintained by Community

Actor stats

24

Bookmarked

943

Total users

45

Monthly active users

18 hours

Issues response

a day ago

Last modified

Share

Job Search is a job search api that queries up to 39 compatible job sources and returns 41 normalized job, salary, company, application, and public contact fields, built for developers and data teams.

  • 39 job platforms available through one input.
  • 98 selectable countries.
  • 10 public inputs with 3 required.
  • 41 normalized Dataset fields.

Run a one-result test · View API

Set max_results to 1; the smallest published-result test bills a minimum $0.01000 Actor Start plus one $0.00450 Result, or $0.01450 on FREE.

What does Job Search do?

Job Search collects public listings from multiple job boards through one input and one 41-field output contract. Provide a keyword, country, and per-platform result limit, then select compatible sources. Every item retains its source identity.

The Actor helps developers and data teams avoid separate board-specific pipelines. It can return role, location, salary, company, application, and public contact fields when the source publishes them.

Job Search is independent of the listed platforms and is not an auto-apply, candidate-database, or applicant-tracking service. Each platform controls its inventory, relevance, filters, and optional fields; LinkedIn's official job-search guide illustrates those source-specific search semantics.

  1. Open Job Search on Apify.
  2. Enter the three required inputs: keyword, country, and max_results.
  3. For the lowest-risk first run, select one platform and set max_results to 1.
  4. Click Start, inspect the Dataset item, and scale only after the fields fit your workflow.

This runnable example uses one consistent scenario throughout the README: find up to one remote Data Analyst listing from Indeed in the United States, posted within the last seven days.

{
"keyword": "Data Analyst",
"country": "United States",
"platforms": ["Indeed"],
"max_results": 1,
"remote_only": true,
"posted_since": "7 days",
"job_type": "fulltime",
"currency": "USD"
}

max_results is a limit per platform, not a total for the entire run. If you later select three platforms with max_results: 10, the run can publish up to 10 results from each platform, subject to availability.

What data does Job Search return?

The default Dataset contains 41 fields. Every item uses the same top-level field names, while values that a source or employer does not publish remain empty instead of being guessed.

Field groupFields
Processingprocessor, processed_at
Source and applicationplatform, platform_url, official_url, easy_apply
Role detailstitle, description, job_type, job_level, job_function, listing_type, skills, experience_range
Location and work modelocation, is_remote, work_mode
Dates and volumeposted_date, valid_through, applicant_count, vacancy_count
Compensationsalary_minimum, salary_maximum, salary_currency, salary_period
Companycompany_name, company_type, company_founded, company_industry, company_url, company_website, company_logo, company_addresses, company_revenue, company_description, company_rating, employee_count, review_count
Public contactsemails, phones, social_links

This abbreviated, illustrative item matches the one-result Data Analyst scenario above:

{
"platform": "Indeed",
"platform_url": "https://www.indeed.com/viewjob?jk=example123",
"official_url": "https://careers.example.com/jobs/data-analyst",
"title": "Data Analyst",
"company_name": "Example Analytics",
"location": {
"raw": "Remote, United States",
"locality": null,
"region": null,
"country": "United States",
"country_code": "US"
},
"is_remote": true,
"salary_minimum": 85000,
"salary_maximum": 105000,
"salary_currency": "USD",
"posted_date": "2026-07-18",
"emails": [],
"phones": [],
"processor": "https://apify.com/truefetch/job-search",
"processed_at": "2026-07-20T12:00:00.000Z"
}

See the live Output schema for field types and examples.

What inputs can I configure?

Job Search exposes 10 public inputs in schema order, with 3 required and the rest optional.

ParameterTypeRequiredDescriptionExample
max_resultsintegerYesMaximum normalized listings to return from each available source.4
keywordstringYesJob title, skill, or company query for the available sources.Data Analyst
countryselectYesCountry used to choose compatible sources and regional endpoints.Canada
locationstringNoCity, area, or postal code for the compatible sources.
platformsarrayNoAvailable job sources to include in one normalized search.
posted_sincedateNoEarliest posting date where an available source accepts the filter.
remote_onlybooleanNoReturn remote roles where an available source accepts the filter.
distanceintegerNoRadius in miles around the location where an available source accepts it.
job_typeselectNoEmployment type where an available source accepts the filter.
currencyselectNoTarget currency for normalized salary conversion when amounts are available.

country has 98 accepted values; platforms has 39 accepted values; job_type has 5 accepted values; currency has 166 accepted values. Optional fields have no request effect when omitted; use the live Input schema for types and accepted values.

What platforms and markets does Job Search cover?

One country-aware request can select one or more compatible job sources.

The public input exposes 39 platform choices and 98 country choices. Compatibility depends on the selected country, so use the live Input schema for the current accepted values.

Coverage states where the Actor can form a request; live inventory, relevance, language, and optional field availability still come from the selected public source.

CapabilityPractical benefit
One multi-board inputReuse the same search contract instead of preparing a separate request for every source.
One normalized 41-field datasetLoad records into analytics, data products, ATS-adjacent workflows, or AI systems with less remapping.
Source attributionAudit every item through platform, platform_url, and, when available, official_url.
Country-aware coverageSearch appropriate boards for each selected market rather than assuming every board is global.
Controlled first runTest one platform and one result before increasing platform count or volume.
Apify deliveryUse Datasets, exports, schedules, webhooks, API calls, or MCP after the same initial configuration.

The main trade-off is source variation. A normalized schema makes records easier to consume, but it cannot make every platform expose the same filters or fields.

Who is Job Search for?

TeamTypical use
DevelopersAdd multi-board job search to an application, alerting service, or internal tool.
Data engineersCollect source-attributed job records for a warehouse or repeatable pipeline.
Analytics and research teamsCompare demand, salary, work mode, skills, and hiring activity across markets.
Job-board product teamsBuild search, newsletters, monitoring, or niche vacancy products from normalized listings.
Recruiting and market intelligenceMonitor public hiring activity across selected companies, platforms, or countries.

It is a poor fit for guaranteed optional fields, source-exclusive features, automated applications, or a complete historical database.

How can I use Job Search through the API or MCP?

The public Actor ID is 8QfidRKcSVYICkwrq; the name form truefetch/job-search is also accepted. The synchronous HTTP endpoint below runs the same one-result Data Analyst scenario and returns Dataset items in the response.

Run the Actor with HTTP

curl -X POST \
"https://api.apify.com/v2/acts/8QfidRKcSVYICkwrq/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"keyword": "Data Analyst",
"country": "United States",
"platforms": ["Indeed"],
"max_results": 1,
"remote_only": true,
"posted_since": "7 days",
"job_type": "fulltime",
"currency": "USD"
}'

Connect the Actor through MCP

This Streamable HTTP configuration follows the current Apify MCP documentation. Replace the token placeholder with your Apify API token.

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=truefetch/job-search",
"headers": {
"Authorization": "Bearer <APIFY_TOKEN>"
}
}
}
}

After connecting, use the same scenario in natural language: “Find up to one remote Data Analyst job from Indeed in the United States, posted within the last seven days, and return salary, company, and application fields.”

For asynchronous runs, SDK examples, OpenAPI, and generated snippets, use the Job Search API page.

How much does Job Search cost?

Job Search costs $0.00450 per Result on FREE plus $0.01000 per minimum Actor Start event, so the smallest one-result test totals $0.01450.

Apify tierActor StartPer Result
FREE$0.01000$0.00450
BRONZE$0.01000$0.00405
SILVER$0.01000$0.00360
GOLD$0.01000$0.00338
PLATINUM$0.01000$0.00338
DIAMOND$0.01000$0.00338

Result is billed once for each item written to the default Dataset. Actor Start event count depends on selected memory, with a minimum of one event.

Smallest useful test: $0.01000 + 1 × $0.00450 = $0.01450 on FREE when one item is published. A zero-result run can still incur Actor Start. Prices can change; check live pricing before scheduling volume.

How does Job Search compare with alternatives?

Decision factorJob SearchSingle-board ActorSeparate source integrations
Coverage39 platforms and 98 selectable countriesOne platform's supported marketsWhatever the team builds and maintains
OutputOne normalized 41-field schemaSource-focused schemaA team-defined schema and mapping layer
First testOne platform and one result can be testedUsually a narrow source testRequires each integration to be ready
Source depthCommon normalized fields across boardsBetter fit for board-specific requirementsHighest potential customization
OperationsOne Actor, Dataset, API, and MCP surfaceOne Actor per selected sourceSeparate maintenance for each source
Best fitMulti-market, multi-board job dataOne known source is sufficientBespoke control justifies ongoing ownership

Choose Job Search when breadth, repeatability, and a shared dataset matter most. Choose a related single-board TrueFetch Actor when you only need one source. Build separate integrations when source-specific behavior is more important than the time and cost of owning them.

What are the limits and troubleshooting steps?

Symptom or limitExplanationNext step
More results than expectedmax_results applies per platform.Reduce the limit, platform count, or both.
Results feel loosely relatedRelevance follows each source board's search behavior.Use a more specific title, skill, or employer and split mixed intents into separate runs.
A filter appears ineffectivePlatforms differ in location, recency, remote, distance, and job-type support.Test one source at a time and remove unsupported assumptions.
Some fields are emptySources and employers publish different information.Make salary, company, applicant, and contact fields nullable downstream.
The same vacancy appears twiceA job can be published on multiple boards.Deduplicate with URLs plus company, title, and location when needed.
One platform returns nothing or failsMulti-platform runs can provide partial source coverage.Review the run, retry the affected platform separately, and keep successful source-attributed results.
Salary is not convertedNumeric salary and a usable source currency are required.Do not infer missing compensation; compare only populated salary records.

Before reporting a problem, rerun the smallest reproducible input: one specific keyword, one country, one platform, and max_results: 1. Include the run URL and the expected platform when opening an Apify Issue; do not include API tokens or private data.

Frequently asked questions

Can I use job search api without separate job board keys?

Yes. Job Search runs on Apify without asking for a source-site publisher credential; an Apify account and token are still required for authenticated API or MCP calls.

What does “multi source job listings api” mean for this Actor?

Set keyword, country, and max_results, then add only the optional fields present in this Actor's input table. Results are capped by source availability and relevance.

Does Job Search require a source-site login?

No source-site username, password, cookie, or API key appears in the public input. The Actor collects accessible public listings independently of the source.

Why are salary, company, applicant, or contact values empty?

Those values are nullable because public listings do not expose the same detail. Empty means unavailable from the collected source, not zero or false.

Is there a free jobs API?

Apify accounts include platform usage under the current Apify plan, while this Actor bills Actor Start and Result events. Use the one-result calculation in Pricing to evaluate the smallest test.

Can I schedule runs to monitor multi-source job listings over time?

Yes. Test a small input first, then use Apify schedules and webhooks. Preserve processed_at and source URLs because listings can change, close, or reappear.

Billing uses Actor Start events and one Result event per default Dataset item. A requested result limit is a cap, not a prepaid bundle or a guarantee of source inventory.

Job Search has three nearby TrueFetch alternatives, each for a different source decision.

Support

Use the Store page for the run interface, the API page for generated clients, Issues for reproducible bugs, and the TrueFetch community for usage questions.

Run a one-result test · View API

Last Updated: August 10, 2026