Reed.co.uk Scraper | Jobs, Companies, Courses & Reviews avatar

Reed.co.uk Scraper | Jobs, Companies, Courses & Reviews

Pricing

from $1.50 / 1,000 results

Go to Apify Store
Reed.co.uk Scraper | Jobs, Companies, Courses & Reviews

Reed.co.uk Scraper | Jobs, Companies, Courses & Reviews

Scrape Reed.co.uk jobs, companies, courses, and reviews. Search by keyword, location, filters, or URLs. Extract 80+ job fields including salary, company, GPS location, sector, contract type, skills, full description, postcode, company profile, course details, and review data.

Pricing

from $1.50 / 1,000 results

Rating

0.0

(0)

Developer

AbotAPI

AbotAPI

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

Reed.co.uk Jobs Scraper

Extract structured job data from Reed.co.uk, the UK's largest job board, at scale. Search by keyword, location, salary, distance, job type and more, or paste any Reed search or job URL. Every job comes back as a flat record with 80+ fields: salary breakdown, company, location with GPS coordinates, sector, contract type, skills, and posting dates. Turn on full details to also pull the complete job description, region/county/postcode, company profile, and screening questions.

Why this scraper

  • 80+ fields per job, rising to 125+ when full details are enabled, far more than typical Reed scrapers return.
  • GPS coordinates on every job resolved from the job location, so you can map and geo-filter results out of the box.
  • Runs on datacenter connections by default, the cheapest tier, so a 1,000-job run costs a fraction of residential-only scrapers. Residential is used automatically as a fallback only when needed.
  • Three things to scrape: jobs (by filters or pasted URLs), company profiles, and training courses with reviews.
  • Full filter grammar: keyword, location, distance, salary range, posted-within, sort, job type (permanent/temporary/contract/full-time/part-time), posted-by (agency/employer), graduate, easy-apply, visa-sponsorship, early-bird.
  • Fast and lightweight: no browser, low memory, concurrent detail enrichment.
  • Optional export to your apps via MCP connectors (Notion, Linear, Airtable, Apify).

Data you get

Sample shape, values are illustrative placeholders, not from a live listing.

FieldExample
jobId00000001
titleData Engineer
urlhttps://www.reed.co.uk/jobs/data-engineer/00000001
companyNameSample Company
logoImagehttps://resources.reed.co.uk/profileimages/logos/Logo_0000.png
locationLondon
latitude51.5074
longitude-0.1278
displaySalary£45,000 - £55,000 per annum
salaryFrom45000
salaryTo55000
salaryCurrencyId1
salaryType5
remoteWorkingOptionOn-Site
jobType1
isFullTimetrue
isPartTimefalse
postedOn2026-01-01T00:00:00.000Z
expiryOn2026-01-01T00:00:00.000Z
statuses["Featured", "Easy Apply"]
contractTypePermanent
sectorNameIT & Telecoms
regionSouth East England
countyLondon
postCodeEC1A
descriptionFull job description text appears here when fetchDetails is on.
companyProfileId0000

Plus salary-per-annum breakdown, parent sector, taxonomy, breadcrumbs, job-owner profile (id, url, logo, banner), screening questions, and the raw source objects (rawListData, rawDetailData).

How to use

There are three things to scrape, chosen with mode: jobs, company, or course.

Jobs by keyword search in one city (leave Job URLs empty to search by filters):

{
"mode": "jobs",
"keywords": "data engineer",
"locations": ["london"],
"maxListings": 20
}

Jobs with filters (salary, distance, recent, newest first):

{
"mode": "jobs",
"keywords": "software developer",
"locations": ["manchester"],
"salaryFrom": 50000,
"proximity": 20,
"postedDate": "last7days",
"sortBy": "date",
"permanent": true,
"fetchDetails": true,
"maxListings": 100
}

Jobs by pasting URLs (when Job URLs are set, the filters are ignored):

{
"mode": "jobs",
"urls": [
"https://www.reed.co.uk/jobs/accountant-jobs-in-bristol",
"https://www.reed.co.uk/jobs/marketing-jobs-in-london?sortby=displayDate"
],
"maxPages": 3,
"maxListings": 200
}

In Jobs mode you choose URLs vs search automatically: paste Job URLs to scrape them directly, or leave Job URLs empty and the actor builds the search from your keyword, location, and filters.

Company mode (scrape company profiles by URL or slug):

{
"mode": "company",
"companies": [
"https://www.reed.co.uk/company-profile/Marshall-Wolfe-63256",
"Marshall-Wolfe-63256"
],
"maxListings": 50
}

In company mode each entry returns one record with the company sector, employee-count range, website, benefits, articles, external links, total open jobs, and a list of recent jobs (each with salary and GPS). Company slugs are case-sensitive.

Course mode (scrape training courses and their reviews):

