hh: поиск работы 图标

hh: поиск работы 数据 API

HeadHunter · 招聘求职

hh: поиск работы 是 HeadHunter(hh.ru)推出的官方安卓求职应用。HeadHunter 总部位于莫斯科,自 2000 年起运营俄罗斯领先的在线招聘平台之一。求职者可以按职位、薪资、地区、经验要求和办公形式(远程、混合或到岗)搜索职位,浏览附近职位或与看过的职位相似的推荐,并通过标识辨认经核验的可信雇主和获得俄罗斯国家 IT 资质认证的公司。职位详情页展示完整描述、所需关键技能、薪资区间、排班与工作时长、职能角色和办公地址;雇主公开联系方式时,还能在联系人面板中查看招聘方电话。从 HeadHunter 网站分享的职位链接可直接跳转到这一页面。在“我的简历”中,求职者可以创建、编辑并刷新简历,然后投递职位——有的职位要求附上求职信,有的接受未填写完整的简历——再在“回复”标签页里跟进每一次投递,与招聘经理聊天,查看雇主是否已读。简历浏览页则列出哪些公司在何时打开过自己的简历。它面向俄罗斯就业市场,与 Rabota.ru、SuperJob、Zarplata.ru、Avito 招聘板块以及官方的 Trudvsem 平台竞争,是 HeadHunter 职位库的移动端入口。

职位薪资区间是这批招聘记录的锚点:每条职位都返回 salary_range,含 from、to、currency、税前标记 gross 与发薪周期 frequency,并附带 area、work_format、employment_form、经验要求 experience,以及标注 trusted 或 accredited_it_employer、带在招职位数 open_vacancies 的 employer 信息。完整的职位卡片再补充 key_skills、professional_roles、schedule、working_hours、address 和 responses_count;联系人记录把招聘方电话拆成 country、city、number,并带 virtual_phone_state。

求职者一侧,简历包含 title、salary、skill_set、education、experience 和 professional_roles,以及 total_views、new_views 浏览计数和标明下次可刷新时间的 next_publish_at;浏览列表记录哪家 employer 在何时(created_at)打开过简历。投递记录写明 state、read 与 viewed_by_opponent 标记、messaging_status、chat_id,以及雇主的 employer_responses_read_percent 和 manager_inactive_minutes。

这些记录可支撑薪酬对标管道,把薪资区间、地区、雇主资质和办公形式汇总成按角色、地区划分的薪酬带地图;可支撑 ATS 集成,镜像投递状态、已读情况和会话号,让招聘官只经营一条管道,不必守两个收件箱;也可支撑求职工具,把简历浏览与修改对照,告诉求职者哪个版本真正受关注。openData Studio 让 HeadHunter 的职位、简历与投递记录成为可调用的开放数据。

应用截图

  • hh: поиск работы 应用截图 1
  • hh: поиск работы 应用截图 2
  • hh: поиск работы 应用截图 3
  • hh: поиск работы 应用截图 4
  • hh: поиск работы 应用截图 5
  • hh: поиск работы 应用截图 6
  • hh: поиск работы 应用截图 7

API 端点一览

