Indeed Job Listing avatar

Indeed Job Listing

Pricing

from $3.38 / 1,000 results

Go to Apify Store
Indeed Job Listing

Indeed Job Listing

Scrape Indeed job listings by keyword, country, location, remote, distance, job type, and recency with structured job, salary, company, and contact fields.

Pricing

from $3.38 / 1,000 results

Rating

5.0

(3)

Developer

TrueFetch

TrueFetch

Maintained by Community

Actor stats

12

Bookmarked

348

Total users

14

Monthly active users

10 days ago

Last modified

Share

Affiliate disclosure: TrueFetch may earn a commission if you sign up through an Apify link on this page, at no extra cost to you.

Search public Indeed job listings across 61 countries and receive a normalized 41-field dataset for recruiting research, salary analysis, and job-data workflows.

  • 61 Indeed markets selectable in the current local input schema.
  • 41 normalized fields covering jobs, compensation, companies, applications, and public contact signals.
  • 9 public inputs, with only 3 required, so location and filters stay optional.
  • Public Store snapshot: 342 users and a 5.0 rating on July 21, 2026; deployed Store content may reflect an earlier release.

Run a one-result test · View API

With max_results: 1, one FREE-tier result costs $0.01375: $0.01000 for Actor Start plus $0.00375 for one published result.

What does Indeed Job Listing do?

Indeed Job Listing is a TrueFetch Actor and Indeed jobs API for collecting public vacancy data from one selected country at a time. Give it a keyword, country, and result limit; optionally add a location, distance, work-mode or job-type filter, posting-time filter, or salary currency. Each accepted listing is delivered through one stable Dataset structure.

The Actor is useful when a team needs source-attributed job data without maintaining a separate integration for every Indeed market. A result can include the listing URL, employer application URL, role description, location, work mode, dates, salary, company profile details, and public contact signals when Indeed or the employer publishes them.

Indeed Job Listing is independent of Indeed and is not an official Indeed API. It does not submit applications, collect resumes, rank candidates, access private accounts, or guarantee that every optional field is available. Search relevance and listing availability remain source-dependent.

How do I run Indeed Job Listing?

  1. Open Indeed Job Listing on Apify.
  2. Enter the required keyword, country, and max_results values.
  3. Add only the optional filters that match the search you actually want.
  4. Start with one result, inspect the Dataset item, and then increase volume.

This README uses one scenario throughout: search for one remote, full-time Data Engineer role in Germany, centered on Berlin, and convert usable salary values to EUR.

{
"keyword": "Data Engineer",
"country": "Germany",
"max_results": 1,
"remote_only": true,
"job_type": "fulltime",
"location": "Berlin",
"distance": 50,
"currency": "EUR"
}

max_results is the maximum number of Indeed jobs published by this single-platform run. It is not a promise that the source will have that many relevant, accessible listings.

What data does Indeed Job Listing return?

The default Dataset exposes 41 fields. Values that Indeed or an employer does not publish remain empty rather than being inferred.

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_from_home
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 uses the same Berlin Data Engineer scenario:

{
"platform": "Indeed",
"platform_url": "https://de.indeed.com/viewjob?jk=example123",
"official_url": "https://careers.example.com/jobs/data-engineer",
"title": "Data Engineer",
"company_name": "Example Data GmbH",
"location": {
"raw": "Berlin, Germany",
"locality": "Berlin",
"region": "Berlin",
"country": "Germany",
"country_code": "DE"
},
"is_remote": true,
"job_type": "fulltime",
"salary_minimum": 70000,
"salary_maximum": 90000,
"salary_currency": "EUR",
"emails": [],
"phones": [],
"processor": "https://apify.com/truefetch/indeed-job-listing",
"processed_at": "2026-07-21T12:00:00.000Z"
}

See the live Output schema for field types and examples.

What inputs can I configure?

