我们正在使用 docusign API 通过电子邮件要求签名者签名。我们分析了这个 URL,发现它有两个查询参数('a' 和 'er')。有没有办法使用可用于生成运行时 URL 的 API 务实地获取这两个参数?
1 回答
是的,您可以生成用于通过 DocuSign 发送和签署文档的直接 URL,但您不能从您正在谈论的请求电子邮件中获取它 - 这是一个完全独立的过程。您想要的是 DocuSign 平台中称为嵌入的功能。
使用嵌入,您可以生成只能使用一次的经过身份验证的 URL“令牌”,并且必须在 5 分钟内到期之前使用它们,并且您必须生成一个新的。但是,要为给定收件人生成 URL,您需要以稍微不同的方式将它们添加到信封中。您需要设置他们的clientUserId属性以及他们的电子邮件和姓名,然后在为他们请求签名 URL 时引用相同的 clientUserId、电子邮件、姓名组合。
例如,如果您从模板创建信封并希望使用嵌入来生成签名 URL,那么您可以使用以下请求正文来创建信封:
{
"accountId": "221765",
"emailSubject": "Hello World!",
"emailBlurb": "This comes from PHP",
"templateId": "9347C7AF-7EEE-4CEC-BA19-2734986F5501",
"templateRoles": [
{
"email": "test@gmail.com",
"name": "John Doe",
"clientUserId": "1001",
"roleName": "Signer1",
"tabs": {
"textTabs": [
{
"tabLabel": "address",
"value": "123 Main St. SF, CA"
},
{
"tabLabel": "zipCode",
"value": "94043"
}
]
}
}
],
"status": "sent"
}
然后,您可以使用以下请求正文为给定收件人生成签名 URL。请注意,从我们创建信封时开始,clientUserId(以及他们的电子邮件和姓名)是如何匹配的:
{
"returnUrl": "http://www.docusign.com/devcenter",
"authenticationMethod": "None",
"email": "test@gmail.com",
"userName": "John Doe",
"clientUserId": "1001"
}
DocuSign 开发中心的以下页面包含有关如何完成此操作的详细信息(实际上很容易): http: //www.docusign.com/developer-center/explore/features/embedding-docusign
DocuSign 还有两个很棒的工具可以帮助您测试并开始编写代码,API 演练(其中包含您可以直接复制的示例代码,包括 3 个专注于嵌入功能的代码)和 API Explorer——它允许您制作任何 api无需编写任何代码即可调用。