dropbox-sign 1.1.1 → 1.2.0
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 +4 -4
- data/Gemfile.lock +3 -2
- data/README.md +9 -4
- data/VERSION +1 -1
- data/docs/OAuthApi.md +0 -16
- data/docs/SignatureRequestApi.md +1 -1
- data/docs/SignatureRequestCreateEmbeddedRequest.md +1 -1
- data/docs/SignatureRequestSendRequest.md +2 -1
- data/docs/SignatureRequestSendWithTemplateRequest.md +1 -0
- data/docs/SignatureRequestUpdateRequest.md +1 -1
- data/docs/SubFormFieldsPerDocumentBase.md +2 -2
- data/docs/SubFormFieldsPerDocumentDateSigned.md +2 -0
- data/docs/SubFormFieldsPerDocumentDropdown.md +2 -0
- data/docs/SubFormFieldsPerDocumentFontEnum.md +9 -0
- data/docs/SubFormFieldsPerDocumentHyperlink.md +2 -0
- data/docs/SubFormFieldsPerDocumentText.md +3 -0
- data/docs/SubFormFieldsPerDocumentTextMerge.md +2 -0
- data/docs/SubWhiteLabelingOptions.md +1 -1
- data/docs/TemplateApi.md +102 -0
- data/docs/TemplateCreateEmbeddedDraftRequest.md +1 -1
- data/docs/TemplateCreateRequest.md +27 -0
- data/docs/TemplateCreateResponse.md +11 -0
- data/docs/TemplateCreateResponseTemplate.md +10 -0
- data/docs/UnclaimedDraftCreateEmbeddedRequest.md +1 -1
- data/docs/UnclaimedDraftCreateRequest.md +1 -1
- data/examples/OauthTokenGenerate.rb +0 -8
- data/examples/OauthTokenRefresh.rb +0 -8
- data/examples/TemplateCreate.rb +49 -0
- data/lib/dropbox-sign/api/signature_request_api.rb +2 -2
- data/lib/dropbox-sign/api/template_api.rb +109 -0
- data/lib/dropbox-sign/configuration.rb +1 -1
- data/lib/dropbox-sign/models/signature_request_create_embedded_request.rb +1 -1
- data/lib/dropbox-sign/models/signature_request_send_request.rb +15 -2
- data/lib/dropbox-sign/models/signature_request_send_with_template_request.rb +14 -1
- data/lib/dropbox-sign/models/signature_request_update_request.rb +1 -1
- data/lib/dropbox-sign/models/sub_form_fields_per_document_base.rb +2 -2
- data/lib/dropbox-sign/models/sub_form_fields_per_document_date_signed.rb +60 -4
- data/lib/dropbox-sign/models/sub_form_fields_per_document_dropdown.rb +60 -4
- data/lib/dropbox-sign/models/sub_form_fields_per_document_font_enum.rb +54 -0
- data/lib/dropbox-sign/models/sub_form_fields_per_document_hyperlink.rb +60 -4
- data/lib/dropbox-sign/models/sub_form_fields_per_document_text.rb +49 -4
- data/lib/dropbox-sign/models/sub_form_fields_per_document_text_merge.rb +60 -4
- data/lib/dropbox-sign/models/sub_white_labeling_options.rb +1 -1
- data/lib/dropbox-sign/models/template_create_embedded_draft_request.rb +1 -1
- data/lib/dropbox-sign/models/template_create_request.rb +509 -0
- data/lib/dropbox-sign/models/template_create_response.rb +263 -0
- data/lib/dropbox-sign/models/template_create_response_template.rb +252 -0
- data/lib/dropbox-sign/models/unclaimed_draft_create_embedded_request.rb +1 -1
- data/lib/dropbox-sign/models/unclaimed_draft_create_request.rb +1 -1
- data/lib/dropbox-sign/version.rb +1 -1
- data/lib/dropbox-sign.rb +4 -0
- data/openapi-config.yaml +1 -1
- data/openapi-sdk.yaml +1673 -1261
- data/spec/configuration_spec.rb +5 -7
- data/templates/configuration.mustache +1 -1
- data/templates/configuration_spec.mustache +5 -7
- data/test_fixtures/SignatureRequestCreateEmbeddedRequest.json +6 -2
- data/test_fixtures/SignatureRequestSendRequest.json +8 -2
- data/test_fixtures/SignatureRequestSendWithTemplateRequest.json +1 -0
- data/test_fixtures/TemplateCreateEmbeddedDraftRequest.json +3 -1
- data/test_fixtures/TemplateCreateRequest.json +120 -0
- data/test_fixtures/TemplateCreateResponse.json +7 -0
- data/test_fixtures/UnclaimedDraftCreateEmbeddedRequest.json +3 -1
- data/test_fixtures/UnclaimedDraftCreateRequest.json +3 -1
- metadata +23 -12
| @@ -137,6 +137,115 @@ module Dropbox::Sign | |
| 137 137 | 
             
                  return data, status_code, headers
         | 
| 138 138 | 
             
                end
         | 
| 139 139 |  | 
| 140 | 
            +
                # Create  Template
         | 
| 141 | 
            +
                # Creates a template that can then be used.
         | 
| 142 | 
            +
                # @param template_create_request [TemplateCreateRequest] 
         | 
| 143 | 
            +
                # @param [Hash] opts the optional parameters
         | 
| 144 | 
            +
                # @return [TemplateCreateResponse]
         | 
| 145 | 
            +
                def template_create(template_create_request, opts = {})
         | 
| 146 | 
            +
                  data, _status_code, _headers = template_create_with_http_info(template_create_request, opts)
         | 
| 147 | 
            +
                  data
         | 
| 148 | 
            +
                end
         | 
| 149 | 
            +
             | 
| 150 | 
            +
                # Create  Template
         | 
| 151 | 
            +
                # Creates a template that can then be used.
         | 
| 152 | 
            +
                # @param template_create_request [TemplateCreateRequest] 
         | 
| 153 | 
            +
                # @param [Hash] opts the optional parameters
         | 
