Discover/hh.ru API
live

hh.ru APIhh.ru

Search and retrieve job vacancies from hh.ru (HeadHunter). Filter by region, salary, experience, and industry. Returns full job details including skills and descriptions.

Endpoints
2
Updated
3mo ago
Try it
Region ID (1=Moscow, 2=St Petersburg). Multiple values supported.
Page number (0-indexed)
Search keywords (e.g., 'python developer', 'data engineer')
Labels: with_address, accept_handicapped, accept_kids, not_from_agency, accredited_it, low
Minimum salary amount
Salary currency code: RUR, USD, EUR, KZT, UAH, AZN, UZS, GEL, KGS, BYR
Industry ID (numeric)
Sort order: relevance, publication_time, salary_desc, salary_asc
Results per page
Work schedule: fullDay, shift, flexible, remote, flyInFlyOut
Education level: not_required_or_not_specified, secondary, special_secondary, higher, bach
Employment type: full, part, project, volunteer, probation
Required experience: noExperience, between1And3, between3And6, moreThan6
Employer/company ID
Where to search: name, company_name, description
Publication period in days: 1, 3, 7, 30
Enable text snippets in results (true/false)
Show only vacancies with salary specified (true/false)
Professional role ID (numeric)
api.parse.bot/scraper/3ccf546c-1803-406c-902c-9e3df9fe872e/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Use it in your codegrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/3ccf546c-1803-406c-902c-9e3df9fe872e/search_vacancies?area=1&text=python+developer&currency=RUR&per_page=20&schedule=remote&employment=full&experience=between1And3' \
  -H 'X-API-Key: $PARSE_API_KEY'
All endpoints · 2 totalclick to expand

Search for vacancies on hh.ru with available filters. Returns paginated results parsed from the search results page. Supports filtering by text, region, experience, employment type, schedule, and more.

Input
ParamTypeDescription
areastringRegion ID (1=Moscow, 2=St Petersburg). Multiple values supported.
pageintegerPage number (0-indexed)
textstringSearch keywords (e.g., 'python developer', 'data engineer')
labelstringLabels: with_address, accept_handicapped, accept_kids, not_from_agency, accredited_it, low_performance
salaryintegerMinimum salary amount
currencystringSalary currency code: RUR, USD, EUR, KZT, UAH, AZN, UZS, GEL, KGS, BYR
industrystringIndustry ID (numeric)
order_bystringSort order: relevance, publication_time, salary_desc, salary_asc
per_pageintegerResults per page
schedulestringWork schedule: fullDay, shift, flexible, remote, flyInFlyOut
educationstringEducation level: not_required_or_not_specified, secondary, special_secondary, higher, bachelor, master, candidate, doctor
employmentstringEmployment type: full, part, project, volunteer, probation
experiencestringRequired experience: noExperience, between1And3, between3And6, moreThan6
employer_idstringEmployer/company ID
search_fieldstringWhere to search: name, company_name, description
search_periodintegerPublication period in days: 1, 3, 7, 30
enable_snippetsstringEnable text snippets in results (true/false)
only_with_salarystringShow only vacancies with salary specified (true/false)
professional_rolestringProfessional role ID (numeric)
Response
{
  "type": "object",
  "fields": {
    "page": "integer - current page number",
    "found": "integer - total vacancies matching filters",
    "pages": "integer - total pages available",
    "per_page": "integer - results per page",
    "vacancies": "array of vacancy objects with id, name, url, salary, experience, experience_id, employer, address, labels"
  },
  "sample": {
    "data": {
      "page": 0,
      "found": 3179,
      "pages": 3,
      "per_page": 5,
      "vacancies": [
        {
          "id": "131928728",
          "url": "https://hh.ru/vacancy/131928728",
          "name": "Python Developer",
          "labels": null,
          "salary": null,
          "address": "Москва",
          "employer": {
            "id": "2136954",
            "name": "Домклик"
          },
          "experience": "Опыт 3-6 лет",
          "experience_id": "between3And6"
        }
      ]
    },
    "status": "success"
  }
}

About the hh.ru API

The hh.ru API provides 2 endpoints to search and retrieve job vacancies from HeadHunter, Russia's largest job board. The search_vacancies endpoint returns paginated results with salary, employer, experience level, and location data across any combination of region, industry, and employment type. The get_vacancy endpoint returns the full job description, key skills array, and employer details for a specific listing by ID.

Search Vacancies

