Генерация API-токена без интерфейса
Если через интерфейс не доступна возможность генерации API_TOKEN, то это можно сделать с помощью REST-API вызовов.
Поиск идентификатора пользователя
Вначале нужно узнать идентификатор пользователя, для которого необходимо сгенерировать API_TOKEN.
Вариант, через реестр пользователей:
- Зайдите в реестр пользователей, и найдите того пользователя, для которого нужно получить API_TOKEN.
- Откройте окно разработчика (F12) в браузере. И перейдите в список запросов. Установите фильтр Fetch/XHR.
- Откройте карточку данного пользователя.
- В списке появятся различные запросы на сервер.
- Найдете запрос create-draft и выделите его
- Откройте исходящие параметры (Payload)
- В исходящих параметрах будет JSON и по пути params_Lr1oSgwPR8.boiId - вы увидите идентификатор пользователя.
Создание API_TOKEN по идентификатору пользователя
Данное действие делать нужно только в том случае, если для данного пользователя ранее не создавался API_TOKEN.
Также, если вы хотите стереть прежний API_TOKEN и сгенерировать новый (например потому что старому вы уже не доверяете).
При генерации нового API_TOKEN-а старый перестаёт аутентифицировать, и если у Вас он используется для каких-либо API вызовов, то они все перестанут работать. Будьте внимательным.
Для создания нового API_TOKEN нужно вызвать сервис:
POST /web/v2/person/generate-api-token
{
"useParamsFromBody": true,
"params_Lr1oSgwPR8": {
"personId": "bgLQ8psUtTWbSty2"
},
"body_o1nhHUG480": {}
}
В заголовок этого запроса нужно положить параметр с именем Token. Значение его можете взять из вызова create-draft из такого, же параметра. А вместо "bgLQ8psUtTWbSty2" подставьте нужный идентификатор пользователя.
Данный сервис сгенерирует API_TOKEN для указанного пользователя и вернёт его:
"a27d599b4b2064b6580d0431"
Кавычки надо убрать.
Получение текущего API_TOKEN по идентификатору пользователя
Если пользователь уже имеет API_TOKEN, то его можно получить с помощью вызова сервиса:
POST /web/v2/person/load-api-token
{
"useParamsFromBody": true,
"params_Lr1oSgwPR8": {
"personId": "bgLQ8psUtTWbSty2"
},
"body_o1nhHUG480": {}
}
Данный сервис загрузит API_TOKEN для указанного пользователя и вернёт его:
"a27d599b4b2064b6580d0431"
Кавычки надо убрать.
Если вернётся пусто, то у данного пользователя нет API_TOKEN - его нужно сгенерировать сервисом описанным выше.
Удаление API_TOKEN по идентификатору пользователя
Если API_TOKEN для данного пользователя создан по ошибке, или уже не нужен, то его можно удалить вызвав сервис:
POST /web/v2/person/remove-api-token
{
"useParamsFromBody": true,
"params_Lr1oSgwPR8": {
"personId": "bgLQ8psUtTWbSty2"
},
"body_o1nhHUG480": {}
}
Код 200 обозначит факт удаления.