| 154 | 
            +
                # @return [Array<(TemplateCreateResponse, Integer, Hash)>] TemplateCreateResponse data, response status code and response headers
         | 
| 155 | 
            +
                def template_create_with_http_info(template_create_request, opts = {})
         | 
| 156 | 
            +
                  if @api_client.config.debugging
         | 
| 157 | 
            +
                    @api_client.config.logger.debug 'Calling API: TemplateApi.template_create ...'
         | 
| 158 | 
            +
                  end
         | 
| 159 | 
            +
                  # verify the required parameter 'template_create_request' is set
         | 
| 160 | 
            +
                  if @api_client.config.client_side_validation && template_create_request.nil?
         | 
| 161 | 
            +
                    fail ArgumentError, "Missing the required parameter 'template_create_request' when calling TemplateApi.template_create"
         | 
| 162 | 
            +
                  end
         | 
| 163 | 
            +
                  # resource path
         | 
| 164 | 
            +
                  local_var_path = '/template/create'
         | 
| 165 | 
            +
             | 
| 166 | 
            +
                  # query parameters
         | 
| 167 | 
            +
                  query_params = opts[:query_params] || {}
         | 
| 168 | 
            +
             | 
| 169 | 
            +
                  # header parameters
         | 
| 170 | 
            +
                  header_params = opts[:header_params] || {}
         | 
| 171 | 
            +
                  # HTTP header 'Accept' (if needed)
         | 
| 172 | 
            +
                  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
         | 
| 173 | 
            +
                  # HTTP header 'Content-Type'
         | 
| 174 | 
            +
                  content_type = @api_client.select_header_content_type(['application/json', 'multipart/form-data'])
         | 
| 175 | 
            +
                  if !content_type.nil?
         | 
| 176 | 
            +
                      header_params['Content-Type'] = content_type
         | 
| 177 | 
            +
                  end
         | 
| 178 | 
            +
             | 
| 179 | 
            +
                  post_body = {}
         | 
| 180 | 
            +
                  form_params = opts[:form_params] || {}
         | 
| 181 | 
            +
                  result = @api_client.generate_form_data(
         | 
| 182 | 
            +
                    template_create_request,
         | 
| 183 | 
            +
                    Dropbox::Sign::TemplateCreateRequest.openapi_types
         | 
| 184 | 
            +
                  )
         | 
| 185 | 
            +
             | 
| 186 | 
            +
                  # form parameters
         | 
| 187 | 
            +
                  if result[:has_file]
         | 
| 188 | 
            +
                    form_params = opts[:form_params] || result[:params]
         | 
| 189 | 
            +
                    header_params['Content-Type'] = 'multipart/form-data'
         | 
| 190 | 
            +
                  else
         | 
| 191 | 
            +
                    # http body (model)
         | 
| 192 | 
            +
                    post_body = opts[:debug_body] || result[:params]
         | 
| 193 | 
            +
                  end
         | 
| 194 | 
            +
             | 
| 195 | 
            +
                  # return_type
         | 
| 196 | 
            +
                  return_type = opts[:debug_return_type] || 'TemplateCreateResponse'
         | 
| 197 | 
            +
             | 
| 198 | 
            +
                  # auth_names
         | 
| 199 | 
            +
                  auth_names = opts[:debug_auth_names] || ['api_key', 'oauth2']
         | 
| 200 | 
            +
             | 
| 201 | 
            +
                  new_options = opts.merge(
         | 
| 202 | 
            +
                    :operation => :"TemplateApi.template_create",
         | 
| 203 | 
            +
                    :header_params => header_params,
         | 
| 204 | 
            +
                    :query_params => query_params,
         | 
| 205 | 
            +
                    :form_params => form_params,
         | 
| 206 | 
            +
                    :body => post_body,
         | 
| 207 | 
            +
                    :auth_names => auth_names,
         | 
| 208 | 
            +
                    :return_type => return_type
         | 
| 209 | 
            +
                  )
         | 
| 210 | 
            +
             | 
| 211 | 
            +
                  begin
         | 
| 212 | 
            +
                    data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
         | 
| 213 | 
            +
                  rescue Dropbox::Sign::ApiError => e
         | 
| 214 | 
            +
                    if e.code === 200
         | 
| 215 | 
            +
                      body = @api_client.convert_to_type(
         | 
| 216 | 
            +
                        JSON.parse("[#{e.response_body}]", :symbolize_names => true)[0],
         | 
| 217 | 
            +
                        "Dropbox::Sign::TemplateCreateResponse"
         | 
| 218 | 
            +
                      )
         | 
| 219 | 
            +
             | 
| 220 | 
            +
                      fail ApiError.new(:code => e.code,
         | 
| 221 | 
            +
                                        :response_headers => e.response_headers,
         | 
| 222 | 
            +
                                        :response_body => body),
         | 
| 223 | 
            +
                           e.message
         | 
| 224 | 
            +
                    end
         | 
| 225 | 
            +
             | 
| 226 | 
            +
                    range_code = "4XX".split('').first
         | 
| 227 | 
            +
                    range_code_left = "#{range_code}00".to_i
         | 
| 228 | 
            +
                    range_code_right = "#{range_code}99".to_i
         | 
| 229 | 
            +
                    if e.code >= range_code_left && e.code <= range_code_right
         | 
| 230 | 
            +
                      body = @api_client.convert_to_type(
         | 
| 231 | 
            +
                        JSON.parse("[#{e.response_body}]", :symbolize_names => true)[0],
         | 
| 232 | 
            +
                        "Dropbox::Sign::ErrorResponse"
         | 
| 233 | 
            +
                      )
         | 
| 234 | 
            +
             | 
| 235 | 
            +
                      fail ApiError.new(:code => e.code,
         | 
| 236 | 
            +
                                        :response_headers => e.response_headers,
         | 
| 237 | 
            +
                                        :response_body => body),
         | 
| 238 | 
            +
                           e.message
         | 
| 239 | 
            +
                    end
         | 
| 240 | 
            +
             | 