The search_vacancies endpoint accepts keyword queries via the text parameter alongside a range of structured filters. The area parameter accepts region IDs — for example, 1 for Moscow and 2 for St. Petersburg — and supports multiple values for broader geographic coverage. Results can be sorted by relevance, publication_time, salary_desc, or salary_asc using the order_by parameter. Each vacancy object in the response includes id, name, salary, experience, employer, address, and labels (such as remote work indicators). Pagination is handled via the zero-indexed page parameter; the response includes found (total matching vacancies), pages, and per_page to navigate result sets.

Vacancy Detail

The get_vacancy endpoint takes a single vacancy_id (obtained from search results) and returns the full listing. This includes the complete HTML description field, a key_skills array listing required competencies, structured employer data with ID and name, salary text, experience requirement, and a direct url back to the listing on hh.ru. The labels field surfaces work-format tags such as remote eligibility.

Filtering and Coverage

The salary and currency parameters let you filter vacancies by minimum compensation in a specific currency, including RUB, USD, EUR, and several CIS currencies (KZT, UAH, UZS, GEL, KGS, AZN, BYR). The industry parameter accepts numeric industry IDs for sector-specific queries. The label filter supports values like not_from_agency, accredited_it, and accept_handicapped, enabling precise candidate-facing or compliance-related searches.

Common use cases
  • Aggregate Moscow and St. Petersburg tech job listings filtered by salary and the accredited_it label for IT sector analysis
  • Track new vacancy publications in a specific industry by polling search_vacancies sorted by publication_time
  • Extract key_skills arrays from get_vacancy responses to identify in-demand competencies across a job category
  • Build a salary benchmarking dataset by querying search_vacancies with order_by=salary_desc across multiple regions
  • Monitor a specific employer's active listings by searching on company name and collecting vacancy IDs for detail retrieval
  • Compile full job descriptions via get_vacancy to power a searchable internal jobs database or career recommendation tool
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000250 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does hh.ru have an official developer API?+
Yes. HeadHunter publishes an official public API documented at https://dev.hh.ru. It covers vacancies, resumes, employers, and more, and requires OAuth 2.0 registration. This Parse API focuses specifically on vacancy search and detail retrieval without requiring you to manage OAuth credentials.
What does `search_vacancies` return and how granular is the salary data?+
Each vacancy object in the vacancies array includes a salary field returned as a text string (e.g. '100 000–150 000 RUR'). The endpoint lets you filter by a minimum salary integer and a currency code, but the salary in each result is a display string rather than structured min/max integers. The get_vacancy endpoint similarly returns salary as a text field.
Does the API return resume or candidate profile data?+
No. The two endpoints cover vacancy search and vacancy detail only — no resume listings, candidate profiles, or application data are currently returned. You can fork this API on Parse and revise it to add an endpoint targeting candidate or resume data.
Are there pagination limits on search results?+
The search_vacancies response includes pages, per_page, and found fields so you can iterate through result sets. hh.ru's search interface caps deep pagination — results beyond a certain page depth may not be accessible, which means very large result sets (thousands of pages) may be truncated in practice. Applying tighter filters like area, industry, or salary reduces result set size and improves coverage.
Can I retrieve employer company profiles or company-level metadata beyond what's in a vacancy?+
Currently the API returns employer data only as an object with id and name fields embedded in each vacancy. Standalone company profiles, employee counts, or employer ratings are not covered. You can fork this API on Parse and revise it to add an endpoint for employer detail pages.
Page content last updated . Spec covers 2 endpoints from hh.ru.
Related APIs in JobsSee all →
ca.indeed.com API
Search for jobs across Canada and access detailed job listings, company profiles, employee reviews, and salary information all in one place. Build recruitment tools, career research applications, or job market analysis platforms with comprehensive employment data from Indeed Canada.
devex.com API
Search and explore global development opportunities including tenders, grants, job postings, news, organizations, and events all in one place. Find funding details, discover career opportunities, and stay updated on international development initiatives through a single integrated platform.
104.com.tw API
Search for jobs across Taiwan's largest job board and retrieve detailed job listings including descriptions, requirements, and company information. Find the right career opportunities by browsing thousands of positions or searching for specific roles that match your skills and interests.
metacareers.com API
Search and browse Meta job openings across all departments and locations. Filter by keyword, experience level, or role category — including University Graduate and AR/VR specializations — and retrieve comprehensive details for each listing, including job description, requirements, salary range, and application link.
naukri.com API
naukri.com API
nvidia.com API
nvidia.com API
airtasker.com API
Search and browse Airtasker tasks by location, category, price, and keywords, then access detailed task information and user profiles. Get location suggestions and category recommendations to discover available work and service opportunities in your area.
amazon.jobs API
Search and browse Amazon job openings by keywords, location, and category, then view detailed information about specific positions. Filter results across multiple job categories and locations with easy pagination.