KitaLulus Jobs Scraper Indonesia
Pricing
from $4.00 / 1,000 kitalulus job results
KitaLulus Jobs Scraper Indonesia
Unofficial KitaLulus jobs scraper for salary, education, location, recruiter requirements, skills, benefits, and recurring hiring intelligence across Indonesia.
Pricing
from $4.00 / 1,000 kitalulus job results
Rating
0.0
(0)
Developer
ProdukDigitalAli
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
17 days ago
Last modified
Categories
Share
Unofficial and independent. This Actor is not affiliated with, endorsed by, sponsored by, or operated by KitaLulus.
What is KitaLulus Jobs Scraper Indonesia?
KitaLulus Jobs Scraper Indonesia is an Apify Actor for extracting public KitaLulus job listings into structured, analysis-ready data.
Use it for:
- job aggregation and recruitment data pipelines,
- salary and regional labour-market research,
- mass-recruitment and hiring-signal analysis,
- company and recruiter intelligence,
- recurring job monitoring,
- dashboards, APIs, automations, and AI workflows.
Start with the default KitaLulus jobs URL for a broad run, or provide supported listing, company, location, or direct job-detail URLs.
Each result represents one public vacancy and can be exported from Apify as JSON, CSV, or Excel, or consumed through the Apify API.
Why use this Actor?
- Extract public KitaLulus jobs without manually copying listings.
- Capture salary ranges and negotiable salary signals.
- Collect company, location, education, employment type, and work mode.
- Extract recruiter requirements, skills, benefits, schedules, and company information.
- Track repeat runs as
NEW,UPDATED,UNCHANGED, and verifiedEXPIRED. - Use stable job IDs and meaningful fingerprints for incremental monitoring.
- Feed structured job data into scheduled workflows, dashboards, databases, and AI applications.
What data can you extract?
| Field | Meaning |
|---|---|
jobId | Stable Actor-generated job identifier |
jobSlug | Public KitaLulus job slug |
title | Job title |
companyName | Employer name |
companyUrl | Public KitaLulus company profile when available |
jobUrl | Canonical public KitaLulus job URL |
sourceListUrl | Listing/company/location URL where the job was discovered |
location | City/regency and province text |
minimumEducation | Public minimum education requirement |
employmentType | Full-Time, Contract, Freelance, Internship, etc. |
workMode | On-site, Hybrid, Remote, or Fieldwork when public |
salaryMin, salaryMax | Normalized public salary range |
salaryCurrency | Salary currency, normally IDR for Rp listings |
salaryNegotiable | Whether salary is shown as negotiable |
promoted | Whether the listing is publicly marked Dipromosikan |
updatedText | Public last-updated text |
status | Normalized vacancy status when determinable |
description | Public job description |
recruiterRequirements | Public recruiter requirements |
skills | Public required skills |
benefits | Public benefits |
workDays, workHours | Public working schedule when available |
industry | Public company industry |
companyDescription | Public company description from the job page or public company profile |
changeType | Monitoring state: NEW, UPDATED, UNCHANGED, or EXPIRED |
observedAt | UTC observation timestamp |
scrapedAt | UTC scrape timestamp |
fingerprint | Hash of meaningful normalized fields used for change detection |
rawCardText | Normalized listing-card text retained for diagnostics |
Fields can be null or empty when the public source does not provide that value for a vacancy.
How to scrape KitaLulus jobs
- Keep the default
https://www.kitalulus.com/lowonganURL or provide another supported public KitaLulus URL. - Set Maximum jobs to the number of unique vacancies you want.
- Keep Fetch full job details enabled for the richest dataset.
- Keep browser fallback enabled when you need additional load-more discovery.
- Run the Actor.
- Open the default dataset or export the results as JSON, CSV, or Excel.
Quick-start input
{"startUrls": [{"url": "https://www.kitalulus.com/lowongan"}],"maxItems": 30,"fetchDetails": true,"useBrowserForMore": true,"maxLoadMoreClicks": 20,"concurrency": 8,"monitorMode": false,"emitChangesOnly": false,"detectExpired": false,"maxExpiredChecks": 50,"monitorKey": "default","proxyConfiguration": {"useApifyProxy": false},"requestTimeoutSeconds": 30,"maxRetries": 3}
Monitoring and incremental job tracking
Enable monitorMode to compare repeat runs using stable job IDs and meaningful fingerprints.
NEW— first observation in the selected monitoring scope.UPDATED— a meaningful job field changed.UNCHANGED— the meaningful fingerprint is unchanged.EXPIRED— a previously seen vacancy disappeared and its detail URL was independently verified as closed or unavailable.
Relative labels such as Terakhir diperbarui hari ini are retained in the output but excluded from the meaningful fingerprint, so the passage of time alone does not create false UPDATED events.
With emitChangesOnly: true, UNCHANGED jobs are not written to the dataset. A successful monitoring run can therefore return zero dataset items. Check RUN_SUMMARY for comparison counts and monitoring diagnostics.
A job disappearing from the current listing does not automatically become EXPIRED. The Actor verifies expiry candidates and uses repeated confirmation to reduce false-closure and false-expiry signals caused by transient public-site responses.
Output example
{"jobId": "stable-id","title": "Backend Engineer - Short-term Contract (KLI-75)","companyName": "KitaLulus","location": "Jakarta Selatan, DKI Jakarta","minimumEducation": "Minimal S1","employmentType": "Full-Time","workMode": "On-site","salaryMin": 15000000,"salaryMax": 20000000,"salaryCurrency": "IDR","salaryNegotiable": false,"status": "Open","skills": ["Java","PostgreSQL"],"changeType": null,"jobUrl": "https://www.kitalulus.com/lowongan/detail/...","scrapedAt": "2026-08-19T07:03:57Z"}
Pricing
This Actor uses transparent pay-per-result pricing.
- Job result:
$0.004per result - Equivalent:
$4.00 per 1,000 results - Actor start:
$0.00005per run - Platform usage: included in the Actor price
Examples, excluding only the tiny Actor-start charge:
| Results | Result charge |
|---|---|
| 100 | $0.40 |
| 500 | $2.00 |
| 1,000 | $4.00 |
You are charged for results written to the default dataset. With monitoring and emitChangesOnly: true, unchanged jobs are not emitted, so repeat monitoring runs can produce few or even zero charged result items.
Reliability and scale
The Actor has been validated with representative cloud runs at 100, 500, and larger-volume job counts, followed by a final 200-job production validation.
The scraper includes:
- HTTP retries for temporary network failures,
- browser-assisted load-more discovery,
- retry handling for transient load-more failures,
- stable deduplication by canonical job URL,
- repeated confirmation before accepting a closed-job response,
- safe expiry verification that does not convert inconclusive network failures into
EXPIRED.
Actual runtime and maximum reachable result count depend on current KitaLulus inventory and public-site responsiveness.
API, schedules, and automation
The Actor can be called through the Apify API or run on a schedule.
Typical recurring workflows include:
- regional hiring dashboards,
- job aggregation,
- salary-market tracking,
- mass-recruitment monitoring,
- company hiring-signal research,
- recruitment intelligence,
- data feeds for analytics and AI applications.
For incremental monitoring, keep the same monitorKey and comparable start URLs across repeat runs.
Limitations
- Only public KitaLulus pages are supported.
- Available fields depend on what KitaLulus publishes for each vacancy.
- Public website markup, pagination, and response behavior can change.
- Relative update labels are preserved as source text rather than converted into invented timestamps.
- Large result targets can require browser-assisted load-more discovery and therefore take longer.
- A requested
maxItemsvalue is a ceiling, not a guarantee that the public site currently exposes that many reachable jobs.
Responsible use and support
Use this Actor responsibly and only for publicly available information. Users are responsible for ensuring that their collection and use of data complies with applicable laws, contractual obligations, and platform requirements.
This Actor is unofficial and independent. It is not affiliated with, endorsed by, sponsored by, or operated by KitaLulus.
If extraction quality degrades because the public site changes, open an Actor issue and include the run ID, input, affected public job URL, and a short description of the unexpected output.