| 241 | 
            +
                  end
         | 
| 242 | 
            +
             | 
| 243 | 
            +
                  if @api_client.config.debugging
         | 
| 244 | 
            +
                    @api_client.config.logger.debug "API called: TemplateApi#template_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
         | 
| 245 | 
            +
                  end
         | 
| 246 | 
            +
                  return data, status_code, headers
         | 
| 247 | 
            +
                end
         | 
| 248 | 
            +
             | 
| 140 249 | 
             
                # Create Embedded Template Draft
         | 
| 141 250 | 
             
                # The first step in an embedded template workflow. Creates a draft template that can then be further set up in the template 'edit' stage.
         | 
| 142 251 | 
             
                # @param template_create_embedded_draft_request [TemplateCreateEmbeddedDraftRequest] 
         | 
| @@ -69,7 +69,7 @@ module Dropbox::Sign | |
| 69 69 | 
             
                # @return [Array<SubFormFieldRule>]
         | 
| 70 70 | 
             
                attr_accessor :form_field_rules
         | 
| 71 71 |  | 
| 72 | 
            -
                # The fields that should appear on the document, expressed as an array of objects. ( | 
| 72 | 
            +
                # The fields that should appear on the document, expressed as an array of objects. (For more details you can read about it here: [Using Form Fields per Document](/docs/openapi/form-fields-per-document).)  **NOTE**: Fields like **text**, **dropdown**, **checkbox**, **radio**, and **hyperlink** have additional required and optional parameters. Check out the list of [additional parameters](/api/reference/constants/#form-fields-per-document) for these field types.  * Text Field use `SubFormFieldsPerDocumentText` * Dropdown Field use `SubFormFieldsPerDocumentDropdown` * Hyperlink Field use `SubFormFieldsPerDocumentHyperlink` * Checkbox Field use `SubFormFieldsPerDocumentCheckbox` * Radio Field use `SubFormFieldsPerDocumentRadio` * Signature Field use `SubFormFieldsPerDocumentSignature` * Date Signed Field use `SubFormFieldsPerDocumentDateSigned` * Initials Field use `SubFormFieldsPerDocumentInitials` * Text Merge Field use `SubFormFieldsPerDocumentTextMerge` * Checkbox Merge Field use `SubFormFieldsPerDocumentCheckboxMerge`
         | 
| 73 73 | 
             
                # @return [Array<SubFormFieldsPerDocumentBase>]
         | 
| 74 74 | 
             
                attr_accessor :form_fields_per_document
         | 
| 75 75 |  | 
| @@ -69,7 +69,7 @@ module Dropbox::Sign | |
| 69 69 | 
             
                # @return [Array<SubFormFieldRule>]
         | 
| 70 70 | 
             
                attr_accessor :form_field_rules
         | 
| 71 71 |  | 
| 72 | 
            -
                # The fields that should appear on the document, expressed as an array of objects. ( | 
| 72 | 
            +
                # The fields that should appear on the document, expressed as an array of objects. (For more details you can read about it here: [Using Form Fields per Document](/docs/openapi/form-fields-per-document).)  **NOTE**: Fields like **text**, **dropdown**, **checkbox**, **radio**, and **hyperlink** have additional required and optional parameters. Check out the list of [additional parameters](/api/reference/constants/#form-fields-per-document) for these field types.  * Text Field use `SubFormFieldsPerDocumentText` * Dropdown Field use `SubFormFieldsPerDocumentDropdown` * Hyperlink Field use `SubFormFieldsPerDocumentHyperlink` * Checkbox Field use `SubFormFieldsPerDocumentCheckbox` * Radio Field use `SubFormFieldsPerDocumentRadio` * Signature Field use `SubFormFieldsPerDocumentSignature` * Date Signed Field use `SubFormFieldsPerDocumentDateSigned` * Initials Field use `SubFormFieldsPerDocumentInitials` * Text Merge Field use `SubFormFieldsPerDocumentTextMerge` * Checkbox Merge Field use `SubFormFieldsPerDocumentCheckboxMerge`
         | 
| 73 73 | 
             
                # @return [Array<SubFormFieldsPerDocumentBase>]
         | 
| 74 74 | 
             
                attr_accessor :form_fields_per_document
         | 
| 75 75 |  | 
| @@ -81,6 +81,10 @@ module Dropbox::Sign | |
| 81 81 | 
             
                # @return [Boolean]
         | 
| 82 82 | 
             
                attr_accessor :is_qualified_signature
         | 
| 83 83 |  | 
| 84 | 
            +
                # Send with a value of `true` if you wish to enable [electronic identification (eID)](https://www.hellosign.com/features/electronic-id), which requires the signer to verify their identity with an eID provider to sign a document.<br> **Note**: eID is only available on the Premium API plan. Cannot be used in `test_mode`. Only works on requests with one signer.
         | 
| 85 | 
            +
                # @return [Boolean]
         | 
| 86 | 
            +
                attr_accessor :is_eid
         | 
| 87 | 
            +
             | 
| 84 88 | 
             
                # The custom message in the email that will be sent to the signers.
         | 
| 85 89 | 
             
                # @return [String]
         | 
| 86 90 | 
             
                attr_accessor :message
         | 
| @@ -135,6 +139,7 @@ module Dropbox::Sign | |
| 135 139 | 
             
                    :'form_fields_per_document' => :'form_fields_per_document',
         | 
| 136 140 | 
             
                    :'hide_text_tags' => :'hide_text_tags',
         | 
| 137 141 | 
             
                    :'is_qualified_signature' => :'is_qualified_signature',
         | 
| 142 | 
            +
                    :'is_eid' => :'is_eid',
         | 
| 138 143 | 
             
                    :'message' => :'message',
         | 
| 139 144 | 
             
                    :'metadata' => :'metadata',
         | 
| 140 145 | 
             
                    :'signing_options' => :'signing_options',
         | 
| @@ -176,6 +181,7 @@ module Dropbox::Sign | |
| 176 181 | 
             
                    :'form_fields_per_document' => :'Array<SubFormFieldsPerDocumentBase>',
         | 
