API Kullanım
Recruiter CV Analysis API - Job Match Scoring endpoint dokümantasyonu
Authentication
API istekleri için önce Bearer token almanız gerekir. ConsumerKey ve SecretKey ile token endpoint'ine istek atarak token alın, sonra diğer endpoint'lerde bu token'ı Authorization: Bearer header'ında gönderin.
1. Token Al
POST https://api.stepbycv.com/api/recruiter/v1/token
Content-Type: application/json
{
"consumerKey": "sbcr_xxxxxxxxxxxxxxxxxxxxxxxx",
"secretKey": "your-secret-key"
}Response: { "accessToken": "...", "expiresIn": 3600 } (expiresIn saniye cinsinden, varsayılan 1 saat)
2. API İsteklerinde Token Kullan
Authorization: Bearer {accessToken}Roller API
CV analizinde roleId kullanmak için önce mevcut rolleri listeleyin. Recruiter API için Bearer token gereklidir.
Mevcut Rolleri Listele (Recruiter API)
GET https://api.stepbycv.com/api/recruiter/v1/roles
Authorization: Bearer {accessToken}Response örneği:
[
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"name": ".NET Developer",
"description": "Backend .NET geliştirici",
"requiredSkills": ["C#", ".NET", "SQL"],
"niceToHaveSkills": ["Docker", "Redis"],
"minYearsExperience": 3,
"iconName": null
}
]Önce token alın, sonra bu endpoint'i Bearer ile çağırın. Dönen id değerini analyze-cv isteğinde roleId olarak kullanın.
Not: Ana sitedeki CV analiz sayfası rol listesi için GET /api/roles kullanır (auth yok). Recruiter API müşterileri ise Bearer gerektiren yukarıdaki endpoint'i kullanmalıdır.
İnteraktif API Tester
Consumer Key ve Secret Key ile token alın, ardından CV analizi yapın.
1. Token Al
2. CV Analizi
GET /api/recruiter/v1/roles (Bearer gerekli). roleId veya jobDescription kullanın.
* roleId veya jobDescription en az biri gerekli.
CV Analiz Endpoint
POST https://api.stepbycv.com/api/recruiter/v1/analyze-cv
Request (multipart/form-data)
| Alan | Tip | Zorunlu | Açıklama |
|---|---|---|---|
| file | Evet | CV dosyası | |
| roleId | Guid | Hayır* | Rol ID. GET /api/recruiter/v1/roles (Bearer gerekli) ile mevcut rolleri alın |
| jobDescription | string | Hayır | İş ilanı metni; varsa analiz buna göre yapılır |
| jobTitle | string | Hayır | İş ilanı başlığı (opsiyonel) |
* roleId veya jobDescription en az biri zorunludur.
Response (200 OK)
{
"score": 82,
"matchLevel": "High",
"missingSkills": ["Docker", "Kubernetes"],
"strongSkills": ["C#", ".NET", "SQL"],
"experienceMatch": true,
"summary": "Candidate is strong backend developer..."
}matchLevel: High (≥75), Medium (≥50), Low (<50)
cURL Örneği
Önce rolleri listeleyip roleId alın, sonra token alıp CV analizi yapın:
# 0. Mevcut rolleri listele (roleId için)
curl -s "https://api.stepbycv.com/api/roles" | jq
# 1. Token al
TOKEN=$(curl -s -X POST "https://api.stepbycv.com/api/recruiter/v1/token" \
-H "Content-Type: application/json" \
-d '{"consumerKey":"sbcr_your_consumer_key","secretKey":"your_secret_key"}' \
| jq -r '.accessToken')
# 2. Mevcut rolleri listele (roleId için, Bearer gerekli)
curl -s "https://api.stepbycv.com/api/recruiter/v1/roles" \
-H "Authorization: Bearer $TOKEN" | jq
# 3. analyze-cv ile istek at (roleId veya jobDescription ile)
curl -X POST "https://api.stepbycv.com/api/recruiter/v1/analyze-cv" \
-H "Authorization: Bearer $TOKEN" \
-F "file=@cv.pdf" \
-F "roleId=3fa85f64-5717-4562-b3fc-2c963f66afa6"
# 4. veya jobDescription ile:
curl -X POST "https://api.stepbycv.com/api/recruiter/v1/analyze-cv" \
-H "Authorization: Bearer $TOKEN" \
-F "file=@cv.pdf" \
-F "jobDescription=We are looking for a .NET Developer with 3+ years experience..."jq yoksa, token response'undan accessToken değerini manuel kopyalayıp Bearer header'ında kullanabilirsiniz.