Discover/TotalJobs API
live

TotalJobs APItotaljobs.com

Access TotalJobs job listings via API. Search by keyword, location, and radius. Retrieve titles, salaries, companies, and full job descriptions.

Endpoint health
verified 3d ago
search_jobs
1/1 passing latest checkself-healing
Endpoints
2
Updated
22d ago

What is the TotalJobs API?

The TotalJobs API provides 2 endpoints for querying UK job listings on totaljobs.com. The search_jobs endpoint accepts keyword, location, and radius parameters and returns paginated sets of up to 25 jobs per page, including title, company, salary, posting time, and snippet fields. The get_job_detail endpoint retrieves the full listing for any job URL, including structured description text and an apply link.

Try it
Page number for pagination (1-based)
Job title or keyword to search for (e.g. 'software engineer', 'nurse')
Search radius in miles from the location. Common values: 5, 10, 15, 20, 25, 50.
Location to search in (e.g. 'London', 'Manchester', 'Birmingham')
api.parse.bot/scraper/5e28ef95-23e9-48ef-9a2a-525932d8a6ee/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/5e28ef95-23e9-48ef-9a2a-525932d8a6ee/search_jobs?page=1&query=software+engineer&radius=10&location=London' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace totaljobs-com-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.


from parse_apis.totaljobs_scraper_api import TotalJobs, NotFoundError

client = TotalJobs()

# Search for software engineer jobs in London with a 15-mile radius
for job in client.jobs.search(query="software engineer", location="London", radius=15, limit=5):
    print(job.title, "|", job.company, "|", job.salary, "|", job.location)

# Take a single result and inspect its details
job = client.jobs.search(query="nurse", location="Manchester", limit=1).first()
if job:
    print(job.title, job.url, job.posted_time)

# Demonstrate typed error handling
try:
    for j in client.jobs.search(query="data analyst", location="Birmingham", limit=3):
        print(j.title, j.company, j.snippet[:80] if j.snippet else "")
except NotFoundError as exc:
    print(f"Search failed: {exc}")

print("exercised: jobs.search (multiple queries, locations, radius)")
All endpoints · 2 totalmissing one? ·

Search for job listings on totaljobs.com by keyword and location. Returns paginated results with job titles, companies, locations, salaries, posting times, URLs, and description snippets. Each page returns up to 25 results. At least one of query or location should be provided for meaningful results.

Input
ParamTypeDescription
pageintegerPage number for pagination (1-based)
querystringJob title or keyword to search for (e.g. 'software engineer', 'nurse')
radiusintegerSearch radius in miles from the location. Common values: 5, 10, 15, 20, 25, 50.
locationstringLocation to search in (e.g. 'London', 'Manchester', 'Birmingham')
Response
{
  "type": "object",
  "fields": {
    "jobs": "array of job objects with keys: title, company, location, salary, posted_time, url, snippet",
    "has_next": "boolean, whether more pages of results exist",
    "current_page": "integer, the current page number",
    "total_results": "integer or null, total number of matching jobs"
  },
  "sample": {
    "data": {
      "jobs": [
        {
          "url": "https://www.totaljobs.com/job/staff-software-engineer/stepstone-uk-job107319597",
          "title": "Staff Software Engineer",
          "salary": "Non Variable Salary",
          "company": "Stepstone UK",
          "snippet": "Working closely with software engineers, machine learning engineers, data scientists...",
          "location": "Southwark, South East London (SE1), SE1 0TA",
          "posted_time": "3 weeks ago"
        }
      ],
      "has_next": true,
      "current_page": 1,
      "total_results": 1118
    },
    "status": "success"
  }
}

About the TotalJobs API

Searching for Jobs

The search_jobs endpoint accepts three optional filters: query (job title or keyword), location (city or region within the UK), and radius (distance in miles, with typical values of 5, 10, 25, or 50). At least one of query or location should be supplied. Results are paginated at 25 per page using the page parameter. Each response includes a jobs array where every object carries title, company, location, salary, posted_time, url, and snippet fields. The response also returns current_page, has_next (boolean), and total_results (integer or null when unavailable).

Retrieving Job Details

