Discover/Gov API
live

Gov APIfindapprenticeship.service.gov.uk

Search and retrieve live UK apprenticeship vacancies from findapprenticeship.service.gov.uk. Filter by location, level, category, and more across 4 endpoints.

Endpoint health
verified 5d ago
get_total_listing_count
get_apprenticeship_detail
get_search_filters
search_apprenticeships
4/4 passing latest checkself-healing
Endpoints
4
Updated
21d ago

What is the Gov API?

This API provides access to live apprenticeship vacancy data from the UK Government's Find an Apprenticeship service across 4 endpoints. Use search_apprenticeships to query vacancies by keyword, location, distance, apprenticeship level, and job category, then retrieve full vacancy details — including skills required, wage, working hours, and training course information — via get_apprenticeship_detail using the vacancy reference from search results.

Try it
Sort order for results.
Radius in miles from location.
City or postcode to search near.
Comma-separated apprenticeship level IDs: 2, 3, 4, 5, 6, 7.
Comma-separated job category IDs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15.
Page number of results.
Job title or company name to search for.
Hide companies recruiting nationally.
Comma-separated types: Foundation, Standard.
Only show disability confident companies.
api.parse.bot/scraper/29d077ec-2cda-42fc-9194-e7cd0737aa6d/<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/29d077ec-2cda-42fc-9194-e7cd0737aa6d/search_apprenticeships?sort=AgeAsc&distance=2&location=London&level_ids=3&route_ids=7&page_number=1&search_term=software&exclude_national=False&apprenticeship_types=Standard&disability_confident=False' \
  -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 findapprenticeship-service-gov-uk-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.

"""Walkthrough: UK Apprenticeships SDK — search vacancies, drill into details, explore filters."""
from parse_apis.uk_apprenticeships_api import Apprenticeships, Sort, Distance, VacancyNotFound

client = Apprenticeships()

# Search for software apprenticeships sorted by wage, capped at 5 results.
for vacancy in client.vacancies.search(search_term="software", sort=Sort.WAGE, limit=5):
    print(vacancy.title, vacancy.employer, vacancy.wage)

# Drill into the first result for full details.
summary = client.vacancies.search(search_term="engineering", location="London", distance=Distance.TWENTY_MILES, limit=1).first()
if summary:
    detail = summary.details()
    print(detail.title, detail.employer, detail.duration, detail.hours)

# Typed error handling when a vacancy reference doesn't exist.
try:
    gone = client.vacancies.get(vacancy_reference="VAC0000000000")
    print(gone.title)
except VacancyNotFound as exc:
    print(f"Vacancy not found: {exc.vacancy_ref}")

# Explore available filter options.
filters = client.filteroptionses.get()
for level in filters.levels:
    print(level.value, level.label, level.description)

# Check total listings on the service.
stats = client.listingcounts.get()
print(f"Total apprenticeships listed: {stats.total_listings}")

print("exercised: vacancies.search / summary.details / vacancies.get / filteroptionses.get / listingcounts.get")
All endpoints · 4 totalmissing one? ·

Full-text search over apprenticeship vacancies with filters for keyword, location, distance, levels, categories, and more. Returns paginated results sorted by the specified criteria. Paginates via page_number. Each result is a summary; use get_apprenticeship_detail with the vacancyReference for full information.

Input
ParamTypeDescription
sortstringSort order for results.
distancestringRadius in miles from location.
locationstringCity or postcode to search near.
level_idsstringComma-separated apprenticeship level IDs: 2, 3, 4, 5, 6, 7.
route_idsstringComma-separated job category IDs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15.
page_numberintegerPage number of results.
search_termstringJob title or company name to search for.
exclude_nationalbooleanHide companies recruiting nationally.
apprenticeship_typesstringComma-separated types: Foundation, Standard.
disability_confidentbooleanOnly show disability confident companies.
Response
{
  "type": "object",
  "fields": {
    "results": "array of apprenticeship vacancy summaries with vacancyReference, title, employer, location, url, startDate, trainingCourse, wage, closingDate, postedDate",
    "pagination": "object with currentPage, totalResults, resultsPerPage"
  },
  "sample": {
    "data": {
      "results": [
        {
          "url": "https://www.findapprenticeship.service.gov.uk/apprenticeship/VAC2000036585",
          "wage": "£15,600 a year",
          "title": "Data Administration Apprentice",
          "employer": "CHERISH HOME CARE LTD",
          "location": "SUTTON COLDFIELD (B73 5DA)",
          "startDate": "29 June 2026",
          "postedDate": "11 June 2026",
          "closingDate": "Closes in 15 days (Friday 26 June 2026 at 11:59pm)",
          "trainingCourse": "Software and data foundation apprenticeship (level 2)",
          "vacancyReference": "VAC2000036585"
        }
      ],
      "pagination": {
        "currentPage": 1,
        "totalResults": 25,
        "resultsPerPage": 10
      }
    },
    "status": "success"
  }
}

