API «Работа России»
API разработан для получения доступа к открытым данным портала «Работа России». С помощью реализованного API можно получить информацию обо всех вакансиях, хранящихся в системе, или узнать о вакансиях конкретных регионов и работодателей.
Открытые данные реализованы согласно документу «Методические рекомендации (Версия 3.0) по публикации открытых данных государственными органами и органами местного самоуправления и технические требования к публикации открытых данных».
Доступ к API
API доступен по адресу
http://opendata.trudvsem.ru/api
Общая информация
- Работа с API осуществляется по протоколу HTTP. Все вызовы API реализуются HTTP-методом GET.
- Ответ на запрос в API формируется только в формате JSON.
- Даты форматируются в соответствии с ISO 8601.
- Количество записей, включаемых в ответ на запрос, не превышает 10 000 шт.
Правила формирования запроса
Версионность API
Номер версии указывайте целым числом в формате:
http://opendata.trudvsem.ru/api/v1/vacancies
Схема предоставляемых по API данных
http://opendata.trudvsem.ru/api/v1/vacancies/application.wadl
Общая информация
Постраничное предоставление информации описано ниже в пункте «Пагинация».
Запрос на предоставление всех вакансий портала «Работа России»:
http://opendata.trudvsem.ru/api/v1/vacancies
Информация о вакансиях конкретного работодателя:
http://opendata.trudvsem.ru/api/v1/vacancies/company/%companyCode%
Информация о конкретной вакансии:
http://opendata.trudvsem.ru/api/v1/vacancies/vacancy/%companyCode%/%vacancyId%
Информация о вакансиях работодателя с конкретным ИНН:
http://opendata.trudvsem.ru/api/v1/vacancies/company/inn/%inn%
Информация о вакансиях работодателя с конкретным ОГРН:
http://opendata.trudvsem.ru/api/v1/vacancies/company/ogrn/%ogrn%
Информация о вакансиях в конкретном регионе:
http://opendata.trudvsem.ru/api/v1/vacancies/region/%region_code%
Информация обо всех вакансиях по сфере деятельности в конкретном регионе:
http://opendata.trudvsem.ru/api/v1/vacancies?industry=%industry%
http://opendata.trudvsem.ru/api/v1/vacancies/region/%regionCode%?industry=%industry%
Информация обо всех вакансиях по источнику публикации в конкретном регионе:
http://opendata.trudvsem.ru/api/v1/vacancies?source=%source%
http://opendata.trudvsem.ru/api/v1/vacancies/region/%regionCode%?source=%source%
Информация обо всех вакансиях по возможности предоставления жилья в конкретном регионе:
http://opendata.trudvsem.ru/api/v1/vacancies?accommodation=%accommodation%
http://opendata.trudvsem.ru/api/v1/vacancies/region/%regionCode%?accommodation=%accommodation%
Информация о вакансиях по группе социальной защищенности в конкретном регионе:
http://opendata.trudvsem.ru/api/v1/vacancies?social_protected=%socialProtected%
http://opendata.trudvsem.ru/api/v1/vacancies/region/%regionCode%?social_protected=%socialProtected%
Информация о вакансиях по опыту работы в конкретном регионе:
http://opendata.trudvsem.ru/api/v1/vacancies?experienceFrom=%experienceFrom%&experienceTo=%experienceTo%
http://opendata.trudvsem.ru/api/v1/vacancies/region/%regionCode%?experienceFrom=%experienceFrom%&experienceTo=%experienceTo%
Информация о вакансиях, которые участвуют в организованном наборе:
http://opendata.trudvsem.ru/api/v1/vacancies?uzbekistan=true
Все дополнительные параметры указываются после знака «?» в запросе.
Пагинация
Данные передаются постранично, не более 100 записей на странице.
Для получения постраничного ответа необходимо уточнить два параметра в запросе:
- число элементов (limit);
- смещение (offset).
Они указываются после знака «?» в запросе:
http://opendata.trudvsem.ru/api/v1/vacancies?offset=1&limit=100
Поиск по тексту
Для поиска по тексту укажите искомый текст после знака «?» в запросе:
http://opendata.trudvsem.ru/api/v1/vacancies?text=инженер
Для поиска по фразе не указывайте никакие дополнительные символы:
http://opendata.trudvsem.ru/api/v1/vacancies?text=инженер по тестированию
Вывод изменений
Система хранит дату последней модификации записи. В API поддерживается метод, который возвращает все изменённые записи, начиная с заданной даты.
Вариант — записи, которые изменили в указанный диапазон времени.
Для этого в запросе после знака «?» следует указывать даты и время.
Пример. Дата указывается в формате ISO 8601:
http://opendata.trudvsem.ru/api/v1/vacancies?offset=1&limit=100&modifiedFrom=2016-07-10T15:00:00Z http://opendata.trudvsem.ru/api/v1/vacancies?modifiedFrom=2016-07-10T15:00:00Z&modifiedTo=2016-10-10T15:00:00Z
Ошибки и коды ответов
API использует информирование при помощи кодов ответов.
Если обработка запроса пройдёт успешно, то в теле ответа в начале файла появится текст:
{ "status": "200", "request": { "api": "v1" }, "meta": { "total": "368431" }, "results": { *тело ответа* } }
Если произойдут неполадки и сбои, то возможны ответы с кодом 500:
{ "status": "500", "request": { "api": "v1" }, "meta": { "error": "При выполнении запроса произошла ошибка. Проверьте синтаксис запроса и/или обратитесь в службу поддержки" } }