| 177 182 | 
             
                    :'hide_text_tags' => :'Boolean',
         | 
| 178 183 | 
             
                    :'is_qualified_signature' => :'Boolean',
         | 
| 184 | 
            +
                    :'is_eid' => :'Boolean',
         | 
| 179 185 | 
             
                    :'message' => :'String',
         | 
| 180 186 | 
             
                    :'metadata' => :'Hash<String, Object>',
         | 
| 181 187 | 
             
                    :'signing_options' => :'SubSigningOptions',
         | 
| @@ -322,6 +328,12 @@ module Dropbox::Sign | |
| 322 328 | 
             
                    self.is_qualified_signature = false
         | 
| 323 329 | 
             
                  end
         | 
| 324 330 |  | 
| 331 | 
            +
                  if attributes.key?(:'is_eid')
         | 
| 332 | 
            +
                    self.is_eid = attributes[:'is_eid']
         | 
| 333 | 
            +
                  else
         | 
| 334 | 
            +
                    self.is_eid = false
         | 
| 335 | 
            +
                  end
         | 
| 336 | 
            +
             | 
| 325 337 | 
             
                  if attributes.key?(:'message')
         | 
| 326 338 | 
             
                    self.message = attributes[:'message']
         | 
| 327 339 | 
             
                  end
         | 
| @@ -450,6 +462,7 @@ module Dropbox::Sign | |
| 450 462 | 
             
                      form_fields_per_document == o.form_fields_per_document &&
         | 
| 451 463 | 
             
                      hide_text_tags == o.hide_text_tags &&
         | 
| 452 464 | 
             
                      is_qualified_signature == o.is_qualified_signature &&
         | 
| 465 | 
            +
                      is_eid == o.is_eid &&
         | 
| 453 466 | 
             
                      message == o.message &&
         | 
| 454 467 | 
             
                      metadata == o.metadata &&
         | 
| 455 468 | 
             
                      signing_options == o.signing_options &&
         | 
| @@ -470,7 +483,7 @@ module Dropbox::Sign | |
| 470 483 | 
             
                # Calculates hash code according to all attributes.
         | 
| 471 484 | 
             
                # @return [Integer] Hash code
         | 
| 472 485 | 
             
                def hash
         | 
| 473 | 
            -
                  [files, file_urls, signers, grouped_signers, allow_decline, allow_reassign, attachments, cc_email_addresses, client_id, custom_fields, field_options, form_field_groups, form_field_rules, form_fields_per_document, hide_text_tags, is_qualified_signature, message, metadata, signing_options, signing_redirect_url, subject, test_mode, title, use_text_tags, expires_at].hash
         | 
| 486 | 
            +
                  [files, file_urls, signers, grouped_signers, allow_decline, allow_reassign, attachments, cc_email_addresses, client_id, custom_fields, field_options, form_field_groups, form_field_rules, form_fields_per_document, hide_text_tags, is_qualified_signature, is_eid, message, metadata, signing_options, signing_redirect_url, subject, test_mode, title, use_text_tags, expires_at].hash
         | 
| 474 487 | 
             
                end
         | 
| 475 488 |  | 
| 476 489 | 
             
                # Builds the object from hash
         | 
| @@ -54,6 +54,10 @@ module Dropbox::Sign | |
| 54 54 | 
             
                # @return [Boolean]
         | 
| 55 55 | 
             
                attr_accessor :is_qualified_signature
         | 
| 56 56 |  | 
| 57 | 
            +
                # Send with a value of `true` if you wish to enable [electronic identification (eID)](https://www.hellosign.com/features/electronic-id), which requires the signer to verify their identity with an eID provider to sign a document.<br> **Note**: eID is only available on the Premium API plan. Cannot be used in `test_mode`. Only works on requests with one signer.
         | 
| 58 | 
            +
                # @return [Boolean]
         | 
| 59 | 
            +
                attr_accessor :is_eid
         | 
| 60 | 
            +
             | 
| 57 61 | 
             
                # The custom message in the email that will be sent to the signers.
         | 
| 58 62 | 
             
                # @return [String]
         | 
| 59 63 | 
             
                attr_accessor :message
         | 
| @@ -93,6 +97,7 @@ module Dropbox::Sign | |
| 93 97 | 
             
                    :'files' => :'files',
         | 
| 94 98 | 
             
                    :'file_urls' => :'file_urls',
         | 
| 95 99 | 
             
                    :'is_qualified_signature' => :'is_qualified_signature',
         | 
| 100 | 
            +
                    :'is_eid' => :'is_eid',
         | 
| 96 101 | 
             
                    :'message' => :'message',
         | 
| 97 102 | 
             
                    :'metadata' => :'metadata',
         | 
| 98 103 | 
             
                    :'signing_options' => :'signing_options',
         | 
| @@ -125,6 +130,7 @@ module Dropbox::Sign | |
| 125 130 | 
             
                    :'files' => :'Array<File>',
         | 
| 126 131 | 
             
                    :'file_urls' => :'Array<String>',
         | 
| 127 132 | 
             
                    :'is_qualified_signature' => :'Boolean',
         | 
| 133 | 
            +
                    :'is_eid' => :'Boolean',
         | 
| 128 134 | 
             
                    :'message' => :'String',
         | 
| 129 135 | 
             
                    :'metadata' => :'Hash<String, Object>',
         | 
| 130 136 | 
             
                    :'signing_options' => :'SubSigningOptions',
         | 
| @@ -228,6 +234,12 @@ module Dropbox::Sign | |
| 228 234 | 
             
                    self.is_qualified_signature = false
         | 
| 229 235 | 
             
                  end
         | 
| 230 236 |  | 
| 237 | 
            +
                  if attributes.key?(:'is_eid')
         | 
| 238 | 
            +
                    self.is_eid = attributes[:'is_eid']
         | 
| 239 | 
            +
                  else
         | 
| 240 | 
            +
                    self.is_eid = false
         | 
| 241 | 
            +
                  end
         | 
