# Changelog of Indeed Jobs Scraper (`chronometrica/indeed-jobs-scraper`) Actor

- **URL**: https://apify.com/chronometrica/indeed-jobs-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/chronometrica/indeed-jobs-scraper.md

## Changelog

### 2026-06-24 - Public Surface Alignment

#### Changed

- Aligned the public example input, Store metadata, and schema presentation with
  the current README and first-run defaults.
- Documented optional apply-link resolution status fields in the dataset schema.
- Kept Actor metadata focused on buyer-facing fields.

### 2026-06-22 - Input Form Clarity Pass

#### Changed

- Reorganized the top input form section around Country, Keywords, optional
  Location, and the shared saved-job cap.
- Clarified that Location narrows the keyword search inside the selected
  country.
- Rewrote form help text in simpler language and moved keyword-balancing into
  quality controls.
- Moved employer and salary filters into the Filters section.
- Kept page depth with Filters, moved enrichment toggles into Quality controls,
  and renamed the remaining advanced request pacing section to Run tuning.
- Removed hidden runtime keyword and location fallbacks so API behavior matches
  the blank form state.

### 2026-06-22 - Country Coverage Expansion

#### Added

- Expanded the supported Indeed country options in the input form.
- Added currency detection support for the expanded country set.

### 2026-06-22 - Input Form Example Update

#### Changed

- Updated the keyword example values shown in the input form.
- Made the keyword field required in the input schema while keeping location
  blank and optional for country-wide searches.

### 2026-06-22 - Duplicate-Free Jobs Positioning Pass

#### Changed

- Updated Store SEO metadata, README positioning, pricing copy, FAQ, and input
  form microcopy to make unique saved job listings and duplicate-skip accounting
  clearer.
- Kept the public Actor title, slug, input keys, output schema, dataset schema,
  pricing, and runtime behavior unchanged.

### 2026-06-22 - Store Ranking And Quality Score Pass

#### Changed

- Added SEO title, SEO description, and a second Store category for clearer
  Indeed salary, description, benefits, skills, and job-listing search intent.
- Reduced default run size and search depth so first runs and automated Store
  health checks complete faster while larger production runs remain supported.
- Expanded the README with long-tail use-case sections, API positioning, FAQ
  entries, and related job-scraper links.

### 2026-06-21 - Actor Slug Keyword Match

#### Changed

- Renamed the public Actor technical slug from
  `chronometrica/indeed-scraper` to `chronometrica/indeed-jobs-scraper` to
  match the primary Store search keyword.
- Kept the existing Actor ID, title, pricing, README, schemas, and build
  continuity while changing the URL slug.
- Published this changelog through the Actor definition so it appears in the
  Apify Actor information surface.

#### Verified

- Deployed build `1.1.3` under the new slug and confirmed a one-item smoke run
  saved an Indeed job.
- Deployed a follow-up metadata-only build with the official changelog included
  in the active Actor source.
- Confirmed the old `chronometrica/indeed-scraper` slug no longer resolves.

### 2026-06-21 - Store README Template Pass

#### Changed

- Reworked the public README into Apify's approved Store-style Q\&A structure,
  starting with what the Actor does, what data it extracts, why to scrape
  Indeed, how to use it, pricing guidance, input, output, tips, legal notes,
  and support.
- Made the README more faithful to approved Apify examples by adding
  template-style phrasing, emoji data tables, an API section, pricing examples,
  and arrow-labeled input/output sections.
- Updated the Actor card description under the title to match the new Store
  positioning.
- Removed the duplicate README H1 so Apify can use the Actor title as the page
  H1.

### 2026-06-20 - Dataset Presentation Schema

#### Added

- Added a curated default dataset schema so saved job listings open in a cleaner
  table view with buyer-facing columns, labels, and link formatting.

### 2026-06-20 - Trust And Filter Pass

#### Added

- Added run-summary trust fields for requested max items, candidate rows seen,
  company/date/salary exclusions, stop reason, resolved country, and source site.
- Added dataset fields for description HTML/status, salary source, live-search
  verification status, resolved country, and source site.
- Added company exclusion, pay-period, and minimum-salary filters.
- Added conservative salary extraction from description text when structured
  salary data is missing.

#### Changed

- Reworked the public Actor title, description, and README around full
  description fields, source provenance, and auditable run summaries.
- Simplified the public Actor title to `Indeed Scraper` while keeping
  job-specific proof in the description and README.
- Applied new filters immediately after each discovery page is parsed, before
  duplicate handling, apply-link resolution, and dataset writes.
- Enforced posted-within filtering after discovery when the source cannot
  combine freshness with remote-only or job-type filters.
- Added a reason-aware `statusMessage` to run summaries and no-result logs.
- Clarified public form help text around saved result caps, skipped rows, strict
  salary filters, and search depth.
- Documented `OUTPUT.input` as the normalized run-input provenance record.
- Updated the README example to use the schema-valid posted-within value.

#### Fixed

- Fixed minimum-salary filtering for rows that only have `salaryMin`.

### 2026-06-20 - Advanced Controls

#### Added

- Added form toggles for balanced keyword coverage, unique saved rows, final
  apply URL resolution, and company profile fields.
- Added optional final apply URL output fields when apply-link resolution is
  enabled.
- Added optional company profile output fields when company details are enabled.

#### Changed

- Kept unique saved rows on by default while allowing duplicate appearances for
  keyword overlap and ranking research.
- Kept existing `searchDistribution` JSON/API inputs compatible while replacing
  the public dropdown with a simpler keyword-coverage toggle.
- Raised the default max pages per search to 5 so the 500-row default can be
  reached for a single keyword/location search.
- Polished public form labels and descriptions around keyword input, result
  volume, uniqueness, search depth, apply URLs, and company profile fields.

### 2026-06-20 - Output Surface Hardening

#### Changed

- Removed the declared dataset schema from the public Actor definition.
- Kept saved dataset rows and run summaries focused on buyer-facing fields.
- Replaced the exhaustive README field list with a category-level output
  description and representative example.

### 2026-06-20 - Public Store Copy Cleanup

#### Changed

- Replaced the Actor README with user-facing Store copy focused on search
  inputs, use cases, output fields, and example data.
- Updated the Actor card description for clearer search and buyer intent.
- Kept public Actor documentation focused on buyer-facing workflows.

### 2026-06-20 - Public Form Simplification

#### Changed

- Simplified the visible input form around job keyword, country, location,
  result limit, and common job filters.
- Moved infrastructure-oriented controls out of the public form.
- Reordered the Search section so Country appears before Location.

### 2026-06-20 - Input And Output Improvements

#### Changed

- Added structured output fields for job, company, location, salary, benefits,
  skills, apply URL, job URL, and scrape metadata.
- Improved support for common JSON/API parameter aliases used by job scraping
  workflows.
- Hardened input normalization for string booleans, case-insensitive sorting,
  hyphenated job types, and invalid values.

#### Fixed

- Improved remote-job normalization by trusting source remote indicators before
  applying text heuristics.

### 2026-06-20 - Indeed Jobs Scraper MVP

#### Added

- Added keyword, country, location, date posted, radius, sort, job type, remote,
  result limit, and pagination controls.
- Added normalized dataset output suitable for analytics, recruiting workflows,
  job boards, and automation.
- Added input, output, and dataset schemas for the Apify Console and API.
