В ендпоинтах с поддержкой пагинации передаются параметры page (номер страницы, начинается с 0) и per_page (сколько элементов выводить)
Все регионы (area
) должны возвращаться в следующем виде:
{
"area": {
"id": 1002,
"name": "Минск"
}
}
GET /employer
Параметры:
- query - текст для поиска
Поддерживает пагинацию. Возвращает массив из объектов с полями:
- id - id компании
- name - название комопании
GET /employer/{employer_id}
Возвращает объект с полями:
- id - идентификатор компании
- name - название комопании
- description - описание компании
- area - регион компании
POST /favorites/employer
тело запроса:
- employer_id - id компании, данные которой нужно сохранить
- comment - комментарий. Может быть пустым
Получает данные из базы данных. Не должен ходить в api hh.ru. Поддерживает пагинацию
Для компаний из ответа увеличивает счетчик просмотров на еденицу
GET /favorites/employer
Возвращает массив объектов с полями:
- id
- name
- date_create - дата добавления в избранное
- description
- area
- comment
- popularity - популярность компании. Для компаний с более чем 50 просмотров выводить
POPULAR
, для остальныхREGULAR
- views_count - количество просмотро
PUT /favorites/employer/{employer_id}
Тело запроса:
- comment
DELETE /favorites/employer/{employer_id}
Т.к храним информацию в базе данных, то она может устареть. Этот запрос актуализирует данные
POST /favorites/employer/{employer_id}/refresh
Поддерживает пагинацию
GET /vacancy
Параметры:
- query - текст для поиска
Возвращает массив из объектов с полями:
- id
- name
- area
- salary - зарплата в том же формате, что в api hh.ru
- created_at
- employer
GET /vacancy/{vacancy_id}
Возвращает объект с полями:
- id
- name
- area
- salary - зарплата в том же формате, что в api hh.ru
- created_at
- employer
POST /favorites/vacancy
Тело запроса:
- vacancy_id
- comment
DELETE /favorites/vacancy/{vacancy_id}
POST /favorites/vacancy/{vacancy_id}/refresh
Получает данные из базы данных. Не должен ходить в api hh.ru. Поддерживает пагинацию
Для вакансий из ответа увеличивает счетчик просмотров на еденицу, а также для компаний, которые эту вакансию разместили
GET /favorites/vacancy
Возвращает массив из объектов с полями:
- id
- name
- date_create - дата добавления в избранное
- area
- salary
- created_at
- employer
- popularity - та же логика, что и в компаниях
- views_count
- comment