以下端点与请求/响应示例均依据应用界面推导重构,为示意说明,并非实际抓包。

  • 搜索职位

    GET /v1/openings/search opendata

    分页返回职位列表(title、salary_range、area、employer、work_format),用于首页搜索。

    认证方式: 可选的 OAuth2 Bearer 访问令牌,来自应用的登录流程。已登录请求还会携带生成的 User-Agent({package}/{version}、Device、Android OS、UUID)。

    • items
    • id
    • name
    • published_at
    • created_at
    • archived
    • alternate_url
    • url
    • salary_range
    • from
    • to
    • currency
    • gross
    • mode
    • frequency
    • area
    • employer
    • trusted
    • open_vacancies
    • accredited_it_employer
    • logo_urls
    • experience
    • employment_form
    • work_format
    • show_contacts
    • response_letter_required
    • found
    • page
    • pages
    • per_page
    GET /v1/openings/search?text=product+manager&area=1&page=0&per_page=20 HTTP/1.1
    User-Agent: <package>/<version>, Device: <device>, Android OS: <os> (UUID: <uuid>)
    Authorization: Bearer <access_token>
    {
      "items": [
        {
          "id": "123456789",
          "name": "Product Manager",
          "published_at": "2026-09-20T10:15:00+0300",
          "created_at": "2026-09-18T09:00:00+0300",
          "archived": false,
          "alternate_url": "https://example.org/vacancy/123456789",
          "url": "https://example.org/api/jobs/123456789",
          "salary_range": {"from": 180000, "to": 250000, "currency": "RUR", "gross": true, "mode": "MONTH", "frequency": "MONTH"},
          "area": {"id": "1", "name": "Москва", "url": "https://example.org/api/areas/1"},
          "employer": {"id": "1337", "name": "Example Corp", "alternate_url": "https://example.org/employer/1337", "trusted": true, "open_vacancies": 42, "accredited_it_employer": true, "logo_urls": {"90": "https://cdn.example.org/logo90.png", "240": "https://cdn.example.org/logo240.png", "original": "https://cdn.example.org/logo.png"}},
          "experience": {"id": "between3And6", "name": "От 3 до 6 лет"},
          "employment_form": {"id": "FULL", "name": "Полная занятость"},
          "work_format": [{"id": "HYBRID", "name": "Гибрид"}],
          "show_contacts": true,
          "response_letter_required": false,
          "accept_incomplete_resumes": true,
          "has_test": false
        }
      ],
      "found": 1284,
      "page": 0,
      "pages": 65,
      "per_page": 20,
      "alternate_url": "https://example.org/search/vacancy?text=product+manager&area=1"
    }
  • 获取职位详情

    GET /v1/openings/{job_id} opendata

    水合职位卡片(description、key_skills、salary_range、employer、contacts 等)。

    认证方式: 登录扩展字段(relations、show_contacts、聊天标记)需要 Bearer access_token。User-Agent 同上。

    • id
    • name
    • description
    • key_skills
    • published_at
    • created_at
    • archived
    • alternate_url
    • apply_alternate_url
    • negotiations_url
    • salary_range
    • area
    • address
    • employer
    • experience
    • employment_form
    • work_format
    • schedule
    • working_hours
    • work_schedule_by_days
    • professional_roles
    • response_letter_required
    • accept_incomplete_resumes
    • show_contacts
    • contacts
    • email
    • phones
    • formatted
    • responses_count
    • allow_chat_with_manager
    • relations
    GET /v1/openings/123456789 HTTP/1.1
    User-Agent: <package>/<version>, Device: <device>, Android OS: <os> (UUID: <uuid>)
    Authorization: Bearer <access_token>
    {
      "id": "123456789",
      "name": "Product Manager",
      "description": "<p>Lead the candidate experience squad.</p>",
      "key_skills": [{"name": "product management"}, {"name": "SQL"}],
      "published_at": "2026-09-20T10:15:00+0300",
      "created_at": "2026-09-18T09:00:00+0300",
      "archived": false,
      "alternate_url": "https://example.org/vacancy/123456789",
      "apply_alternate_url": "https://example.org/applicant/vacancy_response?vacancyId=123456789",
      "negotiations_url": "https://example.org/api/applications?vacancy_id=123456789",
      "salary_range": {"from": 180000, "to": 250000, "currency": "RUR", "gross": true},
      "area": {"id": "1", "name": "Москва"},
      "address": {"city": "Москва", "street": "Тверская", "building": "1", "lat": 55.76, "lng": 37.61},
      "employer": {"id": "1337", "name": "Example Corp", "trusted": true, "accredited_it_employer": true},
      "experience": {"id": "between3And6", "name": "От 3 до 6 лет"},
      "employment_form": {"id": "FULL", "name": "Полная занятость"},
      "work_format": [{"id": "HYBRID", "name": "Гибрид"}],
      "schedule": {"id": "fullDay", "name": "Полный день"},
      "working_hours": [{"id": "HOURS_8", "name": "8 часов"}],
      "work_schedule_by_days": [{"id": "FIVE_ON_TWO_OFF", "name": "5/2"}],
      "professional_roles": [{"id": "73", "name": "Менеджер продукта"}],
      "response_letter_required": false,
      "accept_incomplete_resumes": true,
      "accept_temporary": false,
      "internship": false,
      "show_contacts": true,
      "contacts": {"name": "Anna Petrova", "email": "[email protected]", "call_tracking_enabled": true, "phones": [{"country": "7", "city": "495", "number": "1234567", "formatted": "+7 (495) 123-45-67"}]},
      "responses_count": 42,
      "allow_chat_with_manager": true,
      "relations": ["got_response"]
    }
  • 获取求职者简历

    GET /v1/cv/{cv_id} osint

    返回登录求职者的完整简历(姓名、birth_date、联系方式、教育、经历等)。

    认证方式: 必须提供 Bearer access_token。原生简历界面通过查询参数请求职业角色与凭据扩展信息。

    • id
    • last_name
    • first_name
    • middle_name
    • title
    • created_at
    • updated_at
    • birth_date
    • age
    • gender
    • area
    • salary
    • contact
    • education
    • experience
    • skill_set
    • skills
    • professional_roles
    • status
    • access
    • total_views
    • new_views
    • views_url
    • alternate_url
    • can_publish_or_update
    • next_publish_at
    • progress
    • creds
    GET /v1/cv/abc12defghijklmnopqrstuvwx?include=roles,credentials HTTP/1.1
    User-Agent: <package>/<version>, Device: <device>, Android OS: <os> (UUID: <uuid>)
    Authorization: Bearer <access_token>
    {
      "id": "abc12defghijklmnopqrstuvwx",
      "last_name": "Ivanov",
      "first_name": "Ivan",
      "middle_name": "Ivanovich",
      "title": "Product Manager",
      "created_at": "2024-03-01T12:00:00+0300",
      "updated_at": "2026-09-21T08:30:00+0300",
      "birth_date": "1992-04-12",
      "age": 34,
      "gender": {"id": "male", "name": "Мужской"},
      "area": {"id": "1", "name": "Москва"},
      "salary": {"amount": 220000, "currency": "RUR"},
      "contact": [{"kind": "email", "value": "[email protected]", "preferred": true}, {"kind": "cell", "value": {"formatted": "+7 999 123-45-67"}}],
      "education": {"level": {"id": "higher", "name": "Высшее"}, "primary": [{"organization": "MGU", "name": "Economics", "year": 2014}]},
      "experience": [{"company": "Example Corp", "position": "Product Manager", "start": "2020-01-01", "end": null}],
      "skill_set": ["SQL", "product management"],
      "skills": "Led marketplace growth.",
      "professional_roles": [{"id": "73", "name": "Менеджер продукта"}],
      "status": {"id": "published", "name": "Опубликовано"},
      "access": {"type": {"id": "clients", "name": "Видно всем компаниям"}},
      "total_views": 128,
      "new_views": 7,
      "views_url": "https://example.org/api/cv/abc12defghijklmnopqrstuvwx/viewers",
      "alternate_url": "https://example.org/resume/abc12defghijklmnopqrstuvwx",
      "can_publish_or_update": true,
      "next_publish_at": "2026-09-24T08:30:00+0300",
      "progress": {"percentage": 92},
      "creds": {"email": "[email protected]"}
    }
  • 列出应聘沟通记录

    GET /v1/applications osint

    列出求职者对各职位的投递(state、viewed_by_opponent、关联职位 / 简历、时间)。

    认证方式: 必须提供 Bearer access_token。User-Agent 同上。

    • items
    • id
    • state
    • hidden
    • read
    • created_at
    • updated_at
    • url
    • has_updates
    • viewed_by_opponent
    • messaging_status
    • decline_allowed
    • vacancy
    • resume
    • chat_id
    • employer_responses_read_percent
    • manager_inactive_minutes
    • source
    • employer_violates_rules
    • tags
    • found
    • page
    • pages
    • per_page
    GET /v1/applications?page=0&per_page=20 HTTP/1.1
    User-Agent: <package>/<version>, Device: <device>, Android OS: <os> (UUID: <uuid>)
    Authorization: Bearer <access_token>
    {
      "items": [
        {
          "id": "987654321",
          "state": {"id": "response", "name": "Отклик"},
          "hidden": false,
          "read": true,
          "created_at": "2026-09-19T11:00:00+0300",
          "updated_at": "2026-09-21T09:15:00+0300",
          "url": "https://example.org/api/applications/987654321",
          "has_updates": true,
          "viewed_by_opponent": true,
          "messaging_status": "has_new",
          "decline_allowed": true,
          "vacancy": {"id": "123456789", "name": "Product Manager", "alternate_url": "https://example.org/vacancy/123456789"},
          "resume": {"id": "abc12defghijklmnopqrstuvwx", "title": "Product Manager"},
          "chat_id": "c-555",
          "employer_responses_read_percent": 80,
          "manager_inactive_minutes": 120,
          "source": "search",
          "employer_violates_rules": false,
          "tags": []
        }
      ],
      "found": 12,
      "page": 0,
      "pages": 1,
      "per_page": 20
    }
  • 列出简历浏览记录

    GET /v1/cv/{cv_id}/viewers osint

    返回谁看过该简历(雇主 id / 名称 / logo、created_at、已读标记)。

    认证方式: 必须提供 Bearer access_token。User-Agent 同上。

    • items
    • created_at
    • viewed
    • employer
    • id
    • name
    • url
    • alternate_url
    • vacancies_url
    • logo_urls
    • resume
    • title
    • found
    • page
    • pages
    • per_page
    GET /v1/cv/abc12defghijklmnopqrstuvwx/viewers?page=0&per_page=20 HTTP/1.1
    User-Agent: <package>/<version>, Device: <device>, Android OS: <os> (UUID: <uuid>)
    Authorization: Bearer <access_token>
    {
      "items": [
        {
          "created_at": "2026-09-21T14:22:00+0300",
          "viewed": true,
          "employer": {
            "id": "1337",
            "name": "Example Corp",
            "url": "https://example.org/api/employers/1337",
            "alternate_url": "https://example.org/employer/1337",
            "vacancies_url": "https://example.org/api/jobs/search?employer_id=1337",
            "logo_urls": {"90": "https://cdn.example.org/logo90.png", "240": "https://cdn.example.org/logo240.png", "original": "https://cdn.example.org/logo.png"}
          }
        }
      ],
      "resume": {"id": "abc12defghijklmnopqrstuvwx", "title": "Product Manager", "url": "https://example.org/api/cv/abc12defghijklmnopqrstuvwx"},
      "found": 128,
      "page": 0,
      "pages": 7,
      "per_page": 20
    }
  • 获取职位联系电话

    GET /v1/openings/{job_id}/phone osint

    揭示职位招聘方电话(国家 / 城市 / 号码 / 格式化串、virtual_phone_state),用于拨打。

    认证方式: 必须提供 Bearer access_token。求职者在职位卡片上点击「显示联系方式」后调用。

    • comment
    • city
    • number
    • country
    • formatted
    • virtual_phone_state
    GET /v1/openings/123456789/phone HTTP/1.1
    User-Agent: <package>/<version>, Device: <device>, Android OS: <os> (UUID: <uuid>)
    Authorization: Bearer <access_token>
    {
      "comment": "HR desk, 10:00–18:00 MSK",
      "city": "495",
      "number": "1234567",
      "country": "7",
      "formatted": "+7 (495) 123-45-67",
      "virtual_phone_state": "enabled"
    }