Indeed Job Listing has 9 public inputs in the current local schema. Only the first three are required.

InputRequiredWhat it controls
keywordYesJob title, skill, employer, or search phrase.
countryYesOne of the 61 supported Indeed markets.
max_resultsYesMaximum published jobs, from 1 to 10,000.
remote_onlyNoRemote-friendly results when the recency filter is not taking precedence.
distanceNoRadius from 50 to 10,000 miles around a supplied location.
locationNoCity, region, postcode, or other local search text; omit it for a country-wide search.
posted_sinceNoAbsolute or relative posting time; when supplied, this recency filter takes precedence over remote and job-type filters.
job_typeNoall, fulltime, parttime, internship, or contract.
currencyNoTarget currency for numeric salary conversion when usable source salary data exists.

Optional inputs have no documented prefill or example in the schema. Omit a filter instead of assuming a visible default. Use the Input schema for the accepted values.

What platforms and markets does Indeed Job Listing cover?

The Actor is intentionally single-platform: every search targets Indeed. The current schema supports 61 countries:

Argentina, Australia, Austria, Bahrain, Belgium, Brazil, Canada, Chile, China, Colombia, Costa Rica, Denmark, Ecuador, Egypt, Finland, France, Germany, Greece, Hong Kong, Hungary, India, Indonesia, Ireland, Israel, Italy, Japan, Kuwait, Luxembourg, Malaysia, Mexico, Morocco, Netherlands, New Zealand, Nigeria, Norway, Oman, Pakistan, Panama, Peru, Philippines, Poland, Portugal, Qatar, Romania, Saudi Arabia, Singapore, South Africa, South Korea, Spain, Sweden, Switzerland, Taiwan, Thailand, Turkey, Ukraine, United Arab Emirates, United Kingdom, United States, Uruguay, Venezuela, and Vietnam.

Choose the exact country label from the schema. A country-wide search is possible because location is optional. When location is provided, the Actor validates and normalizes it before requesting local results; unsupported or mismatched locations can be rejected rather than silently redirected.

Why use Indeed Job Listing?

CapabilityPractical benefit
One Indeed-focused requestKeep the workflow narrow when a multi-board search is unnecessary.
One normalized 41-field schemaLoad repeat runs into analytics, databases, alerts, or AI tools without remapping columns.
Source and official URLsReview the Indeed listing and employer destination separately when both exist.
Optional country-wide or local searchCompare a national market or focus on a city and radius without inventing a location.
Salary conversionNormalize populated numeric salaries into a chosen currency when exchange-rate data is available.
Low-volume first testVerify relevance and field coverage before increasing result volume.

The main trade-off is source depth versus breadth: this Actor focuses on Indeed and preserves its source behavior. Choose a multi-platform Actor if coverage across several job boards matters more than a single-source workflow.

Who is Indeed Job Listing for?

TeamTypical use
DevelopersAdd Indeed vacancy search to a product, internal tool, or alerting workflow.
Data engineersCollect repeatable, source-attributed records for a warehouse or pipeline.
Labor-market researchersCompare role demand, work mode, and populated salary ranges across countries.
Recruiting operationsMonitor current openings by title, employer, and location.
Sales intelligence teamsTreat public hiring activity as one optional company signal.

The Actor is a poor fit for candidate sourcing, resume extraction, automated applications, guaranteed salary coverage, or historical vacancy archives. Those goals require different data and user permissions.

How can I use Indeed Job Listing through the API or MCP?

The stable Actor ID is truefetch/indeed-job-listing. This synchronous HTTP request runs the one-result Berlin scenario and returns Dataset items directly:

curl -X POST \
"https://api.apify.com/v2/acts/truefetch~indeed-job-listing/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"keyword": "Data Engineer",
"country": "Germany",
"max_results": 1,
"remote_only": true,
"job_type": "fulltime",
"location": "Berlin",
"distance": 50,
"currency": "EUR"
}'