| 242 | 
            +
             | 
| 231 243 | 
             
                  if attributes.key?(:'message')
         | 
| 232 244 | 
             
                    self.message = attributes[:'message']
         | 
| 233 245 | 
             
                  end
         | 
| @@ -349,6 +361,7 @@ module Dropbox::Sign | |
| 349 361 | 
             
                      files == o.files &&
         | 
| 350 362 | 
             
                      file_urls == o.file_urls &&
         | 
| 351 363 | 
             
                      is_qualified_signature == o.is_qualified_signature &&
         | 
| 364 | 
            +
                      is_eid == o.is_eid &&
         | 
| 352 365 | 
             
                      message == o.message &&
         | 
| 353 366 | 
             
                      metadata == o.metadata &&
         | 
| 354 367 | 
             
                      signing_options == o.signing_options &&
         | 
| @@ -367,7 +380,7 @@ module Dropbox::Sign | |
| 367 380 | 
             
                # Calculates hash code according to all attributes.
         | 
| 368 381 | 
             
                # @return [Integer] Hash code
         | 
| 369 382 | 
             
                def hash
         | 
| 370 | 
            -
                  [template_ids, signers, allow_decline, ccs, client_id, custom_fields, files, file_urls, is_qualified_signature, message, metadata, signing_options, signing_redirect_url, subject, test_mode, title].hash
         | 
| 383 | 
            +
                  [template_ids, signers, allow_decline, ccs, client_id, custom_fields, files, file_urls, is_qualified_signature, is_eid, message, metadata, signing_options, signing_redirect_url, subject, test_mode, title].hash
         | 
| 371 384 | 
             
                end
         | 
| 372 385 |  | 
| 373 386 | 
             
                # Builds the object from hash
         | 
| @@ -22,7 +22,7 @@ module Dropbox::Sign | |
| 22 22 | 
             
                # @return [String]
         | 
| 23 23 | 
             
                attr_accessor :signature_id
         | 
| 24 24 |  | 
| 25 | 
            -
                # The new email address for the recipient.  **NOTE**: Optional if `name` is provided.
         | 
| 25 | 
            +
                # The new email address for the recipient.  This will generate a new `signature_id` value.  **NOTE**: Optional if `name` is provided.
         | 
| 26 26 | 
             
                # @return [String]
         | 
| 27 27 | 
             
                attr_accessor :email_address
         | 
| 28 28 |  | 
| @@ -17,7 +17,7 @@ module Dropbox | |
| 17 17 | 
             
            end
         | 
| 18 18 |  | 
| 19 19 | 
             
            module Dropbox::Sign
         | 
| 20 | 
            -
              # The fields that should appear on the document, expressed as an array of objects. ( | 
| 20 | 
            +
              # The fields that should appear on the document, expressed as an array of objects. (For more details you can read about it here: [Using Form Fields per Document](/docs/openapi/form-fields-per-document).)  **NOTE**: Fields like **text**, **dropdown**, **checkbox**, **radio**, and **hyperlink** have additional required and optional parameters. Check out the list of [additional parameters](/api/reference/constants/#form-fields-per-document) for these field types.  * Text Field use `SubFormFieldsPerDocumentText` * Dropdown Field use `SubFormFieldsPerDocumentDropdown` * Hyperlink Field use `SubFormFieldsPerDocumentHyperlink` * Checkbox Field use `SubFormFieldsPerDocumentCheckbox` * Radio Field use `SubFormFieldsPerDocumentRadio` * Signature Field use `SubFormFieldsPerDocumentSignature` * Date Signed Field use `SubFormFieldsPerDocumentDateSigned` * Initials Field use `SubFormFieldsPerDocumentInitials` * Text Merge Field use `SubFormFieldsPerDocumentTextMerge` * Checkbox Merge Field use `SubFormFieldsPerDocumentCheckboxMerge`
         | 
| 21 21 | 
             
              class SubFormFieldsPerDocumentBase
         | 
| 22 22 | 
             
                # Represents the integer index of the `file` or `file_url` document the field should be attached to.
         | 
| 23 23 | 
             
                # @return [Integer]
         | 
| @@ -35,7 +35,7 @@ module Dropbox::Sign | |
| 35 35 | 
             
                # @return [Boolean]
         | 
| 36 36 | 
             
                attr_accessor :required
         | 
| 37 37 |  | 
| 38 | 
            -
                # Signer index identified by the offset in the signers parameter (0-based indexing), indicating which signer should fill out the field.  **NOTE**: If type is `text-merge` or `checkbox-merge`, you must set this to sender in order to use pre-filled data.
         | 
| 38 | 
            +
                # Signer index identified by the offset in the signers parameter (0-based indexing), indicating which signer should fill out the field.  **NOTE**: To set the value of the field as the preparer you must set this to `me_now`  **NOTE**: If type is `text-merge` or `checkbox-merge`, you must set this to sender in order to use pre-filled data.
         | 
| 39 39 | 
             
                # @return [Integer, String]
         | 
| 40 40 | 
             
                attr_accessor :signer
         | 
| 41 41 |  | 
| @@ -23,10 +23,42 @@ module Dropbox::Sign | |
| 23 23 | 
             
                # @return [String]
         | 
| 24 24 | 
             
                attr_accessor :type
         | 
| 25 25 |  | 
| 26 | 
            +
                # Font family for the field.
         | 
| 27 | 
            +
                # @return [String]
         | 
| 28 | 
            +
                attr_accessor :font_family
         | 
| 29 | 
            +
             | 
| 30 | 
            +
                # The initial px font size for the field contents. Can be any integer value between `7` and `49`.  **NOTE**: Font size may be reduced during processing in order to fit the contents within the dimensions of the field.
         | 
| 31 | 
            +
                # @return [Integer]
         | 
| 32 | 
            +
                attr_accessor :font_size
         | 
| 33 | 
            +
             | 
| 34 | 
            +
                class EnumAttributeValidator
         | 
| 35 | 
            +
                  attr_reader :datatype
         | 
