---
title: Skill Based Resume Screening API
slug: screen-resume
url: https://apyhub.com/dosvak/service/screen-resume
provider: Dosvak LLC
categories: [Artificial Intelligence, HR]
tags: [resume-screening, candidate-screening, hiring, hr-automation, document-screening]
auth: api_key
version: 0.1.0
service_type: sync
endpoints: 2
atoms: 100
mcp: true
---

# Skill Based Resume Screening API

Screen resumes from text or uploaded PDF and DOCX files using minimum years and required skills. Built to automate first-pass candidate review.

## Endpoints

| Method | URL | Description | Atoms |
| --- | --- | --- | --- |
| POST | `https://api.eu.apyhub.com/dosvak/screen-resume` | What it does Screens a resume using the submitted resume text and optional screening criteria. It a… | 100 |
| POST | `https://api.eu.apyhub.com/dosvak/screen-resume/upload` | What it does Uploads a resume file (.pdf or .docx) and eturns a structured JSON object containing t… | 100 |

## Endpoint reference

### Screen resume

`POST https://api.eu.apyhub.com/dosvak/screen-resume` · 100 atoms · accepts `application/json` · returns `application/json`

| Parameter | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `min_years` | body | integer | no | Min Years Default: `0`. |
| `resume_text` | body | string | yes | Resume Text |
| `required_skills` | body | array of string | no | Required Skills |

#### Quickstart

Send a resume text to screen it against the minimum years of experience and required skills you provide.

```bash
curl -X POST "https://api.eu.apyhub.com/dosvak/screen-resume" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "resume_text": "Software engineer with 6 years of experience building web applications, APIs, and data pipelines.",
    "min_years": 5,
    "required_skills": ["Python", "APIs"]
  }'
```

#### What you'll get back

Returns a structured JSON object containing the requested results and any additional metadata produced during processing.

```json
{
  "score": 100,
  "recommendation": "strong_yes",
  "matched_required_skills": [
    "sql"
  ],
  "missing_required_skills": [],
  "skills_coverage_pct": 100,
  "years_requirement_met": true,
  "parsed_resume": {
    "name": "Jane Doe",
    "estimated_years_experience": 8,
    "skills": [
      "python",
      "sql",
      "fastapi",
      "docker"
    ]
  },
  "llm_assessment": {
    "fit_label": "strong_yes",
    "strengths": [
      "Python",
      "SQL"
    ],
    "interview_focus": [
      "REST APIs",
      "ETL pipelines"
    ]
  }
}
```

### Screen resume upload

`POST https://api.eu.apyhub.com/dosvak/screen-resume/upload` · 100 atoms · accepts `multipart/form-data` · returns `application/json`

| Parameter | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `file` | body | string (binary) | yes | Resume file (.pdf or .docx) |
| `min_years` | body | integer | no | Default: `0`. |
| `required_skills` | body | string | no | Comma-separated skills, e.g. python,sql,fastapi |

#### Quickstart

Upload a resume file to screen it for matching skills.

```bash
curl -X POST "https://api.eu.apyhub.com/dosvak/screen-resume/upload" \
  -H "apy-token: $APY_TOKEN" \
  -F "file=@/path/to/resume.pdf"
```

#### What you'll get back

eturns a structured JSON object containing the screening results, extracted information, evaluation details, request metadata, and attribution.

```json
{
  "score": 20,
  "recommendation": "no",
  "matched_required_skills": [],
  "missing_required_skills": [],
  "skills_coverage_pct": 0,
  "years_requirement_met": true,
  "parsed_resume": {
    "name": "Jane Doe Resume",
    "estimated_years_experience": 8,
    "skills": [
      "python",
      "sql",
      "fastapi",
      "docker"
    ]
  },
  "llm_assessment": {
    "fit_label": "strong_yes",
    "strengths": [
      "Python",
      "SQL"
    ],
    "interview_focus": [
      "ETL pipelines",
      "application deployment"
    ]
  },
  "input_mode": "file",
  "file_name": "Jane_Doe_Resume.docx",
  "file_type": "application/octet-stream"
}
```

## About

## What it does
Resume Screening lets you send a resume as plain text or upload a PDF or DOCX file, then returns a screening result you can use in your hiring flow. Provide `resume_text` for text-based screening, or upload `file` for document-based screening. Both endpoints also accept `min_years`, and the text endpoint accepts `required_skills` as an array while the upload endpoint accepts `required_skills` as a comma-separated string.

Use Resume Screening when you need a fast first pass on applicants before a recruiter reviews the full profile. A typical workflow is filtering resumes against a role requirement set, checking for minimum experience, or flagging candidates whose resumes mention the skills you care about. Returns a structured JSON object containing the screening results, extracted information, evaluation details, request metadata, and attribution.

This fits into applicant tracking systems, internal hiring tools, and lightweight qualification pipelines where you want to automate the first review step without building document handling yourself. Send the resume, set your thresholds, and use the returned screening output to route candidates forward or hold them for manual review.

## Usage

Base URL: `https://api.eu.apyhub.com` (default region — see
`GET https://apyhub.com/api/public/regions` for the rest).

Authenticate with an ApyHub API key in the `apy-token` header.
Full docs and a live playground: https://apyhub.com/dosvak/service/screen-resume
