Docusignapi docusignrestapi:更正文档&;太多api调用

Docusignapi docusignrestapi:更正文档&;太多api调用,docusignapi,Docusignapi,场景: 我的应用程序通过使用一些基本语言和来自用户数据的替换变量动态生成一个契约(PDF)。然后,该pdf将与收件人/签名人/选项卡列表一起发送到DocuSign REST API,用于处理向各方交付协议的事宜 问题: 在合同谈判过程中,用户有时可能需要对协议进行编辑。我的应用程序有一个更正界面,在那里他们可以重新生成原始PDF,然后有一个允许他们更新现有信封的操作 为了执行这些更正,我目前正在使用以下API调用进行单个更正: getEnvelope检索当前状态并确保信封未被作废、完成等 del

场景:

我的应用程序通过使用一些基本语言和来自用户数据的替换变量动态生成一个契约(PDF)。然后,该pdf将与收件人/签名人/选项卡列表一起发送到DocuSign REST API,用于处理向各方交付协议的事宜

问题:

在合同谈判过程中,用户有时可能需要对协议进行编辑。我的应用程序有一个更正界面,在那里他们可以重新生成原始PDF,然后有一个允许他们更新现有信封的操作

为了执行这些更正,我目前正在使用以下API调用进行单个更正:

  • getEnvelope
    检索当前状态并确保信封未被作废、完成等
  • deleteeveledocuments
    删除所有现有文档
  • updateDocuments
    将base64编码的文档发送到信封
  • updatedevelope
    将收件人发送回信封,因为收件人已被删除,因此发送到#2
  • 这4个API调用对我来说是一个错误,因为如果其中任何一个由于任何原因失败,整个过程都会失败。此外,来回的处理时间也是一个考虑因素,即使我可以将其委托给队列的后台进程

    我的问题(我终于知道了)


    有没有更好的方法来做我想做的事?也许我可以跳过#1,在尝试更新已完成/作废的信封时捕获DocuSign引发的异常。我真正感兴趣的是,我是否能以某种方式将#2-4整合到一个电话中。API在更正时感觉不太清晰,并且在通过API更新信封时也不会发送任何通知。

    我认为这可以通过两个API调用而不是四个API调用来完成

    您可以进行PUT调用以替换文档

    PUT .../envelopes/<envID>/documents/1
    
    PUT…/envelopes//documents/1
    
    此API替换现有文档,不需要单独执行2+3操作


    这样就不需要再做第4步,因为如果您不删除文档而只是更新文档,则不会删除选项卡(而不是您所说的收件人)。

    不,恐怕不会。正在进行的修改是由发件人而不是收件人进行的。让我更新我的答案,您可以使用PUT替换文档。这听起来很有希望。因此,我对该方法的困惑在于,查看该方法的API文档页面,参数是accountId/documentId/envelopeid。我使用的是PHPSDK,我没有看到能够指定要替换的文档的信封定义。您是否有一个简短的示例,说明如何在API请求中指定文档?这段代码将创建一个新信封,而不是更新,但是信封定义是相同的,因此您可以使用其中的代码段,只需更改为调用$envelope\u api->updateDocuments(),而不是$envelope\u api->createEnvelope()。我一直在想为什么我不能仅仅替换文档(就像在云中一样),但我的困惑来自这样一个事实:SDK中没有定义信封定义,甚至更新方法页面上也没有提到信封定义。谢谢,我要试一试。我会回来,一旦它工作起来,我会把它标记为已回答。