| 36 | 
            +
                  attr_reader :allowable_values
         | 
| 37 | 
            +
             | 
| 38 | 
            +
                  def initialize(datatype, allowable_values)
         | 
| 39 | 
            +
                    @allowable_values = allowable_values.map do |value|
         | 
| 40 | 
            +
                      case datatype.to_s
         | 
| 41 | 
            +
                      when /Integer/i
         | 
| 42 | 
            +
                        value.to_i
         | 
| 43 | 
            +
                      when /Float/i
         | 
| 44 | 
            +
                        value.to_f
         | 
| 45 | 
            +
                      else
         | 
| 46 | 
            +
                        value
         | 
| 47 | 
            +
                      end
         | 
| 48 | 
            +
                    end
         | 
| 49 | 
            +
                  end
         | 
| 50 | 
            +
             | 
| 51 | 
            +
                  def valid?(value)
         | 
| 52 | 
            +
                    !value || allowable_values.include?(value)
         | 
| 53 | 
            +
                  end
         | 
| 54 | 
            +
                end
         | 
| 55 | 
            +
             | 
| 26 56 | 
             
                # Attribute mapping from ruby-style variable name to JSON key.
         | 
| 27 57 | 
             
                def self.attribute_map
         | 
| 28 58 | 
             
                  {
         | 
| 29 | 
            -
                    :'type' => :'type'
         | 
| 59 | 
            +
                    :'type' => :'type',
         | 
| 60 | 
            +
                    :'font_family' => :'font_family',
         | 
| 61 | 
            +
                    :'font_size' => :'font_size'
         | 
| 30 62 | 
             
                  }
         | 
| 31 63 | 
             
                end
         | 
| 32 64 |  | 
| @@ -43,7 +75,9 @@ module Dropbox::Sign | |
| 43 75 | 
             
                # Attribute type mapping.
         | 
| 44 76 | 
             
                def self.openapi_types
         | 
| 45 77 | 
             
                  {
         | 
| 46 | 
            -
                    :'type' => :'String'
         | 
| 78 | 
            +
                    :'type' => :'String',
         | 
| 79 | 
            +
                    :'font_family' => :'String',
         | 
| 80 | 
            +
                    :'font_size' => :'Integer'
         | 
| 47 81 | 
             
                  }
         | 
| 48 82 | 
             
                end
         | 
| 49 83 |  | 
| @@ -96,6 +130,14 @@ module Dropbox::Sign | |
| 96 130 | 
             
                  else
         | 
| 97 131 | 
             
                    self.type = 'date_signed'
         | 
| 98 132 | 
             
                  end
         | 
| 133 | 
            +
             | 
| 134 | 
            +
                  if attributes.key?(:'font_family')
         | 
| 135 | 
            +
                    self.font_family = attributes[:'font_family']
         | 
| 136 | 
            +
                  end
         | 
| 137 | 
            +
             | 
| 138 | 
            +
                  if attributes.key?(:'font_size')
         | 
| 139 | 
            +
                    self.font_size = attributes[:'font_size']
         | 
| 140 | 
            +
                  end
         | 
| 99 141 | 
             
                end
         | 
| 100 142 |  | 
| 101 143 | 
             
                # Show invalid properties with the reasons. Usually used together with valid?
         | 
| @@ -113,15 +155,29 @@ module Dropbox::Sign | |
| 113 155 | 
             
                # @return true if the model is valid
         | 
| 114 156 | 
             
                def valid?
         | 
| 115 157 | 
             
                  return false if @type.nil?
         | 
| 158 | 
            +
                  font_family_validator = EnumAttributeValidator.new('String', ["helvetica", "arial", "courier", "calibri", "cambria", "georgia", "times", "trebuchet", "verdana", "roboto", "robotoMono", "notoSans", "notoSerif", "notoCJK-JP-Regular", "notoHebrew-Regular", "notoSanThaiMerged"])
         | 
| 159 | 
            +
                  return false unless font_family_validator.valid?(@font_family)
         | 
| 116 160 | 
             
                  true && super
         | 
| 117 161 | 
             
                end
         | 
| 118 162 |  | 
| 163 | 
            +
                # Custom attribute writer method checking allowed values (enum).
         | 
| 164 | 
            +
                # @param [Object] font_family Object to be assigned
         | 
| 165 | 
            +
                def font_family=(font_family)
         | 
| 166 | 
            +
                  validator = EnumAttributeValidator.new('String', ["helvetica", "arial", "courier", "calibri", "cambria", "georgia", "times", "trebuchet", "verdana", "roboto", "robotoMono", "notoSans", "notoSerif", "notoCJK-JP-Regular", "notoHebrew-Regular", "notoSanThaiMerged"])
         | 
| 167 | 
            +
                  unless validator.valid?(font_family)
         | 
| 168 | 
            +
                    fail ArgumentError, "invalid value for \"font_family\", must be one of #{validator.allowable_values}."
         | 
| 169 | 
            +
                  end
         | 
| 170 | 
            +
                  @font_family = font_family
         | 
| 171 | 
            +
                end
         | 
| 172 | 
            +
             | 
| 119 173 | 
             
                # Checks equality by comparing each attribute.
         | 
| 120 174 | 
             
                # @param [Object] Object to be compared
         | 
| 121 175 | 
             
                def ==(o)
         | 
| 122 176 | 
             
                  return true if self.equal?(o)
         | 
| 123 177 | 
             
                  self.class == o.class &&
         | 
| 124 | 
            -
                      type == o.type && | 
| 178 | 
            +
                      type == o.type &&
         | 
| 179 | 
            +
                      font_family == o.font_family &&
         | 
| 180 | 
            +
                      font_size == o.font_size && super(o)
         | 
| 125 181 | 
             
                end
         | 
| 126 182 |  | 
| 127 183 | 
             
                # @see the `==` method
         | 
| @@ -133,7 +189,7 @@ module Dropbox::Sign | |
| 133 189 | 
             
                # Calculates hash code according to all attributes.
         | 
| 134 190 | 
             
                # @return [Integer] Hash code
         | 
