2017-09-05 7 views
0

Docusignに新しく追加されました。ユーザーがサイン文書に直接アクセスできるエンベロープのIframe URLを取得

ユーザーの署名を追加するために、封筒を作成し、封筒をIframe内に表示する必要があります。しかし、私はユーザーが直接署名して直接URLを取得していません。 現在、ユーザーはそのユーザーがURLを取得しているメールを受信して​​います。そのURLをクリックすると、ユーザーは署名することができます。

私はURLを取得していますコードの上に使用することによりインラインフレーム

public ViewUrl getViewUrl(EnvelopeSummary envelopeSummary, Recipients recipients) throws ApiException{ 
     EnvelopesApi envelopesApi = new EnvelopesApi(DocusignFactory.appClient()); 
     RecipientViewRequest returnUrl = new RecipientViewRequest(); 
     returnUrl.setReturnUrl("https://www.docusign.com/devcenter"); 
     returnUrl.setAuthenticationMethod("email"); 
     Signer signer = recipients.getSigners().get(0); 
     returnUrl.setEmail("[email protected]"); 
     Tabs tabs = signer.getTabs(); 
     String usename= tabs.getFirstNameTabs().get(0).getName()+" "+tabs.getLastNameTabs().get(0).getName(); 
     returnUrl.setUserName(usename); 

     return envelopesApi.createRecipientView(DocusignFactory.getDocusignLogin().getAccountId(), envelopeSummary.getEnvelopeId().toString(), returnUrl);} 

のためのURLを生成するコードの下に使用しています。しかし、そのURLは単に封筒を示しているだけです。

受信者は、あなたが受信者ビュー(https://docs.docusign.com/esign/restapi/Envelopes/EnvelopeViews/createRecipient)メソッドに必要なパラメータの一つが欠けている私の入力に

public Recipients populateRecipients(Recipients recipients) { 
     Signer signer = recipients.getSigners().get(0); 
     signer.setEmail("[email protected]"); 
     signer.setName("My Name"); 
     //signer.setNote("Here"); 
     signer.setRecipientId("1"); 
     signer.setClientUserId("1001"); 
     signer.setDeliveryMethod("Email"); 
     Tabs tabs = signer.getTabs(); 

     DateSigned dateSigned = tabs.getDateSignedTabs().get(0); 
     dateSigned.setValue("01/01/2017"); 
     dateSigned.setDocumentId("1"); 
     dateSigned.setRecipientId("1"); 
     //dateSigned.setTabId("1"); 
     List<DateSigned> dateSigneds = new ArrayList<DateSigned>(); 
     dateSigneds.add(dateSigned); 
     tabs.setDateSignedTabs(dateSigneds); 

     EmailAddress emailAddress =tabs.getEmailAddressTabs().get(0); 
     emailAddress.setName("[email protected]"); 
     emailAddress.setDocumentId(""); 
     emailAddress.setRecipientId("1"); 
     //emailAddress.setTabId("2"); 
     List<EmailAddress> emailAddresss = new ArrayList<EmailAddress>(); 
     emailAddresss.add(emailAddress); 
     tabs.setEmailAddressTabs(emailAddresss); 

     FirstName firstName = tabs.getFirstNameTabs().get(0); 
     firstName.setName("firstName"); 
     firstName.setDocumentId("1"); 
     firstName.setRecipientId("1"); 
     //firstName.setTabId("3"); 
     List<FirstName> firstNames = new ArrayList<FirstName>(); 
     firstNames.add(firstName); 
     tabs.setFirstNameTabs(firstNames); 

     LastName lastName = tabs.getLastNameTabs().get(0); 
     lastName.setName("lastName"); 
     lastName.setDocumentId("1"); 
     lastName.setRecipientId("1"); 
     //lastName.setTabId("4"); 
     List<LastName> lastNames = new ArrayList<LastName>(); 
     lastNames.add(lastName); 
     tabs.setLastNameTabs(lastNames); 

     signer.setTabs(tabs); 
     List<Signer> signers = new ArrayList<Signer>(); 
     signers.add(signer); 
     recipients.setSigners(signers); 
     return recipients; 

答えて

0

に従ってEnvelopeTemplateオブジェクトと変更オブジェクトからオブジェクト入門 -

は、送信者をclientUserId受信者が埋め込まれていることを示す[作成済み]の値です。最大100文字。 トランザクションを作成するとき(署名要求を送信するとき)にclientUserIdの値を作成し、それを署名者に含める。

次に、受信者ビューを表示するときに含めます。あなたのWebアプリケーションが署名者を認証することが確実であることを保証するためのセキュリティ手段です。

自分で認証できる署名者用のclientUserIdのみを組み込み、埋め込み署名ビューを提供する予定です。

+0

clientUserIdを追加しているときに、「UNKNOWN_ENVELOPE_RECIPIENT」というメッセージが表示されます –

+0

recipientviewを取得する方法をコールで共有できますか? –

+0

私は[リンク] https://github.com/docusign/docusign-java-clientを使用しています。受信者オブジェクトをEnvelopeTemplateオブジェクトから取得し、自分の入力で変更しています –

関連する問題