如何在Composite Envelope中管理可见性设置

时间:2019-01-18 19:37:59

标签: docusignapi docusigncompositetmplts

我正在尝试使用docusign API在工作流程中使用可见性设置。工作流包含两个内联模板,我想对其进行限制,以使签名者在第二个内联模板中看不到1个文档。这是发送到DocuSign的json:

{
  "compositeTemplates": [
    {
      "inlineTemplates": [
        {
          "recipients": {
            "signers": [
              {
                "email": ,
                "name": ,
                "recipientId": "2",
                "roleName": "High School Faculty"
              },
              {
                "email": ,
                "name": ,
                "recipientId": "3",
                "roleName": "High School Administration"
              },
              {
                "email": ,
                "name": ,
                "recipientId": "4",
                "roleName": "Department Dean"
              },
              {
                "documentVisibility": [
                  {
                    "documentId": "2",
                    "recipientId": "5",
                    "visible": "false"
                  }
                ],
                "email": ,
                "name": ,
                "recipientId": "5",
                "roleName": "Department Faculty"
              }
            ]
          },
          "sequence": "1"
        }
      ],
      "serverTemplates": [
        {
          "sequence": "1",
          "templateId": "900cc73b-f35c-45b1-92d1-e8453094aa60"
        }
      ]
    },
    {
      "inlineTemplates": [
        {
          "documents": [
            {
              "documentBase64": <data>, 
              "documentId": "1",
              "fileExtension": "docx",
              "name": "Packet"
            },
            {
              "documentBase64": <data>,
              "documentId": "2",
              "fileExtension": "docx",
              "name": "Packet"
            }
          ],
          "recipients": {
            "signers": [
              {
                "email": ,
                "name": ,
                "recipientId": "2",
                "roleName": "High School Faculty"
              },
              {
                "email": ,
                "name": ,
                "recipientId": "3",
                "roleName": "High School Administration"
              },
              {
                "email": ,
                "name": ,
                "recipientId": "4",
                "roleName": "Department Dean"
              },
              {
                "documentVisibility": [
                  {
                    "documentId": "2",
                    "recipientId": "5",
                    "visible": "false"
                  }
                ],
                "email": ,
                "name": ,
                "recipientId": "5",
                "roleName": "Department Faculty"
              }
            ]
          },
          "sequence": "2"
        }
      ]
    }
  ],
  "emailSubject": "College Now Master Form",
  "enforceSignerVisibility": "true"
}

当我测试工作流程时,部门学院仍然可以在第二个内联模板中查看第二个文档。我正在测试,所以我为每个角色使用相同的登录名,这可能是问题吗?谁能指出我做错了什么?我们确实为实例打开了可见性。谢谢!

1 个答案:

答案 0 :(得分:0)

根据EnvelopeRecipients文档,您将需要使用ExcludedDocuments参数将其定义为Recipient对象的一部分:

$builder->getData()

您还需要确认您的帐户如何配置“文档可见性”,因为可以将其设置为仅排除发件人或发件人帐户的成员。如果将其设置为“除非签名者帐户的成员”,则可能会放弃测试。