Описание API для доступа к открытым данным

Данный API разработан для получения доступа к открытым данным, предоставляемым Порталом «Работа в России». На данный момент реализованный API предоставляет доступ к данным о вакансиях, размещенных на Портале «Работа в России». C помощью 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 – запрос на предоставление всех вакансий, представленных на Портале «Работа в России». Постраничное предоставление информации описано в п. «Пагинация».

  • http://opendata.trudvsem.ru/api/v1/vacancies/vacancy/%companycode%/%vacancyID%
    информация о конкретной вакансии
  • http://opendata.trudvsem.ru/api/v1/vacancies/company/%companycode%
    информация о вакансиях конкретного работодателя;
  • http://opendata.trudvsem.ru/api/v1/vacancies/company/inn/%inn%
    информация о вакансиях работодателя с конкретным ИНН;
  • http://opendata.trudvsem.ru/api/v1/vacancies/region/%region_code%
    информация о вакансиях в конкретном регионе;
Все дополнительные параметры указываются после знака «?» в запросе.
Пагинация

Данные передаются постранично, не более 100 записей на странице.

Для получения постраничного ответа необходимо уточнить 2 параметра в запросе – число элементов (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":" При выполнении запроса произошла ошибка. Проверьте синтаксис запроса и/или обратитесь в службу поддержки"}}