首页 > 解决方案 > 用户在docusign中签署文档后如何在webhook URL上获得响应

问题描述

我将用户重定向到一个页面,他们可以在其中签署文档,签署后我设置了重定向用户的返回 URL。
现在我怎样才能得到从docusign发送的响应。
我试过 $_REQUEST$data = file_get_contents('php://input');但没有得到回应。有没有其他方法可以得到响应。

标签: phpdocusignapi

解决方案


一旦用户签署嵌入的 URL。信封的状态已更改。在您的 webApp 中,您必须将 eventNotification 对象连接到 EnvelopDefinition 对象,该对象在创建信封时使用。在那个特定的 eventNotification 对象中,您可以指定您想要通知的信封的各种状态,您必须指定一个回调端点。可以在 eventNotification 对象上的 url 参数上配置回调端点。以下是该 eventConfiguration 对象的 java 示例

EventNotification eventNotification = new EventNotification();
    eventNotification.setUrl("https://exampleapp.com/api/envelope/status");
    eventNotification.setIncludeCertificateOfCompletion(FALSE);
    eventNotification.setIncludeDocuments(FALSE);
    eventNotification.setRequireAcknowledgment(TRUE);
    eventNotification.setUseSoapInterface(FALSE);
    eventNotification.setLoggingEnabled(TRUE);
    eventNotification.setEnvelopeEvents(getEnvelopeEvents());
    return eventNotification;

以下是您可以指定要通知的信封状态的配置。您可以配置信封的多种状态。

private List<EnvelopeEvent> getEnvelopeEvents() {
    List<EnvelopeEvent> envelopeEvents = new ArrayList<>();
    EnvelopeEvent sentEnvelopeEvent = new EnvelopeEvent();
    sentEnvelopeEvent.setEnvelopeEventStatusCode("sent");
    sentEnvelopeEvent.setIncludeDocuments(FALSE);
    envelopeEvents.add(sentEnvelopeEvent);

    EnvelopeEvent completedEnvelopeEvent = new EnvelopeEvent();
    completedEnvelopeEvent.setEnvelopeEventStatusCode("completed");
    completedEnvelopeEvent.setIncludeDocuments(FALSE);
    envelopeEvents.add(completedEnvelopeEvent);
    return envelopeEvents;
}

在创建信封时,只需将此对象挂钩到 eventDefiniton 对象,然后将其传递给 EnvelopesApi 对象的 createEnvelope 方法。

EnvelopeDefinition envelopeDef = new EnvelopeDefinition();
envelopeDef.setEventNotification(eventNotification);
envelopesApi.createEnvelope(accountId, envelopeDef);

一旦你收到来自 docusign 的通知,你可以在数据库中更新你的合约状态,或者你可以通知你的用户界面关于信封状态的变化。


推荐阅读