Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HH-123770 отделы работодателей #473

Open
wants to merge 7 commits into
base: master
Choose a base branch
from
5 changes: 5 additions & 0 deletions docs/employer_vacancies.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
## Возможные варианты публикации вакансий у текущего менеджера

Метод нужен, чтобы понять, может ли менеджер публиковать вакансии и какие типы вакансий ему доступны. Возвращает все возможные типы публикации.
>!! Внимание! Если в вашей компании используются отделы, то будут возвращены возможные варианты публикации [выбранного отдела](manager_divisions.md#using-division).

### Запрос

Expand Down Expand Up @@ -140,6 +141,8 @@ publications[].areas_url | string | URL на список регионов, в
* все вакансии проходят ручную модерацию.
* в течение нескольких минут после публикации вакансия станет доступна в поиске.

>!! Внимание! Если в вашей компании используются отделы, то вакансия будет опубликована от лица [выбранного отдела](manager_divisions.md#using-division).


### Полезные ссылки

Expand Down Expand Up @@ -575,6 +578,8 @@ Cоставные поля (например, `salary`, `contacts`, `specializat
валюты в зарплате, необходимо передавать также и значения зарплаты, а
для изменения специализации необходимо передать полный список.

>!! Внимание! При редактировании вакансии будет указан [выбранный отдел](manager_divisions.md#using-division).

### Поля доступные для редактирования

Имя | Описание
Expand Down
6 changes: 6 additions & 0 deletions docs/errors.md
Original file line number Diff line number Diff line change
Expand Up @@ -524,3 +524,9 @@ HTTP code | type | value | описание
```
где `allowed_accounts` содержит массив доступных для этого токена аккаунтов
Элементы массива аналогичны [результату, выдаваемому в списке рабочих аккаунтов](manager_accounts.md#account-info)

<a name="manager-divisions"></a>
### Отделы менеджера
HTTP code | type | value | описание
----------|------|-------|-----------
400 | manager_divisions | manager_not_in_division | Менеджер не состоит в отделе. Попросите администратора добавить вас в отдел или [посмотрите доступные отделы](manager_divisions.md#get-manager-divisions)
85 changes: 85 additions & 0 deletions docs/manager_divisions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
# Отделы менеджера

Менеджер может выполнять действия от лица нескольких отделов. Для взаимодействия с API в контексте определенного
отдела работодателя нужно использовать соответсвующий отдел.
У пользователя может быть несколько отделов, один из них является текущим. Какой отдел является текущим можно узнать,
получив [список отделов менеджера](#get-manager-divisions). Текущий отдела используется, если в качестве авторизации посылать только токен
(подробнее можно прочитать [здесь](#using-division)).

* [Получение списка отделов пользователя](#get-manager-divisions)
* [Выбор отдела при запросах](#using-division)

<a name="get-manager-divisions"></a>
## Получение списка отделов пользователя

### Запрос

```
GET /manager_divisions/mine
```

### Ответ

Успешный ответ приходит с кодом `200 OK` и содержит тело:

```json
{
iriss22 marked this conversation as resolved.
Show resolved Hide resolved
"found": 2,
"page": 0,
"pages": 1,
"per_page": 2,
"items": [
{
"id": "1",
"name": "Департамент персонала"
},
{
"id": "2",
"name": "Департамент продаж"
}
],
"current_division_id": "2"
}
```

где:

Имя | Тип | Описание
--- | --- | ------
items | список | список отделов менеджера
current_division_id | строка | идентификатор текущего отдела (совпадает со значением переданного в заголовке)

<a name="division-info"></a>
#### Объект `division`

Имя | Тип | Описание
--- | --- | ------
id | строка | идентификатор отдела
name | строка | название отдела компании

### Ошибки

* `403 Forbidden` — ошибка авторизации (пользователь не является менеджером)
* `404 Not Found` — нет отделов у менеджера


<a name="using-division"></a>
## Выбор отдела при запросах

Для работы под определенным отделом необходимо передать значение `division_id`, полученное из [списка](#get-manager-divisions), в заголовке:

```
X-Manager-Division-Id: {division_id}
```

Использовать данный заголовок можно во всех методах, доступных для работодателей.

В заголовке можно передавать `division_id` текущего отдела, который также подразумевается по умолчанию, при отсутсвии заголовка.


<a name="errors"></a>
## Ошибки

* `403 Forbidden` — ошибка авторизации (при запросах с авторизацией не работодателя)
* `404 Not Found` — отдел с переданным `division_id` не найден
* [Дополнительные ошибки с описанием причины](/docs/errors.md#manager-divisions).
2 changes: 2 additions & 0 deletions docs/resumes.md
Original file line number Diff line number Diff line change
Expand Up @@ -234,6 +234,8 @@ paid_services | object | [платные услуги по резюме для

>!! Внимание произошли изменения в доступе к контактной информации. Прочитайте внимательно информацию про [поконтактный доступ к резюме](payable/resume.md#contact-data)

>!! Внимание! Если в вашей компании используются отделы, то контакт будет списан у [выбранного отдела](manager_divisions.md#using-division).

Для авторизованного автора возвращается
[более детальная информация](#additional-author-fields), включая тип
видимости, комментарии модераторов и статус.
Expand Down
7 changes: 6 additions & 1 deletion docs/vacancies.md
Original file line number Diff line number Diff line change
Expand Up @@ -386,7 +386,10 @@ suitable_resumes_url | string | Подходящие резюме на вака
"id": "marketing",
"name": "Маркетинг"
},
"can_upgrade_billing_type": true
"can_upgrade_billing_type": true,
"division": {
"id": "123"
}
}
```

Expand All @@ -399,6 +402,8 @@ can_upgrade_billing_type | логический | Можно ли улучшит

В объекте `manager` — информация о менеджере, который разместил данную вакансию.

В объекте `division` — информация об отделе, от которого размещена данная вакансия.

В объекте `branded_template` — информация об используемом в вакансии
[брендированном шаблоне](employer_vacancy_branded_templates.md).

Expand Down