数据类别

  • 职位
  • 简历
  • 应聘记录
  • 联系方式
  • 雇主
  • 资料

数据使用场景与案例

  • 职位市场分析

    薪酬对标管道聚合职位搜索结果——薪资区间、地区、雇主资质、办公形式——绘制分角色分地区的薪酬带地图。

  • 招聘管道同步

    ATS 集成镜像沟通列表——状态、已读未读、对方是否查看、会话号——招聘官只需经营一条管道,不必守两个收件箱。

  • 简历效果追踪

    求职工具列出哪些雇主在何时查看了简历,把查看量与简历修改关联,告诉候选人哪个版本真正获得关注。

常见问题

哪些 hh API 调用支撑职位搜索?

职位列表页发起分页搜索请求(text、area、page、per_page),每条结果带 id、name、salary_range(from/to/currency/gross)、area、employer 与 published_at。打开职位卡片时再取完整职位详情,含 description、key_skills、contacts 与 professional_roles。

应用如何加载求职者简历?

登录后请求求职者简历会返回 last_name、first_name、birth_date、contact、education、experience、salary、skill_set、total_views 以及浏览记录链接;另有 mine 列表变体枚举用户自己的简历。

应聘记录与简历浏览数据从哪来?

「回复」页签列出求职者的投递:state、viewed_by_opponent、关联职位与简历,以及会话号 chat_id。单独的简历浏览 feed 返回雇主 id、名称、logo 和 created_at;招聘方电话则在职位卡片上按需揭示。