| 135 191 | 
             
                def hash
         | 
| 136 | 
            -
                  [type].hash
         | 
| 192 | 
            +
                  [type, font_family, font_size].hash
         | 
| 137 193 | 
             
                end
         | 
| 138 194 |  | 
| 139 195 | 
             
                # Builds the object from hash
         | 
| @@ -31,12 +31,44 @@ module Dropbox::Sign | |
| 31 31 | 
             
                # @return [String]
         | 
| 32 32 | 
             
                attr_accessor :content
         | 
| 33 33 |  | 
| 34 | 
            +
                # Font family for the field.
         | 
| 35 | 
            +
                # @return [String]
         | 
| 36 | 
            +
                attr_accessor :font_family
         | 
| 37 | 
            +
             | 
| 38 | 
            +
                # The initial px font size for the field contents. Can be any integer value between `7` and `49`.  **NOTE**: Font size may be reduced during processing in order to fit the contents within the dimensions of the field.
         | 
| 39 | 
            +
                # @return [Integer]
         | 
| 40 | 
            +
                attr_accessor :font_size
         | 
| 41 | 
            +
             | 
| 42 | 
            +
                class EnumAttributeValidator
         | 
| 43 | 
            +
                  attr_reader :datatype
         | 
| 44 | 
            +
                  attr_reader :allowable_values
         | 
| 45 | 
            +
             | 
| 46 | 
            +
                  def initialize(datatype, allowable_values)
         | 
| 47 | 
            +
                    @allowable_values = allowable_values.map do |value|
         | 
| 48 | 
            +
                      case datatype.to_s
         | 
| 49 | 
            +
                      when /Integer/i
         | 
| 50 | 
            +
                        value.to_i
         | 
| 51 | 
            +
                      when /Float/i
         | 
| 52 | 
            +
                        value.to_f
         | 
| 53 | 
            +
                      else
         | 
| 54 | 
            +
                        value
         | 
| 55 | 
            +
                      end
         | 
| 56 | 
            +
                    end
         | 
| 57 | 
            +
                  end
         | 
| 58 | 
            +
             | 
| 59 | 
            +
                  def valid?(value)
         | 
| 60 | 
            +
                    !value || allowable_values.include?(value)
         | 
| 61 | 
            +
                  end
         | 
| 62 | 
            +
                end
         | 
| 63 | 
            +
             | 
| 34 64 | 
             
                # Attribute mapping from ruby-style variable name to JSON key.
         | 
| 35 65 | 
             
                def self.attribute_map
         | 
| 36 66 | 
             
                  {
         | 
| 37 67 | 
             
                    :'type' => :'type',
         | 
| 38 68 | 
             
                    :'options' => :'options',
         | 
| 39 | 
            -
                    :'content' => :'content'
         | 
| 69 | 
            +
                    :'content' => :'content',
         | 
| 70 | 
            +
                    :'font_family' => :'font_family',
         | 
| 71 | 
            +
                    :'font_size' => :'font_size'
         | 
| 40 72 | 
             
                  }
         | 
| 41 73 | 
             
                end
         | 
| 42 74 |  | 
| @@ -55,7 +87,9 @@ module Dropbox::Sign | |
| 55 87 | 
             
                  {
         | 
| 56 88 | 
             
                    :'type' => :'String',
         | 
| 57 89 | 
             
                    :'options' => :'Array<String>',
         | 
| 58 | 
            -
                    :'content' => :'String'
         | 
| 90 | 
            +
                    :'content' => :'String',
         | 
| 91 | 
            +
                    :'font_family' => :'String',
         | 
| 92 | 
            +
                    :'font_size' => :'Integer'
         | 
| 59 93 | 
             
                  }
         | 
| 60 94 | 
             
                end
         | 
| 61 95 |  | 
| @@ -118,6 +152,14 @@ module Dropbox::Sign | |
| 118 152 | 
             
                  if attributes.key?(:'content')
         | 
| 119 153 | 
             
                    self.content = attributes[:'content']
         | 
| 120 154 | 
             
                  end
         | 
| 155 | 
            +
             | 
| 156 | 
            +
                  if attributes.key?(:'font_family')
         | 
| 157 | 
            +
                    self.font_family = attributes[:'font_family']
         | 
| 158 | 
            +
                  end
         | 
| 159 | 
            +
             | 
| 160 | 
            +
                  if attributes.key?(:'font_size')
         | 
| 161 | 
            +
                    self.font_size = attributes[:'font_size']
         | 
| 162 | 
            +
                  end
         | 
| 121 163 | 
             
                end
         | 
| 122 164 |  | 
| 123 165 | 
             
                # Show invalid properties with the reasons. Usually used together with valid?
         | 
| @@ -145,6 +187,8 @@ module Dropbox::Sign | |
| 145 187 | 
             
                  return false if @type.nil?
         | 
| 146 188 | 
             
                  return false if @options.nil?
         | 
| 147 189 | 
             
                  return false if @options.length < 1
         | 
| 190 | 
            +
                  font_family_validator = EnumAttributeValidator.new('String', ["helvetica", "arial", "courier", "calibri", "cambria", "georgia", "times", "trebuchet", "verdana", "roboto", "robotoMono", "notoSans", "notoSerif", "notoCJK-JP-Regular", "notoHebrew-Regular", "notoSanThaiMerged"])
         | 
| 191 | 
            +
                  return false unless font_family_validator.valid?(@font_family)
         | 
| 148 192 | 
             
                  true && super
         | 
| 149 193 | 
             
                end
         | 
| 150 194 |  | 
| @@ -162,6 +206,16 @@ module Dropbox::Sign | |
| 162 206 | 
             
                  @options = options
         | 
| 163 207 | 
             
                end
         | 
| 164 208 |  | 
| 209 | 
            +
                # Custom attribute writer method checking allowed values (enum).
         | 
| 210 | 
            +
                # @param [Object] font_family Object to be assigned
         | 
| 211 | 
            +
                def font_family=(font_family)
         | 
