Resume/CV Job Match Score             [ i12AI.com ![i12AI.com logo](https://sharpapi.com/storage/22133/conversions/i12ai-logo-dark-full_size.jpg) ](/)  Open main menu    

  API Catalog      

 [ E-commerce  ](/en/catalog/ai/e-commerce)APIs to streamline every aspect of e-commerce, from product details to customer engagement.

 [ Content &amp; Marketing Automation  ](/en/catalog/ai/content-marketing-automation)Automation tools for efficient content creation, audience engagement, moderation and marketing workflows.

 [ HR Tech  ](/en/catalog/ai/hr-tech)APIs designed to simplify recruitment, resume parsing, skill-matching, and candidate evaluation.

 [ Travel, Tourism &amp; Hospitality  ](/en/catalog/ai/travel-tourism-hospitality)Tools to enhance travel and hospitality services, from customer insights to product organization.

 [ SEO  ](/en/catalog/ai/seo)Solutions to automate your SEO essentials, including tags and metadata management.

 [ Accounting &amp; Finance  ](/en/catalog/ai/accounting-finance)AI endpoints for invoice processing, receipt parsing, and financial document analysis.

 [ Utility APIs  ](/en/catalog/utility)Robust databases and tools for enhancing applications with Travel &amp; HR industry-specific data.

 [ Pricing ](/en/pricing) [ Sign up → ](https://sharpapi.com/?aff=TMEFILHX) 

 [ i12AI.com ![i12AI.com logo](https://sharpapi.com/storage/22133/conversions/i12ai-logo-dark-full_size.jpg) ](/)  Close menu    

  API Catalog    [ E-commerce ](/en/catalog/ai/e-commerce) [ Content &amp; Marketing Automation ](/en/catalog/ai/content-marketing-automation) [ HR Tech ](/en/catalog/ai/hr-tech) [ Travel, Tourism &amp; Hospitality ](/en/catalog/ai/travel-tourism-hospitality) [ SEO ](/en/catalog/ai/seo) [ Accounting &amp; Finance ](/en/catalog/ai/accounting-finance) [ Utility APIs ](/en/catalog/utility) 

 [ Pricing ](/en/pricing) [ Sign up → ](https://sharpapi.com/?aff=TMEFILHX) 

 1. [    Home ](https://api.i12ai.com/en)
2. [APIs Catalog](https://api.i12ai.com/en/catalog)
3. [HR Tech](https://api.i12ai.com/en/catalog/ai/hr-tech)
4. [Resume/CV Job Match Score](https://api.i12ai.com/en/catalog/ai/hr-tech/resume-cv-job-match-score)

  [ HR Tech ](https://api.i12ai.com/en/catalog/ai/hr-tech)

  AI-powered API  

 Resume/CV Job Match Score 
===========================

 Smart AI scoring for CV-to-job compatibility 
----------------------------------------------

Effortlessly evaluate how well a candidate fits a role using SharpAPI's **Resume/CV &amp; Job Description Compatibility Scoring API**. Upload a resume, provide a job description, and let our powerful scoring engine analyse compatibility across 20 key hiring criteria.

Supported resume files - **11 file formats**:

**DOC, DOCX, TXT, RTF, PDF, JPG, JPEG, JPE, PNG, TIFF, TIF**

And yes - it handles those **flattened PDFs** where the entire resume is just images instead of text.

This endpoint is designed to help HR platforms, recruitment systems, and ATS providers instantly quantify CV-to-job fit using AI-powered Natural Language Processing and weighted scoring models.

The API provides structured match scores for core hiring criteria such as skills, education, experience, certifications, soft skills, and more. It also returns human-readable explanations for the most critical matching areas to support better decision-making.

This API is perfect for developers working on:

- Automated candidate screening
- ATS integration
- Smart job-matching algorithms
- HR analytics dashboards

---

### Supported Parameters

NameTypeDescriptionfileFileResume/CV file (PDF, DOCX, TXT, etc.)contentStringFull job description in plain textlanguageStringLanguage for explanations (default is "English")contextString (optional)Per-request directives that modify scoring weights and interpretation. Follows the `EMPHASIZE` / `DEEMPHASIZE` / `CREDIT` directive contract described above. Max **5000 characters**Requests exceeding the 5000-character limit will fail validation with an HTTP 422 response

The resume file must be uploaded using `form-data` as the parameter named `file`. You must also provide a `content` string with the full job description. The optional `language` parameter defines the explanation output language (default is English).

> **CVMatchScore.com** was built using this SharpAPI endpoint.
> See it in action by matching a CV against a job description in real time.
> 
> 👉 **Try it live:** 

### AI jobs involve two key steps:

1. **Submitting the AI job:** Initiating the process by sending the job request.
2. **Monitoring and receiving results:** Continuously checking the job status and obtaining the final output upon successful completion.

---

### Related SDKs/Libraries

- Laravel 

     [ Laravel Resume/CV &amp; Job Description Match Score   ](https://github.com/sharpapi/laravel-resume-job-match-score)
- PHP 

     [ PHP Resume/CV and Job Description Match Score   ](https://github.com/sharpapi/php-resume-job-match-score)
- Laravel 

     [ Resume/CV &amp; Job Description Match Score for Laravel   ](https://github.com/sharpapi/laravel-resume-job-match-score)
- Node.js 

     [ Resume Job Match Score for Node.js   ](https://www.npmjs.com/package/@sharpapi/sharpapi-node-resume-job-match-score)

---

 ![Resume/CV Job Match Score](https://sharpapi.com/storage/3756/conversions/ChatGPT-Image-1-maj-2025%2C-13_51_39-full_size.jpg) [     Check API Details Documentation   Check API Details Documentation ](https://documenter.getpostman.com/view/31106842/2s9Ye8faUp#6514b68d-64ad-4726-85a3-40f27d31d45b) 

 [ ![SharpAPI SOC 2 Type II](/build/assets/resources/images/a2zweb-soc2-Cb6pM2no.png) ](https://trust.a2zweb.co/) SharpAPI is now SOC 2 Type II compliant. You can check details at our [ Trust Center Portal. ](https://trust.a2zweb.co/)

 Your data is your data. Learn how we protect it and comply with global privacy standards in our [ Data Handling and Compliance policy ](https://sharpapi.com/data-handling-and-compliance).

What's new
----------

The `context` parameter has been significantly upgraded. It is no longer just a free-form note appended to the prompt — it now follows a **formal directive contract** that the scoring engine recognises and maps onto concrete weight adjustments in the final match score.

Key improvements:

1. **`context` now influences `overall_match`.** Directives adjust the internal weighting table *before* the weighted-average `overall_match` is computed, so a change in emphasis is reflected in both the individual metrics and the final overall score.
2. **Three directive shapes** (`EMPHASIZE`, `DEEMPHASIZE`, `CREDIT`) give you predictable, repeatable behaviour.
3. **Role-family standard credentials** are now credited even when the job description is silent about them (e.g. Excel / SQL / Power BI for finance roles).
4. **Maximum `context` length** is now formally set to **5000 characters** per request.

---

Using the `context` parameter
-----------------------------

The `context` parameter lets you pass per-request instructions that modify how the scoring engine weights and interprets specific metrics. Use it to customise scoring for the specific role, seniority, or hiring strategy behind each job description — without rewriting the job description itself.

### Directive contract

The engine recognises three directive shapes. You can mix multiple directives in a single `context` string, separated by periods or newlines.

#### 1. `EMPHASIZE: `

Increases the weight of the matching metric(s) in the overall score calculation by one step (capped at the maximum). Use it to signal *"this dimension matters more than the default for this particular role."*

**Example:**

```
EMPHASIZE: skills

```

#### 2. `DEEMPHASIZE: `

Decreases the weight of the matching metric(s) by one step (floor of 1 — weights never drop to zero). Use it to signal *"this dimension is less critical than the default for this particular role."*

> **Important:** `DEEMPHASIZE` reduces the metric's *weight in the overall average* — it does **not** make the engine score that metric more strictly. If you want the engine to pay less attention to experience, use `DEEMPHASIZE: experience` — not phrases like "be strict about experience".

**Example:**

```
DEEMPHASIZE: experience

```

#### 3. `CREDIT: `

Instructs the engine to treat the named item as a plausible requirement for this role family, even if the job description does not list it explicitly. Useful when your hiring standards include tools or certifications that aren't spelled out in the JD.

**Example:**

```
CREDIT: Excel and Analytics certificates

```

### Topic mapping

Topics in directives can be either **exact metric names** (e.g. `skills_match`, `education_match`) or **plain-English categories**. The engine maps categories to the related metrics internally, so you don't need to memorise the full schema.

Topic keywordMetrics affected`skills`, `technical skills``skills_match`, `technical_stack_match``experience``experience_match`, `years_experience_weighting`, `recent_role_relevance``education``education_match``certificates`, `certifications``certifications_match`, `certifications_training_relevance``location`, `remote``location_preference_match`, `remote_work_flexibility``management`, `leadership``management_experience_match``tenure`, `stability``stability_score`---

Recommended patterns
--------------------

Based on internal validation, these `context` patterns produce the most reliable, directional results:

### Pattern 1 — Entry-level / fresher role where credentials matter more than years of experience

```
EMPHASIZE: skills. EMPHASIZE: education. DEEMPHASIZE: experience. CREDIT: Excel and Analytics certificates.

```

### Pattern 2 — Senior technical role where stack match is critical

```
EMPHASIZE: skills. EMPHASIZE: technical_stack_match. DEEMPHASIZE: education.

```

### Pattern 3 — Leadership role where management experience outweighs hands-on skills

```
EMPHASIZE: management. EMPHASIZE: experience. DEEMPHASIZE: technical_stack_match.

```

### Pattern 4 — Remote-first hiring where location is irrelevant

```
DEEMPHASIZE: location. EMPHASIZE: skills.

```

---

Best practices
--------------

- **Be specific.** `CREDIT: Excel, SQL, Power BI` will move the needle; generic phrases like *"practical competency outweighs formal credentials"* generally won't.
- **Use contrast pairs.** Combining `EMPHASIZE` with `DEEMPHASIZE` in the same request gives the engine a clearer signal than a single directive in isolation.
- **Name tools, credentials, and technologies explicitly** rather than referring to abstract qualities like "talent" or "potential".
- **Avoid percentage-based instructions.** Directives like *"reduce weight by 50%"* are interpreted conservatively as a single `DEEMPHASIZE` step. Use discrete directives instead — they are more reliable than fractional arithmetic.
- **Keep `context` focused.** Short, targeted directive strings (a handful of instructions) outperform long prose paragraphs.

---

What `context` can and cannot change
------------------------------------

### What `context` can change

- **Weights** of any of the 20 metrics in the `overall_match` calculation.
- **Credit** given to resume items (skills, tools, certifications) that are not explicitly listed in the job description but are standard for the role family.
- **Scoring emphasis** on role-family-standard credentials (e.g. finance certifications, PM frameworks) when the JD is silent about them.

### What `context` cannot change

- **Arithmetic metrics.** Scores like `stability_score`, `location_preference_match`, and `years_experience_weighting` are computed from hard facts (dates, geography). `context` adjusts their *weight* in `overall_match`, but the individual score itself will remain stable across runs.
- **The JSON schema.** The 20 metrics, their names, and the `explanations` structure are fixed. `context` cannot add or remove fields.
- **Personal-data protections.** The engine always anonymises the resume before scoring and ignores any directive that would ask it to bypass this.

---

A note on determinism
---------------------

LLMs are inherently **non-deterministic** on the margins. Tiny variations in the input — a different punctuation mark, a reordered sentence, or a slightly rephrased directive — can occasionally produce slightly different scores. This is a property of the underlying technology, not a bug.

The `context` parameter is our primary lever for steering the engine toward the scoring behaviour that best matches your hiring workflow. If you encounter patterns where the engine's output doesn't match your expectations, the most effective feedback is a concrete example (resume + job description + context + expected vs. actual scores) — that's exactly the kind of input we use to continuously tune the scoring rules.

---

Step 1. Submit the Compatibility Scoring Request
------------------------------------------------

**Endpoint:** `POST - /api/v1/hr/resume_job_match_score`

**REQUEST EXAMPLE:**

```
curl --location 'https://sharpapi.com/api/v1/hr/resume_job_match_score' \
--header 'Accept: application/json' \
-H "Authorization: Bearer YOUR_API_TOKEN" \
--form 'file=@"Resume.pdf"' \
--form 'content="Software Engineer - We are looking for a Software Engineer proficient in JavaScript, React, and Node.js, with experience in Agile methodologies."' \
--form 'language="English"'

```

**RESPONSE EXAMPLE:**

```
{
  "status_url": "https://sharpapi.com/api/v1/job/status/45da1abe-35a3-4628-ae70-e2cb48c084c2",
  "job_id": "45da1abe-35a3-4628-ae70-e2cb48c084c2"
}

```

---

Step 2. Monitor &amp; Fetch Results
-----------------------------------

**Endpoint:** `GET - /api/v1/hr/resume_match_score/job/status/:uuid`

This endpoint returns the status and result of the resume-to-job matching job.

**RESULT EXAMPLE:**

```
{
    "data": {
        "type": "api_job_result",
        "id": "2f17d9ef-dcbc-4521-9a20-6d9f41e58de8",
        "attributes": {
            "status": "success",
            "type": "hr_resume_job_match_score",
            "result": {
                "match_scores": {
                    "overall_match": 65,
                    "skills_match": 80,
                    "experience_match": 90,
                    "education_match": 0,
                    "certifications_match": 0,
                    "job_title_relevance": 70,
                    "industry_experience_match": 85,
                    "project_experience_match": 75,
                    "technical_stack_match": 80,
                    "methodologies_match": 60,
                    "soft_skills_match": 75,
                    "language_proficiency_match": 100,
                    "location_preference_match": 50,
                    "remote_work_flexibility": 80,
                    "certifications_training_relevance": 0,
                    "years_experience_weighting": 90,
                    "recent_role_relevance": 60,
                    "management_experience_match": 100,
                    "cultural_fit_potential": 70,
                    "stability_score": 85
                },
                "explanations": {
                    "skills_match": "The candidate has strong PHP and MySQL skills, which align well with the job requirements. However, specific mention of Laravel experience is missing.",
                    "experience_match": "The candidate has over 22 years of programming experience, which is highly relevant and exceeds the typical requirements for the role.",
                    "education_match": "No specific educational background is provided in the resume, making it impossible to assess alignment with job requirements.",
                    "certifications_match": "No certifications are listed in the resume, so alignment with any required certifications cannot be assessed.",
                    "language_proficiency_match": "The candidate has professional working proficiency in English, which matches the job requirement for English communication skills."
                }
            }
        }
    }
}

```

---

**Related topics:** Resume job matching, resume scoring API, CV scoring engine, HR matching software, AI hiring assistant, applicant scoring API, ATS compatibility match

- Related Keywords:
- [ HR Tech ](https://api.i12ai.com/en/tag/hr-tech)
- [ HR API ](https://api.i12ai.com/en/tag/hr-api)
- [ AI CV Parsing ](https://api.i12ai.com/en/tag/ai-cv-parsing)
- [ CV ](https://api.i12ai.com/en/tag/cv)
- [ HR ](https://api.i12ai.com/en/tag/hr)
- [ Matching ](https://api.i12ai.com/en/tag/matching)
- [ Job Positions ](https://api.i12ai.com/en/tag/job-positions)

###  Other HR Tech APIs 

- [   

     Job Description Generator ](https://api.i12ai.com/en/catalog/ai/hr-tech/job-description-generator)
- [   

     Related Job Positions Generator ](https://api.i12ai.com/en/catalog/ai/hr-tech/related-job-positions-generator)
- [   

     Related Skills Generator ](https://api.i12ai.com/en/catalog/ai/hr-tech/related-skills-generator)
- [   

     Resume/CV Parsing ](https://api.i12ai.com/en/catalog/ai/hr-tech/resume-cv-parsing)

   [ ![SOC 2 Type II](/build/assets/resources/images/a2zweb-soc2-Cb6pM2no.png) ](https://trust.a2zweb.co/)We're SOC 2 Type II certified!

 Simply put, your data is in safe hands, and you can count on us to stay secure. Check the details at our [Trust Portal](https://trust.a2zweb.co/).

 © 2026 i12AI.com · Powered by [ ![SharpAPI logo](/build/assets/resources/images/logo200-C65na0V3.png) SharpAPI ](https://sharpapi.com/)
