TalentLyft Jobs Monitor & Scraper avatar

TalentLyft Jobs Monitor & Scraper

Pricing

from $2.25 / 1,000 saved job or changes

Go to Apify Store
TalentLyft Jobs Monitor & Scraper

TalentLyft Jobs Monitor & Scraper

Collect public TalentLyft jobs from known company boards. Get job text, dates and links. Compare full public sitemap snapshots to find new, updated and closed roles.

Pricing

from $2.25 / 1,000 saved job or changes

Rating

0.0

(0)

Developer

Cliqto Media

Cliqto Media

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

15 hours ago

Last modified

Categories

Share

Collect job listings from known TalentLyft companies. Get titles, job descriptions, dates and links. Compare full public sitemap snapshots to find new, edited and closed roles.

Read jobs, save a snapshot, compare changes

One run reads up to 3 company boards. Tested live: 11 jobs from 3 boards. The technical cap is 50 scanned jobs. Larger live boards have not been proven. The price is $0.04 per start plus $0.00225 per saved Dataset row. Empty and unchanged runs still have the start fee.

Contents

What it does · Data · Quick start · Inputs · Examples · Output · Fields · Price · Monitoring · API · Limits · Help · FAQ · Support

What it does

  1. Read each company's public sitemap.xml.
  2. Open all public /jobs/ pages in that list.
  3. Save job data and a full SNAPSHOT in the Key-value store.
  4. If you provide a previous full snapshot, compare jobs by board and jobId.

A full snapshot covers all job URLs in that public sitemap. A job that the company leaves out of its sitemap cannot be found. Source pages may change during the scan.

What data you get

Dataset: one job per row, or one new, updated or closed job per row in changes mode. Each row has public job text, source dates, a link and a stable content hash. Missing source metadata is null. We do not guess salary or remote work.

Key-value store: SNAPSHOT for the next comparison, CHANGES for all differences, and RUN_SUMMARY plus OUTPUT for counts and source status. KVS copies are included in the start fee. Only Dataset rows count as row events.

Quick start

  1. Open Input and add decathlon-philippines-inc to boards.
  2. Keep mode as snapshot and maxResults as 50.
  3. Set run memory to 256 MB and timeout to 120 seconds. Set a charge cap of $0.20.
  4. Click Start. Open Dataset and check a job's title, descriptionText and url.
  5. Open RUN_SUMMARY. Check status and snapshotComplete before reusing SNAPSHOT.

This input returned 8 jobs in our live check on 4 October 2026. The company's current list can change.

All inputs

KeyTypeDefault / requiredRangeEffect and advice
boardsarray of stringsRequired; prefill is decathlon-philippines-inc1–3 entries; each 1–63 lowercase letters, digits or hyphensKnown subdomains only. Do not add .talentlyft.com or URLs. Duplicates are merged.
modestringsnapshotsnapshot, changesUse snapshot first. Changes needs a previous full snapshot.
maxResultsinteger501–50Cap Dataset rows after the full scan. Does not reduce requests or the snapshot. Use 1 to inspect one row.
keywordsarray of strings[]Up to 10 strings, 1–100 characters eachCase-insensitive title filter. A title needs any one word. Applied after the full scan, including closed rows. Use an empty list for all titles.
previousSnapshotobjectOmittedComplete version 1 TalentLyft snapshot; same boards; ≤50 jobs; ≤6 MiBPaste the entire saved SNAPSHOT object. Required for changes. Invalid, edited or partial snapshots are rejected.

Extra input keys are rejected. A filter and an output cap do not reduce full scan work. They do not remove jobs from the saved snapshot.

Input examples

Read one company

{"boards":["decathlon-philippines-inc"],"mode":"snapshot","maxResults":50,"keywords":[]}

Read more boards

{"boards":["decathlon-philippines-inc","colliers-international","careers"],"mode":"snapshot","maxResults":50}

Filter titles

{"boards":["decathlon-philippines-inc"],"keywords":["Manager"],"maxResults":10}

Compare two full scans

Run snapshot mode first. Copy the whole SNAPSHOT object from its Key-value store. In the next input use the same boards, set mode to changes, and paste that object as previousSnapshot. Do not paste just the jobs array or use a filtered Dataset as the previous snapshot.

Output example

This is one trimmed row from the one-company snapshot input. Description text is shortened here; real rows hold the full available job description within the safety cap. Hash and timestamp come from the original full content.

