Sha256: c798335ccca8ec7875b29769e5c5c7bfdc62689093275975936ead80e4ce6ec9
Contents?: true
Size: 1.15 KB
Versions: 3
Compression:
Stored size: 1.15 KB
Contents
module Clicksign module API class Document extend Requests REQUEST_PATH = '/api/v1/documents/' ATTRIBUTES = [:path, :deadline_at, :auto_close, :locale, :content_base64] class << self def create(token:, params: {}) post(REQUEST_PATH, body(params), token) end def find(token:, params:) params = params.transform_keys(&:to_sym) get(REQUEST_PATH + params[:key], token) end def cancel(token:, params: {}) params = params.transform_keys(&:to_sym) patch("#{REQUEST_PATH}#{params[:key]}/cancel", body(params), token) end def body(params) params = params.transform_keys(&:to_sym) document = ATTRIBUTES.each.with_object({}) do |attribute, hash| hash[attribute] = params[attribute] if params.has_key?(attribute) end if params.has_key?(:file) content_base64 = Base64.encode64(File.read(params[:file])) document[:content_base64] = "data:application/pdf;base64,#{content_base64}" end body = { document: document } end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
clicksign-api-1.1.8.alpha | lib/clicksign/api/document.rb |
clicksign-api-1.1.7.alpha | lib/clicksign/api/document.rb |
clicksign-api-1.1.6.alpha | lib/clicksign/api/document.rb |