{
"mode": "course",
"courseQueries": ["python", "project management"],
"courseUrls": ["https://www.reed.co.uk/courses/c/271655"],
"fetchReviews": true,
"maxReviewsPerCourse": 0,
"reviewsSort": "MostRecent",
"maxListings": 50
}

In course mode each course is returned as one record (title, provider, price, rating, study method, qualification, format, description). When fetchReviews is on, every review is returned as its own record (overall and per-category ratings, text, reviewer, date, and any provider response). courseQueries searches Reed Courses by keyword; courseUrls accepts course URLs or bare course IDs.

Send results into your apps (MCP connectors)

Optionally pipe each job into the apps you already use, with no change to the dataset output:

  1. Authorize a connector under Apify, Settings, API & Integrations (Notion, Linear, Airtable, or Apify).
  2. Select it in the mcpConnectors input. For Notion, also set notionParentPageUrl.
  3. Run the actor. Each job is written as a condensed, human-readable summary (title plus key fields); the complete record always stays in the Apify dataset.

Leave mcpConnectors empty to skip this entirely.

Input parameters

ParameterTypeDefaultDescription
modestringjobsjobs = job listings (filters or pasted URLs); company = company profiles; course = courses + reviews.
keywordsstring(empty)Job search terms (jobs mode, when no Job URLs are pasted).
locationsarray(empty)UK cities or regions; one search per location (jobs mode).
proximityinteger10Search radius in miles (0, 1, 3, 5, 10, 15, 20, 30, 50).
salaryFrominteger(none)Minimum salary per annum.
salaryTointeger(none)Maximum salary per annum.
postedDatestringanytimeanytime, today, last3days, last7days, last14days.
sortBystringrelevancerelevance or date (newest first).
fullTime, partTime, permanent, temporary, contractbooleanfalseJob-type filters.
agency, directbooleanfalsePosted by agency / employer.
graduate, easyApply, visaSponsorship, earlyBirdbooleanfalseExtra filters.
urlsarray(empty)Reed job-search or job URLs (jobs mode; if set, filters are ignored).
companiesarray(empty)Reed company-profile URLs or slugs (company mode).
courseQueriesarray(empty)Course search keywords (course mode).
courseUrlsarray(empty)Course URLs or IDs (course mode).
fetchReviewsbooleantrueReturn course reviews as separate records (course mode).
maxReviewsPerCourseinteger0Cap reviews per course; 0 = all (course mode).
reviewsSortstringMostRecentReview order: MostRecent, RatingDesc, RatingAsc.
fetchDetailsbooleantrueEnrich each job from its detail page.
maxListingsinteger20The result cap. The run stops at this many unique jobs. Set 0 for unlimited.
maxPagesinteger200Safety bound on result pages per search; the run stops at Max jobs first.
maxResidentialRequestsinteger0Optional residential exit budget (cost control); 0 = unlimited.
proxyobjectApify datacenterProxy configuration.

maxListings is the single cap. maxPages is only a safety bound and does not limit below maxListings.

Output example

Sample shape, values are illustrative placeholders, not from a live listing.

{
"id": 1,
"jobId": 1,
"url": "https://www.reed.co.uk/jobs/data-engineer/00000001",
"title": "Data Engineer",
"companyName": "Sample Company",
"logoImage": "https://resources.reed.co.uk/profileimages/logos/Logo_0000.png",
"description": "Full job description text appears here when fetchDetails is on.",
"skills": [],
"statuses": ["Featured", "Easy Apply"],
"location": "London",
"latitude": 51.5074,
"longitude": -0.1278,
"remoteWorkingOption": "On-Site",
"displaySalary": "£45,000 - £55,000 per annum",
"salaryFrom": 45000,
"salaryTo": 55000,
"salaryCurrencyId": 1,
"salaryType": 5,
"salaryTypeName": "per annum",
"jobType": 1,
"isFullTime": true,
"isPartTime": false,
"postedOn": "2026-01-01T00:00:00.000Z",
"expiryOn": "2026-01-01T00:00:00.000Z",
"contractType": "Permanent",
"sectorName": "Other IT & Telecoms",
"parentSectorName": "IT & Telecoms",
"region": "South East England",
"county": "London",
"country": "United Kingdom",
"countryCode": "GB",
"postCode": "EC1A",
"companyProfileId": 0,
"companyProfileUrl": "Sample-Company-0000",
"isEasyApply": true,
"isExternal": false,
"detailFetched": true
}

Plan requirement

This actor runs on Apify datacenter connections by default, which works for Reed and is available on the free plan. For very large runs or under heavy load, an Apify Residential proxy (Starter plan or higher) is more reliable; the actor escalates to it automatically when datacenter results thin out. Set proxy.apifyProxyGroups: ["RESIDENTIAL"] with apifyProxyCountry: "GB" to force residential.