{
"board": "decathlon-philippines-inc",
"jobId": "v71",
"title": "Department Manager",
"company": "Decathlon Philippines Inc.",
"location": "Metro Manila, Cebu, Iloilo, Clark, Philippines",
"country": "PH",
"employmentType": "FULL_TIME",
"datePosted": "2026-06-25",
"url": "https://decathlon-philippines-inc.talentlyft.com/jobs/department-manager-v71",
"applyUrl": "https://decathlon-philippines-inc.talentlyft.com/jobs/department-manager-v71",
"descriptionHtml": "<p>We are looking for <strong>Future Store Managers</strong>!</p>",
"descriptionText": "We are looking for Future Store Managers!",
"contentHash": "be6c978faf457eac95e888085abd201537f1f90e3718314aa307369b63b00544",
"changeType": null,
"scrapedAt": "2026-10-04T16:25:11.953Z"
}

All output fields

FieldTypeCan be null?ExampleMeaning
boardstringNodecathlon-philippines-incKnown company subdomain.
jobIdstringNov71Source URL suffix. Use board + jobId as the stable key.
titlestringNoDepartment ManagerPublic job title.
companystringYesDecathlon Philippines Inc.Source employer name.
locationstringYesMetro Manila, Cebu, Iloilo, Clark, PhilippinesFirst source job location text.
countrystringYesPHFirst source location country.
employmentTypestringYesFULL_TIMESource employment type.
datePostedstringYes2026-06-25Source posting date. Old dates stay old.
urlstringNohttps://decathlon-philippines-inc.talentlyft.com/jobs/department-manager-v71Public job page.
applyUrlstringNohttps://decathlon-philippines-inc.talentlyft.com/jobs/department-manager-v71Same job page, which has the application form.
descriptionHtmlstringNo<p>Role text...</p>Decoded source description. Executable tags and attributes are removed.
descriptionTextstringNoRole text...Description as plain text with normalized spaces.
contentHashstringNo64 hex charactersSHA-256 of stable source content; fetch time is excluded.
changeTypestringYesupdatednew, updated or closed in changes mode; null in snapshot mode.
scrapedAtstringNo2026-10-04T16:25:11.953ZUTC fetch time in ISO format.

Reports and snapshot fields

RecordFieldsMeaning
OUTPUT, RUN_SUMMARYschemaVersion integer; status string; complete, snapshotComplete booleansOverall output status and full scan state.
Same reportscounts object: scanned, selected, delivered, new, updated, closed integersScanned current jobs; selected before output cap; saved Dataset rows; total differences before filters.
Same reportsboards array: board, status, sourceCount, scanned, errorPer-board result. Source count and error may be null.
Same reportserrors array of strings; datasetId string or null; snapshotKey, changesKey, sourceCommit, createdAt stringsDiagnostics, output location and scan time.
Same reportslimits object; metrics object: requests, retries, bytes, durationMs integersSafety caps and measured HTTP work, including retries.
SNAPSHOTschemaVersion integer; source string; complete boolean; boards array; jobs array; createdAt stringUnfiltered scan. Source is talentlyft-public-sitemap. Reuse only when complete is true.
CHANGEScomplete boolean; counts object with new, updated, closed; rows arrayAll computed differences before title filter and Dataset cap. These rows use the same job fields.

The Dataset is capped separately. snapshotComplete: true with status: partial can mean the full scan was saved but Dataset output reached a cap. CHANGES can have more rows than Dataset. No extra row fee applies to it.

Price and examples

You pay $0.04 per Actor start + $0.00225 per saved Dataset row. A closed job in changes mode is also one row. The start fee pays for the full scan attempt, including valid empty results, filters with no match, source errors and unchanged monitoring runs. Do not start with a cap below the start fee. With 256 MB, there is one start event.

ScenarioSaved rowsEvent charge
Empty board, filter with no match or unchanged scan0$0.04000
Inspect one saved row1$0.04225
One Decathlon board in our live check8$0.05800
Ten saved rows10$0.06250
Tested three-board scan11$0.06475

100 or 1,000 rows in one run are outside the cap and have not been tested. We do not quote those batch sizes. For paid users, platform usage is included in PPE and paid by the developer. Free-plan runs follow Apify's platform rules. Private owner runs measure platform usage; they do not prove a paying customer's charge.

A partial run charges the start plus the Dataset rows saved before the stop. A failed or cancelled run may still have the start fee and saved rows. Unsaved rows are not billed. Storage writes and charging are not one transaction; do not resurrect a run to get an exactly-once guarantee. Check saved rows and the charge log first.

