API Documentation
Build powerful apprenticeship matching into your platform with the Job Verdict API
The Job Verdict API uses AI to analyze candidate profiles and job descriptions, providing intelligent matching scores and detailed explanations.
RESTful API
Simple HTTP requests with JSON responses
AI-Powered
Advanced matching with explainable scores
Production Ready
Webhooks, rate limits, and detailed logging
Authentication
All API requests require authentication using a Bearer token in the Authorization header.
Authorization: Bearer jv_your_api_key_hereKeep your API keys secure
Never expose your API keys in client-side code or public repositories. Use environment variables or secure key management systems.
Quick Start
Make your first request
Send a POST request to analyze a candidate profile against a job description:
curl -X POST https://www.jobverdict.com/api/b2b/apprenticeship-match \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"candidateProfile": {
"formations": [{
"name": "BTS SIO",
"level": "bac+2",
"school": "Lycée Technique Paris",
"year": 2023,
"status": "completed"
}],
"skills": ["Python", "JavaScript", "React", "SQL"],
"experiences": [{
"company": "Tech Startup",
"role": "Stagiaire développeur",
"startDate": "06/2023",
"endDate": "08/2023"
}]
},
"jobDescription": "Recherche apprenti développeur full-stack pour rejoindre notre équipe...",
"jobTitle": "Apprenti Développeur Full-Stack",
"company": "TechCorp"
}'Response
{
"matchScore": 85,
"verdict": "GO",
"scoreBreakdown": {
"formation": {
"raw": 90,
"weighted": 36,
"weight": 40
},
"contractType": {
"raw": 100,
"weighted": 25,
"weight": 25
},
"experienceRedFlags": {
"raw": 100,
"weighted": 15,
"weight": 15
},
"skills": {
"raw": 75,
"weighted": 15,
"weight": 20
}
},
"reasoning": "Excellent match: BTS SIO aligns perfectly with the position...",
"meta": {
"tokensUsed": 1250,
"apiVersion": "1.0",
"requestId": "550e8400-e29b-41d4-a716-446655440000",
"modelVersion": "gpt-4o-mini-2024-07-18",
"scoringVersion": "v1-a3f8c9d2e1b0"
}
}API Endpoints
Apprenticeship Match
/api/b2b/apprenticeship-matchAnalyze candidate profile against a job description and get a match score
Request Body
candidateProfileobjectrequiredCandidate information including formations, skills, and experiences
jobDescriptionstringrequiredFull job description text
jobTitlestringrequiredJob title
companystringoptionalCompany name
Response Fields
matchScorenumberMatch score from 0 to 100
verdictstring"GO", "NOGO", or "CONDITIONAL"
scoreBreakdownobjectDetailed breakdown of score components
Error Handling
The API uses standard HTTP status codes to indicate success or failure:
Success
Request completed successfully
Bad Request
Invalid request parameters
Unauthorized
Invalid or missing API key
Rate Limit Exceeded
Too many requests, check Retry-After header
Error Response Format
{
"error": "Rate limit exceeded",
"details": "You have exceeded your daily quota",
"retryAfter": 3600
}Rate Limits
API requests are limited by daily and monthly quotas based on your plan.
Daily Limit
1,000
requests per day
Monthly Limit
30,000
requests per month
Rate Limit Headers
X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 850
X-RateLimit-Reset: 1640000000
Retry-After: 3600