【问题标题】:Get list of users with the "send on behalf of" permission获取具有“代表发送”权限的用户列表
【发布时间】:2014-11-24 21:22:18
【问题描述】:

使用 V2 DocuSign REST API,是否可以获得具有“代表发送”和“帐户范围”权限的用户列表?

查看docs,我看到Get User List 方法没有返回任何权限信息。 Get User Information 方法返回更多但没有特定权限,除了每个grouppermissionProfileId

那么是否可以通过用户数据获取权限信息?或者有什么方法可以调用permissionProfileId 来检查用户是否拥有这些权限?

我最终要做的是获取能够使用“代表发送”功能的用户列表,该功能需要“代表发送”和“帐户范围的权限”权限。

【问题讨论】:

    标签: permissions docusignapi


    【解决方案1】:

    作为 DS 管理员,您可以使用以下其余方法获取所有用户及其用户设置的列表:

    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]
    

    【讨论】:

      【解决方案2】:

      没有一个电话可以完成这项任务。

      我的建议是将所有这些用户放在一个群组中,然后您可以通过 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}
      

      【讨论】:

      • 哦,我想我应该尝试最后一种方法。 allowSendOnBehalfOf 没有在示例响应中提及,因为它只是概括为 namevalue 用于 userSettings。这应该对我有用,谢谢!
      • 没问题,只要记住有每小时 API 限制 (1000)。因此,如果您有 10000 个用户,则必须将其间隔一段时间:)
      • 好的,所以我发现如果我在获取用户列表方法中包含?additional_info=true,它确实会返回我需要的所有内容,即userSettings 中的权限。所以看起来我确实可以在一个方法调用中做到这一点。
      • iHan,正确的,所以我为你和其他人更新了下面的答案。
      • 完全忘记了additional_info=true,你们是对的:)
      猜你喜欢
      • 2015-07-13
      • 2020-01-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-08
      • 1970-01-01
      • 1970-01-01
      • 2016-08-13
      相关资源
      最近更新 更多