Документация API JCat.Работа

Получение информации по кандидатам

Получение списка кандидатов

GET /v1/responses/list/{page}/{perPage}?sort=&direction=&folder=&direct=&visited=

Принимаемые параметры (GET-параметры):

ИмяТипОписаниеОбязательноеВозможно указание нескольких значений
 page integerНомер страницы для выдачи данных с пагинациейДаНет
perPageintegerКоличество кандидатов в ответе (принимаются значения не более 1000)ДаНет
sortstringПо какому параметру будет осуществлена сортировка кандидатов: id(номер)НетНет
directionstringНаправление сортировки: прямое (asc, по умолчанию) или обратное (desc)НетНет
folderintegerИдентификатор папки в воронке кандидатов. Нужно передавать значение - 0 для поиска по всем папкамДаНет
directintegerТип кандидатов:  0 - прямой отклик, 1 - подходящий, 2 - созданный вручную на сайте jcat, 3 - кандидат из холодного поиска на сайте
НетДа
visitedintegerПросматривался ли кандидат: 0 - кандидат новый, 1 - кандидат просматривался клиентомНетДа
order[]arrayСписок идентификаторов (номеров) вакансий, по которым необходимо получить кандидатовНетДа
packet[]arrayСписок идентификаторов (номеров) пакетов вакансий, по которым необходимо получить кандидатовНетДа
createdFrom
Date
Дата, позднее которой созданы кандидаты. Формат: Y-m-d
Нет
Нет
createdTo
Date
Дата, ранее которой созданы кандидаты. Формат: Y-m-d
Нет
Нет

В качестве результата будет представлен набор данных, аналогичных содержимому вывода информации по одному кандидату, объединённой блоком items. На этом же уровне будут теги total Общее число записей и блок pages Страницы.

Результат запроса 

  • 200 OK - успешное выполнение
  • 404 Not Found - список кандидатов не найден
  • 403 Forbidden - запрос списка кандидатов недоступно данному пользователю

Получение данных о кандидате

GET /v1/responses/{id}

Обязательные параметры:

ИмяТипОписание
 id integerИдентификатор вакансии

Результат запроса 

  • 200 OK - успешное выполнение
  • 404 Not Found - кандидат не найден
  • 403 Forbidden - кандидат недоступен данному пользователю

 Пример тела ответа 

{
    "data":
    {
        "id":"Идентификатор",
        "externalId":"Внешний идентификатор на сайте источнике",
        "createdAt":"Дата создания. Формат: ISO 8601",
        "visited":"Является ли кандидат новым. Значения - true/false",
        "published":"Возможно ли просмотреть кандидата на сайте источнике. Значения: open - возможно, closed - резюме закрыто извне(может понадобится авторизация/возможно связаться только по контактам)",
        "link":"Ссылка на резюме",
        "fullName":"ФИО кандидата",
        "birthday":"Дата рождения. Формат: ISO 8601",
        "gender":"Пол: female/male/null(не указан)",
        "city":"Город проживания",
        "metro":"Ближайшее метро к месту проживания",
        "district":"Район проживания",
        "citizenship":"Гражданство",
        "workPermit":"Есть допускк работе. Значения - true/false",
        "maritalStatus":"Семейный статус. 1 - женат/замужем, 2 - не в браке",
        "children":"Количество детей. null - детей нет",
        "education":"Текстовое представление данных об образовании",
        "courses":"Текстовое представление данных о пройденных курсах",
        "tests":"Текстовое представление данных о пройденном тестировании",
        "certificates":"Текстовое представление данных о имеющихся сертификатов",
        "languages":"Текстовое представление данных о знаниях языков",
        "desiredJobTitle":"Желаемая должность",
        "lengthOfWork":"Опыт работы в годах",
        "salary":"Желаемая зарплата",
        "salaryCurrency":"Валюта желаемой зарплаты",
        "professionalArea":"Профессиональная область знаний кандидата",
        "employment":"Занятость. Возможные значения: Полный день, Сменный график, Удаленная работа, Гибкий график/Свободный график, Вахтовый метод",
        "timetable":"График работы: Возможные значения: Полная занятость (полный рабочий день), Частичная занятость, Проектная/временная работа/freelance, Волонтерство, Стажировка",
        "placeOfWork":"Предыдущее/текущее место работы",
        "workCity":"Предполагаемый город работы",
        "movement":"Готовность переехать. Значения - true/false",
        "movementCities":"Города, куда кандидат готов переехать",
        "travelReady":"Готовность к командировкам. Значения - true/false",,
        "recommendations":"Текстовое представление данных о рекомендациях",
        "skills":"Текстовое представление данных о навыках",
        "aboutCandidate":"Текст о себе.",
        "driverLicense":"Категории водительских прав через запятую",
        "car":"Имеется автомобиль. Значения - true/false/null(кандидат не  сообщил)",
        "businessQualities":"Деловые навыки, сплошным текстом",
        "photo":"Ссылка на фотографию кандидата",
        "photoLarge":"Ссылка на фотографию кандидата в большом разрешении",
        "coverLetter":"Ссылка на  сопроводительное письмо",
        "userComment":"Комментарий владельца вакансии",
        "additionalInfo":"Дополнительная информацияо кандидате текстом",
        "typeDirect":"Тип отклика: 0 - прямой, 1 - подходящий, 2 - добавленный вручную, 3 - холодный поиск",
        "totalExperience":"Опыт работы в годах",
        "medicalRecord":"Есть ли медицинская книжка. Значения - true/false/null(кандидат не  сообщил)",
        "contacts":[
            "Список контактов кандидата"
            {
                "id":"Идентификатор контакта",
                "type":"Тип контакта. Возможные значения: phone/email",
                "value":"Значение контакта",
                "desired":"Предпочтительный вид связи. Значения - true/false",
            },
            ..
        ],
        "experienceList":[
            "Список мест работы"
            {
                "id":"Идентификатор",
                "startedAt":"Дата начала работы. Формат: ISO 8601. Может быть - null",
                "endedAt":"Дата окончания работы. Формат: ISO 8601. Может быть - null",
                "companyName":"Название компании",
                "jobTitle":"Занимаемая должность",
                "aboutCompany":"Сфера деятельности компании",
                "aboutCompanyWork":"Основные функции кандидата"
            }
        ],
        "educationList":[
            "Список учебных заведений, где учился кандидат"
            {
                "id":"Идентификатор",
                "startedAt":"Дата начала учёбы. Формат: ISO 8601. Может быть - null",
                "endedAt":"Дата окончания учёбы. Формат: ISO 8601. Может быть - null",
                "university":"Название учебного заведения",
                "level":"Звание по окончании обучения",
                "faculty":"Факультет",
                "specialization":"Специальность"
            },
        ],            
        "coursesList":[
            "Список курсов, которые проходил кандидат"
            {
                "id":"Идентификатор",
                "startedAt":"Дата начала курса. Формат: ISO 8601. Может быть - null",
                "endedAt":"Дата окончания курса. Формат: ISO 8601. Может быть - null",
                "title":"Название курса",
                "specialization":"Учереждение, которое проводило курсы",
                "city":"Город, где проводились курсы",
                "specialization":"Специальность"
            },
        ],
        "skillsList":[
            "Список навыков"
            {
                "id":"Идентификатор",
                "text":"Навык - свободный текст"
            },
            ..
        ],
        "folder":
        "Сведение о текущем статусе кандидата в воронке"
        {
            "id":"Идентификатор",
            "title":"Название папки в воронке кандидатов"
        },
        "vacancy":{"Данные по вакансии. Формат - https://www.jcat.ru/job_vacancy/api-doc/orders-list/"}
    }
}

