Analyze resumes against job descriptions using advanced AI technology.
X-API-Key: your_api_key_here
Include this header in all API requests
https://rsapi.opik.net/api/process-resume
| Parameter | Type | Description |
|---|---|---|
| job_descriptionRequired | string | Complete job description text |
| candidate_dataRequired | string | Complete resume text |
{
"job_description": "Full job description text",
"candidate_data": "Complete resume text"
}
{
"candidate_name": "Full Name of Candidate",
"contact_info": {
"email": "email@example.com or N/A if none found",
"phone": "phone number or N/A if none found",
"country": "country name or N/A if none found",
"city": "city name or N/A if none found"
},
"online_profiles": {
"linkedin": "complete LinkedIn URL or N/A if none found",
"github": "complete GitHub URL or N/A if none found",
"portfolio": "complete portfolio/personal website URL or N/A if none found",
"other_links": ["any other relevant links found or empty array if none"]
},
"education": {
"highest_degree": "highest degree attained (e.g., Bachelor's, Master's, Ph.D.) or N/A if none found",
"field_of_study": "field/major of highest degree or N/A if none found",
"institution": "university/institution name or N/A if none found",
"graduation_year": "year of graduation for highest degree or N/A if none found"
},
"certifications": [
"List of all certifications and licenses mentioned in the resume",
"or empty array if none found"
],
"scores": {
"Skills Match": 0-100,
"Experience Relevance": 0-100,
"Education Fit": 0-100,
"Industry Knowledge": 0-100,
"Technical Proficiency": 0-100
},
"strengths": [
"First key strength or 'none'",
"Second key strength or 'none'",
"Third key strength or 'none'"
],
"weaknesses": [
"First area needing improvement or 'none'",
"Second area needing improvement or 'none'",
"Third area needing improvement or 'none'"
],
"average_score": 0-100
}
curl -X POST https://rsapi.opik.net/api/process-resume \
-H "Content-Type: application/json" \
-H "X-API-Key: your_api_key_here" \
-d '{
"job_description": "We are looking for a Senior Software Engineer...",
"candidate_data": "John Doe\nSoftware Engineer with 5 years experience..."
}'
import requests
import json
API_KEY = 'your_api_key_here'
API_URL = 'https://rsapi.opik.net/api/process-resume'
def analyze_resume(job_description, resume_text):
headers = {
'Content-Type': 'application/json',
'X-API-Key': API_KEY
}
payload = {
'job_description': job_description,
'candidate_data': resume_text
}
try {
response = requests.post(API_URL,
headers=headers,
json=payload)
response.raise_for_status()
return response.json()
except requests.exceptions.RequestException as e:
print(f"Error: {str(e)}")
return None
# Example usage
job_desc = "Senior Software Engineer with 5+ years..."
resume = "John Doe\nSoftware Engineer\n..."
result = analyze_resume(job_desc, resume)
if result:
print(f"Match Score: {result['average_score']}")
# Print education and certifications
education = result.get('education', {})
if education:
print(f"\nEducation: {education.get('highest_degree')} in {education.get('field_of_study')}")
print(f"Institution: {education.get('institution')}, {education.get('graduation_year')}")
# Print strengths
print("\nStrengths:")
for strength in result['strengths']:
print(f"- {strength}")
async function analyzeResume(jobDescription, resumeText) {
const API_KEY = 'your_api_key_here';
const API_URL = 'https://rsapi.opik.net/api/process-resume';
try {
const response = await fetch(API_URL, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-API-Key': API_KEY
},
body: JSON.stringify({
job_description: jobDescription,
candidate_data: resumeText
})
});
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
const result = await response.json();
return result;
} catch (error) {
console.error('Error:', error);
return null;
}
}
// Example usage
const jobDesc = "Senior Software Engineer with 5+ years...";
const resume = "John Doe\nSoftware Engineer\n...";
analyzeResume(jobDesc, resume)
.then(result => {
if (result) {
console.log(`Match Score: ${result.average_score}`);
console.log('\nStrengths:');
result.strengths.forEach(strength => {
console.log(`- ${strength}`);
});
}
});
<?php
function analyzeResume($jobDescription, $resumeText) {
$apiKey = 'your_api_key_here';
$apiUrl = 'https://rsapi.opik.net/api/process-resume';
$headers = array(
'Content-Type: application/json',
'X-API-Key: ' . $apiKey
);
$payload = array(
'job_description' => $jobDescription,
'candidate_data' => $resumeText
);
$ch = curl_init($apiUrl);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($payload));
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($httpCode === 200) {
return json_decode($response, true);
}
return null;
}
// Example usage
$jobDesc = "Senior Software Engineer with 5+ years...";
$resume = "John Doe\nSoftware Engineer\n...";
$result = analyzeResume($jobDesc, $resume);
if ($result) {
echo "Match Score: " . $result['average_score'] . "\n";
echo "\nStrengths:\n";
foreach ($result['strengths'] as $strength) {
echo "- " . $strength . "\n";
}
}
?>
# Basic resume analysis request
curl -X POST https://rsapi.opik.net/api/process-resume \
-H "Content-Type: application/json" \
-H "X-API-Key: your_api_key_here" \
-d '{
"job_description": "We are seeking a Senior Software Engineer with 5+ years of experience in web development. Required skills include: JavaScript, Python, and cloud technologies. The ideal candidate will have experience with microservices architecture and DevOps practices.",
"candidate_data": "John Smith\nSenior Software Engineer\n\nExperience:\n- 7 years developing web applications\n- Expert in JavaScript and Python\n- AWS certified developer\n- Led team of 5 engineers\n\nSkills:\n- JavaScript/Node.js\n- Python/Django\n- AWS, Docker, Kubernetes\n- CI/CD, Jenkins\n- RESTful APIs"
}'
# Using a file for the resume content
curl -X POST https://rsapi.opik.net/api/process-resume \
-H "Content-Type: application/json" \
-H "X-API-Key: your_api_key_here" \
-d @resume-payload.json
# Example with additional headers and verbose output
curl -X POST https://rsapi.opik.net/api/process-resume \
-H "Content-Type: application/json" \
-H "X-API-Key: your_api_key_here" \
-H "Accept: application/json" \
-v \
-d '{
"job_description": "Looking for a Frontend Developer...",
"candidate_data": "Jane Doe\nFrontend Developer\n..."
}'