hellosign-ruby-sdk 3.7.5 → 3.7.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
 - data/README.md +2 -2
 - data/lib/hello_sign.rb +7 -12
 - data/lib/hello_sign/api.rb +1 -2
 - data/lib/hello_sign/api/account.rb +17 -30
 - data/lib/hello_sign/api/api_app.rb +27 -25
 - data/lib/hello_sign/api/bulk_send_job.rb +62 -0
 - data/lib/hello_sign/api/embedded.rb +17 -23
 - data/lib/hello_sign/api/oauth.rb +26 -34
 - data/lib/hello_sign/api/signature_request.rb +370 -261
 - data/lib/hello_sign/api/team.rb +21 -26
 - data/lib/hello_sign/api/template.rb +79 -70
 - data/lib/hello_sign/api/unclaimed_draft.rb +193 -142
 - data/lib/hello_sign/client.rb +58 -22
 - data/lib/hello_sign/configuration.rb +3 -7
 - data/lib/hello_sign/error.rb +2 -3
 - data/lib/hello_sign/resource.rb +1 -2
 - data/lib/hello_sign/resource/account.rb +3 -6
 - data/lib/hello_sign/resource/api_app.rb +3 -6
 - data/lib/hello_sign/resource/base_resource.rb +5 -9
 - data/lib/hello_sign/resource/bulk_send_job.rb +43 -0
 - data/lib/hello_sign/resource/embedded.rb +7 -10
 - data/lib/hello_sign/resource/resource_array.rb +7 -10
 - data/lib/hello_sign/resource/signature_request.rb +6 -9
 - data/lib/hello_sign/resource/team.rb +3 -6
 - data/lib/hello_sign/resource/template.rb +5 -8
 - data/lib/hello_sign/resource/template_draft.rb +4 -7
 - data/lib/hello_sign/resource/unclaimed_draft.rb +5 -10
 - data/lib/hello_sign/version.rb +1 -3
 - data/spec/fixtures/api_app.json +10 -10
 - data/spec/fixtures/bulk_send_job.json +88 -0
 - data/spec/fixtures/bulk_send_jobs.json +22 -0
 - data/spec/hello_sign/api/account_spec.rb +1 -1
 - data/spec/hello_sign/api/bulk_send_job_spec.rb +53 -0
 - data/spec/hello_sign_spec.rb +2 -4
 - data/spec/spec_helper.rb +0 -2
 - metadata +11 -3
 
| 
         @@ -1,4 +1,3 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            #
         
     | 
| 
       2 
1 
     | 
    
         
             
            # The MIT License (MIT)
         
     | 
| 
       3 
2 
     | 
    
         
             
            #
         
     | 
| 
       4 
3 
     | 
    
         
             
            # Copyright (C) 2014 hellosign.com
         
     | 
| 
         @@ -20,48 +19,43 @@ 
     | 
|
| 
       20 
19 
     | 
    
         
             
            # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
         
     | 
| 
       21 
20 
     | 
    
         
             
            # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
         
     | 
| 
       22 
21 
     | 
    
         
             
            # SOFTWARE.
         
     | 
| 
       23 
     | 
    
         
            -
            #
         
     | 
| 
       24 
22 
     | 
    
         | 
| 
       25 
23 
     | 
    
         
             
            module HelloSign
         
     | 
| 
       26 
24 
     | 
    
         
             
              module Api
         
     | 
| 
       27 
     | 
    
         
            -
             
     | 
| 
       28 
     | 
    
         
            -
                #
         
     | 
| 
       29 
25 
     | 
    
         
             
                # Contains all the API calls for the SignatureRequest resource.
         
     | 
| 
       30 
     | 
    
         
            -
                # Take a look at our API Documentation  
     | 
| 
      
 26 
     | 
    
         
            +
                # Take a look at our API Documentation on Signature Requests (https://app.hellosign.com/api/reference#SignatureRequest)
         
     | 
| 
       31 
27 
     | 
    
         
             
                # for more information about this.
         
     | 
| 
       32 
28 
     | 
    
         
             
                #
         
     | 
| 
       33 
29 
     | 
    
         
             
                # @author [hellosign]
         
     | 
| 
       34 
     | 
    
         
            -
             
     | 
| 
      
 30 
     | 
    
         
            +
             
     | 
| 
       35 
31 
     | 
    
         
             
                module SignatureRequest
         
     | 
| 
       36 
32 
     | 
    
         | 
| 
      
 33 
     | 
    
         
            +
                  # Retrieves a SignatureRequest with the given ID.
         
     | 
| 
      
 34 
     | 
    
         
            +
                  # @option opts [String] signature_request_id The ID of the SignatureRequest to retrieve.
         
     | 
| 
       37 
35 
     | 
    
         
             
                  #
         
     | 
| 
       38 
     | 
    
         
            -
                  #  
     | 
| 
       39 
     | 
    
         
            -
                  # @option opts [String] signature_request_id The id of the SignatureRequest to retrieve.
         
     | 
| 
       40 
     | 
    
         
            -
                  #
         
     | 
| 
       41 
     | 
    
         
            -
                  # @return [HelloSign::Resource::SignatureRequest] a SignatureRequest object
         
     | 
| 
      
 36 
     | 
    
         
            +
                  # @return [HelloSign::Resource::SignatureRequest] a SignatureRequest
         
     | 
| 
       42 
37 
     | 
    
         
             
                  #
         
     | 
| 
       43 
38 
     | 
    
         
             
                  # @example
         
     | 
| 
       44 
     | 
    
         
            -
                  # 
     | 
| 
       45 
     | 
    
         
            -
                  #
         
     | 
| 
      
 39 
     | 
    
         
            +
                  # signature_request = @client.get_signature_request signature_request_id: 'fa5c8a0b0f492d768749333ad6fcc214c111e967'
         
     | 
| 
       46 
40 
     | 
    
         
             
                  def get_signature_request(opts)
         
     | 
| 
       47 
     | 
    
         
            -
             
     | 
| 
       48 
     | 
    
         
            -
             
     | 
| 
       49 
     | 
    
         
            -
                      path += query
         
     | 
| 
      
 41 
     | 
    
         
            +
                    path = "/signature_request/#{opts[:signature_request_id]}"
         
     | 
| 
      
 42 
     | 
    
         
            +
             
     | 
| 
       50 
43 
     | 
    
         
             
                    HelloSign::Resource::SignatureRequest.new get(path)
         
     | 
| 
       51 
44 
     | 
    
         
             
                  end
         
     | 
| 
       52 
45 
     | 
    
         | 
| 
       53 
     | 
    
         
            -
                  #
         
     | 
| 
       54 
     | 
    
         
            -
                  # Returns a list of SignatureRequests that you can access. This includes SignatureRequests you have sent as well as received, but not ones that you have been CC'd on.
         
     | 
| 
      
 46 
     | 
    
         
            +
                  # Returns a list of send and received SignatureRequests that you can access. This does not include ones that you have been CC'd on.
         
     | 
| 
       55 
47 
     | 
    
         
             
                  # @option opts [String] account_id Indicates which account to return SignatureRequests for. Defaults to your account. (optional)
         
     | 
| 
       56 
48 
     | 
    
         
             
                  # @option opts [Integer] page Sets the page number of the list to return. Defaults to 1. (optional)
         
     | 
| 
       57 
49 
     | 
    
         
             
                  # @option opts [Integer] page_size Determines the number of SignatureRequests returned per page. Defaults to 20. (optional)
         
     | 
| 
       58 
     | 
    
         
            -
                  # @option opts [String] query  
     | 
| 
      
 50 
     | 
    
         
            +
                  # @option opts [String] query Filters the SignatureRequests based on the search parameters. (optional)
         
     | 
| 
       59 
51 
     | 
    
         
             
                  #
         
     | 
| 
       60 
52 
     | 
    
         
             
                  # @return [HelloSign::Resource::ResourceArray]
         
     | 
| 
       61 
53 
     | 
    
         
             
                  #
         
     | 
| 
       62 
54 
     | 
    
         
             
                  # @example
         
     | 
| 
       63 
     | 
    
         
            -
                  # 
     | 
| 
       64 
     | 
    
         
            -
                  #
         
     | 
| 
      
 55 
     | 
    
         
            +
                  # signature_requests = @client.get_signature_requests(
         
     | 
| 
      
 56 
     | 
    
         
            +
                  #   page: 1,
         
     | 
| 
      
 57 
     | 
    
         
            +
                  #   query: "to:jack@example.com+AND+client_id:b6b8e7deaf8f0b95c029dca049356d4a2cf9710a"
         
     | 
| 
      
 58 
     | 
    
         
            +
                  # )
         
     | 
| 
       65 
59 
     | 
    
         
             
                  def get_signature_requests(opts={})
         
     | 
| 
       66 
60 
     | 
    
         
             
                    path = '/signature_request/list'
         
     | 
| 
       67 
61 
     | 
    
         
             
                    opts[:query] = create_search_string(opts[:query]) if opts[:query]
         
     | 
| 
         @@ -70,27 +64,29 @@ module HelloSign 
     | 
|
| 
       70 
64 
     | 
    
         
             
                    HelloSign::Resource::ResourceArray.new get(path, opts), 'signature_requests', HelloSign::Resource::SignatureRequest
         
     | 
| 
       71 
65 
     | 
    
         
             
                  end
         
     | 
| 
       72 
66 
     | 
    
         | 
| 
       73 
     | 
    
         
            -
                  #
         
     | 
| 
       74 
67 
     | 
    
         
             
                  # Creates and sends a new SignatureRequest with the submitted documents.
         
     | 
| 
       75 
     | 
    
         
            -
                  #  
     | 
| 
       76 
     | 
    
         
            -
                  #  
     | 
| 
       77 
     | 
    
         
            -
                  # @option opts [ 
     | 
| 
       78 
     | 
    
         
            -
                  # @option opts [ 
     | 
| 
       79 
     | 
    
         
            -
                  # @option opts [ 
     | 
| 
       80 
     | 
    
         
            -
                  # @option opts [String]  
     | 
| 
       81 
     | 
    
         
            -
                  # @option opts [String]  
     | 
| 
       82 
     | 
    
         
            -
                  # @option opts [ 
     | 
| 
       83 
     | 
    
         
            -
                  #  
     | 
| 
       84 
     | 
    
         
            -
                  #  
     | 
| 
       85 
     | 
    
         
            -
                  #   *  
     | 
| 
       86 
     | 
    
         
            -
                  #   *  
     | 
| 
       87 
     | 
    
         
            -
                  # 
     | 
| 
       88 
     | 
    
         
            -
                  #   *  
     | 
| 
      
 68 
     | 
    
         
            +
                  # @option opts [Boolean] test_mode Indicates if this is a test SignatureRequest, it will not be legally binding if set to 1. Defaults to 0. (optional)
         
     | 
| 
      
 69 
     | 
    
         
            +
                  # @option opts [Array<String>] files Specifies the file path(s) to send for the SignatureRequest.
         
     | 