| 212 | 
            +
                  validator = EnumAttributeValidator.new('String', ["helvetica", "arial", "courier", "calibri", "cambria", "georgia", "times", "trebuchet", "verdana", "roboto", "robotoMono", "notoSans", "notoSerif", "notoCJK-JP-Regular", "notoHebrew-Regular", "notoSanThaiMerged"])
         | 
| 213 | 
            +
                  unless validator.valid?(font_family)
         | 
| 214 | 
            +
                    fail ArgumentError, "invalid value for \"font_family\", must be one of #{validator.allowable_values}."
         | 
| 215 | 
            +
                  end
         | 
| 216 | 
            +
                  @font_family = font_family
         | 
| 217 | 
            +
                end
         | 
| 218 | 
            +
             | 
| 165 219 | 
             
                # Checks equality by comparing each attribute.
         | 
| 166 220 | 
             
                # @param [Object] Object to be compared
         | 
| 167 221 | 
             
                def ==(o)
         | 
| @@ -169,7 +223,9 @@ module Dropbox::Sign | |
| 169 223 | 
             
                  self.class == o.class &&
         | 
| 170 224 | 
             
                      type == o.type &&
         | 
| 171 225 | 
             
                      options == o.options &&
         | 
| 172 | 
            -
                      content == o.content && | 
| 226 | 
            +
                      content == o.content &&
         | 
| 227 | 
            +
                      font_family == o.font_family &&
         | 
| 228 | 
            +
                      font_size == o.font_size && super(o)
         | 
| 173 229 | 
             
                end
         | 
| 174 230 |  | 
| 175 231 | 
             
                # @see the `==` method
         | 
| @@ -181,7 +237,7 @@ module Dropbox::Sign | |
| 181 237 | 
             
                # Calculates hash code according to all attributes.
         | 
| 182 238 | 
             
                # @return [Integer] Hash code
         | 
| 183 239 | 
             
                def hash
         | 
| 184 | 
            -
                  [type, options, content].hash
         | 
| 240 | 
            +
                  [type, options, content, font_family, font_size].hash
         | 
| 185 241 | 
             
                end
         | 
| 186 242 |  | 
| 187 243 | 
             
                # Builds the object from hash
         | 
| @@ -0,0 +1,54 @@ | |
| 1 | 
            +
            =begin
         | 
| 2 | 
            +
            #Dropbox Sign API
         | 
| 3 | 
            +
             | 
| 4 | 
            +
            #Dropbox Sign v3 API
         | 
| 5 | 
            +
             | 
| 6 | 
            +
            The version of the OpenAPI document: 3.0.0
         | 
| 7 | 
            +
            Contact: apisupport@hellosign.com
         | 
| 8 | 
            +
            Generated by: https://openapi-generator.tech
         | 
| 9 | 
            +
            OpenAPI Generator version: 5.3.0
         | 
| 10 | 
            +
             | 
| 11 | 
            +
            =end
         | 
| 12 | 
            +
             | 
| 13 | 
            +
            require 'date'
         | 
| 14 | 
            +
            require 'time'
         | 
| 15 | 
            +
             | 
| 16 | 
            +
            module Dropbox
         | 
| 17 | 
            +
            end
         | 
| 18 | 
            +
             | 
| 19 | 
            +
            module Dropbox::Sign
         | 
| 20 | 
            +
              class SubFormFieldsPerDocumentFontEnum
         | 
| 21 | 
            +
                HELVETICA = "helvetica".freeze
         | 
| 22 | 
            +
                ARIAL = "arial".freeze
         | 
| 23 | 
            +
                COURIER = "courier".freeze
         | 
| 24 | 
            +
                CALIBRI = "calibri".freeze
         | 
| 25 | 
            +
                CAMBRIA = "cambria".freeze
         | 
| 26 | 
            +
                GEORGIA = "georgia".freeze
         | 
| 27 | 
            +
                TIMES = "times".freeze
         | 
| 28 | 
            +
                TREBUCHET = "trebuchet".freeze
         | 
| 29 | 
            +
                VERDANA = "verdana".freeze
         | 
| 30 | 
            +
                ROBOTO = "roboto".freeze
         | 
| 31 | 
            +
                ROBOTO_MONO = "robotoMono".freeze
         | 
| 32 | 
            +
                NOTO_SANS = "notoSans".freeze
         | 
| 33 | 
            +
                NOTO_SERIF = "notoSerif".freeze
         | 
| 34 | 
            +
                NOTO_CJK_JP_REGULAR = "notoCJK-JP-Regular".freeze
         | 
| 35 | 
            +
                NOTO_HEBREW_REGULAR = "notoHebrew-Regular".freeze
         | 
| 36 | 
            +
                NOTO_SAN_THAI_MERGED = "notoSanThaiMerged".freeze
         | 
| 37 | 
            +
             | 
| 38 | 
            +
                # Builds the enum from string
         | 
| 39 | 
            +
                # @param [String] The enum value in the form of the string
         | 
| 40 | 
            +
                # @return [String] The enum value
         | 
| 41 | 
            +
                def self.build_from_hash(value)
         | 
| 42 | 
            +
                  new.build_from_hash(value)
         | 
| 43 | 
            +
                end
         | 
| 44 | 
            +
             | 
| 45 | 
            +
                # Builds the enum from string
         | 
| 46 | 
            +
                # @param [String] The enum value in the form of the string
         | 
| 47 | 
            +
                # @return [String] The enum value
         | 
| 48 | 
            +
                def build_from_hash(value)
         | 
| 49 | 
            +
                  constantValues = SubFormFieldsPerDocumentFontEnum.constants.select { |c| SubFormFieldsPerDocumentFontEnum::const_get(c) == value }
         | 
| 50 | 
            +
                  raise "Invalid ENUM value #{value} for class #SubFormFieldsPerDocumentFontEnum" if constantValues.empty?
         | 
| 51 | 
            +
                  value
         | 
| 52 | 
            +
                end
         | 
| 53 | 
            +
              end
         | 
| 54 | 
            +
            end
         |