About the Gov API

Search and Filter Vacancies

The search_apprenticeships endpoint accepts free-text queries via search_term, geographic targeting via location and distance (in miles), and structured filters including level_ids (apprenticeship levels 2–7) and route_ids (job category IDs 1–15). Results are paginated using page_number and return a summary array with fields such as vacancyReference, title, employer, location, startDate, trainingCourse, and wage. A pagination object accompanies each response with currentPage, totalResults, and resultsPerPage.

Vacancy Detail

Passing a vacancy_ref (e.g. VAC2000036585) to get_apprenticeship_detail returns the full record for that vacancy: title, employer, location with postcode, wage, hours, duration, start_date, closingDate, a skills array listing required competencies, and a url pointing to the canonical vacancy page. The vacancy reference is included in every summary returned by search_apprenticeships.

Filter Discovery and Listing Count

get_search_filters requires no parameters and returns all valid filter values — levels, sortOptions, jobCategories, distanceOptions, and apprenticeshipTypes — each as arrays of labelled objects. This is the right starting point before building a filtered search UI or pipeline. get_total_listing_count returns a single totalListings integer representing the current number of live vacancies across the service, useful for monitoring market volume over time.

Reliability & maintenanceVerified

The Gov API is a managed, monitored endpoint for findapprenticeship.service.gov.uk — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when findapprenticeship.service.gov.uk 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 findapprenticeship.service.gov.uk 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
5d ago
Latest check
4/4 endpoints 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 live UK apprenticeship postings into a job board filtered by region and trade category.
  • Monitor total apprenticeship vacancy counts over time using get_total_listing_count to track labour market trends.
  • Build a skills-gap analysis tool by extracting the skills array from vacancy detail records across a sector.
  • Power a careers guidance app that surfaces apprenticeships near a user's postcode at a specified distance.
  • Feed employer and wage data into a compensation benchmarking dataset segmented by apprenticeship level.
  • Automate vacancy intake for a recruiter CRM using search_apprenticeships with route_ids and level_ids filters.
  • Render a dynamic filter UI by fetching all valid values from get_search_filters before populating dropdowns.
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 findapprenticeship.service.gov.uk have an official developer API?+
The Find an Apprenticeship service does not publish a documented public developer API. GOV.UK does operate a broader data infrastructure, but there is no official REST API specifically for querying apprenticeship vacancies exposed to third-party developers.
What does get_apprenticeship_detail return beyond what the search results include?+
Search results provide summary fields: title, employer, location, wage, startDate, trainingCourse, and vacancyReference. The detail endpoint adds working hours, apprenticeship duration, closing date, a structured skills array, and a direct URL to the vacancy page. You need the vacancyReference from a search result to call the detail endpoint.
Does the API cover apprenticeship applications or saved vacancies?+
No. The API covers vacancy discovery and detail only — search results, filters, vacancy records, and listing counts. Application submission, candidate accounts, and saved vacancy lists are not exposed. You can fork the API on Parse and revise it to add endpoints targeting any application-flow data that becomes accessible.
How does pagination work in search_apprenticeships?+
Results are paginated via the page_number integer parameter. Each response includes a pagination object with currentPage, totalResults, and resultsPerPage, which lets you calculate the number of pages and iterate through the full result set for a given query.
Are training provider details available beyond the trainingCourse field in search results?+
The search summary includes a trainingCourse field. The detail endpoint returns course-level information but does not currently expose a structured training provider profile with contact details or provider identifiers. You can fork the API on Parse and revise it to surface additional provider data if it is needed for your use case.
Page content last updated . Spec covers 4 endpoints from findapprenticeship.service.gov.uk.
Related APIs in JobsSee all →
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.
notgoingtouni.co.uk API
Search and discover apprenticeship opportunities across sectors and companies on NotGoingToUni.co.uk, filtering by opportunity types and viewing detailed information about specific roles. Browse featured apprenticeships and explore available sectors and employers to find the right career path.
totaljobs.com API
Search and browse job listings from across the UK on TotalJobs, then access detailed information about specific positions including requirements, salary, and application details. Quickly compare opportunities and find roles that match your criteria.
ausbildung.de API
Search and browse apprenticeship (Ausbildung) listings on ausbildung.de. Retrieve job posting details, explore the full catalog of recognized training professions, and look up salary and compensation data for any apprenticeship career.
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.
ucas.com API
Search and explore UK university courses, apprenticeships, and scholarships all in one place, while discovering detailed information about education providers and their offerings. Find the perfect educational path by filtering courses and apprenticeships by your preferences and accessing comprehensive provider details to inform your decisions.
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.
civilservicejobs.service.gov.uk API
Search UK Civil Service job openings by keyword and location, and access detailed information about positions, requirements, salaries, and application deadlines across the Civil Service Jobs board.