Endpoint

Infer skills

Given prior occupations + already-known skills, return the skills any practitioner of those occupations almost certainly has. Curated map for ~25 occupations + Claude fallback.

Authentication

Requires the skills scope.

Endpoint

POST/api/v1/skills-infer

Request

occupationsstring[]required
Prior occupations from the candidate's work history. Supports verbose titles ("Senior Line Cook" matches "line cook" curated entry).
existingstring[]
Skills you already extracted (from a resume parser). The inferrer won't re-suggest these.
curl -X POST https://www.astrishr.com/api/v1/skills-infer \
  -H "Authorization: Bearer $KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "occupations": ["Forklift Operator", "Line Cook"],
    "existing":    ["Knife Skills"]
  }'

Response

{
  "inferred": [
    { "name": "Pallet Jack Operation", "source": "curated", "confidence": 0.85, "fromOccupation": "Forklift Operator" },
    { "name": "Inventory Scanning",    "source": "curated", "confidence": 0.85, "fromOccupation": "Forklift Operator" },
    { "name": "Loading Dock Safety",   "source": "curated", "confidence": 0.85, "fromOccupation": "Forklift Operator" },
    { "name": "Material Handling",     "source": "curated", "confidence": 0.85, "fromOccupation": "Forklift Operator" },
    { "name": "OSHA-10 Awareness",     "source": "curated", "confidence": 0.85, "fromOccupation": "Forklift Operator" },
    { "name": "ServSafe Awareness",    "source": "curated", "confidence": 0.85, "fromOccupation": "Line Cook" },
    { "name": "Recipe Adherence",      "source": "curated", "confidence": 0.85, "fromOccupation": "Line Cook" },
    { "name": "Kitchen Sanitation",    "source": "curated", "confidence": 0.85, "fromOccupation": "Line Cook" }
  ]
}

What's curated

~25 occupations across logistics, agriculture, hospitality, light manufacturing, and healthcare-adjacent roles. Anything not in the curated map falls through to Claude with a conservative "4–8 specific skills per occupation, no fluff" prompt.

Each inferred skill is tagged with its source ("curated" or "llm") and confidence, so you can render the distinction in your UI.