SEEK Jobs Scraper
Pricing
from $0.28 / 1,000 results
SEEK Jobs Scraper
$0.4/1K jobs | Scrape job listings from SEEK, JobsDB and JobStreet across 8 countries with advanced filters
Pricing
from $0.28 / 1,000 results
Rating
0.0
(0)
Developer
Vali G
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
14 days ago
Last modified
Categories
Features
Share

Scrape job listings from SEEK and the associated regional job boards using keyword, location, salary, work-type, work-arrangement, classification, and date filters. The Actor returns structured job listing data, including employer and advertiser details, listing dates, salary information when available, and the job description content.
Supported countries and job boards
Choose a country with the country input:
| Country code | Market | Job board |
|---|---|---|
au | Australia | SEEK |
nz | New Zealand | SEEK |
hk | Hong Kong | JobsDB |
th | Thailand | JobsDB |
id | Indonesia | JobStreet |
my | Malaysia | JobStreet |
ph | Philippines | JobStreet |
sg | Singapore | JobStreet |
Input
All input fields are optional in the supplied input schema. The defaults are country: "au" and limit: 100.
| Field | Type | Description | Example |
|---|---|---|---|
country | string | Country/market code. One of au, nz, hk, th, id, my, ph, or sg. Defaults to au. | "au" |
keywords | string | Search terms describing a role, industry, or skill. | "Software developer" |
location | string | Suburb, city, or region to search in. | "Sydney" |
salarytype | string | Salary period: annual, monthly, or hourly. | "annual" |
salaryrange | string | Salary range written as minimum-maximum. Use values that match the chosen salary period. | "60000-120000" |
worktype | array of strings | Filter by work type. IDs: 242 = Full time, 243 = Part time, 244 = Contract/Temp, 245 = Casual/Vacation. | ["242", "243"] |
workarrangement | array of strings | Filter by arrangement. IDs: 1 = On-site, 2 = Hybrid, 3 = Remote. | ["2", "3"] |
classification | array of strings | Filter by job classification IDs. Choose available classifications in the Actor input UI. | ["1200", "6281"] |
subclassification | array of strings | Filter by subclassification IDs. Supply the relevant IDs as strings. | ["6140", "1303"] |
daterange | string | Listing age: "" = Any time, "1" = Today, "3" = Last 3 days, "7" = Last 7 days, "14" = Last 14 days, "31" = Last 30 days. | "7" |
sortmode | string | Sort by KeywordRelevance (relevance) or ListedDate (date). | "ListedDate" |
limit | integer | Maximum number of results to return, from 1 to 500. Defaults to 100. | 100 |
Available classifications
The supplied schema exposes these classification labels: Accounting; Administration & Office Support; Advertising, Arts & Media; Banking & Financial Services; Call Centre & Customer Service; CEO & General Management; Community Services & Development; Construction; Consulting & Strategy; Design & Architecture; Education & Training; Engineering; Farming, Animals & Conservation; Government & Defence; Healthcare & Medical; Hospitality & Tourism; Human Resources & Recruitment; Information & Communication Technology; Insurance & Superannuation; Legal; Manufacturing, Transport & Logistics; Marketing & Communications; Mining, Resources & Energy; Real Estate & Property; Retail & Consumer Products; Sales; Science & Technology; Self Employment; Sport & Recreation; Trades & Services.
Schema note: The provided classification configuration contains 29 IDs but 30 labels. To avoid documenting an incorrect ID-to-label mapping, choose classifications from the Actor's input UI and verify the schema mapping if you need to submit classification IDs programmatically.
Example input
Search for software developer jobs in Sydney, posted in the last week, with an annual salary range and hybrid or remote work options:
{"country": "au","keywords": "Software developer","location": "Sydney","salarytype": "annual","salaryrange": "60000-120000","worktype": ["242", "243"],"workarrangement": ["2", "3"],"daterange": "7","sortmode": "KeywordRelevance","limit": 100}
You can omit any filters you do not need. For example, to collect recent listings across all locations, set country, daterange, and limit, and leave keywords and location out.
Output
The Actor returns structured job records. The exact fields available depend on the listing and market; some values may be null, empty, or absent. A representative record can contain the following fields:
| Field | Description |
|---|---|
id | Job listing identifier. |
title | Job title. |
url | Link to the job listing. |
location | Location object, which may include countryCode, country, suburb, state, and postcode. |
advertiser | Advertiser details such as name, verification status, and registration date. |
company | Employer details such as company ID/name, profile or branding URLs, description, industry, size, website, reviews, and benefits, when available. |
recruiter | Recruiter name and profile photo URL, when available. |
categories | Category objects with IDs and names. |
classifications | Human-readable classification labels. |
workTypes | Work-type IDs and names. |
workArrangements | Work-arrangement IDs and names. |
listedAt | Listing timestamp. |
expiresAt | Expiration timestamp, when available. |
salary | Salary period, minimum, maximum, and currency, when disclosed. |
isLinkOut | Indicates whether the listing links out to another application destination. |
contactMatches | Contact details matched to the listing, when available. |
content | Job description content, which may contain HTML. |
applicationsCount | Application count, when provided by the source. |
Example output
The following is a shortened example showing the general record shape:
{"id": "94630842","title": "Atlassian Platform Advisor","url": "https://au.seek.com/job/94630842","location": {"countryCode": "AU","country": "Australia","suburb": "Adelaide","state": "South Australia","postcode": "5000"},"advertiser": {"name": "EGM Partners","isVerified": true,"registrationDate": "2015-08-31T00:28:52.000Z"},"categories": [{ "id": "6283", "name": "Business/Systems Analysts" },{ "id": "6281", "name": "Information & Communication Technology" }],"workTypes": [{ "id": "242", "name": "Full time" }],"workArrangements": [{ "id": "2", "name": "Hybrid" }],"listedAt": "2026-09-15T00:56:17.000Z","expiresAt": "2026-10-14T23:55:00.000Z","salary": {"period": "annual","min": 120000,"max": 130000,"currency": "AUD"},"isLinkOut": false,"contactMatches": [{"type": "Email","value": "caitlin.shears@egmpartners.com.au"}],"content": "<!-- html content -->","applicationsCount": 11}
How to use
- Open the Actor in Apify Console.
- Enter the desired search terms and filters in the Input tab.
- Start the Actor.
- Inspect the run's dataset to view or export the results.
Notes
- Results depend on the selected market, available listings, and filters accepted by the underlying job board.
- Salary and company details are only available when the source listing provides them. Salary currency depends on the selected market.
- The
contentfield may contain HTML; parse or clean it if you need plain text. - The
limitinput is capped at 500 results. - Use
KeywordRelevanceorListedDateforsortmode; these are the accepted values in the supplied input schema.