如何设置 Web 挂钩来检查 DocuSign Envelope 状态?

2023-12-03

我编写了使用信封请求客户端签名的代码,如本教程所示:

https://www.docusign.com/developer-center/recipes/request-a-signature-via-email-using-a-template

我的问题是,如何定义可用于更新信封状态的 Web 挂钩 URL?我希望收到通知,并能够在客户签署文件后更新数据库中的信封状态。这可能吗?

EnvelopeDefinition 类是否公开了一些允许我定义 Web hook 的 url 的属性?


Updated

我们现在有新系列推荐的 WebHook 代码示例,它们使用无服务器功能和基于云的可靠排队服务。这些示例使您能够接收和处理 DocuSign Webhook 通知inside你的防火墙no更改您的防火墙。

现在可以使用 Node.js 的示例。 C#、Java、PHP 和 Python 的示例正在编写中。

  • AWS listener and workerNode.js 示例
  • Azure listener and workerNode.js 示例
  • 谷歌云listener and workerNode.js 示例

The 记录了 webhook XML 消息的格式.

NoteConnect 指南(第 2 页上的日期为 2016 年 3 月)很旧,并且在许多情况下是不正确的。新指南正在制作中。本指南对于 XML 格式信息很有用。

WSDL文件,包括通知消息格式为可用的。

要查看返回的 XML 消息,下面是已完成信封的示例通知:

<?xml version="1.0" encoding="utf-8"?>
<DocuSignEnvelopeInformation xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.docusign.net/API/3.0">
<EnvelopeStatus>
    <RecipientStatuses>
    <RecipientStatus>
        <Type>Signer</Type>
        <Email>[email protected]</Email>
        <UserName>Signer's name</UserName>
        <RoutingOrder>1</RoutingOrder>
        <Sent>2020-05-23T12:43:07.22</Sent>
        <Delivered>2020-05-23T12:43:14.767</Delivered>
        <Signed>2020-05-23T12:43:18.22</Signed>
        <DeclineReason xsi:nil="true"/>
        <Status>Completed</Status>
        <RecipientIPAddress>141.226.182.70</RecipientIPAddress>
        <ClientUserId>1000</ClientUserId>
        <CustomFields/>
        <TabStatuses>
        <TabStatus>
            <TabType>SignHere</TabType>
            <Status>Signed</Status>
            <XPosition>427</XPosition>
            <YPosition>531</YPosition>
            <TabLabel>Sign Here</TabLabel>
            <TabName>SignHere</TabName>
            <TabValue/>
            <DocumentID>1</DocumentID>
            <PageNumber>1</PageNumber>
        </TabStatus>
        </TabStatuses>
        <AccountStatus>Active</AccountStatus>
        <RecipientId>56e11847-da17-43c3-95f6-d4b675af8621</RecipientId>
    </RecipientStatus>
    </RecipientStatuses>
    <TimeGenerated>2020-05-23T12:43:38.7282968</TimeGenerated>
    <EnvelopeID>cd67ff4a-6cb1-42f3-87d3-f7c149031549</EnvelopeID>
    <Subject>Please sign the attached document</Subject>
    <UserName>Larry Kluger</UserName>
    <Email>[email protected]</Email>
    <Status>Completed</Status>
    <Created>2020-05-23T12:43:06.753</Created>
    <Sent>2020-05-23T12:43:07.253</Sent>
    <Delivered>2020-05-23T12:43:14.83</Delivered>
    <Signed>2020-05-23T12:43:18.22</Signed>
    <Completed>2020-05-23T12:43:18.22</Completed>
    <ACStatus>Original</ACStatus>
    <ACStatusDate>2020-05-23T12:43:06.753</ACStatusDate>
    <ACHolder>Larry Kluger</ACHolder>
    <ACHolderEmail>[email protected]</ACHolderEmail>
    <ACHolderLocation>DocuSign</ACHolderLocation>
    <SigningLocation>Online</SigningLocation>
    <SenderIPAddress>208.113.165.37 </SenderIPAddress>
    <EnvelopePDFHash/>
    <CustomFields>
    <CustomField>
        <Name>Team</Name>
        <Show>True</Show>
        <Required>False</Required>
        <Value/>
    </CustomField>
    <CustomField>
        <Name>Office</Name>
        <Show>True</Show>
        <Required>False</Required>
        <Value/>
    </CustomField>
    <CustomField>
        <Name>Order ID</Name>
        <Show>True</Show>
        <Required>False</Required>
        <Value/>
    </CustomField>
    <CustomField>
        <Name>AccountId</Name>
        <Show>false</Show>
        <Required>false</Required>
        <Value>4197223</Value>
        <CustomFieldType>Text</CustomFieldType>
    </CustomField>
    <CustomField>
        <Name>AccountName</Name>
        <Show>false</Show>
        <Required>false</Required>
        <Value>World Wide Corp</Value>
        <CustomFieldType>Text</CustomFieldType>
    </CustomField>
    <CustomField>
        <Name>AccountSite</Name>
        <Show>false</Show>
        <Required>false</Required>
        <Value>demo</Value>
        <CustomFieldType>Text</CustomFieldType>
    </CustomField>
    </CustomFields>
    <AutoNavigation>true</AutoNavigation>
    <EnvelopeIdStamping>true</EnvelopeIdStamping>
    <AuthoritativeCopy>false</AuthoritativeCopy>
    <DocumentStatuses>
    <DocumentStatus>
        <ID>1</ID>
        <Name>Example document</Name>
        <TemplateName/>
        <Sequence>1</Sequence>
    </DocumentStatus>
    </DocumentStatuses>
