Glints Search Scraper
Pricing
from $2.99 / 1,000 glints job records
Glints Search Scraper
Extract complete current Glints jobs, including employer profiles, exact location hierarchy, salary, requirements, benefits, skills, recruiter, and source structured data.
Pricing
from $2.99 / 1,000 glints job records
Rating
0.0
(0)
Developer
Jobs API
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
11 days ago
Last modified
Categories
Share
Glints Public Jobs Search Scraper
This Apify Actor searches the public Glints jobs surface and enriches each selected listing from its public detail page. Records are emitted only after the detail page provides a complete, readable job record.
Source
The search route is https://glints.com/{country}/opportunities/jobs/explore. For each selected result the Actor opens the corresponding public detail URL and reads the page's published __NEXT_DATA__ and structured-data content. The browser run is ordinary direct Chrome with one request at a time, no proxy, no alternate identity, no stealth or fingerprint injection, and no request retries.
If Glints returns an explicit access denial, CAPTCHA/human-verification page, or security challenge, the Actor stops that site check and discards any unpersisted buffered jobs. A generic transport or parsing failure is recorded as DEFERRED; previously completed detail records remain eligible for storage and make the result LIMITED.
Input
{"query": "software engineer","location": "Singapore","maxItems": 3,"maxPages": 1}
The public input contract contains only:
| Field | Type | Default | Description |
|---|---|---|---|
query | string | software engineer | Search keyword or phrase. |
location | enum | Singapore | Singapore, Indonesia, Vietnam, Malaysia, Philippines, or Thailand. |
maxItems | integer | 50 | Number of complete detail-verified records, from 1 to 100. |
maxPages | integer | 2 | Search pagination limit, from 1 to 5. |
Proxy, retry, timeout, user-agent, session, fixture, raw-payload, and debug controls are intentionally not public inputs.
Output
The dataset schema is defined in .actor/dataset_schema.json. Each emitted record contains source-backed fields such as:
- stable Glints ID and canonical/detail/application URLs;
- title, published status, employment type, work arrangement, remote signal, category, and labels;
- company identity, industry, size, website, logo, verification, hiring flags, social links, and public company description;
- location hierarchy, country, coordinates, office address, and place metadata;
- salary ranges, currency, period, experience, education, age/gender requirements, skills, and benefits;
- readable description text, normalized sections, source markup, character/word counts, interview process, attachments, and structured-data types;
- application rules, recruiter information, dates, search position, and direct-response provenance.
The output deliberately excludes raw __NEXT_DATA__ payloads and temporary context fields. Run summaries keep Apify platform status (SUCCEEDED or FAILED) separate from dataset resultStatus (COMPLETE, LIMITED, SKIPPED, DEFERRED, NO_DATA, or FAILED). Dataset counts include only rows whose storage writes succeeded. A later non-block failure after stored rows remains SUCCEEDED / LIMITED; fatal zero-row failures call the Actor failure lifecycle and report FAILED / FAILED.
An HTTP 401, 403, 429, or 451, or a visible source-authored security challenge, stops the crawl, discards buffered rows, and produces SUCCEEDED / SKIPPED. A generic missing response, transport failure, invalid pagination signal, or source listings that do not match the requested keyword is DEFERRED, not treated as proof of a block; already complete records are retained as LIMITED. A detail row is stored only after it passes the required identity, description, direct-source receipt, and provenance checks. Run diagnostics and search receipts are kept in key-value storage; each normal row also carries its matching successful detail receipt. NO_DATA requires the first valid search page to contain an empty source job list and an explicit hasMore: false signal. The summary preserves that evidence; an unrankable/nonempty list or a missing pagination flag remains DEFERRED.
Local validation
From this actor directory:
npm testnpm run validate:datasetnpx apify validate-schema
validate-datasets.js checks strict identity/provenance, readable descriptions, unique IDs and URLs, the more-than-20 meaningful-field threshold, forbidden temporary/debug fields, and reconciliation between the generated dataset and run summaries.
Responsible use
Use only the publicly available pages and respect Glints' terms, robots guidance, rate limits, and applicable law. The Actor does not attempt to bypass access controls.