Totaljobs Scraper [$0.90/1K💰] | UK Jobs | Salary Data avatar

Totaljobs Scraper [$0.90/1K💰] | UK Jobs | Salary Data

Pricing

from $0.88 / 1,000 results

Go to Apify Store
Totaljobs Scraper [$0.90/1K💰] | UK Jobs | Salary Data

Totaljobs Scraper [$0.90/1K💰] | UK Jobs | Salary Data

Scrape UK job listings from totaljobs.com: title, company, location, salary band, contract type, posted/expiry dates, full description, geo and apply URL. Cheerio-based, no browser needed. Pay-per-event.

Pricing

from $0.88 / 1,000 results

Rating

0.0

(0)

Developer

Ahmed Jasarevic

Ahmed Jasarevic

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

16 days ago

Last modified

Categories

Features

Limited permissions

Share

Totaljobs Scraper - UK Job Listings, Salaries and Full Descriptions

The Totaljobs Scraper collects public UK job listings from Totaljobs. Search by keyword and location, or supply exact search and job URLs, and receive job titles, companies, locations, salary bands, normalized salary bounds, contract types, work arrangements, posting and expiry dates, full descriptions, coordinates and apply URLs.

Use it for job market research, salary benchmarking, recruitment lead generation, competitor hiring analysis and job-board aggregation. A fast search pass finds listing cards, and an optional detail pass opens each job page so you can separate fully enriched rows from lightweight search-card rows.

Main Use Cases for UK Job Listings

  • Job market research - measure hiring volume by keyword, location, contract type and work arrangement.
  • Salary benchmarking - compare published salary bands and normalized bounds across roles and regions.
  • Recruitment lead generation - find companies actively advertising roles and the agencies representing them.
  • Competitor hiring analysis - track which employers are expanding a team, location or skill set.
  • Job-board aggregation - feed structured listings into a search product, alert system or internal board.
  • Skills demand analysis - analyze full descriptions for tools, certifications and seniority signals.
  • Relocation and career research - compare openings, salaries and work arrangements across UK cities.

How It Works

Totaljobs UK job listings becoming structured rows with salaries, companies, locations and full descriptions

Set query and optional location to build a Totaljobs search, or provide search or job detail URLs in startUrls. maxItems caps saved jobs, maxPages limits search pagination, and maxRequestsPerCrawl protects the run budget. With includeDetails enabled, each selected job page is opened for the full description and enrichment fields.

Search pages are fetched through the site internal result-list JSON endpoint, with an automatic fallback to the server-rendered HTML page. Each page usually contains about 25 jobs. Cards provide the title, company, location, salary text, posting date, expiry date and a description preview before any detail request is made.

Detail pages are parsed from schema.org JobPosting JSON-LD and the site preloaded state. This adds the full description text and HTML, contract type, work arrangement, salary bounds, coordinates and the canonical job URL. detailVerified is true only when the detail payload was parsed successfully.

If a detail page is blocked or fails, the Actor keeps the search-card row instead of dropping the job. Such rows can have a null description, missing salary bounds and detailVerified: false. This design keeps coverage high on a site with aggressive edge protection, but it means you should filter on detailVerified when full descriptions are required.

Free users receive at most 10 saved jobs. The site uses Akamai protection, so large runs benefit from a proxy and from conservative detailConcurrency. The Actor does not log in and does not submit applications; applyUrl points to the canonical Totaljobs job page.

Input

A keyword and optional location are enough for a standard search. Use start URLs for a fixed query or a known set of job pages.

FieldTypeRequiredDefaultWhat it does
querystringNosoftware developerJob keyword used to build the search URL. Ignored when startUrls is provided.
locationstringNoEmptyUK location filter such as London or Manchester. Empty searches the whole UK.
startUrlsarrayNoEmptyTotaljobs search or job detail URLs. Overrides the query and location builder.
maxItemsintegerNo50Maximum job records saved in one run. Free users are capped at 10.
maxPagesintegerNo10Maximum search-result pages to crawl, roughly 25 jobs per page.
includeDetailsbooleanNotrueOpen job pages for full descriptions, salary bounds, contract type and coordinates.
maxRequestsPerCrawlintegerNo200Hard cap on search and detail HTTP requests.
detailConcurrencyintegerNo6Parallel detail workers. Higher values increase the chance of edge blocks.
proxyobjectNoNo proxyOptional Apify Proxy settings for larger or repeated runs.

Start with a small maxItems and the default detail concurrency to confirm the search and detail paths. Raise maxPages for broader coverage, not detailConcurrency first. If many rows return detailVerified: false, slow the detail workers or enable a proxy before scaling.

Output

The default dataset contains one row per job. Search-card fields and detail-enriched fields are combined, with a verification flag that tells you which path produced the row.

Field groupFieldsWhat you get
IdentityjobId, title, company, companyUrl, companyLogo, url, applyUrl, sourceJob ID, title, employer, company links, canonical job URL and apply entry point.
Locationlocation, latitude, longitudeLocation text and coordinates when the detail page publishes them.
CompensationsalaryBand, salaryMin, salaryMax, salaryCurrencyPublished salary text and normalized bounds in GBP when parseable.
ClassificationcontractType, workArrangementContract type and on-site, remote or hybrid arrangement when published.
DatesdatePosted, postedText, expiryDateISO posting and expiry timestamps plus relative posting text when available.
DescriptiondescriptionSnippet, descriptionText, descriptionHtmlSearch-card preview and full detail description in text and HTML.
VerificationdetailVerified, scrapedAtWhether the detail page was parsed and when the row was observed.