For MCP clients, this Streamable HTTP configuration follows the current Apify MCP documentation:

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

After connecting, ask for the same Berlin Data Engineer search. Use the API page for asynchronous runs, SDK snippets, and OpenAPI details.

How much does Indeed Job Listing cost?

The Actor uses pay-per-event pricing: one Actor Start event per run and one result event for each normalized job written to the default Dataset.

Apify tierActor StartPer resultPer 1,000 results
FREE$0.01000$0.00375$3.75
BRONZE$0.01000$0.00363$3.63
SILVER$0.01000$0.00350$3.50
GOLD / PLATINUM / DIAMOND$0.01000$0.00338$3.38

One FREE-tier run that publishes one result costs $0.01375. A run with no result still incurs Actor Start. Check the live Pricing tab before a large or scheduled run because Store prices can change.

How does Indeed Job Listing compare with alternatives?

Decision factorIndeed Job ListingMulti-board Job SearchManual or custom integration
Source scopeIndeed onlySeveral compatible job boardsTeam-defined
OutputNormalized 41-field job recordSame normalized family across sourcesWhatever the team designs
Best first testOne keyword, country, and resultOne platform among manyRequires the integration to be ready
Source-specific focusStrongBalanced against cross-board consistencyPotentially deepest with ongoing ownership
MaintenanceManaged ActorManaged ActorTeam owns failures, changes, and normalization

Choose Indeed Job Listing when Indeed is the required source and a narrow contract is valuable. Choose Job Search when several boards or market-specific alternatives should be searched through one request.

What are the limits and troubleshooting steps?

Symptom or limitExplanationNext step
Fewer jobs than requestedmax_results is a cap, while availability and relevance come from Indeed.Broaden the keyword, location, or distance and test again.
Remote or job type seems ignoredA supplied posted_since filter takes precedence in the Indeed request.Use recency alone, or omit it and use remote/job type.
Location is rejectedThe location must normalize within the selected country.Use a clear city, region, or postcode that matches the country.
Salary remains emptyMany employers do not publish numeric compensation.Keep salary nullable and do not infer missing values.
Salary is not convertedConversion needs numeric salary, a source currency, and available exchange-rate data.Compare only populated converted records.
Official URL is emptySome listings do not expose a separate employer application destination.Retain platform_url as the source record.
No results are publishedThe source may have no accessible relevant listing for the request.Retry the smallest reproducible input with one broad keyword and max_results: 1.

When opening an Apify Issue, include the run URL, country, keyword, and expected behavior. Never include an API token or private data.

Frequently asked questions

Does Indeed Job Listing require an Indeed account?

No Indeed credentials, cookies, or API key appear in the public inputs. An Apify account is required to run the Actor, and API or authenticated MCP use requires an Apify token.

Is location required?

No. Omit location for a country-wide search, or provide a city, region, or postcode for a local search.

Can I combine posted_since with remote_only and job_type?

The inputs can be supplied together, but the Indeed request applies posted_since first. For an unambiguous search, use recency alone or omit it and use remote/job type.

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

Indeed listings and employer pages expose different details. The Actor keeps unavailable values empty rather than fabricating them.

Does currency change the search results?

No. currency affects conversion of usable salary numbers after collection; it is not a search-ranking or availability filter.

Can the same vacancy appear more than once?

Repeated source records can occur as listings change or are republished. Use source URLs plus title, company, and location for downstream deduplication when necessary.

Can I schedule recurring Indeed searches?

Yes. Apify schedules and webhooks can repeat a saved input. Test the expected result volume and event cost before enabling a frequent schedule.

Support and last updated

Last updated: July 21, 2026. Local schema, metadata, pricing, and read-only runtime evidence were verified separately from the older deployed Store content; public Store statistics are dated snapshots.

Start with one result, confirm Indeed relevance and field coverage for your market, and then scale the run.

Run a one-result test · View API