Class: GroupDocs::Signature

Inherits:
Api::Entity show all
Includes:
Api::Helpers::MIME
Defined in:
lib/groupdocs/signature.rb,
lib/groupdocs/signature/shared/entity_fields.rb,
lib/groupdocs/signature/shared/field_methods.rb,
lib/groupdocs/signature/shared/entity_methods.rb,
lib/groupdocs/signature/shared/document_methods.rb,
lib/groupdocs/signature/shared/resource_methods.rb,
lib/groupdocs/signature/shared/recipient_methods.rb

Defined Under Namespace

Modules: DocumentMethods, EntityFields, EntityMethods, FieldMethods, RecipientMethods, ResourceMethods Classes: Contact, Envelope, Field, Form, List, Recipient, Role, Template

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Api::Entity

#initialize, #inspect, #to_hash

Methods included from Api::Helpers::Accessor

#alias_accessor

Constructor Details

This class inherits a constructor from GroupDocs::Api::Entity

Instance Attribute Details

#companyNameObject



146
147
148
# File 'lib/groupdocs/signature.rb', line 146

def companyName
  @companyName
end

#createdTimeStampObject



170
171
172
# File 'lib/groupdocs/signature.rb', line 170

def createdTimeStamp
  @createdTimeStamp
end

#firstNameObject



150
151
152
# File 'lib/groupdocs/signature.rb', line 150

def firstName
  @firstName
end

#fullNameObject



154
155
156
# File 'lib/groupdocs/signature.rb', line 154

def fullName
  @fullName
end

#idObject



138
139
140
# File 'lib/groupdocs/signature.rb', line 138

def id
  @id
end

#image_pathObject



172
173
174
# File 'lib/groupdocs/signature.rb', line 172

def image_path
  @image_path
end

#initialsDataObject



168
169
170
# File 'lib/groupdocs/signature.rb', line 168

def initialsData
  @initialsData
end

#initialsImageFileIdObject



160
161
162
# File 'lib/groupdocs/signature.rb', line 160

def initialsImageFileId
  @initialsImageFileId
end

#initialsImageUrlObject



164
165
166
# File 'lib/groupdocs/signature.rb', line 164

def initialsImageUrl
  @initialsImageUrl
end

#lastNameObject



152
153
154
# File 'lib/groupdocs/signature.rb', line 152

def lastName
  @lastName
end

#nameObject



144
145
146
# File 'lib/groupdocs/signature.rb', line 144

def name
  @name
end

#positionObject



148
149
150
# File 'lib/groupdocs/signature.rb', line 148

def position
  @position
end

#recipientIdObject



142
143
144
# File 'lib/groupdocs/signature.rb', line 142

def recipientId
  @recipientId
end

#signatureDataObject



166
167
168
# File 'lib/groupdocs/signature.rb', line 166

def signatureData
  @signatureData
end

#signatureImageFileIdObject



158
159
160
# File 'lib/groupdocs/signature.rb', line 158

def signatureImageFileId
  @signatureImageFileId
end

#signatureImageUrlObject



162
163
164
# File 'lib/groupdocs/signature.rb', line 162

def signatureImageUrl
  @signatureImageUrl
end

#textInitialsObject



156
157
158
# File 'lib/groupdocs/signature.rb', line 156

def textInitials
  @textInitials
end

#userGuidObject



140
141
142
# File 'lib/groupdocs/signature.rb', line 140

def userGuid
  @userGuid
end

Class Method Details

.get!(access = {}) ⇒ Array<GroupDocs::Signature>

Returns a list of all user signatures.

Parameters:

  • access (Hash) (defaults to: {})

    Access credentials

Options Hash (access):

  • :client_id (String)
  • :private_key (String)

Returns:



24
25
26
27
28
29
30
31
32
33
34
# 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

.get_for_recipient!(recipient, access = {}) ⇒ Array<GroupDocs::Signature>

This method deleted from GroupDocs API

Returns a list of all signatures for recipient.

Parameters:

Options Hash (access):

  • :client_id (String)
  • :private_key (String)

Returns:



119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
# 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_list!(access = {}) ⇒ Array<GroupDocs::Signature>

Get signature fields.

Parameters:

  • access (Hash) (defaults to: {})

    Access credentials

Options Hash (access):

  • :client_id (String)
  • :private_key (String)

Returns:



44
45
46
47
48
49
50
51
52
# 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

.sign_document_status!(job, options = {}, access = {}) ⇒ Array

Changed in release 1.5.8

Sign document

Parameters:

  • job (String)

    Job GUID

  • options (Hash) (defaults to: {})
  • access (Hash) (defaults to: {})

    Access credentials

  • [Boolean] (Hash)

    a customizable set of options

Options Hash (access):

  • :client_id (String)
  • :private_key (String)

Returns:

  • (Array)


94
95
96
97
98
99
100
101
102
103
104
# 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

.verify!(filepath, access = {}) ⇒ Array

Changed in release 1.5.8

Verify to document

Parameters:

  • path (String)

    Path to document GUID

  • settings (Hash)

    Settings of the signing document

  • access (Hash) (defaults to: {})

    Access credentials

Options Hash (access):

  • :client_id (String)
  • :private_key (String)

Returns:

  • (Array)


69
70
71
72
73
74
75
76
# 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

Instance Method Details

#create!(title, access = {}) ⇒ Object

Creates signature.

Examples:

signature = GroupDocs::Signature.new
signature.first_name = 'John'
signature.last_name = 'Smith'
signature.create! "John Smith's Signature"

Parameters:

  • title (String)

    Signature title

  • access (Hash) (defaults to: {})

    Access credentials

Options Hash (access):

  • :client_id (String)
  • :private_key (String)


205
206
207
208
209
210
211
212
213
214
215
216
# File 'lib/groupdocs/signature.rb', line 205

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

#create_for_recipient!(recipient, title, access = {}) ⇒ Object

This method deleted from GroupDocs API

Creates signature for recipient.

Parameters:

Options Hash (access):

  • :client_id (String)
  • :private_key (String)


230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
# File 'lib/groupdocs/signature.rb', line 230

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

#delete!(access = {}) ⇒ Object

Deletes signature.

Parameters:

  • access (Hash) (defaults to: {})

    Access credentials

Options Hash (access):

  • :client_id (String)
  • :private_key (String)


254
255
256
257
258
259
260
# File 'lib/groupdocs/signature.rb', line 254

def delete!(access = {})
  Api::Request.new do |request|
    request[:access] = access
    request[:method] = :DELETE
    request[:path] = "/signature/{{client_id}}/signatures/#{id}"
  end.execute!
end

#initials_data!(access = {}) ⇒ Object

This method deleted from GroupDocs API

Returns initials data.

Parameters:

  • access (Hash) (defaults to: {})

    Access credentials

Options Hash (access):

  • :client_id (String)
  • :private_key (String)


291
292
293
294
295
296
297
# File 'lib/groupdocs/signature.rb', line 291

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

#signature_data!(access = {}) ⇒ Object

This method deleted from GroupDocs API

Returns signature data.

Parameters:

  • access (Hash) (defaults to: {})

    Access credentials

Options Hash (access):

  • :client_id (String)
  • :private_key (String)


272
273
274
275
276
277
278
# File 'lib/groupdocs/signature.rb', line 272

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