FAQ по Superjob API (публикация вакансий)

    Недавно я рассказывал о Headhunter API для публикации вакансий, упомянув Superjob. Теперь, реализовав тот же функционал на Superjob API будет справедливо поделиться с вами полученным опытом.


    image


    Работа с API Superjob


    Итак, есть задача по публикации вакансий на Superjob, вам понадобятся:


    Актуальная версия API


    Здесь всё ожидаемо — версионность присутствует и передаётся в URLе:


    https://api.superjob.ru/:version/method_name/:params

    Регистрация приложения


    Тоже максимально простая процедура — создать аккаунт, создать приложение, получить токены. Без ожиданий, регистрации и смс.


    redirect_uri, передаваемый в параметрах, видимо, вообще не связан с Callback URL, указанном в настройках приложения. Его (Callback URL) можно даже и не указывать, всё будет работать.


    А также


    Указать обязательные параметры


    Обязанности, требования и условия — необязательные параметры вакансии, а вот название компании и описание её деятельности — обязательно нужно передавать в каждую вакансию.


    В прошлый раз (на HeadHunter) была попытка публиковать ссылку внутри вакансии, здесь же нашёлся параметр url, однако, где он отображается в вакансии понять не удалось.


    Запрашивать ссылку на созданную вакансию


    Вместо ожидаемого superjob/vacancies/id ссылка формируется в виде vacancy-name-id.html, но в ответе приходит лишь id вакансии. Русский текст проходит транслитерацию неизвестным алгоритмом (или по одному из N ГОСТов), что делает невозможным формировать ссылку на своей стороне. Приходится делать отдельный запрос на роут api откуда уже возвращается полная ссылка.


    Выбрать между графиком работы и типом занятости


    Superjob объединяет эти два поля, предлагая из списка, например, частичную занятость или неполный день. Это неудобно когда есть парттаймеры, срочные договора и другие варианты развития событий.




    Итоги


    Про форматирование и задачи без аналитики


    В прошлый раз я упомянул, что вакансии на HeadHunter поддерживают HTML и на сайте для этого прикручен WYSIWYG-редактор. В дополнение к задаче публикации ссылок в вакансиях (которая слегка провалилась), прилетела и задача прикрутить WYSIWYG для них в нашем приложении. Текст вакансии вместе с форматированием сохраняется в БД, поэтому в таком же виде он улетел на Superjob, который HTML не поддерживает. В принципе, ожидаемо, но главный факап в том, что посмотрев эту же вакансию на HeadHunter, обнаружилось, что он тоже не поддерживает присланное форматирование! Теги просто удаляются и на выходе остаётся голый текст. Как итог — WYSIWYG будет выпиливаться, а все записанные вакансии с HTML надо будет в трёх БД как-то распарсить и почистить лишнее.


    Хочется написать много плохих слов о работе на аутсорсе, но как-нибудь в другой раз.


    Про удобство


    Если сравнивать HeadHunter и Superjob, то очевидно, что с последним всё гораздо проще. Интеграция построилась очень быстро — тексты ошибок не сбивали с толку, всё удалось протестировать на нескольких окружениях из-за необязательности Callback URL.


    Что меня расстроило — это отсутствие Superjob API на Github, зато повеселил там "простой клиент" на PHP в полторы тысячи строк. Для общения с техподдержкой есть обратная связь, однако, в форме обращения отсутствует категория вопросов по API. Ну такое.


    Заключение


    В целом, вряд ли можно однозначно сказать что у кого-то лучше, у кого-то хуже. У Superjob есть к чему придраться, но в конечном счёте сервис предоставляет нормальный API, полностью решающий наши задачи.

    Поддержать автора
    Поделиться публикацией

    Похожие публикации

    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама

    Комментарии 2

      0
      Писать с заглавной буквы

      этот момент они пофиксили уже
        0

        О, реально! Исправил, спасибо :)

      Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

      Самое читаемое