DocuSign REST API(PHP) - 预填充自定义标签

时间:2015-01-06 19:38:55

标签: php docusignapi custom-tag

我正在研究需要使用DocuSign API(PHP)的项目。这是我第一次使用DocuSign,我使用roleName = signer在DocuSign控制台中成功制作了模板。在那里,我还制作了自定义文字标记:addresscitystatephone,并将它们拖到我模板中的所需位置。我希望在那里从项目数据库中提取我的客户(签名者)信息。

从我的项目中,我通过PHP API成功连接DocuSign并接收嵌入式歌唱视图URL,打开我的模板,用户可以毫无问题地签署文档。

但是...我的所有自定义文本标签都是空的,签名者可以输入它们。我需要预先填写来自数据库的签名者个人数据。我在我的DocuSign控制台和我的代码以及roleName-> tagLabel关系中检查自定义标签标签拼写,大写/小写三重检查。我的PHP代码如下。

请有人,请告诉我我做错了什么?

我失去了两天。

$data = array(
"accountId" => $accountId,
"emailSubject" => $this->_emailSubject,
"templateId" => $templateId,
"templateRoles" => array(
               array(
                   "email" => $email,
                   "name" => $recipientName,
                   "clientUserId" => $clientUserId,
                   "roleName" => "signer",
                   "customFields" => array(
                                "textCustomFields" => array (
                                                      array (
                                                          "name" => "address",
                                                          "value" => "Address from DB",
                                                          "show" => "true",
                                                          ),
                                                      array (
                                                          "name" => "city",
                                                          "value" => "City from DB",
                                                          "show" => "true",
                                                          ),
                                                      array (
                                                          "name" => "state",
                                                          "value" => "State from DB",
                                                          "show" => "true",
                                                          ),
                                                      array (
                                                          "name" => "phone",
                                                          "value" => "Phone from DB",
                                                          "show" => "true",
                                                          ),

                                               ),
                                     ),
                ),
                  ),
"status" => "sent"
); 

1 个答案:

答案 0 :(得分:1)

您需要在JSON中使用textTabs类型,而不是customFields用于其他内容。例如,如果您将数据字段从用户界面拖到文档上并将其命名为address,则要预先填写该字段,您需要引用它tabLabel和值字段,例如这样:

"roleName" => "signer",
"tabs" => array(
    "textTabs" => array(
        array(
            "tabLabel"=> "address",
            "value" => "123 Main St."
        ) 
    )
)