company_banner

Новый API HeadHunter и прекращение поддержки API 1.0

    Некоторые знают, что у нас есть API, программный интерфейс, позволяющий «общаться» с платформой hh.ru мобильным и десктопным приложениям, другим сайтам и просто виджетам, включая тот, что расположен справа от этой статьи на странице нашего блога.

    Мы рады объявить, что на смену текущей реализации приходит новая, полностью переработанная версия API.

    Перед нами стояла цель сделать продукт более консистентным, предсказуемым, понятным и дружелюбным, свести к минимуму необходимость изучения документации и случаев «хардкода» каких-либо вещей на стороне клиента. Для достижения этого мы решили отказаться от поддержки обратной совместимости с API 1.0 и создать всё с нуля, переосмыслив проект целиком.

    Для фокусировки над функциональностью мы отказались от XML-версии, откорректировали названия методов и сгруппировали их в логичные сущности, скрыв от пользователя низкоуровневые моменты. Получился новый HTTP REST JSON API. Как только мы перешагнули объем функциональности прежней версии, мы открываем его официально.

    В новой версии мы отбросили версионность: теперь API будет развиваться инкрементально, с полной поддержкой обратной совместимости. Постепенно будет покрываться вся функциональность hh.ru. Уже сейчас доступна авторизация в стороннем приложении при помощи учетной записи пользователя. Для этого мы используем протокол OAuth2, который позволяет предоставлять доступ к личным данным пользователя, не раскрывая свой логин/пароль сторонним приложениям. Также сейчас разработчики могут получить доступ к списку резюме авторизованного соискателя, использовать расширенный поиск вакансий и «отобранные вакансии». Постепенно выйдут недостающие сервисы соискателя: создание/редактирование резюме, автопоиски вакансий. После этого будет появляться функциональность для работодателей: поиск резюме, публикация вакансий и многое другое.

    Помимо «низкоуровневого» HTTP в планах разработать клиентские библиотеки для популярных языков программирования (Java, Python, Javascript), а также конструкторы готовых виджетов. Это позволит еще больше снизить «порог входа» для использования нашего API, а при помощи конфигураторов виджетов любой сможет создавать виджеты для своего сайта без привлечения ресурса программистов.

    Первая версия (http://api.hh.ru) будет доступна еще как минимум 3 месяца, за это время разработчики должны перевести свои приложения на новую версию. Осенью начнутся временные отключения и будет сообщена точная дата прекращения работы API 1.0.

    Документация и более подробная информация о новом API расположена по адресу https://github.com/hhru/api. Там же есть раздел Issues, где вы можете предложить какие-либо улучшения, оставить запрос на доработку или сообщить о неполадке. Также вы можете связываться с разработчиками напрямую, через Twitter: @apihhru.
    • +16
    • 8.3k
    • 8
    HeadHunter
    163.33
    HR Digital
    Share post

    Comments 8

      +2
      О, молодцы! Новая API это хорошо. HTTP REST JSON API это вообще круто. А вот в списке популярных языков программирования забыли C# и это плохо.
        +1
        Спасибо.
        В первую очередь мы предоставили низкоуровневый интерфейс: HTTP, не зависящий от конкретного языка.
        В дальнейшем у нас в планах разработать клиентские библиотеки. Javascript, Python, Java — это те языки, которые мы сами используем в разработке, и они первые кандидаты для нас в этом списке. Но одновременно с этим мы с радостью поможем и опубликуем информацию у нас про сторонние библиотеки, когда таковые появятся.
          0
          Понятно. Но у вас же есть клиент HeadHunter для Windows Phone. Я так думаю, что он перестанет работать через 3 месяца и тогда придется обновление написать в котором логичнее использовать библиотеку. Как тогда с этим будет?
            0
            На данный момент разработка публичного C#-клиента не запланирована, но позже возможно мы действительно выделим эту часть кода и оформим в клиентскую библиотеку.
        0
        Будет ли мануал по миграции?

      Only users with full accounts can post comments. Log in, please.