| 
      
 70 
     | 
    
         
            +
                  # @option opts [Array<String>] file_urls Specifies the URL(s) for the file(s) to send for the SignatureRequest.
         
     | 
| 
      
 71 
     | 
    
         
            +
                  # @option opts [String] title Assigns a title to the SignatureRequest. (optional)
         
     | 
| 
      
 72 
     | 
    
         
            +
                  # @option opts [String] subject Sets the subject in the email sent to the signer(s). (optional)
         
     | 
| 
      
 73 
     | 
    
         
            +
                  # @option opts [String] message Sets the message in the email sent to the signer(s). (optional)
         
     | 
| 
      
 74 
     | 
    
         
            +
                  # @option opts [String] signing_redirect_url Redirects the signer(s) to this URL after completing the SignatureRequest. (optional)
         
     | 
| 
      
 75 
     | 
    
         
            +
                  # @option opts [Array<Hash>] signers Sets a list of signers, each item is a Hash with these keys:
         
     | 
| 
      
 76 
     | 
    
         
            +
                  #   * name (String) Signer's name
         
     | 
| 
      
 77 
     | 
    
         
            +
                  #   * email_address (String) Signer's email address
         
     | 
| 
      
 78 
     | 
    
         
            +
                  #   * order (Integer) The order the signers are required to sign in (optional)
         
     | 
| 
      
 79 
     | 
    
         
            +
                  #   * pin (Integer) Secures the SignatureRequest using this 4-12 character access code. A business plan is required to use this feature. (optional)
         
     | 
| 
      
 80 
     | 
    
         
            +
                  # @option opts [Array<Hash>] attachments Sets a list of attachments signers can upload
         
     | 
| 
      
 81 
     | 
    
         
            +
                  #   * name (String) Attachment name
         
     | 
| 
      
 82 
     | 
    
         
            +
                  #   * instructions (String) Instructions for uploading the attachment. (optional)
         
     | 
| 
      
 83 
     | 
    
         
            +
                  #   * signer_index (Integer) The signer's unique number.
         
     | 
| 
      
 84 
     | 
    
         
            +
                  #   * required (Boolean) Determines if the signer is required to upload this attachment. Defaults to 0. (Optional)
         
     | 
| 
       89 
85 
     | 
    
         
             
                  # @option opts [Array<Hash>] custom_fields An array of custom merge fields, representing those present on the document with Text Tags or form_fields_per_document (optional)
         
     | 
| 
       90 
     | 
    
         
            -
                  #   *  
     | 
| 
       91 
     | 
    
         
            -
                  #   *  
     | 
| 
       92 
     | 
    
         
            -
                  #   *  
     | 
| 
       93 
     | 
    
         
            -
                  #   *  
     | 
| 
      
 86 
     | 
    
         
            +
                  #   * name (String) Custom field name or "Field Label"
         
     | 
| 
      
 87 
     | 
    
         
            +
                  #   * value (String) The value of the field. This data will appear on the SignatureRequest.
         
     | 
| 
      
 88 
     | 
    
         
            +
                  #   * editor (String) The signer name indicated on the Text Tag or form_fields_per_document that can edit the value of the field. (optional)
         
     | 
| 
      
 89 
     | 
    
         
            +
                  #   * required (Boolean) Determines if the field is required or not. (optional)
         
     | 
| 
       94 
90 
     | 
    
         
             
                  # @option opts [Array<String>] cc_email_addresses The email addresses that should be CCed on the SignatureRequest. (optional)
         
     | 
| 
       95 
91 
     | 
    
         
             
                  # @option opts [Boolean] use_text_tags Indicates whether the SignatureRequest should have Text Tags enabled. Defaults to 0. (optional)
         
     | 
| 
       96 
92 
     | 
    
         
             
                  # @option opts [Boolean] hide_text_tags Indicates whether the Text Tags should be removed automatically. Note that this is not the preferred method. Defaults to 0. (optional)
         
     | 
| 
         @@ -99,156 +95,157 @@ module HelloSign 
     | 
|
| 
       99 
95 
     | 
    
         
             
                  # @option opts [Boolean] allow_decline Allows signers to decline the SignatureRequest. Defaults to 0. (optional)
         
     | 
| 
       100 
96 
     | 
    
         
             
                  # @option opts [Boolean] allow_reassign Allows signers to reassign the SignatureRequest to another signer. Defaults to 0. (optional)
         
     | 
| 
       101 
97 
     | 
    
         
             
                  # @option opts [Array<Hash>] form_fields_per_document The fields that should appear on the document. (optional)
         
     | 
| 
      
 98 
     | 
    
         
            +
                  # @option opts [Hash] signing_options Specifies the types allowed for creating a signature. (optional)
         
     | 
| 
       102 
99 
     | 
    
         
             
                  #
         
     | 
| 
       103 
100 
     | 
    
         
             
                  # @return [HelloSign::Resource::SignatureRequest] a SignatureRequest
         
     | 
| 
       104 
101 
     | 
    
         
             
                  #
         
     | 
| 
       105 
102 
     | 
    
         
             
                  # @example
         
     | 
| 
       106 
103 
     | 
    
         
             
                  #   signature_request = @client.send_signature_request(
         
     | 
| 
       107 
     | 
    
         
            -
                  #     : 
     | 
| 
       108 
     | 
    
         
            -
                  #     : 
     | 
| 
       109 
     | 
    
         
            -
                  #     : 
     | 
| 
       110 
     | 
    
         
            -
                  #     : 
     | 
| 
       111 
     | 
    
         
            -
                  #     : 
     | 
| 
       112 
     | 
    
         
            -
                  #     : 
     | 
| 
       113 
     | 
    
         
            -
                  # 
     | 
| 
       114 
     | 
    
         
            -
                  # 
     | 
| 
      
 104 
     | 
    
         
            +
                  #     test_mode: 1,
         
     | 
| 
      
 105 
     | 
    
         
            +
                  #     allow_decline: 1,
         
     | 
| 
      
 106 
     | 
    
         
            +
                  #     title: 'NDA with Acme Co.',
         
     | 
| 
      
 107 
     | 
    
         
            +
                  #     subject: 'The NDA we talked about',
         
     | 
| 
      
 108 
     | 
    
         
            +
                  #     message: 'Please sign this NDA and then we can discuss more. Let me know if you have any questions.',
         
     | 
| 
      
 109 
     | 
    
         
            +
                  #     metadata: {
         
     | 
| 
      
 110 
     | 
    
         
            +
                  #       client_id: '1234',
         
     | 
| 
      
 111 
     | 
    
         
            +
                  #       custom_text: 'NDA #9'
         
     | 
| 
       115 
112 
     | 
    
         
             
                  #     },
         
     | 
| 
       116 
     | 
    
         
            -
                  #     : 
     | 
| 
       117 
     | 
    
         
            -
                  # 
     | 
| 
       118 
     | 
    
         
            -
                  # 
     | 
| 
       119 
     | 
    
         
            -
                  # 
     | 
| 
       120 
     | 
    
         
            -
                  #       }, 
     | 
| 
       121 
     | 
    
         
            -
                  # 
     | 
| 
       122 
     | 
    
         
            -
                  # 
     | 
| 
       123 
     | 
    
         
            -
                  # 
     | 
| 
      
 113 
     | 
    
         
            +
                  #     signers: [{
         
     | 
| 
      
 114 
     | 
    
         
            +
                  #       email_address: 'jack@example.com',
         
     | 
| 
      
 115 
     | 
    
         
            +
                  #       name: 'Jack',
         
     | 
| 
      
 116 
     | 
    
         
            +
                  #       order: 0,
         
     | 
| 
      
 117 
     | 
    
         
            +
                  #       },
         
     | 
| 
      
 118 
     | 
    
         
            +
                  #       {
         
     | 
| 
      
 119 
     | 
    
         
            +
                  #       email_address: 'jill@example.com',
         
     | 
| 
      
 120 
     | 
    
         
            +
                  #       name: 'Jill',
         
     | 
| 
      
 121 
     | 
    
         
            +
                  #       order: 1,
         
     | 
| 
      
 122 
     | 
    
         
            +
                  #       }],
         
     | 
| 
      
 123 
     | 
    
         
            +
                  #     attachments: [{
         
     | 
| 
      
 124 
     | 
    
         
            +
                  #       name: 'Passport',
         
     | 
| 
      
 125 
     | 
    
         
            +
                  #       instructions: 'Upload your US Passport',
         
     | 
| 
      
 126 
     | 
    
         
            +
                  #       signer_index: 0,
         
     | 
| 
      
 127 
     | 
    
         
            +
                  #       required: true
         
     | 
| 
      
 128 
     | 
    
         
            +
                  #       },
         
     | 
| 
      
 129 
     | 
    
         
            +
                  #       {
         
     | 
| 
      
 130 
     | 
    
         
            +
                  #       name: 'Driver's License',
         
     | 
| 
      
 131 
     | 
    
         
            +
                  #       instructions: 'Upload your CA Driver's License',
         
     | 
| 
      
 132 
     | 
    
         
            +
                  #       signer_index: 1,
         
     | 
| 
      
 133 
     | 
    
         
            +
                  #       required: false
         
     | 
| 
       124 
134 
     | 
    
         
             
                  #       }
         
     | 
| 
       125 
135 
     | 
    
         
             
                  #     ],
         
     | 
| 
       126 
     | 
    
         
            -
                  #     : 
     | 
| 
       127 
     | 
    
         
            -
                  #     : 
     | 
| 
       128 
     | 
    
         
            -
                  #     : 
     | 
| 
       129 
     | 
    
         
            -
             
     | 
| 
       130 
     | 
    
         
            -
             
     | 
| 
       131 
     | 
    
         
            -
                         
     | 
| 
       132 
     | 
    
         
            -
                         
     | 
| 
       133 
     | 
    
         
            -
                         
     | 
| 
       134 
     | 
    
         
            -
                         
     | 
| 
       135 
     | 
    
         
            -
                         
     | 
| 
       136 
     | 
    
         
            -
                         
     | 
| 
       137 
     | 
    
         
            -
                         
     | 
| 
       138 
     | 
    
         
            -
             
     | 
| 
       139 
     | 
    
         
            -
             
     | 
| 
       140 
     | 
    
         
            -
             
     | 
| 
       141 
     | 
    
         
            -
             
     | 
| 
       142 
     | 
    
         
            -
                         
     | 
| 
       143 
     | 
    
         
            -
                         
     | 
| 
       144 
     | 
    
         
            -
                         
     | 
| 
       145 
     | 
    
         
            -
                         
     | 
| 
       146 
     | 
    
         
            -
                         
     | 
| 
       147 
     | 
    
         
            -
                         
     | 
| 
       148 
     | 
    
         
            -
                         
     | 
| 
       149 
     | 
    
         
            -
                         
     | 
| 
       150 
     | 
    
         
            -
             
     | 
| 
       151 
     | 
    
         
            -
             
     | 
| 
       152 
     | 
    
         
            -
                  # 
     | 
