Выполнение запросов к API
Аутентификация
Для доступа к этому API используется базовая аутентификация. Это означает, что вам нужно добавить заголовок Authorization к каждому запросу для получения доступа. Имя пользователя для базовой аутентификации — ваш API-ключ, а строка пароля для аутентификации остаётся пустой.
Формат заголовка Authorization является следующим:
Authorization: Basic {credentials}
где '{credentials}' — это строка API-ключа, закодированная в Base64, за которой следует двоеточие.
Эндпоинт и параметры
Эндпоинт API https://search.api.careerjet.net/v4/query
, поддерживает следующие параметры HTTP GET.
Название параметра | Значения | Комментарии |
---|---|---|
locale_code |
[language_code]_[COUNTRY_CODE] |
Значение должно соответствовать списку поддерживаемых кодов локали. Если не указано, используется en_GB по умолчанию. |
keywords |
string |
список одного или нескольких поисковых запросов, закодированных в формате URL |
location |
string |
место поиска; если не указано, поиск осуществляется по всей стране |
contract_type |
|
тип контракта |
work_hours |
|
график работы |
fragment_size |
integer |
размер выдержки из описания вакансии в символах, по умолчанию — 120 |
offset |
integer |
от 1 до 999 , по умолчанию 0 |
page |
integer |
от 1 до 10 |
page_size |
integer |
от 1 до 100 , по умолчанию 20 |
radius |
integer |
по умолчанию 5 км/миль в зависимости от местоположения |
user_ip |
string |
обязательно: IP-адрес пользователя, чье действие вызвало вызов API |
user_agent |
string |
обязательно: строка user agent пользователя, чье действие вызвало вызов API |
Типы ответов
Успех
Успешный запрос приведет к HTTP 200 ответу в формате JSON, общая структура которого следующая:
{
"type": 'JOBS',
"hits": 62,
"message": "62 matching jobs found",
"pages": 4,
"response_time": 0.322,
"jobs" [Список вакансий: см. ниже]
}
Ответы с ошибкой
В случае неправильных запросов будут возвращены различные HTTP-коды ошибок и минимальный текст ответа, указывающее тип ошибки и, при наличии, подробную информацию. Ниже приведен обзор возможных ошибок:
Код HTTP | Сообщение | Комментарии |
---|---|---|
400 |
Unsupported locale code |
Указанный код локали не поддерживается. |
403 |
Missing param user_ip or user_agent |
Запрос не включал параметры user_ip или user_agent . |
Режим определения местоположения
Это не совсем ошибка, а ситуация, которая помешает выполнению любого реального поиска. Режим определения местоположения активируется, как описано ниже:
Сообщение | Комментарии | Пример |
---|---|---|
no matching location found |
Не удалось найти местоположение, соответствующее указанному параметру location . |
|
multiple locations found |
Несколько мест соответствуют указанному параметру location . Вы можете выбрать одно из предложенного списка locations . |
|
Структура вакансии
Каждая вакансия структурирована следующим образом:
{
'title': 'Python Developer',
'company': 'Газпром',
'date': 'Wed,15 Nov 2025 19:13:43 GMT',
'description': 'Job description excerpt',
'locations': 'London',
'salary': '30000 - 35000 руб.',
'salary_currency_code': 'KZT',
'salary_max': xx.yy,
'salary_min': xx.yy,
'salary_type': 'Y',
'site': 'domain.com',
'url': 'https://jobviewtrack.com/v2/уникальная ссылка'
}
Где salary_type
может быть:
Y
: yearlyM
: monthlyW
: weeklyD
: dailyH
: hourly