salaryMin and salaryMax are normalized aids, not a replacement for the published salaryBand; a band with a single numeric anchor can produce equal bounds. Rows with detailVerified: false may have null description and classification fields. Use jobId as the stable key and keep salaryBand as the source of truth.

Pricing

Pricing is pay-per-event. A small start event is charged per run, each saved job is a result event, and each fully enriched job adds a detail event.

EventFREEBRONZESILVERGOLD+
Actor start, per run$0.00005$0.00005$0.00005$0.00005
Job result$0.0009$0.0009$0.00089$0.00088
Detail enrichment$0.0004$0.0004$0.00039$0.00038

A saved job costs $0.90 per 1,000 on FREE and BRONZE, $0.89 per 1,000 on SILVER and $0.88 per 1,000 on GOLD and higher. A fully enriched job adds $0.40 per 1,000 on FREE and BRONZE, $0.39 on SILVER and $0.38 on GOLD+. Search-card fallbacks are charged as results but not as detail enrichments. The free preview is capped at 10 jobs.

Example Input

{
"query": "software developer",
"location": "",
"startUrls": [],
"maxItems": 3,
"maxPages": 3,
"includeDetails": true,
"maxRequestsPerCrawl": 20,
"detailConcurrency": 3,
"proxy": { "useApifyProxy": false }
}

This searches UK-wide software developer jobs, keeps three records and enriches each from its detail page. The free preview would stop at 10 rows even with a higher maxItems.

Example Output

{
"jobId": "108092727",
"title": "Software Developer Placement Programme – No experience needed",
"company": "IT Online Learning",
"location": "Leeds (LS1)",
"latitude": 53.7988205,
"longitude": -1.54985,
"salaryBand": "From £27,000 to £65,000 per annum",
"salaryCurrency": "GBP",
"contractType": "Permanent Contract",
"workArrangement": "On-site",
"datePosted": "2026-10-07T11:32:50.497Z",
"expiryDate": "2026-11-18T12:32:50.497Z",
"descriptionSnippet": "Software Developer Placement Programme – No experience needed. From £27,000 to £65,000 per annum.",
"url": "https://www.totaljobs.com/job/software-developer-placement-programme-no-experience-needed/it-online-learning-job108092727",
"applyUrl": "https://www.totaljobs.com/job/software-developer-placement-programme-no-experience-needed/it-online-learning-job108092727",
"source": "totaljobs.com",
"detailVerified": true,
"scrapedAt": "2026-10-27T17:38:48.297Z"
}

This is a real test record with the description shortened. The numeric salary bounds are omitted here; the published salaryBand is the authoritative salary text. detailVerified: true means the detail page was parsed.

Integrations and Automation

Run the Actor from the Apify API, Apify MCP, a scheduled task, Zapier, Make, n8n or your own application. Export JSON, CSV, Excel, XML or HTML, or push rows to Google Sheets, Airtable, a recruitment CRM, a data warehouse or a webhook.

Use jobId as the stable key and deduplicate across runs. Keep detailVerified in your schema and filter on it when full descriptions are mandatory. Preserve salaryBand alongside normalized bounds so a downstream salary model can revisit the original text.

For recurring monitoring, schedule a daily or weekly search and compare new job IDs, salary bands and expiry dates. Keep scrapedAt with every row so a withdrawn or edited advert has a clear timeline.

FAQ

Do I need a Totaljobs account?

No. The Actor reads public search and job pages without logging in. It does not submit an application.

What does includeDetails do?

It opens each selected job page for the full description, contract type, salary bounds, coordinates and verification flag. Turning it off is faster but leaves many fields empty.

Why is detailVerified false?

The detail page was blocked, timed out or unparseable, so the Actor kept the search-card row. Retry with lower detail concurrency or a proxy.

Are salaryMin and salaryMax exact?

They are normalized from the published salary text when possible. Use salaryBand as the source of truth, especially when the advert gives a range or a single anchor.

Is there a free preview cap?

Yes. Free users can save at most 10 jobs per run. Detail enrichment is charged only for rows that were actually enriched.

Can I scrape a specific search URL?

Yes. Put the search URL in startUrls. Any filters encoded in that URL are preserved in the API request.

For AI Agents and LLM Apps

The Actor returns compact UK job records with salary, classification, dates and a detail-verification flag, suitable for market analysis and recruitment enrichment.

  • One row represents one public Totaljobs advert. Use jobId as the key and scrapedAt as the observation time.
  • detailVerified distinguishes fully enriched rows from search-card fallbacks. Do not assume every row has a full description.
  • salaryBand is the published salary text; salaryMin and salaryMax are normalized aids and can be incomplete or equal.
  • descriptionText and descriptionHtml can be null when details were not fetched or the page was blocked. Missing data is not a zero value.
  • The free preview is limited to 10 jobs; result and detail-enrichment events are billed separately.

This Actor is an independent tool and is not affiliated with, endorsed by or sponsored by Totaljobs. It reads publicly visible job adverts for legitimate market research and recruitment analysis. The source platform terms and applicable law still apply.

Job adverts can contain personal data and company-confidential text. Use the data for a lawful purpose, keep a documented basis where required, honor deletion and opt-out requests, and do not republish full descriptions in a way that infringes copyright or misrepresents the employer.

SEO Keywords

Totaljobs scraper, UK job listings, Totaljobs API alternative, UK salary data, job board scraper, software developer jobs UK, Totaljobs dataset, UK recruitment data, job market research, salary benchmarking UK, Totaljobs JSON export, UK vacancies, job posting scraper, hiring data UK, Totaljobs search scraper, UK jobs dataset, salary bands UK, recruitment leads, job description data, UK employment market