| 
       153 
     | 
    
         
            -
                  #
         
     | 
| 
       154 
     | 
    
         
            -
             
     | 
| 
      
 136 
     | 
    
         
            +
                  #     cc_email_addresses: ['lawyer@example.com', 'lawyer@example2.com'],
         
     | 
| 
      
 137 
     | 
    
         
            +
                  #     files: ['NDA.pdf', 'AppendixA.pdf'],
         
     | 
| 
      
 138 
     | 
    
         
            +
                  #     form_fields_per_document: [
         
     | 
| 
      
 139 
     | 
    
         
            +
                  #        [
         
     | 
| 
      
 140 
     | 
    
         
            +
                  #          {
         
     | 
| 
      
 141 
     | 
    
         
            +
                  #            name: 'address',
         
     | 
| 
      
 142 
     | 
    
         
            +
                  #            type: 'text',
         
     | 
| 
      
 143 
     | 
    
         
            +
                  #            x: 160,
         
     | 
| 
      
 144 
     | 
    
         
            +
                  #            y: 80,
         
     | 
| 
      
 145 
     | 
    
         
            +
                  #            width: 206,
         
     | 
| 
      
 146 
     | 
    
         
            +
                  #            height: 32,
         
     | 
| 
      
 147 
     | 
    
         
            +
                  #            signer: 0
         
     | 
| 
      
 148 
     | 
    
         
            +
                  #          }
         
     | 
| 
      
 149 
     | 
    
         
            +
                  #        ],
         
     | 
| 
      
 150 
     | 
    
         
            +
                  #        [
         
     | 
| 
      
 151 
     | 
    
         
            +
                  #          {
         
     | 
| 
      
 152 
     | 
    
         
            +
                  #            name: 'phone',
         
     | 
| 
      
 153 
     | 
    
         
            +
                  #            type: 'text',
         
     | 
| 
      
 154 
     | 
    
         
            +
                  #            x: 160,
         
     | 
| 
      
 155 
     | 
    
         
            +
                  #            y: 150,
         
     | 
| 
      
 156 
     | 
    
         
            +
                  #            width: 206,
         
     | 
| 
      
 157 
     | 
    
         
            +
                  #            height: 32,
         
     | 
| 
      
 158 
     | 
    
         
            +
                  #            signer: 1
         
     | 
| 
      
 159 
     | 
    
         
            +
                  #            }
         
     | 
| 
      
 160 
     | 
    
         
            +
                  #        ]
         
     | 
| 
      
 161 
     | 
    
         
            +
                  #      ],
         
     | 
| 
      
 162 
     | 
    
         
            +
                  #     signing_options: {
         
     | 
| 
      
 163 
     | 
    
         
            +
                  #       draw: true,
         
     | 
| 
      
 164 
     | 
    
         
            +
                  #       type: true,
         
     | 
| 
      
 165 
     | 
    
         
            +
                  #       upload: false,
         
     | 
| 
      
 166 
     | 
    
         
            +
                  #       phone: true,
         
     | 
| 
      
 167 
     | 
    
         
            +
                  #       default: 'phone'
         
     | 
| 
      
 168 
     | 
    
         
            +
                  #       }
         
     | 
| 
      
 169 
     | 
    
         
            +
                  #     )
         
     | 
| 
       155 
170 
     | 
    
         
             
                  def send_signature_request(opts)
         
     | 
| 
       156 
171 
     | 
    
         
             
                    prepare_files opts
         
     | 
| 
       157 
172 
     | 
    
         
             
                    prepare_signers opts
         
     | 
| 
       158 
173 
     | 
    
         
             
                    prepare_form_fields opts
         
     | 
| 
       159 
174 
     | 
    
         
             
                    prepare_custom_fields opts
         
     | 
| 
      
 175 
     | 
    
         
            +
                    prepare_attachments opts
         
     | 
| 
       160 
176 
     | 
    
         | 