hh API 如何鉴权?

登录流程签发 OAuth2 访问令牌,以 Authorization: Bearer 头发送,并附带描述应用版本、设备与安卓系统版本的生成式 User-Agent。职位搜索与详情可匿名访问;简历、投递、简历浏览与联系电话调用都要求令牌。

与 hh: поиск работы 相似的应用

  • Rabota.ru — Rabota.ru 是俄罗斯的招聘网站,2019 年被 Sberbank 收购,职位以中层岗位、学生和实习为主。
  • SuperJob — SuperJob 是 2000 年上线的俄罗斯招聘网站,提供职位搜索与简历库,在销售、物流、制造和餐饮酒店行业的岗位较多。
  • Zarplata.ru — Zarplata.ru 是俄罗斯的招聘网站,侧重本地和地区职位,在西伯利亚、远东和乌拉尔地区尤为活跃,覆盖酒店、物流和客服等岗位。
  • Avito — Avito 是俄罗斯的分类信息平台,其招聘板块常用于蓝领、零售、建筑和季节性岗位的招聘。
  • Trudvsem — Trudvsem(Работа в России)是俄罗斯联邦劳动局运营的官方就业平台,职位信息经过官方核验。
  • Habr Career — Habr Career(前身为 Мой круг)是俄罗斯的求职平台,专注于 IT 和技术岗位。
  • GorodRabot.ru — GorodRabot.ru 是俄罗斯的职位聚合网站,从多个来源汇总各城市的招聘信息。
  • Indeed Job Search — Indeed 是全球性的职位搜索引擎,自 2022 年起在俄罗斯的服务受限,但仍是跨国求职的常用选择。

相关主题

  • hh api
  • HeadHunter 职位接口
  • hh 简历端点
  • hh 应聘记录 API
  • salary_range
  • first_name last_name
  • 简历浏览雇主
  • vacancy phone formatted

需要集成这个 App 的数据 API?

我们可为任意指定 App 交付定制集成——源码交付 USD 500 起,或托管 API 按调用计费。告诉我们您需要的数据即可。

  • 每个项目均签 NDA 与 SOW
  • 3–7 天交付
  • 验收通过后才付款
  • 仅在授权范围内作业

获取报价