Результаты тестов с HH.ru

GET /v1/responses/{id}/test/solution

Обязательные параметры:

Имя
Тип
Описание
id
integerИдентификатор кандидата

Результат запроса 

  • 200 OK - успешное выполнение
  • 404 Not Found - кандидат не найден
  • 403 Forbidden - кандидат недоступен данному пользователю

 Пример тела ответа 

{
    "data":
    {
        "test_result":{
            "name": "Название тела ответа",
            "score": "Оценка в баллах 0 - 100",
            "mark": "Оценка за весь тест - GOOD/BAD/EXCELLENT",
            "duration": Длительность прохождения теста в секундах,
            "tasks": [
                {
                    "question": "Вопрос 1",
                    "closed_answers": [
                        "Варианты ответов"
                        {
                            "value": "Вариант ответа 1",
                            "selected": Выбрано - true/false,
                            "correct": Верно - true/false
                        },
                        {
                            "value": "Вариант ответа 2",
                            "selected": Выбрано - true/false,
                            "correct": Верно - true/false
                        }
                    ],
                    "opened_answer": []
                },
                {
                    "question": "Вопрос 2",
                    "closed_answers": [
                       "Варианты ответов"
                        {
                            "value": "Вариант ответа 1",
                            "selected": Выбрано - true/false,
                            "correct": Верно - true/false
                        },
                        {
                            "value": "Вариант ответа 2",
                            "selected": Выбрано - true/false,
                            "correct": Верно - true/false
                        }
                    ],
                    "opened_answer": 
                    "Ответ кандидата на открытый вопрос"
                    {
                        "value": "Ответ кандидат строкой",
                        "mark": "Оценка ответа GOOD/BAD/EXCELLENT"
                    }
                }
            ]
        }
    }
}

Пометка кандидата просмотренным

PUT /v1/responses/{id}/visited/

Обязательные параметры:

Имя
Тип
Описание
idintegerИдентификатор кандидата

Результат запроса 

  • 200 OK - успешное выполнение
  • 404 Not Found - кандидат не найден
  • 403 Forbidden - кандидат недоступен данному пользователю

Получение файла с резюме кандидата

GET /v1/responses/resume/docx/{id}/

Обязательные параметры:

Имя
Тип
Описание
idintegerИдентификатор кандидата

Результат запроса 

  • 200 OK - успешное выполнение
  • 404 Not Found - кандидат не найден
  • 403 Forbidden - кандидат недоступен данному пользователю

Смена папки-статуса у отклика/резюме

PUT /v1/responses/{id}/folder

Обязательные параметры:

ИмяТипОписаниеОбязательное
idintegerИдентификатор отклика/резюмеДа
folderintegerИдентификатор папкиДа

Пример запроса:

curl -X PUT 'https://api.jcat.ru/v1/responses/12345/folder' -H 'Content-Type: application/x-www-form-urlencoded' -H 'X-ApiKey: 12345' --data-raw 'folder=12345'

Описание:

Метод позволяет изменить статус отклика/резюме, переместив его в указанную папку воронки кандидатов.

Результат запроса

  • 204 No Content - успешное выполнение
  • 400 Bad Request - неверные параметры запроса
  • 403 Forbidden - доступ запрещен
  • 404 Not Found - отклик/резюме не найден
  • 500 Internal Server Error - внутренняя ошибка сервера