The get_job_detail endpoint takes a single required input: the full url of a TotalJobs listing, typically obtained from a search_jobs result. It returns a detailed object including title, company, salary, location, job_type, posted_date, apply_url, description_html, and description_text. The description_html and description_text fields both carry the full job description, giving you flexibility in how you process or display the content.

Coverage and Scope

All data covers UK-based listings on totaljobs.com. Location filtering works at the city or region level; the radius parameter sharpens results around a specific point. Salary and posting-time fields are returned as strings exactly as they appear on the listing — some listings omit salary information, in which case the field may be empty or null.

Reliability & maintenanceVerified

The TotalJobs API is a managed, monitored endpoint for totaljobs.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when totaljobs.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official totaljobs.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
3d ago
Latest check
1/1 endpoint passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Aggregate UK job market data by keyword and region using search_jobs with query and location filters
  • Build a salary benchmarking tool by collecting the salary field across many roles and locations
  • Monitor new listings for a specific job title by polling search_jobs and tracking posted_time
  • Enrich a job board by fetching description_text and apply_url via get_job_detail
  • Identify hiring trends by counting listings per company across a region
  • Automate candidate alerts by comparing total_results over time for a saved query
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does TotalJobs have an official developer API?+
TotalJobs does not publish a public developer API or documented endpoint for third-party access to its listings. This Parse API provides structured access to the same listing data.
What does `get_job_detail` return beyond what `search_jobs` provides?+
search_jobs returns a brief snippet, a single salary string, and basic metadata. get_job_detail adds job_type, posted_date, apply_url, description_html, and description_text — the full job description and the direct application link, which are not available in the search result objects.
How does pagination work in `search_jobs`?+
Each response returns up to 25 results. The has_next boolean indicates whether additional pages exist. Increment the page parameter (1-based) to retrieve subsequent pages. The total_results field gives the total match count when the source provides it, but it may be null for some queries.
Does the API cover jobs outside the UK?+
No. TotalJobs is a UK-focused platform, so all listings are UK-based. The location parameter and radius filter operate within the UK only. You can fork this API on Parse and revise it to point to a different jobs source with international coverage.
Can I filter by job type (full-time, contract, part-time) in `search_jobs`?+
The current search_jobs endpoint supports filtering by query, location, and radius only. Job type is returned as a field in get_job_detail but cannot be used as a search filter. You can fork the API on Parse and revise it to add a job_type filter parameter.
Page content last updated . Spec covers 2 endpoints from totaljobs.com.
Related APIs in JobsSee all →
timesjobs.com API
Search and browse job listings from TimesJobs.com to find positions by role, category, and company, while discovering popular job roles, featured employers, and detailed job information. Filter opportunities using available facets and explore career statistics to match your skills with the right opportunities.
indeed.co.uk API
Search for jobs across Indeed UK and retrieve detailed information including job listings, application links, and company profiles. Access comprehensive job data to compare opportunities, learn about employers, and find direct application pathways.
uk.indeed.com API
Search for job listings across Indeed UK and retrieve complete job details including descriptions, requirements, salary information, and application links. Filter by job type, experience level, location, remote preference, and more to find relevant opportunities.
seek.com.au API
Search for job listings on SEEK Australia and retrieve detailed information about positions. Browse jobs across any keyword, title, and location, and access full job descriptions, classifications, salary info, and employment details.
hotnigerianjobs.com API
Search and browse Nigerian job listings with detailed company information and job requirements all in one place. Discover employment opportunities by filtering through available positions and accessing comprehensive details about roles and hiring companies.
nofluffjobs.com API
Search and filter job openings from No Fluff Jobs by category, seniority level, location, and keywords to find IT, marketing, sales, and HR positions tailored to your needs. Retrieve detailed information about specific job postings including requirements, company details, and employment terms to help you make informed application decisions.
monster.com API
Search and retrieve job listings from Monster.com. Supports keyword and location-based search with structured results including job descriptions, salary ranges, company info, and employment details. Also provides access to popular job categories.
getmyfirstjob.co.uk API
Search and browse apprenticeship and early career opportunities across the UK by occupation, location, and employer. Access detailed job descriptions, employer profiles, occupation categories, and the latest apprenticeship listings from GetMyFirstJob.co.uk.