tocdepth

2

Поиск, просмотр и изменение параметров пользователей

Через API можно найти, просмотреть и изменить параметры пользователя, даже если он еще не принял приглашение в организацию.

Найти пользователя по ID

Чтобы найти пользователя организации по идентификатору и посмотреть его параметры, выполните запрос:

curl --location 'https://iam.api.cloud.ru/api/v1/customers/<customerId>/users/<userId>' \
     --header 'accept: application/json' \
     --header 'Authorization: Bearer <аутентификационный токен>'

Где:

  • customerId — идентификатор организации;

  • userId — идентификатор пользователя.

Пример ответа

{
  "user": {
      "user_id": "exxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx",
      "username": "ivanovivan@gmail.com",
      "email": "ivanovivan@gmail.com",
      "account_type": "USER_ACCOUNT_TYPE_LOCAL"
  }
}

Найти пользователя по email

Выполните запрос:

curl --location 'https://iam.api.cloud.ru/api/v1/customers/<customerId>/users/find?email=<ivanovivan@gmail.com>&type=USER_ACCOUNT_TYPE_UNDEFINED' \
     --header 'accept: application/json' \
     --header 'Authorization: Bearer <аутентификационный токен>'

Где:

  • customerId — Идентификатор организации.

  • email — Электронная почта пользователя.

  • type — Тип пользователя:

    • USER_ACCOUNT_TYPE_LOCAL — Будут найдены только локальные пользователи.

    • USER_ACCOUNT_TYPE_FEDERATED — Будут найдены только федеративные пользователи.

    • USER_ACCOUNT_TYPE_UNDEFINED — Будут найдены и локальные, и федеративные пользователи.

Пример ответа

{
  "user": {
      "user_id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx",
      "username": "ivanovivan@gmail.com",
      "email": "ivanovivan@gmail.com",
      "first_name": "Иван",
      "last_name": "Иванов",
      "middle_name": "Иванович",
      "enabled": true,
      "account_type": "USER_ACCOUNT_TYPE_FEDERATED"
  }
}

Коды ошибок

404 Not Found

Задан не тот параметр в type.

Пример:

{
  "code": 5,
  "message": "user not found by email and namespace_id",
  "details": []
}

400 Bad Request

В запросе не задан email.

Пример:

{
  "code": 3,
  "message": "duplicated users found by email and namespace_id: specify account type to narrow down search",
  "details": []
}

Изменить параметры федеративного пользователя

Чтобы изменить параметры, выполните запрос:

curl --location --request PUT 'https://iam.api.cloud.ru/api/v1/customers/<customersId>/users/<userId>' \
     --header 'accept: application/json' \
     --header 'Content-Type: application/json' \
     --header 'Authorization: Bearer <аутентификационный токен>' \
     --data '{
       "firstName": "Ольга",
       "lastName": "Иванова",
       "middleName": "Ивановна",
       "enabled": false
     }'

Где:

  • customerId — идентификатор организации;

  • userId — идентификатор пользователя;

  • firstName — имя пользователя, можно изменить;

  • lastName — фамилия пользователя, можно изменить;

  • middleName — отчество, можно изменить;

  • enabled:

    • true — пользователь разблокирован и может выполнять операции в организации;

    • false — пользователь заблокирован и не может выполнять операции в организации.

Пример ответа

{
  "user": {
      "user_id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx",
      "username": "ivanovao@gmail.com",
      "email": "ivanovao@gmail.com",
      "first_name": "Ольга",
      "last_name": "Петрова",
      "middle_name": "Ивановна",
      "enabled": false,
      "account_type": "USER_ACCOUNT_TYPE_FEDERATED"
  }
}

Примечание

Из-за того, что локальный пользователь может быть приглашенным физическим лицом и состоять в нескольких организациях, его параметры нельзя изменять.

Запустили Evolution free tier
для Dev & Test
Получить