Use cases

TaskUse these fieldsNext action
Fill a small job boardtitle, company, location, descriptionText, urlExport Dataset to your job system.
Watch a target companyboard, jobId, changeType, contentHashCompare full snapshots and send relevant changes to your own workflow.
Review hiring signalsemploymentType, datePosted, countryGroup roles in Sheets or a database. Null means the source did not give a value.

Schedule and monitoring

Repeat snapshot scans on the same boards. To compare runs, your workflow must pass the last complete SNAPSHOT as previousSnapshot and use changes mode. A saved Task with a fixed old snapshot always compares against that old scan; it does not update itself. A schedule alone does not pass the last snapshot automatically. Store the last complete snapshot in your workflow and update it after a successful scan. Unchanged monitoring has 0 Dataset rows and the $0.04 start fee.

A source failure prevents closed-job output. Retry with the last complete snapshot after the source is available. Do not replace a trusted snapshot with one whose complete flag is false.

API and export

Call this Actor with the same JSON input through the Apify API. Use POST /v2/acts/cliqtomedia~talentlyft-jobs-monitor-scraper/runs?build=latest&memory=256&timeout=120&maxTotalChargeUsd=0.20. Authenticate with your existing Apify token. Keep it out of shared inputs and logs.

Open the run's Dataset to export JSON, CSV or Excel. Read SNAPSHOT from that run's Key-value store for the next comparison. SDK and no-code clients use the same inputs and output records. An MCP client can pass that JSON through the Apify MCP server. You choose and configure integrations; this Actor does not create them.

Limits and partial results

  • Only known *.talentlyft.com company subdomains. No company discovery, custom domains, protected customer API or candidate data.
  • One public sitemap file per board. Sitemap indexes, missing/blocked maps, redirects and unexpected formats are errors. Jobs absent from the map are outside this snapshot.
  • Technical limits: 3 boards, 50 scanned jobs, 50 Dataset rows, 65 HTTP attempts, 2 MiB per response, 16 MiB combined response bytes, 100 kB sanitized description, 90-second source deadline, 256 MB; recommended run timeout 120 seconds. The 300-second Store test and larger finite positive timeouts are supported without extending the 90-second source deadline.
  • Live capacity proved: 11 jobs across 3 boards. A 50-job fixture checks the code cap; it is not a live-source capacity promise.
  • Only the first location is returned. Missing fields stay null. A generic open-application posting is kept if the company publishes it as a job.
  • complete: scan and selected output saved. partial: some data exists but a source, output or charge limit stopped completion. not_found: all board sitemaps returned 404. error: invalid input or all sources failed.
  • A run can have Apify status SUCCEEDED with summary partial or not_found. Always check RUN_SUMMARY. A forced platform kill or storage failure may prevent final reports.

Troubleshooting

No Dataset rows

Check RUN_SUMMARY.status. Complete with scanned 0 means the public sitemap has no job URLs. Complete with scanned greater than 0 may mean no title matched or no job changed. Error or not_found is a source/input problem, not an empty company list.

Partial result

Check errors and each board status. OUTPUT_LIMIT means increase maxResults within 50. CHARGE_LIMIT means the charge cap stopped saved rows. SCAN_LIMIT means split the company list; a single board above 50 jobs is not supported. Never use an incomplete snapshot as the next baseline.

Invalid previous snapshot

Copy the whole complete SNAPSHOT from a prior run, keep its fields intact and use exactly the same set of boards. Do not use CHANGES or Dataset rows.

Source error or timeout

Open the public board in your browser. Check the slug, then retry a small input later. Redirects, inaccessible pages and changed formats need a new valid source or a parser fix; they are not reported as successful zero jobs.

FAQ

Do I need a TalentLyft API key?

No. This Actor reads public sitemap and job pages. It does not read customer API endpoints or applicant records.

Can it find every TalentLyft company?

No. Add company subdomains you already know.

Does the output cap make the snapshot smaller?

No. The scan happens first. Title filters and maxResults affect Dataset only. Check snapshotComplete to know whether the scan was full.

Why is an old job still present?

The source sitemap still lists it. Source dates and old public jobs are preserved. Check the original job link before making a business decision.

Are descriptions safe to display as HTML?

Executable tags and attributes are removed. Use your application's own HTML sanitizer when displaying any external text.

Support

Use the Issues tab on this Actor's Apify page. Send the run ID, the board slug and the error code from RUN_SUMMARY. Do not send tokens, private applicant data or account credentials.