</EnvelopeStatus>
<TimeZone>Pacific Standard Time</TimeZone>
<TimeZoneOffset>-7</TimeZoneOffset>
</DocuSignEnvelopeInformation>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何设置 Web 挂钩来检查 DocuSign Envelope 状态? 的相关文章

随机推荐

  • 使用“HNetCfg.NATUPnP”Ole 对象进行端口转发失败

    我正在使用转发端口的代码 这段代码在我的 Windows 7 上运行良好 但我无法在 Windows XP 上使用它 问题更新1 2012 10 17 07 32 00Z 这是我的源代码 uses ActiveX oleAuto Proce
  • 验证 csv 文件

    这是我的示例文件 cty id1 ccy id2 cty src cty cd3 cty nm4 cty reg5 cty natnl6 cty bus7 cty data8 690 ALL2 AL ALBALODMNIA 90 ALL2
  • .NET 高效生成 WORD 文档的方法 - 服务器端

    NET 4 0 我正在寻找在我们的服务器上生成 Word 文档的最简单方法 限制 服务器端 我不想在服务器上安装 word 数据源是XML 我尝试使用 XSLT 生成 DOCX 这种方法既快速又简单 但验证生成的文档的唯一方法是使用 Wor
  • 如何在 android studio 中检查 ImageView 是否已完成加载和图像

    我正在尝试使用 Glide 加载一些 大约 50 个 带有 URL 数组中的图像的 ImageView 但加载似乎很慢 我认为这是因为它试图一次加载所有图像 如何检查图像是否已从 ImageView 中的 URL 加载完成 只有在加载前 4
  • 比较当前和以前的实体[重复]

    这个问题在这里已经有答案了 我正在使用 Spring Data 和 hibernate 我想比较新值 但作为方法参数传递的对象与我从数据库获取的对象相同 我为我的实体创建了一个侦听器 EntityListeners MyListener c
  • 确定所有 CSV 列的最小值和最大值

    我需要找到 CSV 中所有列的最小值和最大值 并将这些值用于网页中的滑块 最初 我确定 CSV 文件中的总列数 并根据总列数创建许多滑块 如亚马逊的价格滑块 这是用于创建滑块的代码段 在上面的代码中 数据滑块范围指定为 1 500 但是 我
  • 在多个worker之间共享python对象

    我们使用 FastAPI 创建了一个服务 当我们的服务启动时 它会创建一些 python 对象 然后端点使用这些对象来存储或检索数据 生产中的 FastAPI 从多个工作人员开始 我们的问题是每个工人创建自己的对象而不是共享一个对象 下面的
  • Dart 获取下周五的日期

    我正在尝试制作一个应用程序来倒计时直到下周五 但因此我需要下周五的日期 非常感谢任何帮助 Solution extension DateTimeExtension on DateTime DateTime next int day retu
  • 忽略 PostgreSQL 触发之前的结果?

    该主题是该主题的一部分挑战thread我正在为 BEFORE TRIGGER 的一部分寻找更好的解决方案 我只想启动一个触发器来转换为正确的括号 我在想我是否应该从触发器返回 NULL 或者在触发器之前返回其他内容 Code CREATE
  • VBA快速插入多条记录到Access DB

    好的 我有一个电子表格 可以生成相当大量的记录 3500 我有以下脚本将它们插入到我的访问数据库中 Sub putinDB Dim Cn As ADODB Connection Rs As ADODB Recordset Dim MyCon
  • Tensorflow.strided_slice 缺少参数“strides”?

    我正在尝试跑步cifar10 train py根据教程 但我得到了 cifar10 input py line 87 in read cifar10 tf strided slice record bytes 0 label bytes t
  • 缺少安装 OpenCV HighGUI

    我在安装 OpenCV 时遇到一些问题 我使用了此处提供的 2 3 1 windows superpack http opencv willowgarage com wiki 我将其解压到 C OpenCV 并使用 CMake 将其构建到
  • 用汇编语言弹出 CD/光驱

    这再简单不过了 但并没有改变 我有一个简单的代码 用于查看光驱是否会弹出 该代码采用汇编语言 intel nasm 语法 BITS 16 ORG 0X07C00 STI Eject mov ah 46h mov al 00h mov dl
  • 读取 FASTA 文件

    我想将文件的以下行转换为 JSON 我想将其保存到猫鼬模式中 gt HWI ST700660 96 2 1101 1455 2154 5 0 1 GAA GAATG 应该 gt HWI ST700660 96 2 1101 1455 215
  • 使用 htaccess 重定向目录,但不重定向其中的文件

    在我的网站上 我有一个目录 folder 其中包含一些图像和 html 我想重定向尝试访问的用户http domain com folder to http domain com 但不希望对该目录中的文件的请求重定向到http domain
  • 如何将箱线图保存为变量?

    如何将箱线图保存为 R 中的变量 例如 如果我这样做 plot lt boxplot count spray data InsectSprays col lightgray 当我调用绘图时 我希望它显示箱形图 这样我不需要每次都运行绘制箱形
  • 将发件人电子邮件更改为 Woocommerce 中的客户账单电子邮件

    我需要将订单电子邮件发件人更改为客户电子邮件 功能更改返回电子邮件为 public function get from address from address apply filters woocommerce email from ad
  • 更改 URL 映射 -Javamelody

    我在用着爪哇旋律在我的应用程序中 我只需要 root 用户来访问统计信息 Javamelody 默认情况下您可以访问 http localhost webapp monitoring 我需要将其更改为 http localhost weba
  • StreamReader 太贪心了

    我正在尝试处理文本文件的一部分 并使用将文本文件的其余部分写入云 blobUploadFromStream 问题在于 StreamReader 似乎从底层流中获取了太多内容 因此后续写入不执行任何操作 文本文件 3 Col1 String
  • 如何设置 Web 挂钩来检查 DocuSign Envelope 状态?

    我编写了使用信封请求客户端签名的代码 如本教程所示 https www docusign com developer center recipes request a signature via email using a template