| 
       161 
     | 
    
         
            -
                    request = HelloSign::Resource::SignatureRequest.new post('/signature_request/send', : 
     | 
| 
      
 177 
     | 
    
         
            +
                    request = HelloSign::Resource::SignatureRequest.new post('/signature_request/send', body: opts)
         
     | 
| 
       162 
178 
     | 
    
         
             
                  end
         
     | 
| 
       163 
179 
     | 
    
         | 
| 
       164 
     | 
    
         
            -
                  #
         
     | 
| 
       165 
180 
     | 
    
         
             
                  # Creates and sends a new SignatureRequest based off of the Template specified with the template_id parameter.
         
     | 
| 
       166 
     | 
    
         
            -
                  # @option opts [Boolean] test_mode Indicates if this is a test SignatureRequest, it will not be legally binding if set to 1.  
     | 
| 
      
 181 
     | 
    
         
            +
                  # @option opts [Boolean] test_mode Indicates if this is a test SignatureRequest, it will not be legally binding if set to 1. Defaults to 0. (optional)
         
     | 
| 
      
 182 
     | 
    
         
            +
                  # @option opts [Boolean] allow_decline Allows signers to decline the SignatureRequest. Defaults to 0. (optional)
         
     | 
| 
       167 
183 
     | 
    
         
             
                  # @option opts [String] template_id The Template ID to use when creating the SignatureRequest.
         
     | 
| 
       168 
184 
     | 
    
         
             
                  #   * Use template_ids[%i%] if using multiple templates, replacing %i% with an integer to indicate the order of the Templates
         
     | 
| 
       169 
     | 
    
         
            -
                  # @option opts [String] title  
     | 
| 
       170 
     | 
    
         
            -
                  # @option opts [String] subject  
     | 
| 
       171 
     | 
    
         
            -
                  # @option opts [String] message  
     | 
| 
       172 
     | 
    
         
            -
                  # @option opts [String] signing_redirect_url  
     | 
| 
       173 
     | 
    
         
            -
                  # @option opts [Array<Hash>]  
     | 
| 
       174 
     | 
    
         
            -
                  #   *  
     | 
| 
       175 
     | 
    
         
            -
                  #   *  
     | 
| 
       176 
     | 
    
         
            -
                  #   *  
     | 
| 
       177 
     | 
    
         
            -
                  #   *  
     | 
| 
      
 185 
     | 
    
         
            +
                  # @option opts [String] title Assigns a title to the SignatureRequest. (optional)
         
     | 
| 
      
 186 
     | 
    
         
            +
                  # @option opts [String] subject Sets the subject in the email sent to the signer(s). (optional)
         
     | 
| 
      
 187 
     | 
    
         
            +
                  # @option opts [String] message Sets the message in the email sent to the signer(s). (optional)
         
     | 
| 
      
 188 
     | 
    
         
            +
                  # @option opts [String] signing_redirect_url Redirects the signer(s) to this URL after completing the SignatureRequest. (optional)
         
     | 
| 
      
 189 
     | 
    
         
            +
                  # @option opts [Array<Hash>] signer_file Sets a list of signers, each item is a Hash with these keys:
         
     | 
| 
      
 190 
     | 
    
         
            +
                  #   * role (Integer) The signer role indicated on the Template.
         
     | 
| 
      
 191 
     | 
    
         
            +
                  #   * name (String) Signer's name
         
     | 
| 
      
 192 
     | 
    
         
            +
                  #   * email_address (String) Signer's email address
         
     | 
| 
      
 193 
     | 
    
         
            +
                  #   * pin (Integer) Secures the SignatureRequest using this 4-12 character access code. A business plan is required to use this feature. (optional)
         
     | 
| 
       178 
194 
     | 
    
         
             
                  # @option opts [Array<Hash>] ccs The individual(s) to be CC'd on the SignatureRequest. Required when a CC role exists for the Template.
         
     | 
| 
       179 
     | 
    
         
            -
                  #   *  
     | 
| 
       180 
     | 
    
         
            -
                  #   *  
     | 
| 
       181 
     | 
    
         
            -
                  # @option opts [Array<Hash>] custom_fields An array of custom merge fields, representing those present  
     | 
| 
       182 
     | 
    
         
            -
                  #   *  
     | 
| 
       183 
     | 
    
         
            -
                  #   *  
     | 
| 
       184 
     | 
    
         
            -
                  #   *  
     | 
| 
       185 
     | 
    
         
            -
                  #   *  
     | 
| 
      
 195 
     | 
    
         
            +
                  #   * role (String) The CC role indicated on the Template. Note that the role name is case sensitive.
         
     | 
| 
      
 196 
     | 
    
         
            +
                  #   * email_address (String) CC Recipient's email address
         
     | 
| 
      
 197 
     | 
    
         
            +
                  # @option opts [Array<Hash>] custom_fields An array of custom merge fields, representing those present on the Template. (optional)
         
     | 
| 
      
 198 
     | 
    
         
            +
                  #   * name (String) Custom field name or "Field Label"
         
     | 
| 
      
 199 
     | 
    
         
            +
                  #   * value (String) The value of the field. This data will appear on the SignatureRequest.
         
     | 
| 
      
 200 
     | 
    
         
            +
                  #   * editor (String) The signer name indicated on the Text Tag or form_fields_per_document that can edit the value of the field. (optional)
         
     | 
| 
      
 201 
     | 
    
         
            +
                  #   * required (Boolean) Determines if the field is required or not. (optional)
         
     | 
| 
       186 
202 
     | 
    
         
             
                  # @option opts [Hash] metadata Key-value data attached to the SignatureRequest. (optional)
         
     | 
| 
       187 
203 
     | 
    
         
             
                  # @option opts [String] client_id The API App Client ID associated with the SignatureRequest. (optional)
         
     | 
| 
       188 
204 
     | 
    
         
             
                  # @option opts [Array<String>] files Use files to indicate the uploaded file(s) to append to the SignatureRequest. (optional)
         
     | 
| 
       189 
205 
     | 
    
         
             
                  # @option opts [Array<String>] file_urls Use file_urls to have HelloSign download the file(s) to append to the SignatureRequest. (optional)
         
     | 
| 
      
 206 
     | 
    
         
            +
                  # @option opts [Hash] signing_options Specifies the types allowed for creating a signature. (optional)
         
     | 
| 
      
 207 
     | 
    
         
            +
                  #
         
     | 
| 
       190 
208 
     | 
    
         
             
                  # @return [HelloSign::Resource::SignatureRequest] a SignatureRequest
         
     | 
| 
      
 209 
     | 
    
         
            +
                  #
         
     | 
| 
       191 
210 
     | 
    
         
             
                  # @example
         
     | 
| 
       192 
     | 
    
         
            -
                  # 
     | 
| 
       193 
     | 
    
         
            -
                  # 
     | 
| 
       194 
     | 
    
         
            -
                  # 
     | 
| 
       195 
     | 
    
         
            -
                  # 
     | 
| 
       196 
     | 
    
         
            -
                  # 
     | 
| 
       197 
     | 
    
         
            -
                  # 
     | 
| 
       198 
     | 
    
         
            -
                  # 
     | 
| 
       199 
     | 
    
         
            -
                  # 
     | 
| 
       200 
     | 
    
         
            -
                  # 
     | 
| 
       201 
     | 
    
         
            -
                  # 
     | 
| 
       202 
     | 
    
         
            -
                  # 
     | 
| 
       203 
     | 
    
         
            -
                  #      :client_id => '1234',
         
     | 
| 
       204 
     | 
    
         
            -
                  #      :custom_text => 'NDA #9'
         
     | 
| 
       205 
     | 
    
         
            -
                  #     },
         
     | 
| 
       206 
     | 
    
         
            -
                  #    :signers => [
         
     | 
| 
       207 
     | 
    
         
            -
                  #      {
         
     | 
| 
       208 
     | 
    
         
            -
                  #        :email_address => 'george@example.com',
         
     | 
| 
       209 
     | 
    
         
            -
                  #        :name => 'George',
         
     | 
| 
       210 
     | 
    
         
            -
                  #        :role => 'Client'
         
     | 
| 
       211 
     | 
    
         
            -
                  #      },
         
     | 
| 
       212 
     | 
    
         
            -
                  #      {
         
     | 
| 
       213 
     | 
    
         
            -
                  #        :email_address => 'mary@example.com',
         
     | 
| 
       214 
     | 
    
         
            -
                  #        :name => 'Mary',
         
     | 
| 
       215 
     | 
    
         
            -
                  #        :role => 'Manager'
         
     | 
| 
       216 
     | 
    
         
            -
                  #      }
         
     | 
| 
       217 
     | 
    
         
            -
                  #    ]
         
     | 
| 
       218 
     | 
    
         
            -
                  #  )
         
     | 
| 
       219 
     | 
    
         
            -
                  # @example
         
     | 
| 
       220 
     | 
    
         
            -
                  #  signature_request = @client.send_signature_request_with_template(
         
     | 
| 
       221 
     | 
    
         
            -
                  #    :test_mode => 1,
         
     | 
| 
       222 
     | 
    
         
            -
                  #    :allow_decline => 0,
         
     | 
| 
       223 
     | 
    
         
            -
                  #    :template_id => 'c26b8a16784a872da37ea946b9ddec7c1e11dff6',
         
     | 
| 
       224 
     | 
    
         
            -
                  #    :title => 'Purchase Order',
         
     | 
| 
       225 
     | 
    
         
            -
                  #    :subject => 'Purchase Order',
         
     | 
| 
       226 
     | 
    
         
            -
                  #    :message => 'Glad we could come to an agreement.',
         
     | 
| 
       227 
     | 
    
         
            -
                  #    :files => ['NDA.pdf', 'AppendixA.pdf'],
         
     | 
| 
       228 
     | 
    
         
            -
                  #    :metadata => {
         
     | 
| 
       229 
     | 
    
         
            -
                  #      :client_id => '1234',
         
     | 
| 
       230 
     | 
    
         
            -
                  #      :custom_text => 'NDA #9'
         
     | 
| 
      
 211 
     | 
    
         
            +
                  #   signature_request = @client.send_signature_request_with_template(
         
     | 
| 
      
 212 
     | 
    
         
            +
                  #     test_mode: 1,
         
     | 
| 
      
 213 
     | 
    
         
            +
                  #     allow_decline: 0,
         
     | 
| 
      
 214 
     | 
    
         
            +
                  #     template_id: 'c26b8a16784a872da37ea946b9ddec7c1e11dff6',
         
     | 
| 
      
 215 
     | 
    
         
            +
                  #     title: 'Purchase Order',
         
     | 
| 
      
 216 
     | 
    
         
            +
                  #     subject: 'Purchase Order',
         
     | 
| 
      
 217 
     | 
    
         
            +
                  #     message: 'Glad we could come to an agreement.',
         
     | 
| 
      
 218 
     | 
    
         
            +
                  #     files: ['NDA.pdf', 'AppendixA.pdf'],
         
     | 
| 
      
 219 
     | 
    
         
            +
                  #     metadata: {
         
     | 
| 
      
 220 
     | 
    
         
            +
                  #       client_id: '1234',
         
     | 
| 
      
 221 
     | 
    
         
            +
                  #       custom_text: 'NDA #9'
         
     | 
| 
       231 
222 
     | 
    
         
             
                  #     },
         
     | 
| 
       232 
     | 
    
         
            -
                  # 
     | 
| 
       233 
     | 
    
         
            -
                  # 
     | 
| 
       234 
     | 
    
         
            -
                  # 
     | 
| 
       235 
     | 
    
         
            -
                  # 
     | 
| 
       236 
     | 
    
         
            -
                  # 
     | 
| 
       237 
     | 
    
         
            -
                  # 
     | 
| 
       238 
     | 
    
         
            -
                  # 
     | 
| 
       239 
     | 
    
         
            -
                  # 
     | 
| 
       240 
     | 
    
         
            -
                  # 
     | 
| 
       241 
     | 
    
         
            -
                  #        : 
     | 
| 
       242 
     | 
    
         
            -
                  #        : 
     | 
| 
      
 223 
     | 
    
         
            +
                  #     signers: [
         
     | 
| 
      
 224 
     | 
    
         
            +
                  #       {
         
     | 
| 
      
 225 
     | 
    
         
            +
                  #         email_address: 'george@example.com',
         
     | 
| 
      
 226 
     | 
    
         
            +
                  #         name: 'George',
         
     | 
| 
      
 227 
     | 
    
         
            +
                  #         role: 'Client'
         
     | 
| 
      
 228 
     | 
    
         
            +
                  #       }
         
     | 
| 
      
 229 
     | 
    
         
            +
                  #     ],
         
     | 
| 
      
 230 
     | 
    
         
            +
                  #     ccs: [
         
     | 
| 
      
 231 
     | 
    
         
            +
                  #       {
         
     | 
| 
      
 232 
     | 
    
         
            +
                  #        email_address: 'accounting@example.com',
         
     | 
| 
      
 233 
     | 
    
         
            +
                  #        role: 'Accounting'
         
     | 
| 
      
 234 
     | 
    
         
            +
                  #       }
         
     | 
| 
      
 235 
     | 
    
         
            +
                  #     ],
         
     | 
| 
      
 236 
     | 
    
         
            +
                  #     custom_fields: [
         
     | 
| 
      
 237 
     | 
    
         
            +
                  #       {
         
     | 
| 
      
 238 
     | 
    
         
            +
                  #         CustomFieldName: '$20,000'
         
     | 
| 
      
 239 
     | 
    
         
            +
                  #       }
         
     | 
| 
      
 240 
     | 
    
         
            +
                  #     ],
         
     | 
| 
      
 241 
     | 
    
         
            +
                  #     signing_options: {
         
     | 
| 
      
 242 
     | 
    
         
            +
                  #       draw: true,
         
     | 
| 
      
 243 
     | 
    
         
            +
                  #       type: true,
         
     | 
| 
      
 244 
     | 
    
         
            +
                  #       upload: false,
         
     | 
| 
      
 245 
     | 
    
         
            +
                  #       phone: true,
         
     | 
| 
      
 246 
     | 
    
         
            +
                  #       default: 'phone'
         
     | 
| 
       243 
247 
     | 
    
         
             
                  #      }
         
     | 
| 
       244 
     | 
    
         
            -
                  # 
     | 
| 
       245 
     | 
    
         
            -
                  #    :custom_fields => [
         
     | 
| 
       246 
     | 
    
         
            -
                  #     {
         
     | 
| 
       247 
     | 
    
         
            -
                  #       :CustomFieldName => '$20,000'
         
     | 
| 
       248 
     | 
    
         
            -
                  #     }
         
     | 
| 
       249 
     | 
    
         
            -
                  #   ]
         
     | 
| 
       250 
     | 
    
         
            -
                  #  )
         
     | 
| 
       251 
     | 
    
         
            -
                  #
         
     | 
| 
      
 248 
     | 
    
         
            +
                  #   )
         
     | 
| 
       252 
249 
     | 
    
         
             
                  def send_signature_request_with_template(opts)
         
     | 
| 
       253 
250 
     | 
    
         
             
                    prepare_signers opts
         
     | 
| 
       254 
251 
     | 
    
         
             
                    prepare_ccs opts
         
     | 
| 
         @@ -256,45 +253,120 @@ module HelloSign 
     | 
|
| 
       256 
253 
     | 
    
         
             
                    prepare_custom_fields opts
         
     | 
| 
       257 
254 
     | 
    
         
             
                    prepare_files opts
         
     | 
| 
       258 
255 
     | 
    
         | 
| 
       259 
     | 
    
         
            -
                    HelloSign::Resource::SignatureRequest.new post('/signature_request/send_with_template', : 
     | 
| 
      
 256 
     | 
    
         
            +
                    HelloSign::Resource::SignatureRequest.new post('/signature_request/send_with_template', body: opts)
         
     | 
| 
       260 
257 
     | 
    
         
             
                  end
         
     | 
| 
       261 
258 
     | 
    
         | 
| 
      
 259 
     | 
    
         
            +
                  # Creates a BulkSendJob based off of the Template specified with the template_id parameter.
         
     | 
| 
      
 260 
     | 
    
         
            +
                  # @option opts [Boolean] test_mode Indicates if this is a test BulkSendJob, its SignatureRequests will not be legally binding if set to 1. Defaults to 0. (optional)
         
     | 
| 
      
 261 
     | 
    
         
            +
                  # @option opts [String] template_id The Template ID to use when creating the SignatureRequest.
         
     | 
| 
      
 262 
     | 
    
         
            +
                  #   * Use template_ids[%i%] if using multiple templates, replacing %i% with an integer to indicate the order of the Templates
         
     | 
| 
      
 263 
     | 
    
         
            +
                  # @option opts [String] title Assigns a title to the SignatureRequest. (optional)
         
     | 
| 
      
 264 
     | 
    
         
            +
                  # @option opts [String] subject Sets the subject in the email sent to the signer(s). (optional)
         
     | 
| 
      
 265 
     | 
    
         
            +
                  # @option opts [String] message Sets the message in the email sent to the signer(s). (optional)
         
     | 
| 
      
 266 
     | 
    
         
            +
                  # @option opts [String] signing_redirect_url Redirects the signer(s) to this URL after completing the SignatureRequest. (optional)
         
     | 
| 
      
 267 
     | 
    
         
            +
                  # @option opts [String] signer_file Uploads a CSV file defining values and options for signer fields. Required if signer_list is not used.
         
     | 
| 
      
 268 
     | 
    
         
            +
                  # @option opts [String] signer_list A JSON array defining values and options for signer fields. Required if signer_file is not used.
         
     | 
| 
      
 269 
     | 
    
         
            +
                  # @option opts [Array<Hash>] custom_fields An array of custom merge fields, representing those present on the Template. (optional)
         
     | 
| 
      
 270 
     | 
    
         
            +
                  #   * name (String) Custom field name or "Field Label"
         
     | 
| 
      
 271 
     | 
    
         
            +
                  #   * value (String) The value of the field. This data will appear on the SignatureRequest.
         
     | 
| 
      
 272 
     | 
    
         
            +
                  #   * editor (String) The signer name indicated on the Text Tag or form_fields_per_document that can edit the value of the field. (optional)
         
     | 
| 
      
 273 
     | 
    
         
            +
                  #   * required (Boolean) Determines if the field is required or not. (optional)
         
     | 
| 
      
 274 
     | 
    
         
            +
                  # @option opts [Array<Hash>] ccs The individual(s) to be CC'd on the SignatureRequest. Required when a CC role exists for the Template.
         
     | 
| 
      
 275 
     | 
    
         
            +
                  #   * role (String) The CC role indicated on the Template. Note that the role name is case sensitive.
         
     | 
| 
      
 276 
     | 
    
         
            +
                  #   * email_address (String) CC Recipient's email address
         
     | 
| 
      
 277 
     | 
    
         
            +
                  # @option opts [Hash] metadata Key-value data attached to the SignatureRequest. (optional)
         
     | 
| 
      
 278 
     | 
    
         
            +
                  # @option opts [String] client_id The API App Client ID associated with the SignatureRequest. (optional)
         
     | 
| 
      
 279 
     | 
    
         
            +
                  #
         
     | 
| 
      
 280 
     | 
    
         
            +
                  # @return [HelloSign::Resource::BulkSendJob] a BulkSendJob
         
     | 
| 
       262 
281 
     | 
    
         
             
                  #
         
     | 
| 
       263 
     | 
    
         
            -
                  #  
     | 
| 
      
 282 
     | 
    
         
            +
                  # @example
         
     | 
| 
      
 283 
     | 
    
         
            +
                  #   signature_request = @client.bulk_send_with_template(
         
     | 
| 
      
 284 
     | 
    
         
            +
                  #     test_mode: 1,
         
     | 
| 
      
 285 
     | 
    
         
            +
                  #     allow_decline: 0,
         
     | 
| 
      
 286 
     | 
    
         
            +
                  #     template_id: 'c26b8a16784a872da37ea946b9ddec7c1e11dff6',
         
     | 
| 
      
 287 
     | 
    
         
            +
                  #     title: 'Purchase Order',
         
     | 
| 
      
 288 
     | 
    
         
            +
                  #     subject: 'Purchase Order',
         
     | 
| 
      
 289 
     | 
    
         
            +
                  #     message: 'Glad we could come to an agreement.',
         
     | 
| 
      
 290 
     | 
    
         
            +
                  #     metadata: {
         
     | 
| 
      
 291 
     | 
    
         
            +
                  #       client_id: '1234',
         
     | 
| 
      
 292 
     | 
    
         
            +
                  #       custom_text: 'NDA #9'
         
     | 
| 
      
 293 
     | 
    
         
            +
                  #     },
         
     | 
| 
      
 294 
     | 
    
         
            +
                  #     signer_list: [
         
     | 
| 
      
 295 
     | 
    
         
            +
                  #       {
         
     | 
| 
      
 296 
     | 
    
         
            +
                  #         signers: {
         
     | 
| 
      
 297 
     | 
    
         
            +
                  #           Client: {
         
     | 
| 
      
 298 
     | 
    
         
            +
                  #             name: 'George',
         
     | 
| 
      
 299 
     | 
    
         
            +
                  #             email_address: 'bulksend1@example.com'
         
     | 
| 
      
 300 
     | 
    
         
            +
                  #           }
         
     | 
| 
      
 301 
     | 
    
         
            +
                  #         },
         
     | 
| 
      
 302 
     | 
    
         
            +
                  #         custom_fields: {
         
     | 
| 
      
 303 
     | 
    
         
            +
                  #           address: '100 Grand'
         
     | 
| 
      
 304 
     | 
    
         
            +
                  #         }
         
     | 
| 
      
 305 
     | 
    
         
            +
                  #       },
         
     | 
| 
      
 306 
     | 
    
         
            +
                  #       {
         
     | 
| 
      
 307 
     | 
    
         
            +
                  #         signers: {
         
     | 
| 
      
 308 
     | 
    
         
            +
                  #           Client: {
         
     | 
| 
      
 309 
     | 
    
         
            +
                  #             name: 'Mary',
         
     | 
| 
      
 310 
     | 
    
         
            +
                  #             email_address: 'bulksend2@example.com'
         
     | 
| 
      
 311 
     | 
    
         
            +
                  #           }
         
     | 
| 
      
 312 
     | 
    
         
            +
                  #         }
         
     | 
| 
      
 313 
     | 
    
         
            +
                  #       }
         
     | 
| 
      
 314 
     | 
    
         
            +
                  #     ],
         
     | 
| 
      
 315 
     | 
    
         
            +
                  #     ccs: [
         
     | 
| 
      
 316 
     | 
    
         
            +
                  #       {
         
     | 
| 
      
 317 
     | 
    
         
            +
                  #        email_address: 'accounting@example.com',
         
     | 
| 
      
 318 
     | 
    
         
            +
                  #        role: 'Accounting'
         
     | 
| 
      
 319 
     | 
    
         
            +
                  #       }
         
     | 
| 
      
 320 
     | 
    
         
            +
                  #     ]
         
     | 
| 
      
 321 
     | 
    
         
            +
                  #   )
         
     | 
| 
      
 322 
     | 
    
         
            +
                  def bulk_send_with_template(opts)
         
     | 
| 
      
 323 
     | 
    
         
            +
                    prepare_bulk_signers opts
         
     | 
| 
      
 324 
     | 
    
         
            +
                    prepare_ccs opts
         
     | 
| 
      
 325 
     | 
    
         
            +
                    prepare_templates opts
         
     | 
| 
      
 326 
     | 
    
         
            +
                    prepare_custom_fields opts
         
     | 
| 
      
 327 
     | 
    
         
            +
             
     | 
| 
      
 328 
     | 
    
         
            +
                    HelloSign::Resource::BulkSendJob.new post('/signature_request/bulk_send_with_template', body: opts)
         
     | 
| 
      
 329 
     | 
    
         
            +
                  end
         
     | 
| 
      
 330 
     | 
    
         
            +
             
     | 
| 
      
 331 
     | 
    
         
            +
                  # Sends an email reminder to the signer about the SignatureRequest.
         
     | 
| 
       264 
332 
     | 
    
         
             
                  # @option opts [String] signature_request_id Indicates the ID of the SignatureRequest to send a reminder.
         
     | 
| 
       265 
333 
     | 
    
         
             
                  # @option opts [String] email_address The email address of the signer who will receive a reminder.
         
     | 
| 
       266 
334 
     | 
    
         
             
                  # @option opts [String] name The name of the signer who will receive a reminder. (optional)
         
     | 
| 
       267 
335 
     | 
    
         
             
                  #
         
     | 
| 
       268 
336 
     | 
    
         
             
                  # @return [HelloSign::Resource::SignatureRequest] a SignatureRequest
         
     | 
| 
       269 
     | 
    
         
            -
                  # @example
         
     | 
| 
       270 
     | 
    
         
            -
                  #   signature_request = @client.remind_signature_request :signature_request_id => '75cdf7dc8b323d43b347e4a3614d1f822bd09491', :email_address => 'john@example.com'
         
     | 
| 
       271 
337 
     | 
    
         
             
                  #
         
     | 
| 
      
 338 
     | 
    
         
            +
                  # @example
         
     | 
| 
      
 339 
     | 
    
         
            +
                  #   signature_request = @client.remind_signature_request(
         
     | 
| 
      
 340 
     | 
    
         
            +
                  #     signature_request_id: '75cdf7dc8b323d43b347e4a3614d1f822bd09491',
         
     | 
| 
      
 341 
     | 
    
         
            +
                  #     :email_address: 'john@example.com'
         
     | 
| 
      
 342 
     | 
    
         
            +
                  #   )
         
     | 
| 
       272 
343 
     | 
    
         
             
                  def remind_signature_request(opts)
         
     | 
| 
       273 
     | 
    
         
            -
                    HelloSign::Resource::SignatureRequest.new post("/signature_request/remind/#{opts[:signature_request_id]}", : 
     | 
| 
      
 344 
     | 
    
         
            +
                    HelloSign::Resource::SignatureRequest.new post("/signature_request/remind/#{opts[:signature_request_id]}", body: opts)
         
     | 
| 
       274 
345 
     | 
    
         
             
                  end
         
     | 
| 
       275 
346 
     | 
    
         | 
| 
      
 347 
     | 
    
         
            +
                  # Cancels an incomplete SignatureRequest.
         
     | 
| 
      
 348 
     | 
    
         
            +
                  # @option opts [String] signature_request_id The ID of SignatureRequest to cancel.
         
     | 
| 
       276 
349 
     | 
    
         
             
                  #
         
     | 
| 
       277 
     | 
    
         
            -
                  #  
     | 
| 
       278 
     | 
    
         
            -
                  # @option opts [String] signature_request_id The ID of the incomplete SignatureRequest to cancel.
         
     | 
| 
      
 350 
     | 
    
         
            +
                  # @return [HTTP::Status] 200 OK
         
     | 
| 
       279 
351 
     | 
    
         
             
                  #
         
     | 
| 
       280 
352 
     | 
    
         
             
                  # @example
         
     | 
| 
       281 
     | 
    
         
            -
                  #   @client.cancel_signature_request : 
     | 
| 
      
 353 
     | 
    
         
            +
                  #   @client.cancel_signature_request signature_request_id: '75cdf7dc8b323d43b347e4a3614d1f822bd09491'
         
     | 
| 
       282 
354 
     | 
    
         
             
                  def cancel_signature_request(opts)
         
     | 
| 
       283 
     | 
    
         
            -
                    post("/signature_request/cancel/#{opts[:signature_request_id]}", : 
     | 
| 
      
 355 
     | 
    
         
            +
                    post("/signature_request/cancel/#{opts[:signature_request_id]}", body: opts)
         
     | 
| 
       284 
356 
     | 
    
         
             
                  end
         
     | 
| 
       285 
357 
     | 
    
         | 
| 
       286 
     | 
    
         
            -
                  #
         
     | 
| 
       287 
358 
     | 
    
         
             
                  # Removes your access to a completed a SignatureRequest.
         
     | 
| 
       288 
359 
     | 
    
         
             
                  # @option opts [String] signature_request_id The ID of the completed SignatureRequest to remove access.
         
     | 
| 
       289 
360 
     | 
    
         
             
                  #
         
     | 
| 
      
 361 
     | 
    
         
            +
                  # @return [HTTP::Status] 200 OK
         
     | 
| 
      
 362 
     | 
    
         
            +
                  #
         
     | 
| 
       290 
363 
     | 
    
         
             
                  # @example
         
     | 
| 
       291 
     | 
    
         
            -
                  #   @client.remove_signature_request : 
     | 
| 
      
 364 
     | 
    
         
            +
                  #   @client.remove_signature_request signature_request_id: '75cdf7dc8b323d43b347e4a3614d1f822bd09491'
         
     | 
| 
       292 
365 
     | 
    
         
             
                  def remove_signature_request(opts)
         
     | 
| 
       293 
     | 
    
         
            -
                    post("/signature_request/remove/#{opts[:signature_request_id]}", : 
     | 
| 
      
 366 
     | 
    
         
            +
                    post("/signature_request/remove/#{opts[:signature_request_id]}", body: opts)
         
     | 
| 
       294 
367 
     | 
    
         
             
                  end
         
     | 
| 
       295 
368 
     | 
    
         | 
| 
       296 
     | 
    
         
            -
                  #
         
     | 
| 
       297 
     | 
    
         
            -
                  # Download a copy of the SignatureRequest documents specified by the signature_request_id parameter.
         
     | 
| 
      
 369 
     | 
    
         
            +
                  # Downloads a copy of the SignatureRequest documents.
         
     | 
| 
       298 
370 
     | 
    
         
             
                  # @option opts [String] signature_request_id The ID of the SignatureRequest to download.
         
     | 
| 
       299 
371 
     | 
    
         
             
                  # @option opts [String] file_type Determines the format of the file - either 'pdf' or 'zip' depending on the file type desired. Defaults to pdf. (optional)
         
     | 
| 
       300 
372 
     | 
    
         
             
                  # @option opts [Boolean] get_url Response contains a URL link to the file if set to true. Links are only available for PDFs and have a TTL of 3 days. Defaults to false. (optional)
         
     | 
| 
         @@ -302,44 +374,49 @@ module HelloSign 
     | 
|
| 
       302 
374 
     | 
    
         
             
                  # @return a PDF or Zip
         
     | 
| 
       303 
375 
     | 
    
         
             
                  #
         
     | 
| 
       304 
376 
     | 
    
         
             
                  # @example
         
     | 
| 
       305 
     | 
    
         
            -
                  #   pdf = @client.signature_request_files : 
     | 
| 
       306 
     | 
    
         
            -
                  #
         
     | 
| 
      
 377 
     | 
    
         
            +
                  #   pdf = @client.signature_request_files signature_request_id: '75cdf7dc8b323d43b347e4a3614d1f822bd09491'
         
     | 
| 
       307 
378 
     | 
    
         
             
                  def signature_request_files(opts)
         
     | 
| 
       308 
379 
     | 
    
         
             
                    path = "/signature_request/files/#{opts[:signature_request_id]}"
         
     | 
| 
       309 
380 
     | 
    
         
             
                    if opts[:file_type]
         
     | 
| 
       310 
381 
     | 
    
         
             
                      path = path + "?file_type=#{opts[:file_type]}"
         
     | 
| 
       311 
382 
     | 
    
         
             
                    end
         
     | 
| 
      
 383 
     | 
    
         
            +
                    
         
     | 
| 
       312 
384 
     | 
    
         
             
                    if opts[:get_url]
         
     | 
| 
       313 
385 
     | 
    
         
             
                      separator = opts[:file_type].nil? ? '?' : '&'
         
     | 
| 
       314 
386 
     | 
    
         
             
                      path = path + "#{separator}get_url=#{opts[:get_url]}"
         
     | 
| 
      
 387 
     | 
    
         
            +
                    elsif opts[:get_data_uri]
         
     | 
| 
      
 388 
     | 
    
         
            +
                      separator = opts[:file_type].nil? ? '?' : '&'
         
     | 
| 
      
 389 
     | 
    
         
            +
                      path = path + "#{separator}get_data_uri=#{opts[:get_data_uri]}"
         
     | 
| 
       315 
390 
     | 
    
         
             
                    end
         
     | 
| 
       316 
391 
     | 
    
         | 
| 
       317 
392 
     | 
    
         
             
                    get(path)[:body]
         
     | 
| 
       318 
393 
     | 
    
         
             
                  end
         
     | 
| 
       319 
394 
     | 
    
         | 
| 
       320 
     | 
    
         
            -
                  #
         
     | 
| 
       321 
395 
     | 
    
         
             
                  # Creates a new SignatureRequest with the submitted documents to be signed in an embedded iFrame.
         
     | 
| 
       322 
     | 
    
         
            -
                  # If form_fields_per_document is not specified or use_text_tags is not enabled, a signature page will be affixed at the end
         
     | 
| 
       323 
     | 
    
         
            -
                  #  
     | 
| 
       324 
     | 
    
         
            -
                  #  
     | 
| 
       325 
     | 
    
         
            -
                  # See our Embedded Signing Walkthrough for more information on Embedded Signing: https://app.hellosign.com/api/embeddedSigningWalkthrough
         
     | 
| 
       326 
     | 
    
         
            -
                  # @option opts [Boolean] test_mode Indicates if this is a test SignatureRequest, it will not be legally binding if set to 1. A boolean value is also accepted. Defaults to 0. (optional)
         
     | 
| 
      
 396 
     | 
    
         
            +
                  # If form_fields_per_document is not specified or use_text_tags is not enabled, a signature page will be affixed at the end.
         
     | 
| 
      
 397 
     | 
    
         
            +
                  # See our Embedded Signing Walkthrough for more information on Embedded Signing: https://app.hellosign.com/api/embeddedSigningWalkthrough.
         
     | 
| 
      
 398 
     | 
    
         
            +
                  # @option opts [Boolean] test_mode Indicates if this is a test SignatureRequest, it will not be legally binding if set to 1. Defaults to 0. (optional)
         
     | 
| 
       327 
399 
     | 
    
         
             
                  # @option opts [String] client_id The API App Client ID associated with the this embedded SignatureRequest.
         
     | 
| 
       328 
400 
     | 
    
         
             
                  # @option opts [Array<String>] files Use files to indicate the uploaded file(s) to send for signature. Currently we only support use of either the files parameter or file_urls parameter, not both.
         
     | 
| 
       329 
401 
     | 
    
         
             
                  # @option opts [Array<String>] file_urls Use file_urls to have HelloSign download the file(s) to send for signature. Currently we only support use of either the files parameter or file_urls parameter, not both.
         
     | 
| 
       330 
     | 
    
         
            -
                  # @option opts [String] title  
     | 
| 
       331 
     | 
    
         
            -
                  # @option opts [String] subject  
     | 
| 
       332 
     | 
    
         
            -
                  # @option opts [String] message  
     | 
| 
       333 
     | 
    
         
            -
                  # @option opts [Array<Hash>] signers  
     | 
| 
       334 
     | 
    
         
            -
                  #   *  
     | 
| 
       335 
     | 
    
         
            -
                  #   *  
     | 
| 
       336 
     | 
    
         
            -
                  #   *  
     | 
| 
       337 
     | 
    
         
            -
                  #   *  
     | 
| 
      
 402 
     | 
    
         
            +
                  # @option opts [String] title Assigns a title to the SignatureRequest. (optional)
         
     | 
| 
      
 403 
     | 
    
         
            +
                  # @option opts [String] subject Sets the subject in the email sent to the signer(s). (optional)
         
     | 
| 
      
 404 
     | 
    
         
            +
                  # @option opts [String] message Sets the message in the email sent to the signer(s). (optional)
         
     | 
| 
      
 405 
     | 
    
         
            +
                  # @option opts [Array<Hash>] signers Sets a list of signers, each item is a Hash with these keys:
         
     | 
| 
      
 406 
     | 
    
         
            +
                  #   * name (String) Signer's name
         
     | 
| 
      
 407 
     | 
    
         
            +
                  #   * email_address (String) Signer's email address
         
     | 
| 
      
 408 
     | 
    
         
            +
                  #   * order (Integer) The order the signers are required to sign in (optional)
         
     | 
| 
      
 409 
     | 
    
         
            +
                  #   * pin (Integer) Secures the SignatureRequest using this 4-12 character access code. A business plan is required to use this feature. (optional)
         
     | 
| 
      
 410 
     | 
    
         
            +
                  # @option opts [Array<Hash>] attachments Sets a list of attachments signers can upload
         
     | 
| 
      
 411 
     | 
    
         
            +
                  #   * name (String) Attachment name
         
     | 
| 
      
 412 
     | 
    
         
            +
                  #   * instructions (String) Instructions for uploading the attachment. (optional)
         
     | 
| 
      
 413 
     | 
    
         
            +
                  #   * signer_index (Integer) The signer's unique number.
         
     | 
| 
      
 414 
     | 
    
         
            +
                  #   * required (Boolean) Determines if the signer is required to upload this attachment. Defaults to 0. (Optional)
         
     | 
| 
       338 
415 
     | 
    
         
             
                  # @option opts [Array<Hash>] custom_fields An array of custom merge fields, representing those present on the document with Text Tags or form_fields_per_document (optional)
         
     | 
| 
       339 
     | 
    
         
            -
                  #   *  
     | 
| 
       340 
     | 
    
         
            -
                  #   *  
     | 
| 
       341 
     | 
    
         
            -
                  #   *  
     | 
| 
       342 
     | 
    
         
            -
                  #   *  
     | 
| 
      
 416 
     | 
    
         
            +
                  #   * name (String) Custom field name or "Field Label"
         
     | 
| 
      
 417 
     | 
    
         
            +
                  #   * value (String) The value of the field. This data will appear on the SignatureRequest.
         
     | 
| 
      
 418 
     | 
    
         
            +
                  #   * editor (String) The signer name indicated on the Text Tag or form_fields_per_document that can edit the value of the field. (optional)
         
     | 
| 
      
 419 
     | 
    
         
            +
                  #   * required (Boolean) Determines if the field is required or not. (optional)
         
     | 
| 
       343 
420 
     | 
    
         
             
                  # @option opts [Array<String>] cc_email_addresses The email addresses that should be CCed on the SignatureRequest. (optional)
         
     | 
| 
       344 
421 
     | 
    
         
             
                  # @option opts [Boolean] use_text_tags Indicates whether the SignatureRequest should have Text Tags enabled. Defaults to 0. (optional)
         
     | 
| 
       345 
422 
     | 
    
         
             
                  # @option opts [Boolean] hide_text_tags Indicates whether the Text Tags should be removed automatically. Note that this is not the preferred method. Defaults to 0. (optional)
         
     | 
| 
         @@ -347,102 +424,134 @@ module HelloSign 
     | 
|
| 
       347 
424 
     | 
    
         
             
                  # @option opts [Boolean] allow_decline Allows signers to decline the SignatureRequest. Defaults to 0. (optional)
         
     | 
| 
       348 
425 
     | 
    
         
             
                  # @option opts [Boolean] allow_reassign Allows signers to reassign the SignatureRequest to another signer. Defaults to 0. (optional)
         
     | 
| 
       349 
426 
     | 
    
         
             
                  # @option opts [Array<Hash>] form_fields_per_document The fields that should appear on the document. (optional)
         
     | 
| 
      
 427 
     | 
    
         
            +
                  # @option opts [Hash] signing_options Specifies the types allowed for creating a signature. (optional)
         
     | 
| 
       350 
428 
     | 
    
         
             
                  #
         
     | 
| 
       351 
429 
     | 
    
         
             
                  # @return [HelloSign::Resource::SignatureRequest] a SignatureRequest
         
     | 
| 
      
 430 
     | 
    
         
            +
                  #
         
     | 
| 
       352 
431 
     | 
    
         
             
                  # @example
         
     | 
| 
       353 
432 
     | 
    
         
             
                  #   request = @client.create_embedded_signature_request(
         
     | 
| 
       354 
     | 
    
         
            -
                  #     : 
     | 
| 
       355 
     | 
    
         
            -
                  #     : 
     | 
| 
       356 
     | 
    
         
            -
                  #     : 
     | 
| 
       357 
     | 
    
         
            -
                  #     : 
     | 
| 
       358 
     | 
    
         
            -
                  #     : 
     | 
| 
       359 
     | 
    
         
            -
                  #     : 
     | 
| 
       360 
     | 
    
         
            -
                  #     : 
     | 
| 
       361 
     | 
    
         
            -
                  # 
     | 
| 
       362 
     | 
    
         
            -
                  # 
     | 
| 
      
 433 
     | 
    
         
            +
                  #     test_mode: 1,
         
     | 
| 
      
 434 
     | 
    
         
            +
                  #     allow_decline: 1,
         
     | 
| 
      
 435 
     | 
    
         
            +
                  #     client_id: 'b6b8e7deaf8f0b95c029dca049356d4a2cf9710a',
         
     | 
| 
      
 436 
     | 
    
         
            +
                  #     title: 'NDA with Acme Co.',
         
     | 
| 
      
 437 
     | 
    
         
            +
                  #     subject: 'The NDA we talked about',
         
     | 
| 
      
 438 
     | 
    
         
            +
                  #     message: 'Please sign this NDA and then we can discuss more. Let me know if you have any questions.',
         
     | 
| 
      
 439 
     | 
    
         
            +
                  #     metadata: {
         
     | 
| 
      
 440 
     | 
    
         
            +
                  #       client_id: '1234',
         
     | 
| 
      
 441 
     | 
    
         
            +
                  #       custom_text: 'NDA #9'
         
     | 
| 
       363 
442 
     | 
    
         
             
                  #     },
         
     | 
| 
       364 
     | 
    
         
            -
                  #     : 
     | 
| 
       365 
     | 
    
         
            -
                  # 
     | 
| 
       366 
     | 
    
         
            -
                  #         : 
     | 
| 
       367 
     | 
    
         
            -
                  #         : 
     | 
| 
       368 
     | 
    
         
            -
                  # 
     | 
| 
       369 
     | 
    
         
            -
                  # 
     | 
| 
       370 
     | 
    
         
            -
                  # 
     | 
| 
       371 
     | 
    
         
            -
                  #         : 
     | 
| 
      
 443 
     | 
    
         
            +
                  #     signers: [
         
     | 
| 
      
 444 
     | 
    
         
            +
                  #       {
         
     | 
| 
      
 445 
     | 
    
         
            +
                  #         email_address: 'jack@example.com',
         
     | 
| 
      
 446 
     | 
    
         
            +
                  #         name: 'Jack',
         
     | 
| 
      
 447 
     | 
    
         
            +
                  #         order: 0,
         
     | 
| 
      
 448 
     | 
    
         
            +
                  #       },
         
     | 
| 
      
 449 
     | 
    
         
            +
                  #       {
         
     | 
| 
      
 450 
     | 
    
         
            +
                  #         email_address: 'jill@example.com',
         
     | 
| 
      
 451 
     | 
    
         
            +
                  #         name: 'Jill',
         
     | 
| 
      
 452 
     | 
    
         
            +
                  #         order: 1,
         
     | 
| 
      
 453 
     | 
    
         
            +
                  #       }
         
     | 
| 
      
 454 
     | 
    
         
            +
                  #     ],
         
     | 
| 
      
 455 
     | 
    
         
            +
                  #     attachments: [{
         
     | 
| 
      
 456 
     | 
    
         
            +
                  #       name: 'Passport',
         
     | 
| 
      
 457 
     | 
    
         
            +
                  #       instructions: 'Upload your US Passport',
         
     | 
| 
      
 458 
     | 
    
         
            +
                  #       signer_index: 0,
         
     | 
| 
      
 459 
     | 
    
         
            +
                  #       required: true
         
     | 
| 
      
 460 
     | 
    
         
            +
                  #       },
         
     | 
| 
      
 461 
     | 
    
         
            +
                  #       {
         
     | 
| 
      
 462 
     | 
    
         
            +
                  #       name: 'Driver's License',
         
     | 
| 
      
 463 
     | 
    
         
            +
                  #       instructions: 'Upload your CA Driver's License',
         
     | 
| 
      
 464 
     | 
    
         
            +
                  #       signer_index: 1,
         
     | 
| 
      
 465 
     | 
    
         
            +
                  #       required: false
         
     | 
| 
       372 
466 
     | 
    
         
             
                  #       }
         
     | 
| 
       373 
467 
     | 
    
         
             
                  #     ],
         
     | 
| 
       374 
     | 
    
         
            -
                  #     : 
     | 
| 
       375 
     | 
    
         
            -
                  #     : 
     | 
| 
      
 468 
     | 
    
         
            +
                  #     cc_email_addresses: ['lawyer@example.com', 'lawyer@example2.com'],
         
     | 
| 
      
 469 
     | 
    
         
            +
                  #     files: ['NDA.pdf', 'AppendixA.pdf'],
         
     | 
| 
      
 470 
     | 
    
         
            +
                  #     signing_options: {
         
     | 
| 
      
 471 
     | 
    
         
            +
                  #       draw: true,
         
     | 
| 
      
 472 
     | 
    
         
            +
                  #       type: true,
         
     | 
| 
      
 473 
     | 
    
         
            +
                  #       upload: false,
         
     | 
| 
      
 474 
     | 
    
         
            +
                  #       phone: true,
         
     | 
| 
      
 475 
     | 
    
         
            +
                  #       default: 'phone'
         
     | 
| 
      
 476 
     | 
    
         
            +
                  #     }
         
     | 
| 
       376 
477 
     | 
    
         
             
                  #   )
         
     | 
| 
       377 
     | 
    
         
            -
                  #
         
     | 
| 
       378 
478 
     | 
    
         
             
                  def create_embedded_signature_request(opts)
         
     | 
| 
       379 
479 
     | 
    
         
             
                    opts[:client_id] ||= self.client_id
         
     | 
| 
       380 
480 
     | 
    
         
             
                    prepare_files opts
         
     | 
| 
       381 
481 
     | 
    
         
             
                    prepare_signers opts
         
     | 
| 
       382 
482 
     | 
    
         
             
                    prepare_form_fields opts
         
     | 
| 
       383 
483 
     | 
    
         
             
                    prepare_custom_fields opts
         
     | 
| 
      
 484 
     | 
    
         
            +
                    prepare_attachments opts
         
     | 
| 
       384 
485 
     | 
    
         | 
| 
       385 
     | 
    
         
            -
                    HelloSign::Resource::SignatureRequest.new post('/signature_request/create_embedded', : 
     | 
| 
      
 486 
     | 
    
         
            +
                    HelloSign::Resource::SignatureRequest.new post('/signature_request/create_embedded', body: opts)
         
     | 
| 
       386 
487 
     | 
    
         
             
                  end
         
     | 
| 
       387 
488 
     | 
    
         | 
| 
       388 
     | 
    
         
            -
                  #
         
     | 
| 
       389 
489 
     | 
    
         
             
                  # Creates a new SignatureRequest based on the given Template to be signed in an embedded iFrame.
         
     | 
| 
       390 
     | 
    
         
            -
                  #  
     | 
| 
       391 
     | 
    
         
            -
                  # @option opts [Boolean] test_mode Indicates if this is a test SignatureRequest, it will not be legally binding if set to 1.  
     | 
| 
      
 490 
     | 
    
         
            +
                  # See our Embedded Signing Walkthrough for more information on Embedded Signing: https://app.hellosign.com/api/embeddedSigningWalkthrough.
         
     | 
| 
      
 491 
     | 
    
         
            +
                  # @option opts [Boolean] test_mode Indicates if this is a test SignatureRequest, it will not be legally binding if set to 1. Defaults to 0. (optional)
         
     | 
| 
       392 
492 
     | 
    
         
             
                  # @option opts [String] client_id The API App Client ID associated with the this embedded SignatureRequest.
         
     | 
| 
       393 
493 
     | 
    
         
             
                  # @option opts [String] template_id The Template ID to use when creating the SignatureRequest.
         
     | 
| 
       394 
494 
     | 
    
         
             
                  #   * Use template_ids[%i%] if using multiple templates, replacing %i% with an integer to indicate the order of the Templates
         
     | 
| 
       395 
     | 
    
         
            -
                  # @option opts [String] title  
     | 
| 
       396 
     | 
    
         
            -
                  # @option opts [String] subject  
     | 
| 
       397 
     | 
    
         
            -
                  # @option opts [String] message  
     | 
| 
       398 
     | 
    
         
            -
                  # @option opts [Array<Hash>] signers  
     | 
| 
       399 
     | 
    
         
            -
                  #   *  
     | 
| 
       400 
     | 
    
         
            -
                  #   *  
     | 
| 
       401 
     | 
    
         
            -
                  #   *  
     | 
| 
       402 
     | 
    
         
            -
                  #   *  
     | 
| 
      
 495 
     | 
    
         
            +
                  # @option opts [String] title Assigns a title to the SignatureRequest. (optional)
         
     | 
| 
      
 496 
     | 
    
         
            +
                  # @option opts [String] subject Sets the subject in the email sent to the signer(s). (optional)
         
     | 
| 
      
 497 
     | 
    
         
            +
                  # @option opts [String] message Sets the message in the email sent to the signer(s). (optional)
         
     | 
| 
      
 498 
     | 
    
         
            +
                  # @option opts [Array<Hash>] signers Sets a list of signers, each item is a Hash with these keys:
         
     | 
| 
      
 499 
     | 
    
         
            +
                  #   * name (String) Signer's name
         
     | 
| 
      
 500 
     | 
    
         
            +
                  #   * email_address (String) Signer's email address
         
     | 
| 
      
 501 
     | 
    
         
            +
                  #   * order (Integer) The order the signers are required to sign in (optional)
         
     | 
| 
      
 502 
     | 
    
         
            +
                  #   * pin (Integer) Secures the SignatureRequest using this 4-12 character access code. A business plan is required to use this feature. (optional)
         
     | 
| 
       403 
503 
     | 
    
         
             
                  # @option opts [Array<Hash>] ccs The individual(s) to be CC'd on the SignatureRequest. Required when a CC role exists for the Template.
         
     | 
| 
       404 
     | 
    
         
            -
                  #   *  
     | 
| 
       405 
     | 
    
         
            -
                  #   *  
     | 
| 
      
 504 
     | 
    
         
            +
                  #   * role (String) The CC role indicated on the Template. Note that the role name is case sensitive.
         
     | 
| 
      
 505 
     | 
    
         
            +
                  #   * email_address (String) CC Recipient's email address
         
     | 
| 
       406 
506 
     | 
    
         
             
                  # @option opts [Array<Hash>] custom_fields An array of custom merge fields, representing those present in the Template. (optional)
         
     | 
| 
       407 
     | 
    
         
            -
                  #   *  
     | 
| 
       408 
     | 
    
         
            -
                  #   *  
     | 
| 
       409 
     | 
    
         
            -
                  #   *  
     | 
| 
       410 
     | 
    
         
            -
                  #   *  
     | 
| 
      
 507 
     | 
    
         
            +
                  #   * name (String) Custom field name or "Field Label"
         
     | 
| 
      
 508 
     | 
    
         
            +
                  #   * value (String) The value of the field. This data will appear on the SignatureRequest.
         
     | 
| 
      
 509 
     | 
    
         
            +
                  #   * editor (String) The signer name indicated on the Text Tag or form_fields_per_document that can edit the value of the field. (optional)
         
     | 
| 
      
 510 
     | 
    
         
            +
                  #   * required (Boolean) Determines if the field is required or not. (optional)
         
     | 
| 
       411 
511 
     | 
    
         
             
                  # @option opts [Hash] metadata Key-value data attached to the SignatureRequest. (optional)
         
     | 
| 
       412 
512 
     | 
    
         
             
                  # @option opts [Array<String>] files Use files to indicate the uploaded file(s) to append to the SignatureRequest. (optional)
         
     | 
| 
       413 
513 
     | 
    
         
             
                  # @option opts [Array<String>] file_urls Use file_urls to have HelloSign download the file(s) to append to the SignatureRequest. (optional)
         
     | 
| 
      
 514 
     | 
    
         
            +
                  # @option opts [Hash] signing_options Specifies the types allowed for creating a signature. (optional)
         
     | 
| 
       414 
515 
     | 
    
         
             
                  #
         
     | 
| 
       415 
516 
     | 
    
         
             
                  # @return [HelloSign::Resource::SignatureRequest] a SignatureRequest
         
     | 
| 
      
 517 
     | 
    
         
            +
                  #
         
     | 
| 
       416 
518 
     | 
    
         
             
                  # @example
         
     | 
| 
       417 
519 
     | 
    
         
             
                  #   request = @client.create_embedded_signature_request_with_template(
         
     | 
| 
       418 
     | 
    
         
            -
                  #     : 
     | 
| 
       419 
     | 
    
         
            -
                  #     : 
     | 
| 
       420 
     | 
    
         
            -
                  #     : 
     | 
| 
       421 
     | 
    
         
            -
                  #     : 
     | 
| 
       422 
     | 
    
         
            -
                  #     : 
     | 
| 
       423 
     | 
    
         
            -
                  #     : 
     | 
| 
       424 
     | 
    
         
            -
                  #     : 
     | 
| 
       425 
     | 
    
         
            -
                  #     : 
     | 
| 
       426 
     | 
    
         
            -
                  #     : 
     | 
| 
       427 
     | 
    
         
            -
                  # 
     | 
| 
       428 
     | 
    
         
            -
                  # 
     | 
| 
      
 520 
     | 
    
         
            +
                  #     test_mode: 1,
         
     | 
| 
      
 521 
     | 
    
         
            +
                  #     allow_decline: 1,
         
     | 
| 
      
 522 
     | 
    
         
            +
                  #     client_id: 'b6b8e7deaf8f0b95c029dca049356d4a2cf9710a',
         
     | 
| 
      
 523 
     | 
    
         
            +
                  #     template_id: 'c26b8a16784a872da37ea946b9ddec7c1e11dff6',
         
     | 
| 
      
 524 
     | 
    
         
            +
                  #     title: 'Purchase Order',
         
     | 
| 
      
 525 
     | 
    
         
            +
                  #     subject: 'Purchase Order',
         
     | 
| 
      
 526 
     | 
    
         
            +
                  #     message: 'Glad we could come to an agreement.',
         
     | 
| 
      
 527 
     | 
    
         
            +
                  #     files: ['NDA.pdf', 'AppendixA.pdf'],
         
     | 
| 
      
 528 
     | 
    
         
            +
                  #     metadata: {
         
     | 
| 
      
 529 
     | 
    
         
            +
                  #       client_id: '1234',
         
     | 
| 
      
 530 
     | 
    
         
            +
                  #       custom_text: 'NDA #9'
         
     | 
| 
       429 
531 
     | 
    
         
             
                  #     },
         
     | 
| 
       430 
     | 
    
         
            -
                  #     : 
     | 
| 
      
 532 
     | 
    
         
            +
                  #     signers: [
         
     | 
| 
       431 
533 
     | 
    
         
             
                  #       {
         
     | 
| 
       432 
     | 
    
         
            -
                  #         : 
     | 
| 
       433 
     | 
    
         
            -
                  #         : 
     | 
| 
       434 
     | 
    
         
            -
                  #         : 
     | 
| 
      
 534 
     | 
    
         
            +
                  #         email_address: 'george@example.com',
         
     | 
| 
      
 535 
     | 
    
         
            +
                  #         name: 'George',
         
     | 
| 
      
 536 
     | 
    
         
            +
                  #         role: 'Client'
         
     | 
| 
       435 
537 
     | 
    
         
             
                  #       }
         
     | 
| 
       436 
538 
     | 
    
         
             
                  #     ],
         
     | 
| 
       437 
     | 
    
         
            -
                  #     : 
     | 
| 
      
 539 
     | 
    
         
            +
                  #     ccs: [
         
     | 
| 
       438 
540 
     | 
    
         
             
                  #       {
         
     | 
| 
       439 
     | 
    
         
            -
                  #         : 
     | 
| 
       440 
     | 
    
         
            -
                  #         : 
     | 
| 
      
 541 
     | 
    
         
            +
                  #         email_address: 'accounting@example.com',
         
     | 
| 
      
 542 
     | 
    
         
            +
                  #         role: 'Accounting'
         
     | 
| 
       441 
543 
     | 
    
         
             
                  #       }
         
     | 
| 
       442 
544 
     | 
    
         
             
                  #     ],
         
     | 
| 
       443 
     | 
    
         
            -
                  #     : 
     | 
| 
       444 
     | 
    
         
            -
                  #       : 
     | 
| 
       445 
     | 
    
         
            -
                  #     }
         
     | 
| 
      
 545 
     | 
    
         
            +
                  #     custom_fields: {
         
     | 
| 
      
 546 
     | 
    
         
            +
                  #       Cost: '$20,000'
         
     | 
| 
      
 547 
     | 
    
         
            +
                  #     },
         
     | 
| 
      
 548 
     | 
    
         
            +
                  #    signing_options: {
         
     | 
| 
      
 549 
     | 
    
         
            +
                  #      draw: true,
         
     | 
| 
      
 550 
     | 
    
         
            +
                  #      type: true,
         
     | 
| 
      
 551 
     | 
    
         
            +
                  #      upload: false,
         
     | 
| 
      
 552 
     | 
    
         
            +
                  #      phone: true,
         
     | 
| 
      
 553 
     | 
    
         
            +
                  #      default: 'phone'
         
     | 
| 
      
 554 
     | 
    
         
            +
                  #    }
         
     | 
| 
       446 
555 
     | 
    
         
             
                  #   )
         
     | 
| 
       447 
556 
     | 
    
         
             
                  #
         
     | 
| 
       448 
557 
     | 
    
         
             
                  def create_embedded_signature_request_with_template(opts)
         
     | 
| 
         @@ -453,26 +562,26 @@ module HelloSign 
     | 
|
| 
       453 
562 
     | 
    
         
             
                    prepare_custom_fields opts
         
     | 
| 
       454 
563 
     | 
    
         
             
                    prepare_files opts
         
     | 
| 
       455 
564 
     | 
    
         | 
| 
       456 
     | 
    
         
            -
                    HelloSign::Resource::SignatureRequest.new post('/signature_request/create_embedded_with_template', : 
     | 
| 
      
 565 
     | 
    
         
            +
                    HelloSign::Resource::SignatureRequest.new post('/signature_request/create_embedded_with_template', body: opts)
         
     | 
| 
       457 
566 
     | 
    
         
             
                  end
         
     | 
| 
       458 
567 
     | 
    
         | 
| 
       459 
     | 
    
         
            -
                  #
         
     | 
| 
       460 
568 
     | 
    
         
             
                  # Updates the email address on a SignatureRequest.
         
     | 
| 
       461 
569 
     | 
    
         
             
                  # @option opts [String] signature_request_id The ID of the SignatureRequest to update.
         
     | 
| 
       462 
570 
     | 
    
         
             
                  # @option opts [String] signature_id The Signature ID of the recipient to update.
         
     | 
| 
       463 
571 
     | 
    
         
             
                  # @option opts [String] email_address The new email address of the recipient.
         
     | 
| 
       464 
572 
     | 
    
         
             
                  #
         
     | 
| 
      
 573 
     | 
    
         
            +
                  # @return [HelloSign::Resource::SignatureRequest] a SignatureRequest
         
     | 
| 
      
 574 
     | 
    
         
            +
                  #
         
     | 
| 
       465 
575 
     | 
    
         
             
                  # @example
         
     | 
| 
       466 
576 
     | 
    
         
             
                  #   @client.update_signature_request(
         
     | 
| 
       467 
     | 
    
         
            -
                  # 
     | 
| 
       468 
     | 
    
         
            -
                  # 
     | 
| 
       469 
     | 
    
         
            -
                  # 
     | 
| 
      
 577 
     | 
    
         
            +
                  #     signature_request_id: '75cdf7dc8b323d43b347e4a3614d1f822bd09491',
         
     | 
| 
      
 578 
     | 
    
         
            +
                  #      signature_id: '5064ca698bde9581ad75f6d62450eb4b',
         
     | 
| 
      
 579 
     | 
    
         
            +
                  #     email_address: 'newEmail@example.com'
         
     | 
| 
       470 
580 
     | 
    
         
             
                  #   )
         
     | 
| 
       471 
     | 
    
         
            -
             
     | 
| 
       472 
581 
     | 
    
         
             
                  def update_signature_request(opts)
         
     | 
| 
       473 
582 
     | 
    
         
             
                    signature_request_id = opts.delete(:signature_request_id)
         
     | 
| 
       474 
583 
     | 
    
         
             
                    path = "/signature_request/update/#{signature_request_id}"
         
     | 
| 
       475 
     | 
    
         
            -
                    HelloSign::Resource::SignatureRequest.new post(path, : 
     | 
| 
      
 584 
     | 
    
         
            +
                    HelloSign::Resource::SignatureRequest.new post(path, body: opts)
         
     | 
| 
       476 
585 
     | 
    
         
             
                  end
         
     | 
| 
       477 
586 
     | 
    
         
             
                end
         
     | 
| 
       478 
587 
     | 
    
         
             
              end
         
     |