Получить список пользователей с разрешением "Отправить от имени"

Можно ли с помощью API REST DocuSign V2 получить список пользователей, которые имеют полномочия "от имени" и "для всей учетной записи"?

Просматривая документы, я вижу, что метод Get User List не возвращает никакой информации о разрешениях. Метод Get User Information возвращает немного больше, но ничего конкретного разрешения, кроме permissionProfileId для каждого group,

Так можно ли получить информацию о разрешениях с данными пользователя? Или есть метод, который я могу вызвать с помощью permissionProfileId проверить, есть ли у пользователя эти разрешения?

В конечном итоге я пытаюсь получить список пользователей, которые могут использовать функцию "Отправить от имени", для которой требуются разрешения "Отправить от имени" и "Права для всей учетной записи".

2 ответа

Решение

Вы можете получить список всех пользователей и их пользовательских настроек, используя метод rest rest как DS Admin:

https://demo.docusign.net/restapi/v2/accounts/[accountid]/users/?additional_info=true

Пример вывода ниже:

{
  "users": [
    {
      "userName": "DocuSignTest2 User-2",
      "userId": "b67aa83b-2b3e-4669-a897-89e44b5724c2",
      "userType": "CompanyUser",
      "isAdmin": "False",
      "userStatus": "Created",
      "uri": "/users/b67aa83b-2b3e-4669-a897-89e44b5724c2",
      "email": "youremail@yourdoman.com",
      "firstName": "DocuSignTest2",
      "lastName": "User-2",
      "userSettings": [
        {
          "name": "canManageAccount",
          "value": "false"
        },
        {
          "name": "canSendEnvelope",
          "value": "true"
        },
        {
          "name": "locale",
          "value": "en"
        },
        {
          "name": "canSendAPIRequests",
          "value": "false"
        },
        {
          "name": "apiAccountWideAccess",
          "value": "false"
        },
        {
          "name": "enableVaulting",
          "value": "false"
        },
        {
          "name": "vaultingMode",
          "value": "none"
        },
        {
          "name": "enableTransactionPoint",
          "value": "true"
        },
        {
          "name": "enableSequentialSigningAPI",
          "value": "true"
        },
        {
          "name": "enableSquentialSigningUI",
          "value": "true"
        },
        {
          "name": "enableDSPro",
          "value": "false"
        },
        {
          "name": "powerFormAdmin",
          "value": "false"
        },
        {
          "name": "powerFormUser",
          "value": "true"
        },
        {
          "name": "canEditSharedAddressbook",
          "value": "use_private_and_shared"
        },
        {
          "name": "canManageTemplates",
          "value": "create"
        },
        {
          "name": "enableSignOnPaperOverride",
          "value": "false"
        },
        {
          "name": "enableSignerAttachments",
          "value": "true"
        },
        {
          "name": "allowSendOnBehalfOf",
          "value": "false"
        },
        {
          "name": "allowRecipientLanguageSelection",
          "value": "true"
        },
        {
          "name": "selfSignedRecipientEmailDocument",
          "value": "include_pdf"
        }
      ],
      "sendActivationOnInvalidLogin": "false",
      "enableConnectForUser": "false",
      "groupList": [
        {
          "groupId": "128693",
          "groupName": "Everyone",
          "groupType": "everyoneGroup"
        }
      ],
      "workAddress": {
        "address1": "",
        "address2": "",
        "city": "",
        "stateOrProvince": "",
        "postalCode": "",
        "phone": "",
        "country": ""
      },
      "homeAddress": {
        "address1": "",
        "address2": "",
        "city": "",
        "stateOrProvince": "",
        "postalCode": "",
        "phone": "",
        "country": ""
      }
    },
    [rest removed for sake of example]

Нет ни одного звонка, который мог бы выполнить эту задачу.

Моя рекомендация состоит в том, чтобы поместить всех этих пользователей в группу, а затем вы можете запросить, кто входит в группу через API.

Пример получения списка пользователей для каждой группы:

GET https://{server}.docusign.net/restapi/v2/accounts/{accountId}/groups/{groupId}/users

Если вы хотите провести аудит группы или посмотреть, кого вам нужно переместить в группу, вы можете получить список пользователей, а затем просмотреть сведения о пользователях для каждого пользователя (программный цикл).

Пример получения пользовательских настроек для проверки userSettings->allowSendOnBehalfOf:

GET https://{server}.docusign.net/restapi/v2/accounts/{accountId}/users/{userId}
Другие вопросы по тегам