Become a partner

Skills & Occupations API

Archive Partners provides a skills and occupations API built on the ESCO v1.2.1 classification. It is compatible with the Lightcast DDN response shape.

This service uses the ESCO classification of the European Commission.

Base URL: https://archive.partners/api


Endpoints


GET /api/skills

Search skills by name, or get all skills for a specific occupation.

Query parameters

Param Type Description
q string Search skills by name. Partial match.
occupation string ESCO occupation ID — returns all skills for that occupation.
type string Filter by knowledge or skill/competence.
limit integer Max results. Default 20, max 100.

Example — search by name

GET /api/skills?q=python&limit=5
{
  "attributionText": "This service uses the ESCO classification of the European Commission. ESCO v1.2.1.",
  "data": [
    {
      "id": "ccd0a1d9-afda-43d9-b901-96344886e14d",
      "name": "Python (computer programming)",
      "type": "knowledge"
    }
  ],
  "meta": { "total": 1, "returned": 1, "version": "esco-1.2.1" }
}

Example — skills for an occupation

GET /api/skills?occupation=57af9090-55b4-4911-b2d0-86db01c00b02

Returns definingSkills, distinguishingSkills, and necessarySkills for that occupation.


GET /api/occupations

Search occupations by name or ISCO code, or retrieve a single occupation by ID.

Query parameters

Param Type Description
q string Search occupations by name. Partial match.
id string ESCO occupation UUID — returns full record with all skills.
code string ISCO-08 code (e.g. 2512).
limit integer Max results. Default 20, max 100.

Example — search

GET /api/occupations?q=software+developer&limit=3
{
  "attributionText": "This service uses the ESCO classification of the European Commission. ESCO v1.2.1.",
  "data": [
    { "id": "57af9090-...", "name": "embedded systems software developer", "code": "2514.2.1" },
    { "id": "781a6350-...", "name": "cloud software developer", "code": "2512.8" },
    { "id": "bb6198c4-...", "name": "industrial mobile devices software developer", "code": "2514.3" }
  ],
  "meta": { "total": 4, "returned": 3, "version": "esco-1.2.1" }
}

Example — single occupation with skills

GET /api/occupations?id=57af9090-55b4-4911-b2d0-86db01c00b02
{
  "attributionText": "...",
  "data": {
    "id": "57af9090-...",
    "name": "embedded systems software developer",
    "code": "2514.2.1",
    "iscoGroup": "2514",
    "essentialSkills": [
      { "id": "...", "name": "C++", "type": "knowledge" },
      { "id": "...", "name": "embedded systems", "type": "knowledge" }
    ],
    "optionalSkills": [
      { "id": "...", "name": "Python (computer programming)", "type": "knowledge" }
    ]
  },
  "meta": { "version": "esco-1.2.1" }
}

POST /api/skills-to-occ

Submit up to 50 skill names or ESCO skill IDs. Returns occupations ranked by how many of your skills they require, with a matchScore from 0 to 1.

Request body

Field Type Description
skills string[] Required. 1–50 skill names or ESCO IDs.
relationType string essential or any (default).
limit integer Max occupations returned. Default 10, max 50.

Example

POST /api/skills-to-occ
Content-Type: application/json

{
  "skills": ["Python (computer programming)", "machine learning", "data analysis"],
  "limit": 5
}
{
  "attributionText": "This service uses the ESCO classification of the European Commission. ESCO v1.2.1. Occupation matching by Archive Partners.",
  "data": [
    {
      "id": "abc123-...",
      "name": "data scientist",
      "code": "2511.4",
      "matchScore": 1.0,
      "matchedSkills": ["Python (computer programming)", "machine learning", "data analysis"],
      "matchCount": 3
    },
    {
      "id": "def456-...",
      "name": "machine learning engineer",
      "code": "2511.8",
      "matchScore": 0.67,
      "matchedSkills": ["Python (computer programming)", "machine learning"],
      "matchCount": 2
    }
  ],
  "meta": { "inputSkills": 3, "resolvedSkills": 3, "version": "esco-1.2.1" }
}

Match score is matchCount / resolvedSkills — the proportion of your input skills that appear in that occupation’s ESCO profile.


Also see

  • Jobs API — live UK job listings by county via Reed
  • Company data — Companies House signals, county leaderboards, iXBRL filings
  • Talk to us — custom feeds, bulk exports, partner access

Live jobs at

Loading jobs…

All jobs →