HeadHunter API (hh.ru): POST /token — Получение access-токена

Тело — application/x-www-form-urlencoded. Набор полей зависит от grant_type (получение токена пользователя, обновление пары токенов, токен приложения). Ниже — поля для обмена authorization_code.

В ответе: access_token, token_type (bearer), expires_in, refresh_token.

Параметр Где Тип Обяз. Описание
HH-User-Agent header string да Название приложения и почта разработчика
grant_type body string да authorization_code
client_id body string да Идентификатор приложения
client_secret body string да Секретный ключ приложения
code body string да Полученный authorization_code
redirect_uri body string да URI перенаправления (если не указан — из настроек приложения)
code_verifier body string нет Верификатор PKCE; обязателен, если передавался code_challenge

Базовые URL

Авторизация

Тип: OAuth 2.0

OAuth 2.0. Токен передаётся в заголовке Authorization: Bearer {ACCESS_TOKEN}.

Параметры /oauth/authorize: skip_choose_account=true — не показывать выбор аккаунта, force_login=true — всегда показывать форму входа, role (applicant или employer) с force_role=true — требовать нужную роль.

В каждом запросе обязателен заголовок User-Agent или HH-User-Agent (при обоих учитывается HH-User-Agent); без него — 400 Bad Request.

User-Agent: MyApp/1.0 (my-app-feedback@example.com)

Нюансы

Сценарии с этим методом


Если этого недостаточно — официальная документация: https://api.hh.ru/openapi/redoc Вся интеграция одним документом: https://mcp-everything.ru/integrations/hh-api.md