class GroupDocs::Signature
Constants
- TEMPLATE_TYPES
added in release 1.6.0
Attributes
@attr [String] companyName
@attr [String] createdTimeStamp
@attr [String] email
@attr [String] firstName
@attr [String] fullName
@attr [String] id
@attr [String] image_path
@attr [String] initialsData
@attr [String] initialsImageFileId
@attr [String] initialsImageUrl
@attr [String] lastName
@attr [String] name
@attr [String] position
@attr [String] recipientId
@attr [String] signatureData
@attr [String] signatureImageFileId
@attr [String] signatureImageUrl
@attr [String] textInitials
@attr [String] userGuid
Public Class Methods
Returns a list of all user signatures.
@param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key @return [Array<GroupDocs::Signature>]
# File lib/groupdocs/signature.rb, line 24 def self.get!(access = {}) json = Api::Request.new do |request| request[:access] = access request[:method] = :GET request[:path] = '/signature/{{client_id}}/signatures' end.execute! json[:signatures].map do |signature| new(signature) end end
Added in release 1.6.0
Get user email template.
@param [String] path Path to save new file @param [String] name Name new file (file extension should be html) @param [Int] template_type Template
type @param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key @return [Array]
# File lib/groupdocs/signature.rb, line 362 def self.get_email_template!(path, name, template_type, access = {}) response = Api::Request.new do |request| request[:access] = access request[:method] = :DOWNLOAD request[:path] = "/signature/email-template/#{template_type}" end.execute! filepath = "#{path}/#{name}." Object::File.open(filepath, 'wb') do |file| file.write(response) end filepath end
This method deleted from GroupDocs
API
Returns a list of all signatures for recipient.
@param [GroupDocs::Signature::Recipient] recipient @param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key @return [Array<GroupDocs::Signature>]
# File lib/groupdocs/signature.rb, line 119 def self.get_for_recipient!(recipient, access = {}) recipient.is_a?(GroupDocs::Signature::Recipient) or raise ArgumentError, "Recipient should be GroupDocs::Signature::Recipient object, received: #{recipient.inspect}" api = Api::Request.new do |request| request[:access] = access request[:method] = :GET request[:path] = '/signature/public/signatures' end api.add_params(:recipientId => recipient.id) json = api.execute! json[:signatures].map do |signature| new(signature) end end
Get signature fields.
@param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key @return [Array<GroupDocs::Signature>]
# File lib/groupdocs/signature.rb, line 44 def self.get_list!( access = {}) json = Api::Request.new do |request| request[:access] = access request[:method] = :GET request[:path] = '/signature/{{client_id}}/fields' end.execute! json[:fields] end
Added in release 1.6.0
Get default email template.
@param [String] path Path to save new file @param [String] name Name new file (file extension should be html) @param [Int] template_type Template
type @param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key @return [Array]
# File lib/groupdocs/signature.rb, line 331 def self.public_get_default_email_template!(path, name, template_type, access = {}) response = Api::Request.new do |request| request[:access] = access request[:method] = :DOWNLOAD request[:path] = "/signature/public/email-template/#{template_type}/default" end.execute! filepath = "#{path}/#{name}." Object::File.open(filepath, 'wb') do |file| file.write(response) end filepath end
Changed in release 1.5.8
Sign document
@param [String] job Job
GUID @param [Hash] options @option [Boolean] :public @param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key @return [Array]
# File lib/groupdocs/signature.rb, line 94 def self.sign_document_status!(job, options = {}, access = {}) client_id = !!options[:public] ? 'public' : '{{client_id}}' json = Api::Request.new do |request| request[:access] = access request[:method] = :GET request[:path] = "/signature/#{client_id}/documents/#{job}/status" end.execute! Storage::File.new(:guid => json[:documents][0][:documentId]) end
Changed in release 1.5.8
Verify to document
@param [String] path Path to document GUID @param [Hash] settings Settings of the signing document @param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key @return [Array]
# File lib/groupdocs/signature.rb, line 69 def self.verify!(filepath, access = {}) Api::Request.new do |request| request[:access] = access request[:method] = :POST request[:path] = "/signature/public/verify" request[:request_body] = Object::File.new(filepath, 'rb') end.execute! end
Public Instance Methods
Creates signature.
@example
signature = GroupDocs::Signature.new signature.first_name = 'John' signature.last_name = 'Smith' signature.create! "John Smith's Signature"
@param [String] title Signature
title @param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key
# File lib/groupdocs/signature.rb, line 207 def create!(title, access = {}) api = Api::Request.new do |request| request[:access] = access request[:method] = :POST request[:path] = '/signature/{{client_id}}/signature' request[:request_body] = to_hash end api.add_params(:name => title) json = api.execute! self.id = json[:signature][:id] end
This method deleted from GroupDocs
API
Creates signature for recipient.
@param [GroupDocs::Signature::Recipient] recipient @param [String] title Signature
title @param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key
# File lib/groupdocs/signature.rb, line 232 def create_for_recipient!(recipient, title, access = {}) recipient.is_a?(GroupDocs::Signature::Recipient) or raise ArgumentError, "Recipient should be GroupDocs::Signature::Recipient object, received: #{recipient.inspect}" api = Api::Request.new do |request| request[:access] = access request[:method] = :POST request[:path] = '/signature/public/signature' request[:request_body] = to_hash end api.add_params(:name => title, :recipientId => recipient.id) json = api.execute! self.id = json[:signature][:id] end
Deletes signature.
@param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key
# File lib/groupdocs/signature.rb, line 256 def delete!(access = {}) Api::Request.new do |request| request[:access] = access request[:method] = :DELETE request[:path] = "/signature/{{client_id}}/signatures/#{id}" end.execute! end
This method deleted from GroupDocs
API
Returns initials data.
@param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key
# File lib/groupdocs/signature.rb, line 293 def initials_data!(access = {}) self.initials_data = Api::Request.new do |request| request[:access] = access request[:method] = :GET request[:path] = "/signature/public/signatures/signature/#{id}/initialsData" end.execute! end
This method deleted from GroupDocs
API
Returns signature data.
@param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key
# File lib/groupdocs/signature.rb, line 274 def signature_data!(access = {}) self.signature_data = Api::Request.new do |request| request[:access] = access request[:method] = :GET request[:path] = "/signature/public/signatures/signature/#{id}/signatureData" end.execute! end