=begin #Dropbox Sign API #Dropbox Sign v3 API The version of the OpenAPI document: 3.0.0 Contact: apisupport@hellosign.com Generated by: https://openapi-generator.tech Generator version: 7.8.0 =end require 'cgi' module Dropbox end module Dropbox::Sign class UnclaimedDraftApi attr_accessor :api_client def initialize(api_client = ApiClient.default) @api_client = api_client end # Create Unclaimed Draft # Creates a new Draft that can be claimed using the claim URL. The first authenticated user to access the URL will claim the Draft and will be shown either the \"Sign and send\" or the \"Request signature\" page with the Draft loaded. Subsequent access to the claim URL will result in a 404. # @param unclaimed_draft_create_request [UnclaimedDraftCreateRequest] # @param [Hash] opts the optional parameters # @return [UnclaimedDraftCreateResponse] def unclaimed_draft_create(unclaimed_draft_create_request, opts = {}) data, _status_code, _headers = unclaimed_draft_create_with_http_info(unclaimed_draft_create_request, opts) data end # Create Unclaimed Draft # Creates a new Draft that can be claimed using the claim URL. The first authenticated user to access the URL will claim the Draft and will be shown either the \"Sign and send\" or the \"Request signature\" page with the Draft loaded. Subsequent access to the claim URL will result in a 404. # @param unclaimed_draft_create_request [UnclaimedDraftCreateRequest] # @param [Hash] opts the optional parameters # @return [Array<(UnclaimedDraftCreateResponse, Integer, Hash)>] UnclaimedDraftCreateResponse data, response status code and response headers def unclaimed_draft_create_with_http_info(unclaimed_draft_create_request, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: UnclaimedDraftApi.unclaimed_draft_create ...' end # verify the required parameter 'unclaimed_draft_create_request' is set if @api_client.config.client_side_validation && unclaimed_draft_create_request.nil? fail ArgumentError, "Missing the required parameter 'unclaimed_draft_create_request' when calling UnclaimedDraftApi.unclaimed_draft_create" end # resource path local_var_path = '/unclaimed_draft/create' # query parameters query_params = opts[:query_params] || {} # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept'] # HTTP header 'Content-Type' content_type = @api_client.select_header_content_type(['application/json', 'multipart/form-data']) if !content_type.nil? header_params['Content-Type'] = content_type end post_body = {} form_params = opts[:form_params] || {} result = @api_client.generate_form_data( unclaimed_draft_create_request, Dropbox::Sign::UnclaimedDraftCreateRequest.openapi_types ) # form parameters if result[:has_file] form_params = opts[:form_params] || result[:params] header_params['Content-Type'] = 'multipart/form-data' else # http body (model) post_body = opts[:debug_body] || result[:params] end # return_type return_type = opts[:debug_return_type] || 'UnclaimedDraftCreateResponse' # auth_names auth_names = opts[:debug_auth_names] || ['api_key', 'oauth2'] new_options = opts.merge( :operation => :"UnclaimedDraftApi.unclaimed_draft_create", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) begin data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options) rescue Dropbox::Sign::ApiError => e if e.code === 200 body = @api_client.convert_to_type( JSON.parse("[#{e.response_body}]", :symbolize_names => true)[0], "Dropbox::Sign::UnclaimedDraftCreateResponse" ) fail ApiError.new(:code => e.code, :response_headers => e.response_headers, :response_body => body), e.message end range_code = "4XX".split('').first range_code_left = "#{range_code}00".to_i range_code_right = "#{range_code}99".to_i if e.code >= range_code_left && e.code <= range_code_right body = @api_client.convert_to_type( JSON.parse("[#{e.response_body}]", :symbolize_names => true)[0], "Dropbox::Sign::ErrorResponse" ) fail ApiError.new(:code => e.code, :response_headers => e.response_headers, :response_body => body), e.message end end if @api_client.config.debugging @api_client.config.logger.debug "API called: UnclaimedDraftApi#unclaimed_draft_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Create Embedded Unclaimed Draft # Creates a new Draft that can be claimed and used in an embedded iFrame. The first authenticated user to access the URL will claim the Draft and will be shown the \"Request signature\" page with the Draft loaded. Subsequent access to the claim URL will result in a `404`. For this embedded endpoint the `requester_email_address` parameter is required. **NOTE:** Embedded unclaimed drafts can only be accessed in embedded iFrames whereas normal drafts can be used and accessed on Dropbox Sign. # @param unclaimed_draft_create_embedded_request [UnclaimedDraftCreateEmbeddedRequest] # @param [Hash] opts the optional parameters # @return [UnclaimedDraftCreateResponse] def unclaimed_draft_create_embedded(unclaimed_draft_create_embedded_request, opts = {}) data, _status_code, _headers = unclaimed_draft_create_embedded_with_http_info(unclaimed_draft_create_embedded_request, opts) data end # Create Embedded Unclaimed Draft # Creates a new Draft that can be claimed and used in an embedded iFrame. The first authenticated user to access the URL will claim the Draft and will be shown the \"Request signature\" page with the Draft loaded. Subsequent access to the claim URL will result in a `404`. For this embedded endpoint the `requester_email_address` parameter is required. **NOTE:** Embedded unclaimed drafts can only be accessed in embedded iFrames whereas normal drafts can be used and accessed on Dropbox Sign. # @param unclaimed_draft_create_embedded_request [UnclaimedDraftCreateEmbeddedRequest] # @param [Hash] opts the optional parameters # @return [Array<(UnclaimedDraftCreateResponse, Integer, Hash)>] UnclaimedDraftCreateResponse data, response status code and response headers def unclaimed_draft_create_embedded_with_http_info(unclaimed_draft_create_embedded_request, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: UnclaimedDraftApi.unclaimed_draft_create_embedded ...' end # verify the required parameter 'unclaimed_draft_create_embedded_request' is set if @api_client.config.client_side_validation && unclaimed_draft_create_embedded_request.nil? fail ArgumentError, "Missing the required parameter 'unclaimed_draft_create_embedded_request' when calling UnclaimedDraftApi.unclaimed_draft_create_embedded" end # resource path local_var_path = '/unclaimed_draft/create_embedded' # query parameters query_params = opts[:query_params] || {} # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept'] # HTTP header 'Content-Type' content_type = @api_client.select_header_content_type(['application/json', 'multipart/form-data']) if !content_type.nil? header_params['Content-Type'] = content_type end post_body = {} form_params = opts[:form_params] || {} result = @api_client.generate_form_data( unclaimed_draft_create_embedded_request, Dropbox::Sign::UnclaimedDraftCreateEmbeddedRequest.openapi_types ) # form parameters if result[:has_file] form_params = opts[:form_params] || result[:params] header_params['Content-Type'] = 'multipart/form-data' else # http body (model) post_body = opts[:debug_body] || result[:params] end # return_type return_type = opts[:debug_return_type] || 'UnclaimedDraftCreateResponse' # auth_names auth_names = opts[:debug_auth_names] || ['api_key', 'oauth2'] new_options = opts.merge( :operation => :"UnclaimedDraftApi.unclaimed_draft_create_embedded", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) begin data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options) rescue Dropbox::Sign::ApiError => e if e.code === 200 body = @api_client.convert_to_type( JSON.parse("[#{e.response_body}]", :symbolize_names => true)[0], "Dropbox::Sign::UnclaimedDraftCreateResponse" ) fail ApiError.new(:code => e.code, :response_headers => e.response_headers, :response_body => body), e.message end range_code = "4XX".split('').first range_code_left = "#{range_code}00".to_i range_code_right = "#{range_code}99".to_i if e.code >= range_code_left && e.code <= range_code_right body = @api_client.convert_to_type( JSON.parse("[#{e.response_body}]", :symbolize_names => true)[0], "Dropbox::Sign::ErrorResponse" ) fail ApiError.new(:code => e.code, :response_headers => e.response_headers, :response_body => body), e.message end end if @api_client.config.debugging @api_client.config.logger.debug "API called: UnclaimedDraftApi#unclaimed_draft_create_embedded\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Create Embedded Unclaimed Draft with Template # Creates a new Draft with a previously saved template(s) that can be claimed and used in an embedded iFrame. The first authenticated user to access the URL will claim the Draft and will be shown the \"Request signature\" page with the Draft loaded. Subsequent access to the claim URL will result in a `404`. For this embedded endpoint the `requester_email_address` parameter is required. **NOTE:** Embedded unclaimed drafts can only be accessed in embedded iFrames whereas normal drafts can be used and accessed on Dropbox Sign. # @param unclaimed_draft_create_embedded_with_template_request [UnclaimedDraftCreateEmbeddedWithTemplateRequest] # @param [Hash] opts the optional parameters # @return [UnclaimedDraftCreateResponse] def unclaimed_draft_create_embedded_with_template(unclaimed_draft_create_embedded_with_template_request, opts = {}) data, _status_code, _headers = unclaimed_draft_create_embedded_with_template_with_http_info(unclaimed_draft_create_embedded_with_template_request, opts) data end # Create Embedded Unclaimed Draft with Template # Creates a new Draft with a previously saved template(s) that can be claimed and used in an embedded iFrame. The first authenticated user to access the URL will claim the Draft and will be shown the \"Request signature\" page with the Draft loaded. Subsequent access to the claim URL will result in a `404`. For this embedded endpoint the `requester_email_address` parameter is required. **NOTE:** Embedded unclaimed drafts can only be accessed in embedded iFrames whereas normal drafts can be used and accessed on Dropbox Sign. # @param unclaimed_draft_create_embedded_with_template_request [UnclaimedDraftCreateEmbeddedWithTemplateRequest] # @param [Hash] opts the optional parameters # @return [Array<(UnclaimedDraftCreateResponse, Integer, Hash)>] UnclaimedDraftCreateResponse data, response status code and response headers def unclaimed_draft_create_embedded_with_template_with_http_info(unclaimed_draft_create_embedded_with_template_request, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: UnclaimedDraftApi.unclaimed_draft_create_embedded_with_template ...' end # verify the required parameter 'unclaimed_draft_create_embedded_with_template_request' is set if @api_client.config.client_side_validation && unclaimed_draft_create_embedded_with_template_request.nil? fail ArgumentError, "Missing the required parameter 'unclaimed_draft_create_embedded_with_template_request' when calling UnclaimedDraftApi.unclaimed_draft_create_embedded_with_template" end # resource path local_var_path = '/unclaimed_draft/create_embedded_with_template' # query parameters query_params = opts[:query_params] || {} # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept'] # HTTP header 'Content-Type' content_type = @api_client.select_header_content_type(['application/json', 'multipart/form-data']) if !content_type.nil? header_params['Content-Type'] = content_type end post_body = {} form_params = opts[:form_params] || {} result = @api_client.generate_form_data( unclaimed_draft_create_embedded_with_template_request, Dropbox::Sign::UnclaimedDraftCreateEmbeddedWithTemplateRequest.openapi_types ) # form parameters if result[:has_file] form_params = opts[:form_params] || result[:params] header_params['Content-Type'] = 'multipart/form-data' else # http body (model) post_body = opts[:debug_body] || result[:params] end # return_type return_type = opts[:debug_return_type] || 'UnclaimedDraftCreateResponse' # auth_names auth_names = opts[:debug_auth_names] || ['api_key', 'oauth2'] new_options = opts.merge( :operation => :"UnclaimedDraftApi.unclaimed_draft_create_embedded_with_template", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) begin data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options) rescue Dropbox::Sign::ApiError => e if e.code === 200 body = @api_client.convert_to_type( JSON.parse("[#{e.response_body}]", :symbolize_names => true)[0], "Dropbox::Sign::UnclaimedDraftCreateResponse" ) fail ApiError.new(:code => e.code, :response_headers => e.response_headers, :response_body => body), e.message end range_code = "4XX".split('').first range_code_left = "#{range_code}00".to_i range_code_right = "#{range_code}99".to_i if e.code >= range_code_left && e.code <= range_code_right body = @api_client.convert_to_type( JSON.parse("[#{e.response_body}]", :symbolize_names => true)[0], "Dropbox::Sign::ErrorResponse" ) fail ApiError.new(:code => e.code, :response_headers => e.response_headers, :response_body => body), e.message end end if @api_client.config.debugging @api_client.config.logger.debug "API called: UnclaimedDraftApi#unclaimed_draft_create_embedded_with_template\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Edit and Resend Unclaimed Draft # Creates a new signature request from an embedded request that can be edited prior to being sent to the recipients. Parameter `test_mode` can be edited prior to request. Signers can be edited in embedded editor. Requester's email address will remain unchanged if `requester_email_address` parameter is not set. **NOTE:** Embedded unclaimed drafts can only be accessed in embedded iFrames whereas normal drafts can be used and accessed on Dropbox Sign. # @param signature_request_id [String] The ID of the signature request to edit and resend. # @param unclaimed_draft_edit_and_resend_request [UnclaimedDraftEditAndResendRequest] # @param [Hash] opts the optional parameters # @return [UnclaimedDraftCreateResponse] def unclaimed_draft_edit_and_resend(signature_request_id, unclaimed_draft_edit_and_resend_request, opts = {}) data, _status_code, _headers = unclaimed_draft_edit_and_resend_with_http_info(signature_request_id, unclaimed_draft_edit_and_resend_request, opts) data end # Edit and Resend Unclaimed Draft # Creates a new signature request from an embedded request that can be edited prior to being sent to the recipients. Parameter `test_mode` can be edited prior to request. Signers can be edited in embedded editor. Requester's email address will remain unchanged if `requester_email_address` parameter is not set. **NOTE:** Embedded unclaimed drafts can only be accessed in embedded iFrames whereas normal drafts can be used and accessed on Dropbox Sign. # @param signature_request_id [String] The ID of the signature request to edit and resend. # @param unclaimed_draft_edit_and_resend_request [UnclaimedDraftEditAndResendRequest] # @param [Hash] opts the optional parameters # @return [Array<(UnclaimedDraftCreateResponse, Integer, Hash)>] UnclaimedDraftCreateResponse data, response status code and response headers def unclaimed_draft_edit_and_resend_with_http_info(signature_request_id, unclaimed_draft_edit_and_resend_request, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: UnclaimedDraftApi.unclaimed_draft_edit_and_resend ...' end # verify the required parameter 'signature_request_id' is set if @api_client.config.client_side_validation && signature_request_id.nil? fail ArgumentError, "Missing the required parameter 'signature_request_id' when calling UnclaimedDraftApi.unclaimed_draft_edit_and_resend" end # verify the required parameter 'unclaimed_draft_edit_and_resend_request' is set if @api_client.config.client_side_validation && unclaimed_draft_edit_and_resend_request.nil? fail ArgumentError, "Missing the required parameter 'unclaimed_draft_edit_and_resend_request' when calling UnclaimedDraftApi.unclaimed_draft_edit_and_resend" end # resource path local_var_path = '/unclaimed_draft/edit_and_resend/{signature_request_id}'.sub('{' + 'signature_request_id' + '}', CGI.escape(signature_request_id.to_s)) # query parameters query_params = opts[:query_params] || {} # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept'] # HTTP header 'Content-Type' content_type = @api_client.select_header_content_type(['application/json']) if !content_type.nil? header_params['Content-Type'] = content_type end post_body = {} form_params = opts[:form_params] || {} result = @api_client.generate_form_data( unclaimed_draft_edit_and_resend_request, Dropbox::Sign::UnclaimedDraftEditAndResendRequest.openapi_types ) # form parameters if result[:has_file] form_params = opts[:form_params] || result[:params] header_params['Content-Type'] = 'multipart/form-data' else # http body (model) post_body = opts[:debug_body] || result[:params] end # return_type return_type = opts[:debug_return_type] || 'UnclaimedDraftCreateResponse' # auth_names auth_names = opts[:debug_auth_names] || ['api_key', 'oauth2'] new_options = opts.merge( :operation => :"UnclaimedDraftApi.unclaimed_draft_edit_and_resend", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) begin data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options) rescue Dropbox::Sign::ApiError => e if e.code === 200 body = @api_client.convert_to_type( JSON.parse("[#{e.response_body}]", :symbolize_names => true)[0], "Dropbox::Sign::UnclaimedDraftCreateResponse" ) fail ApiError.new(:code => e.code, :response_headers => e.response_headers, :response_body => body), e.message end range_code = "4XX".split('').first range_code_left = "#{range_code}00".to_i range_code_right = "#{range_code}99".to_i if e.code >= range_code_left && e.code <= range_code_right body = @api_client.convert_to_type( JSON.parse("[#{e.response_body}]", :symbolize_names => true)[0], "Dropbox::Sign::ErrorResponse" ) fail ApiError.new(:code => e.code, :response_headers => e.response_headers, :response_body => body), e.message end end if @api_client.config.debugging @api_client.config.logger.debug "API called: UnclaimedDraftApi#unclaimed_draft_edit_and_resend\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end end end