Rails 3 + Docusign_rest如何向docusign发送签名请求

时间:2013-08-30 09:39:17

标签: ruby-on-rails-3 rest docusignapi

我想用docusign_rest gem发送签名请求。我已经配置了所有的东西,但我不知道如何执行签名请求的后续步骤。如何获取收件人ID,电子邮件,主题和所有。我已经尝试了很多,但在管理代码方面却很困惑。

请帮帮我....

我正在使用docusign_rest gem并希望将其api集成到我的代码中。我有所有的证件。

这是我的控制器

  class EmbedDocusignController < ApplicationController

   def embedded_signing
   end

   def docusign_response
     utility = DocusignRest::Utility.new

     if params[:event] == "signing_complete"
      flash[:notice] = "Thanks! Successfully signed"
      render :text => utility.breakout_path(some_path), content_type: :html
     else
      flash[:notice] = "You chose not to sign the document."
      render :text => utility.breakout_path(some_other_path), content_type: :html
     end
   end
   def get_envelope
     client = DocusignRest::Client.new
     document_envelope_response = client.create_envelope_from_document(
     email: {
       subject: "test email subject",
       body: "this is the email body and it's large!"
      },
     signers: [
      {
      embedded: false,
      name: 'Test Guy',
      email: 'my@yahoo.com',
      role_name: 'Issuer',
      sign_here_tabs: [
        {
          anchor_string: 'sign_here_1',
          anchor_x_offset: '140',
          anchor_y_offset: '8'
          }
         ]
       },
      ],
     file: [ {path: '/assets/doc/test.pdf', name: 'test.pdf'} ],
      status: 'sent'
     )
   end 
  end

提前致谢:)

1 个答案:

答案 0 :(得分:1)

您没有获得收件人ID,而是您自己实际设置和维护该ID。因此,您所要做的就是在请求正文中设置收件人ID,添加收件人的电子邮件和名称,然后发送签名请求。

要通过DocuSign的REST API发送签名请求,您需要向uri发送http POST请求

/accounts/<accountId>/envelopes

您的请求正文中的一个属性是状态属性。这有两个潜在值 - 已发送已创建。如果设置为已发送,则一旦您发出此http请求,信封将立即发送给其收件人。如果您将状态设置为已创建,则信封将保存为草稿,您可以稍后发送。

尝试将recipientId属性添加到您的请求中,并将其设置为“1”并发送。这应该会发送您的签名请求。此外,DocuSign还有一个开始使用签名请求的教程 - 它使用PHP,但想法是一样的。尝试使用它作为基础并集成到您的Ruby代码中:

http://www.docusign.com/developer-center/quick-start/request-signatures