Job Classify API
POST /api/v1/job/classify
Use this endpoint when an application needs one standardized O*NET occupation for job text rather than a ranked list of candidates.
This is the compact classification endpoint for product flows that need a single occupation code and title from a noisy job title or description. It is useful for normalization, enrichment, routing, search filters, analytics joins, and workflows where one best O*NET 30.3-grounded result is enough.
Complete executable examples belong in the AvelinLabs API examples repository.
Base URL: https://api.avelinlabs.com
Authentication
Section titled “Authentication”Requires a runtime API key:
Authorization: Bearer <runtime-api-key>Request Body
Section titled “Request Body”Type: string
Required: Yes
Meaning: Job title or short role label to classify.
description
Section titled “description”Type: string
Required: No
Meaning: Job description or other skill-bearing text. More complete text can improve the quality of evidence.
Type: boolean
Required: No
Meaning: Optional diagnostic flag. Public integrations should not depend on debug-only fields.
Minimal Request
Section titled “Minimal Request”{ "title": "Help Desk Technician", "description": "Resolve user support issues, troubleshoot hardware and software problems, document incidents, and escalate complex tickets.", "debug": false}See the public example payload: payloads/job-classify.json.
Minimal Response
Section titled “Minimal Response”Illustrative beta response snippet:
{ "occupation": { "onet_code": "15-1232.00", "title": "Computer User Support Specialists" }, "confidence": 0.88, "trust_score": 0.82, "confidence_level": "HIGH", "job_signals": ["support", "troubleshooting"], "uncertainty": { "total": 0.18 }, "decision": { "decision": "AUTO_ACCEPT", "reason": "Confidence and uncertainty meet the configured decision threshold." }}See the public example response: responses/job-classify.example.json.
Response Fields
Section titled “Response Fields”occupation
Section titled “occupation”Meaning: Top classified occupation object.
occupation.onet_code
Section titled “occupation.onet_code”Meaning: O*NET occupation code for the top result.
occupation.title
Section titled “occupation.title”Meaning: Occupation title for the top result.
confidence
Section titled “confidence”Meaning: Top-level confidence signal for the classification. Use as decision support, not absolute truth.
confidence_raw
Section titled “confidence_raw”Meaning: Raw or pre-adjusted confidence signal where present.
trust_score
Section titled “trust_score”Meaning: Trust-oriented score for the classification.
uncertainty
Section titled “uncertainty”Meaning: Uncertainty signals. See output interpretation.
decision
Section titled “decision”Meaning: Optional routing recommendation.
confidence_level
Section titled “confidence_level”Meaning: Categorical confidence label.
task_type
Section titled “task_type”Meaning: Broad inferred task or role category when available.
job_signals
Section titled “job_signals”Meaning: Signals detected from the input.
domain_confidence
Section titled “domain_confidence”Meaning: Signal for how strongly the input fits the supported domain.
domain_is_ambiguous and is_ambiguous
Section titled “domain_is_ambiguous and is_ambiguous”Meaning: Ambiguity flags for domain or overall result interpretation.
weak_signal_detected and weak_signal_reason
Section titled “weak_signal_detected and weak_signal_reason”Meaning: Indicates sparse or weak evidence when present.
Interpretation Notes
Section titled “Interpretation Notes”Use this endpoint when your workflow needs one best occupation suggestion. Use confidence, uncertainty, trust_score, ambiguity fields, weak-signal fields, and decision to decide whether the result can be accepted, displayed with caveats, or routed for review.
For cross-endpoint guidance, read output interpretation and standard error responses.