docusign_esign 3.5.0 → 3.6.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (31) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/docusign_esign-2.6.0.gem +0 -0
  4. data/docusign_esign-2.7.0.rc1.gem +0 -0
  5. data/docusign_esign-3.5.0.gem +0 -0
  6. data/lib/docusign_esign.rb +10 -0
  7. data/lib/docusign_esign/api/accounts_api.rb +556 -4
  8. data/lib/docusign_esign/api/envelopes_api.rb +56 -2
  9. data/lib/docusign_esign/models/account_settings_information.rb +20 -1
  10. data/lib/docusign_esign/models/account_signature.rb +497 -0
  11. data/lib/docusign_esign/models/account_signature_definition.rb +338 -0
  12. data/lib/docusign_esign/models/account_signatures_information.rb +187 -0
  13. data/lib/docusign_esign/models/correct_view_request.rb +14 -4
  14. data/lib/docusign_esign/models/in_person_signer.rb +11 -1
  15. data/lib/docusign_esign/models/notary_certificate.rb +869 -0
  16. data/lib/docusign_esign/models/notary_recipient.rb +1097 -0
  17. data/lib/docusign_esign/models/notary_seal.rb +983 -0
  18. data/lib/docusign_esign/models/recipients.rb +13 -1
  19. data/lib/docusign_esign/models/signature_group.rb +205 -0
  20. data/lib/docusign_esign/models/signature_group_def.rb +195 -0
  21. data/lib/docusign_esign/models/signature_user.rb +215 -0
  22. data/lib/docusign_esign/models/signature_user_def.rb +205 -0
  23. data/lib/docusign_esign/models/signer.rb +11 -1
  24. data/lib/docusign_esign/models/tabs.rb +25 -1
  25. data/lib/docusign_esign/models/template_recipients.rb +13 -1
  26. data/lib/docusign_esign/models/template_tabs.rb +25 -1
  27. data/lib/docusign_esign/models/user_account_management_granular_information.rb +20 -1
  28. data/lib/docusign_esign/models/witness.rb +11 -1
  29. data/lib/docusign_esign/version.rb +1 -1
  30. data/tests/Gemfile.lock +1 -1
  31. metadata +17 -4
@@ -0,0 +1,1097 @@
1
+ =begin
2
+ #DocuSign REST API
3
+
4
+ #The DocuSign REST API provides you with a powerful, convenient, and simple Web services API for interacting with DocuSign.
5
+
6
+ OpenAPI spec version: v2.1
7
+ Contact: devcenter@docusign.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.13-SNAPSHOT
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module DocuSign_eSign
16
+ class NotaryRecipient
17
+ # If a value is provided, the recipient must enter the value as the access code to view and sign the envelope. Maximum Length: 50 characters and it must conform to the account's access code format setting. If blank, but the signer `accessCode` property is set in the envelope, then that value is used. If blank and the signer `accessCode` property is not set, then the access code is not required.
18
+ attr_accessor :access_code
19
+
20
+ attr_accessor :access_code_metadata
21
+
22
+ # This Optional attribute indicates that the access code will be added to the email sent to the recipient; this nullifies the Security measure of Access Code on the recipient.
23
+ attr_accessor :add_access_code_to_email
24
+
25
+ #
26
+ attr_accessor :additional_notifications
27
+
28
+ attr_accessor :additional_notifications_metadata
29
+
30
+ #
31
+ attr_accessor :agent_can_edit_email
32
+
33
+ #
34
+ attr_accessor :agent_can_edit_name
35
+
36
+ #
37
+ attr_accessor :allow_system_override_for_locked_recipient
38
+
39
+ #
40
+ attr_accessor :auto_navigation
41
+
42
+ # Contains a URI for an endpoint that allows you to easily retrieve bulk recipient information.
43
+ attr_accessor :bulk_recipients_uri
44
+
45
+ # When set to **true**, specifies that the signer can perform the signing ceremony offline.
46
+ attr_accessor :can_sign_offline
47
+
48
+ # Specifies whether the recipient is embedded or remote. If the `clientUserId` property is not null then the recipient is embedded. Note that if the `ClientUserId` property is set and either `SignerMustHaveAccount` or `SignerMustLoginToSign` property of the account settings is set to **true**, an error is generated on sending.ng. Maximum length: 100 characters.
49
+ attr_accessor :client_user_id
50
+
51
+ #
52
+ attr_accessor :completed_count
53
+
54
+ #
55
+ attr_accessor :creation_reason
56
+
57
+ # An optional array of strings that allows the sender to provide custom data about the recipient. This information is returned in the envelope status but otherwise not used by DocuSign. Each customField string can be a maximum of 100 characters.
58
+ attr_accessor :custom_fields
59
+
60
+ # The date and time the recipient declined the document.
61
+ attr_accessor :declined_date_time
62
+
63
+ # The reason the recipient declined the document.
64
+ attr_accessor :declined_reason
65
+
66
+ #
67
+ attr_accessor :default_recipient
68
+
69
+ # Reserved: For DocuSign use only.
70
+ attr_accessor :delivered_date_time
71
+
72
+ # Reserved: For DocuSign use only.
73
+ attr_accessor :delivery_method
74
+
75
+ attr_accessor :delivery_method_metadata
76
+
77
+ #
78
+ attr_accessor :designator_id
79
+
80
+ #
81
+ attr_accessor :designator_id_guid
82
+
83
+ #
84
+ attr_accessor :document_visibility
85
+
86
+ #
87
+ attr_accessor :email
88
+
89
+ attr_accessor :email_metadata
90
+
91
+ attr_accessor :email_notification
92
+
93
+ # Specifies a sender provided valid URL string for redirecting an embedded recipient. When using this option, the embedded recipient still receives an email from DocuSign, just as a remote recipient would. When the document link in the email is clicked the recipient is redirected, through DocuSign, to the supplied URL to complete their actions. When routing to the URL, the sender's system (the server responding to the URL) must request a recipient token to launch a signing session. If set to `SIGN_AT_DOCUSIGN`, the recipient is directed to an embedded signing or viewing process directly at DocuSign. The signing or viewing action is initiated by the DocuSign system and the transaction activity and Certificate of Completion records will reflect this. In all other ways the process is identical to an embedded signing or viewing operation that is launched by any partner. It is important to remember that in a typical embedded workflow the authentication of an embedded recipient is the responsibility of the sending application, DocuSign expects that senders will follow their own process for establishing the recipient's identity. In this workflow the recipient goes through the sending application before the embedded signing or viewing process in initiated. However, when the sending application sets `EmbeddedRecipientStartURL=SIGN_AT_DOCUSIGN`, the recipient goes directly to the embedded signing or viewing process bypassing the sending application and any authentication steps the sending application would use. In this case, DocuSign recommends that you use one of the normal DocuSign authentication features (Access Code, Phone Authentication, SMS Authentication, etc.) to verify the identity of the recipient. If the `clientUserId` property is NOT set, and the `embeddedRecipientStartURL` is set, DocuSign will ignore the redirect URL and launch the standard signing process for the email recipient. Information can be appended to the embedded recipient start URL using merge fields. The available merge fields items are: envelopeId, recipientId, recipientName, recipientEmail, and customFields. The `customFields` property must be set fort the recipient or envelope. The merge fields are enclosed in double brackets. *Example*: `http://senderHost/[[mergeField1]]/ beginSigningSession? [[mergeField2]]&[[mergeField3]]`
94
+ attr_accessor :embedded_recipient_start_url
95
+
96
+ attr_accessor :error_details
97
+
98
+ # Specifies the documents that are not visible to this recipient. Document Visibility must be enabled for the account and the `enforceSignerVisibility` property must be set to **true** for the envelope to use this. When enforce signer visibility is enabled, documents with tabs can only be viewed by signers that have a tab on that document. Recipients that have an administrative role (Agent, Editor, or Intermediaries) or informational role (Certified Deliveries or Carbon Copies) can always see all the documents in an envelope, unless they are specifically excluded using this setting when an envelope is sent. Documents that do not have tabs are always visible to all recipients, unless they are specifically excluded using this setting when an envelope is sent.
99
+ attr_accessor :excluded_documents
100
+
101
+ # Reserved:
102
+ attr_accessor :fax_number
103
+
104
+ attr_accessor :fax_number_metadata
105
+
106
+ # The user's first name. Maximum Length: 50 characters.
107
+ attr_accessor :first_name
108
+
109
+ attr_accessor :first_name_metadata
110
+
111
+ #
112
+ attr_accessor :full_name
113
+
114
+ attr_accessor :full_name_metadata
115
+
116
+ # Specifies authentication check by name. The names used here must be the same as the authentication type names used by the account (these name can also be found in the web console sending interface in the Identify list for a recipient,) This overrides any default authentication setting. *Example*: Your account has ID Check and SMS Authentication available and in the web console Identify list these appear as 'ID Check $' and 'SMS Auth $'. To use ID check in an envelope, the idCheckConfigurationName should be 'ID Check '. If you wanted to use SMS, it would be 'SMS Auth $' and you would need to add you would need to add phone number information to the `smsAuthentication` node.
117
+ attr_accessor :id_check_configuration_name
118
+
119
+ attr_accessor :id_check_configuration_name_metadata
120
+
121
+ attr_accessor :id_check_information_input
122
+
123
+ attr_accessor :identity_verification
124
+
125
+ # When set to **true** and the envelope recipient creates a DocuSign account after signing, the Manage Account Email Notification settings are used as the default settings for the recipient's account.
126
+ attr_accessor :inherit_email_notification_configuration
127
+
128
+ #
129
+ attr_accessor :is_bulk_recipient
130
+
131
+ attr_accessor :is_bulk_recipient_metadata
132
+
133
+ #
134
+ attr_accessor :last_name
135
+
136
+ attr_accessor :last_name_metadata
137
+
138
+ #
139
+ attr_accessor :locked_recipient_phone_auth_editable
140
+
141
+ #
142
+ attr_accessor :locked_recipient_sms_editable
143
+
144
+ #
145
+ attr_accessor :name
146
+
147
+ attr_accessor :name_metadata
148
+
149
+ #
150
+ attr_accessor :notary_id
151
+
152
+ #
153
+ attr_accessor :notary_signers
154
+
155
+ #
156
+ attr_accessor :notary_type
157
+
158
+ # Specifies a note that is unique to this recipient. This note is sent to the recipient via the signing email. The note displays in the signing UI near the upper left corner of the document on the signing screen. Maximum Length: 1000 characters.
159
+ attr_accessor :note
160
+
161
+ attr_accessor :note_metadata
162
+
163
+ attr_accessor :offline_attributes
164
+
165
+ attr_accessor :phone_authentication
166
+
167
+ attr_accessor :proof_file
168
+
169
+ # Reserved:
170
+ attr_accessor :recipient_attachments
171
+
172
+ attr_accessor :recipient_authentication_status
173
+
174
+ #
175
+ attr_accessor :recipient_feature_metadata
176
+
177
+ # Unique for the recipient. It is used by the tab element to indicate which recipient is to sign the Document.
178
+ attr_accessor :recipient_id
179
+
180
+ #
181
+ attr_accessor :recipient_id_guid
182
+
183
+ #
184
+ attr_accessor :recipient_signature_providers
185
+
186
+ #
187
+ attr_accessor :recipient_supplies_tabs
188
+
189
+ #
190
+ attr_accessor :recipient_type
191
+
192
+ attr_accessor :recipient_type_metadata
193
+
194
+ # When set to **true**, the recipient is required to use the specified ID check method (including Phone and SMS authentication) to validate their identity.
195
+ attr_accessor :require_id_lookup
196
+
197
+ attr_accessor :require_id_lookup_metadata
198
+
199
+ #
200
+ attr_accessor :require_signer_certificate
201
+
202
+ #
203
+ attr_accessor :require_sign_on_paper
204
+
205
+ #
206
+ attr_accessor :require_upload_signature
207
+
208
+ # Optional element. Specifies the role name associated with the recipient.<br/><br/>This is required when working with template recipients.
209
+ attr_accessor :role_name
210
+
211
+ # Specifies the routing order of the recipient in the envelope.
212
+ attr_accessor :routing_order
213
+
214
+ attr_accessor :routing_order_metadata
215
+
216
+ # The date and time the envelope was sent.
217
+ attr_accessor :sent_date_time
218
+
219
+ attr_accessor :signature_info
220
+
221
+ # Reserved: For DocuSign use only.
222
+ attr_accessor :signed_date_time
223
+
224
+ # When set to **true**, specifies that the signer must sign in all locations.
225
+ attr_accessor :sign_in_each_location
226
+
227
+ attr_accessor :sign_in_each_location_metadata
228
+
229
+ # When set to **true** and the feature is enabled in the sender's account, the signing recipient is required to draw signatures and initials at each signature/initial tab ( instead of adopting a signature/initial style or only drawing a signature/initial once).
230
+ attr_accessor :signing_group_id
231
+
232
+ attr_accessor :signing_group_id_metadata
233
+
234
+ # The display name for the signing group. Maximum Length: 100 characters.
235
+ attr_accessor :signing_group_name
236
+
237
+ # A complex type that contains information about users in the signing group.
238
+ attr_accessor :signing_group_users
239
+
240
+ attr_accessor :sms_authentication
241
+
242
+ # Lists the social ID type that can be used for recipient authentication.
243
+ attr_accessor :social_authentications
244
+
245
+ # Indicates the envelope status. Valid values are: * sent - The envelope is sent to the recipients. * created - The envelope is saved as a draft and can be modified and sent later.
246
+ attr_accessor :status
247
+
248
+ #
249
+ attr_accessor :status_code
250
+
251
+ #
252
+ attr_accessor :suppress_emails
253
+
254
+ attr_accessor :tabs
255
+
256
+ # When set to **true**, the sender cannot change any attributes of the recipient. Used only when working with template recipients.
257
+ attr_accessor :template_locked
258
+
259
+ # When set to **true**, the sender may not remove the recipient. Used only when working with template recipients.
260
+ attr_accessor :template_required
261
+
262
+ #
263
+ attr_accessor :total_tab_count
264
+
265
+ #
266
+ attr_accessor :user_id
267
+
268
+ # Attribute mapping from ruby-style variable name to JSON key.
269
+ def self.attribute_map
270
+ {
271
+ :'access_code' => :'accessCode',
272
+ :'access_code_metadata' => :'accessCodeMetadata',
273
+ :'add_access_code_to_email' => :'addAccessCodeToEmail',
274
+ :'additional_notifications' => :'additionalNotifications',
275
+ :'additional_notifications_metadata' => :'additionalNotificationsMetadata',
276
+ :'agent_can_edit_email' => :'agentCanEditEmail',
277
+ :'agent_can_edit_name' => :'agentCanEditName',
278
+ :'allow_system_override_for_locked_recipient' => :'allowSystemOverrideForLockedRecipient',
279
+ :'auto_navigation' => :'autoNavigation',
280
+ :'bulk_recipients_uri' => :'bulkRecipientsUri',
281
+ :'can_sign_offline' => :'canSignOffline',
282
+ :'client_user_id' => :'clientUserId',
283
+ :'completed_count' => :'completedCount',
284
+ :'creation_reason' => :'creationReason',
285
+ :'custom_fields' => :'customFields',
286
+ :'declined_date_time' => :'declinedDateTime',
287
+ :'declined_reason' => :'declinedReason',
288
+ :'default_recipient' => :'defaultRecipient',
289
+ :'delivered_date_time' => :'deliveredDateTime',
290
+ :'delivery_method' => :'deliveryMethod',
291
+ :'delivery_method_metadata' => :'deliveryMethodMetadata',
292
+ :'designator_id' => :'designatorId',
293
+ :'designator_id_guid' => :'designatorIdGuid',
294
+ :'document_visibility' => :'documentVisibility',
295
+ :'email' => :'email',
296
+ :'email_metadata' => :'emailMetadata',
297
+ :'email_notification' => :'emailNotification',
298
+ :'embedded_recipient_start_url' => :'embeddedRecipientStartURL',
299
+ :'error_details' => :'errorDetails',
300
+ :'excluded_documents' => :'excludedDocuments',
301
+ :'fax_number' => :'faxNumber',
302
+ :'fax_number_metadata' => :'faxNumberMetadata',
303
+ :'first_name' => :'firstName',
304
+ :'first_name_metadata' => :'firstNameMetadata',
305
+ :'full_name' => :'fullName',
306
+ :'full_name_metadata' => :'fullNameMetadata',
307
+ :'id_check_configuration_name' => :'idCheckConfigurationName',
308
+ :'id_check_configuration_name_metadata' => :'idCheckConfigurationNameMetadata',
309
+ :'id_check_information_input' => :'idCheckInformationInput',
310
+ :'identity_verification' => :'identityVerification',
311
+ :'inherit_email_notification_configuration' => :'inheritEmailNotificationConfiguration',
312
+ :'is_bulk_recipient' => :'isBulkRecipient',
313
+ :'is_bulk_recipient_metadata' => :'isBulkRecipientMetadata',
314
+ :'last_name' => :'lastName',
315
+ :'last_name_metadata' => :'lastNameMetadata',
316
+ :'locked_recipient_phone_auth_editable' => :'lockedRecipientPhoneAuthEditable',
317
+ :'locked_recipient_sms_editable' => :'lockedRecipientSmsEditable',
318
+ :'name' => :'name',
319
+ :'name_metadata' => :'nameMetadata',
320
+ :'notary_id' => :'notaryId',
321
+ :'notary_signers' => :'notarySigners',
322
+ :'notary_type' => :'notaryType',
323
+ :'note' => :'note',
324
+ :'note_metadata' => :'noteMetadata',
325
+ :'offline_attributes' => :'offlineAttributes',
326
+ :'phone_authentication' => :'phoneAuthentication',
327
+ :'proof_file' => :'proofFile',
328
+ :'recipient_attachments' => :'recipientAttachments',
329
+ :'recipient_authentication_status' => :'recipientAuthenticationStatus',
330
+ :'recipient_feature_metadata' => :'recipientFeatureMetadata',
331
+ :'recipient_id' => :'recipientId',
332
+ :'recipient_id_guid' => :'recipientIdGuid',
333
+ :'recipient_signature_providers' => :'recipientSignatureProviders',
334
+ :'recipient_supplies_tabs' => :'recipientSuppliesTabs',
335
+ :'recipient_type' => :'recipientType',
336
+ :'recipient_type_metadata' => :'recipientTypeMetadata',
337
+ :'require_id_lookup' => :'requireIdLookup',
338
+ :'require_id_lookup_metadata' => :'requireIdLookupMetadata',
339
+ :'require_signer_certificate' => :'requireSignerCertificate',
340
+ :'require_sign_on_paper' => :'requireSignOnPaper',
341
+ :'require_upload_signature' => :'requireUploadSignature',
342
+ :'role_name' => :'roleName',
343
+ :'routing_order' => :'routingOrder',
344
+ :'routing_order_metadata' => :'routingOrderMetadata',
345
+ :'sent_date_time' => :'sentDateTime',
346
+ :'signature_info' => :'signatureInfo',
347
+ :'signed_date_time' => :'signedDateTime',
348
+ :'sign_in_each_location' => :'signInEachLocation',
349
+ :'sign_in_each_location_metadata' => :'signInEachLocationMetadata',
350
+ :'signing_group_id' => :'signingGroupId',
351
+ :'signing_group_id_metadata' => :'signingGroupIdMetadata',
352
+ :'signing_group_name' => :'signingGroupName',
353
+ :'signing_group_users' => :'signingGroupUsers',
354
+ :'sms_authentication' => :'smsAuthentication',
355
+ :'social_authentications' => :'socialAuthentications',
356
+ :'status' => :'status',
357
+ :'status_code' => :'statusCode',
358
+ :'suppress_emails' => :'suppressEmails',
359
+ :'tabs' => :'tabs',
360
+ :'template_locked' => :'templateLocked',
361
+ :'template_required' => :'templateRequired',
362
+ :'total_tab_count' => :'totalTabCount',
363
+ :'user_id' => :'userId'
364
+ }
365
+ end
366
+
367
+ # Attribute type mapping.
368
+ def self.swagger_types
369
+ {
370
+ :'access_code' => :'String',
371
+ :'access_code_metadata' => :'PropertyMetadata',
372
+ :'add_access_code_to_email' => :'String',
373
+ :'additional_notifications' => :'Array<RecipientAdditionalNotification>',
374
+ :'additional_notifications_metadata' => :'PropertyMetadata',
375
+ :'agent_can_edit_email' => :'String',
376
+ :'agent_can_edit_name' => :'String',
377
+ :'allow_system_override_for_locked_recipient' => :'String',
378
+ :'auto_navigation' => :'String',
379
+ :'bulk_recipients_uri' => :'String',
380
+ :'can_sign_offline' => :'String',
381
+ :'client_user_id' => :'String',
382
+ :'completed_count' => :'String',
383
+ :'creation_reason' => :'String',
384
+ :'custom_fields' => :'Array<String>',
385
+ :'declined_date_time' => :'String',
386
+ :'declined_reason' => :'String',
387
+ :'default_recipient' => :'String',
388
+ :'delivered_date_time' => :'String',
389
+ :'delivery_method' => :'String',
390
+ :'delivery_method_metadata' => :'PropertyMetadata',
391
+ :'designator_id' => :'String',
392
+ :'designator_id_guid' => :'String',
393
+ :'document_visibility' => :'Array<DocumentVisibility>',
394
+ :'email' => :'String',
395
+ :'email_metadata' => :'PropertyMetadata',
396
+ :'email_notification' => :'RecipientEmailNotification',
397
+ :'embedded_recipient_start_url' => :'String',
398
+ :'error_details' => :'ErrorDetails',
399
+ :'excluded_documents' => :'Array<String>',
400
+ :'fax_number' => :'String',
401
+ :'fax_number_metadata' => :'PropertyMetadata',
402
+ :'first_name' => :'String',
403
+ :'first_name_metadata' => :'PropertyMetadata',
404
+ :'full_name' => :'String',
405
+ :'full_name_metadata' => :'PropertyMetadata',
406
+ :'id_check_configuration_name' => :'String',
407
+ :'id_check_configuration_name_metadata' => :'PropertyMetadata',
408
+ :'id_check_information_input' => :'IdCheckInformationInput',
409
+ :'identity_verification' => :'RecipientIdentityVerification',
410
+ :'inherit_email_notification_configuration' => :'String',
411
+ :'is_bulk_recipient' => :'String',
412
+ :'is_bulk_recipient_metadata' => :'PropertyMetadata',
413
+ :'last_name' => :'String',
414
+ :'last_name_metadata' => :'PropertyMetadata',
415
+ :'locked_recipient_phone_auth_editable' => :'String',
416
+ :'locked_recipient_sms_editable' => :'String',
417
+ :'name' => :'String',
418
+ :'name_metadata' => :'PropertyMetadata',
419
+ :'notary_id' => :'String',
420
+ :'notary_signers' => :'Array<String>',
421
+ :'notary_type' => :'String',
422
+ :'note' => :'String',
423
+ :'note_metadata' => :'PropertyMetadata',
424
+ :'offline_attributes' => :'OfflineAttributes',
425
+ :'phone_authentication' => :'RecipientPhoneAuthentication',
426
+ :'proof_file' => :'RecipientProofFile',
427
+ :'recipient_attachments' => :'Array<RecipientAttachment>',
428
+ :'recipient_authentication_status' => :'AuthenticationStatus',
429
+ :'recipient_feature_metadata' => :'Array<FeatureAvailableMetadata>',
430
+ :'recipient_id' => :'String',
431
+ :'recipient_id_guid' => :'String',
432
+ :'recipient_signature_providers' => :'Array<RecipientSignatureProvider>',
433
+ :'recipient_supplies_tabs' => :'String',
434
+ :'recipient_type' => :'String',
435
+ :'recipient_type_metadata' => :'PropertyMetadata',
436
+ :'require_id_lookup' => :'String',
437
+ :'require_id_lookup_metadata' => :'PropertyMetadata',
438
+ :'require_signer_certificate' => :'String',
439
+ :'require_sign_on_paper' => :'String',
440
+ :'require_upload_signature' => :'String',
441
+ :'role_name' => :'String',
442
+ :'routing_order' => :'String',
443
+ :'routing_order_metadata' => :'PropertyMetadata',
444
+ :'sent_date_time' => :'String',
445
+ :'signature_info' => :'RecipientSignatureInformation',
446
+ :'signed_date_time' => :'String',
447
+ :'sign_in_each_location' => :'String',
448
+ :'sign_in_each_location_metadata' => :'PropertyMetadata',
449
+ :'signing_group_id' => :'String',
450
+ :'signing_group_id_metadata' => :'PropertyMetadata',
451
+ :'signing_group_name' => :'String',
452
+ :'signing_group_users' => :'Array<UserInfo>',
453
+ :'sms_authentication' => :'RecipientSMSAuthentication',
454
+ :'social_authentications' => :'Array<SocialAuthentication>',
455
+ :'status' => :'String',
456
+ :'status_code' => :'String',
457
+ :'suppress_emails' => :'String',
458
+ :'tabs' => :'Tabs',
459
+ :'template_locked' => :'String',
460
+ :'template_required' => :'String',
461
+ :'total_tab_count' => :'String',
462
+ :'user_id' => :'String'
463
+ }
464
+ end
465
+
466
+ # Initializes the object
467
+ # @param [Hash] attributes Model attributes in the form of hash
468
+ def initialize(attributes = {})
469
+ return unless attributes.is_a?(Hash)
470
+
471
+ # convert string to symbol for hash key
472
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
473
+
474
+ if attributes.has_key?(:'accessCode')
475
+ self.access_code = attributes[:'accessCode']
476
+ end
477
+
478
+ if attributes.has_key?(:'accessCodeMetadata')
479
+ self.access_code_metadata = attributes[:'accessCodeMetadata']
480
+ end
481
+
482
+ if attributes.has_key?(:'addAccessCodeToEmail')
483
+ self.add_access_code_to_email = attributes[:'addAccessCodeToEmail']
484
+ end
485
+
486
+ if attributes.has_key?(:'additionalNotifications')
487
+ if (value = attributes[:'additionalNotifications']).is_a?(Array)
488
+ self.additional_notifications = value
489
+ end
490
+ end
491
+
492
+ if attributes.has_key?(:'additionalNotificationsMetadata')
493
+ self.additional_notifications_metadata = attributes[:'additionalNotificationsMetadata']
494
+ end
495
+
496
+ if attributes.has_key?(:'agentCanEditEmail')
497
+ self.agent_can_edit_email = attributes[:'agentCanEditEmail']
498
+ end
499
+
500
+ if attributes.has_key?(:'agentCanEditName')
501
+ self.agent_can_edit_name = attributes[:'agentCanEditName']
502
+ end
503
+
504
+ if attributes.has_key?(:'allowSystemOverrideForLockedRecipient')
505
+ self.allow_system_override_for_locked_recipient = attributes[:'allowSystemOverrideForLockedRecipient']
506
+ end
507
+
508
+ if attributes.has_key?(:'autoNavigation')
509
+ self.auto_navigation = attributes[:'autoNavigation']
510
+ end
511
+
512
+ if attributes.has_key?(:'bulkRecipientsUri')
513
+ self.bulk_recipients_uri = attributes[:'bulkRecipientsUri']
514
+ end
515
+
516
+ if attributes.has_key?(:'canSignOffline')
517
+ self.can_sign_offline = attributes[:'canSignOffline']
518
+ end
519
+
520
+ if attributes.has_key?(:'clientUserId')
521
+ self.client_user_id = attributes[:'clientUserId']
522
+ end
523
+
524
+ if attributes.has_key?(:'completedCount')
525
+ self.completed_count = attributes[:'completedCount']
526
+ end
527
+
528
+ if attributes.has_key?(:'creationReason')
529
+ self.creation_reason = attributes[:'creationReason']
530
+ end
531
+
532
+ if attributes.has_key?(:'customFields')
533
+ if (value = attributes[:'customFields']).is_a?(Array)
534
+ self.custom_fields = value
535
+ end
536
+ end
537
+
538
+ if attributes.has_key?(:'declinedDateTime')
539
+ self.declined_date_time = attributes[:'declinedDateTime']
540
+ end
541
+
542
+ if attributes.has_key?(:'declinedReason')
543
+ self.declined_reason = attributes[:'declinedReason']
544
+ end
545
+
546
+ if attributes.has_key?(:'defaultRecipient')
547
+ self.default_recipient = attributes[:'defaultRecipient']
548
+ end
549
+
550
+ if attributes.has_key?(:'deliveredDateTime')
551
+ self.delivered_date_time = attributes[:'deliveredDateTime']
552
+ end
553
+
554
+ if attributes.has_key?(:'deliveryMethod')
555
+ self.delivery_method = attributes[:'deliveryMethod']
556
+ end
557
+
558
+ if attributes.has_key?(:'deliveryMethodMetadata')
559
+ self.delivery_method_metadata = attributes[:'deliveryMethodMetadata']
560
+ end
561
+
562
+ if attributes.has_key?(:'designatorId')
563
+ self.designator_id = attributes[:'designatorId']
564
+ end
565
+
566
+ if attributes.has_key?(:'designatorIdGuid')
567
+ self.designator_id_guid = attributes[:'designatorIdGuid']
568
+ end
569
+
570
+ if attributes.has_key?(:'documentVisibility')
571
+ if (value = attributes[:'documentVisibility']).is_a?(Array)
572
+ self.document_visibility = value
573
+ end
574
+ end
575
+
576
+ if attributes.has_key?(:'email')
577
+ self.email = attributes[:'email']
578
+ end
579
+
580
+ if attributes.has_key?(:'emailMetadata')
581
+ self.email_metadata = attributes[:'emailMetadata']
582
+ end
583
+
584
+ if attributes.has_key?(:'emailNotification')
585
+ self.email_notification = attributes[:'emailNotification']
586
+ end
587
+
588
+ if attributes.has_key?(:'embeddedRecipientStartURL')
589
+ self.embedded_recipient_start_url = attributes[:'embeddedRecipientStartURL']
590
+ end
591
+
592
+ if attributes.has_key?(:'errorDetails')
593
+ self.error_details = attributes[:'errorDetails']
594
+ end
595
+
596
+ if attributes.has_key?(:'excludedDocuments')
597
+ if (value = attributes[:'excludedDocuments']).is_a?(Array)
598
+ self.excluded_documents = value
599
+ end
600
+ end
601
+
602
+ if attributes.has_key?(:'faxNumber')
603
+ self.fax_number = attributes[:'faxNumber']
604
+ end
605
+
606
+ if attributes.has_key?(:'faxNumberMetadata')
607
+ self.fax_number_metadata = attributes[:'faxNumberMetadata']
608
+ end
609
+
610
+ if attributes.has_key?(:'firstName')
611
+ self.first_name = attributes[:'firstName']
612
+ end
613
+
614
+ if attributes.has_key?(:'firstNameMetadata')
615
+ self.first_name_metadata = attributes[:'firstNameMetadata']
616
+ end
617
+
618
+ if attributes.has_key?(:'fullName')
619
+ self.full_name = attributes[:'fullName']
620
+ end
621
+
622
+ if attributes.has_key?(:'fullNameMetadata')
623
+ self.full_name_metadata = attributes[:'fullNameMetadata']
624
+ end
625
+
626
+ if attributes.has_key?(:'idCheckConfigurationName')
627
+ self.id_check_configuration_name = attributes[:'idCheckConfigurationName']
628
+ end
629
+
630
+ if attributes.has_key?(:'idCheckConfigurationNameMetadata')
631
+ self.id_check_configuration_name_metadata = attributes[:'idCheckConfigurationNameMetadata']
632
+ end
633
+
634
+ if attributes.has_key?(:'idCheckInformationInput')
635
+ self.id_check_information_input = attributes[:'idCheckInformationInput']
636
+ end
637
+
638
+ if attributes.has_key?(:'identityVerification')
639
+ self.identity_verification = attributes[:'identityVerification']
640
+ end
641
+
642
+ if attributes.has_key?(:'inheritEmailNotificationConfiguration')
643
+ self.inherit_email_notification_configuration = attributes[:'inheritEmailNotificationConfiguration']
644
+ end
645
+
646
+ if attributes.has_key?(:'isBulkRecipient')
647
+ self.is_bulk_recipient = attributes[:'isBulkRecipient']
648
+ end
649
+
650
+ if attributes.has_key?(:'isBulkRecipientMetadata')
651
+ self.is_bulk_recipient_metadata = attributes[:'isBulkRecipientMetadata']
652
+ end
653
+
654
+ if attributes.has_key?(:'lastName')
655
+ self.last_name = attributes[:'lastName']
656
+ end
657
+
658
+ if attributes.has_key?(:'lastNameMetadata')
659
+ self.last_name_metadata = attributes[:'lastNameMetadata']
660
+ end
661
+
662
+ if attributes.has_key?(:'lockedRecipientPhoneAuthEditable')
663
+ self.locked_recipient_phone_auth_editable = attributes[:'lockedRecipientPhoneAuthEditable']
664
+ end
665
+
666
+ if attributes.has_key?(:'lockedRecipientSmsEditable')
667
+ self.locked_recipient_sms_editable = attributes[:'lockedRecipientSmsEditable']
668
+ end
669
+
670
+ if attributes.has_key?(:'name')
671
+ self.name = attributes[:'name']
672
+ end
673
+
674
+ if attributes.has_key?(:'nameMetadata')
675
+ self.name_metadata = attributes[:'nameMetadata']
676
+ end
677
+
678
+ if attributes.has_key?(:'notaryId')
679
+ self.notary_id = attributes[:'notaryId']
680
+ end
681
+
682
+ if attributes.has_key?(:'notarySigners')
683
+ if (value = attributes[:'notarySigners']).is_a?(Array)
684
+ self.notary_signers = value
685
+ end
686
+ end
687
+
688
+ if attributes.has_key?(:'notaryType')
689
+ self.notary_type = attributes[:'notaryType']
690
+ end
691
+
692
+ if attributes.has_key?(:'note')
693
+ self.note = attributes[:'note']
694
+ end
695
+
696
+ if attributes.has_key?(:'noteMetadata')
697
+ self.note_metadata = attributes[:'noteMetadata']
698
+ end
699
+
700
+ if attributes.has_key?(:'offlineAttributes')
701
+ self.offline_attributes = attributes[:'offlineAttributes']
702
+ end
703
+
704
+ if attributes.has_key?(:'phoneAuthentication')
705
+ self.phone_authentication = attributes[:'phoneAuthentication']
706
+ end
707
+
708
+ if attributes.has_key?(:'proofFile')
709
+ self.proof_file = attributes[:'proofFile']
710
+ end
711
+
712
+ if attributes.has_key?(:'recipientAttachments')
713
+ if (value = attributes[:'recipientAttachments']).is_a?(Array)
714
+ self.recipient_attachments = value
715
+ end
716
+ end
717
+
718
+ if attributes.has_key?(:'recipientAuthenticationStatus')
719
+ self.recipient_authentication_status = attributes[:'recipientAuthenticationStatus']
720
+ end
721
+
722
+ if attributes.has_key?(:'recipientFeatureMetadata')
723
+ if (value = attributes[:'recipientFeatureMetadata']).is_a?(Array)
724
+ self.recipient_feature_metadata = value
725
+ end
726
+ end
727
+
728
+ if attributes.has_key?(:'recipientId')
729
+ self.recipient_id = attributes[:'recipientId']
730
+ end
731
+
732
+ if attributes.has_key?(:'recipientIdGuid')
733
+ self.recipient_id_guid = attributes[:'recipientIdGuid']
734
+ end
735
+
736
+ if attributes.has_key?(:'recipientSignatureProviders')
737
+ if (value = attributes[:'recipientSignatureProviders']).is_a?(Array)
738
+ self.recipient_signature_providers = value
739
+ end
740
+ end
741
+
742
+ if attributes.has_key?(:'recipientSuppliesTabs')
743
+ self.recipient_supplies_tabs = attributes[:'recipientSuppliesTabs']
744
+ end
745
+
746
+ if attributes.has_key?(:'recipientType')
747
+ self.recipient_type = attributes[:'recipientType']
748
+ end
749
+
750
+ if attributes.has_key?(:'recipientTypeMetadata')
751
+ self.recipient_type_metadata = attributes[:'recipientTypeMetadata']
752
+ end
753
+
754
+ if attributes.has_key?(:'requireIdLookup')
755
+ self.require_id_lookup = attributes[:'requireIdLookup']
756
+ end
757
+
758
+ if attributes.has_key?(:'requireIdLookupMetadata')
759
+ self.require_id_lookup_metadata = attributes[:'requireIdLookupMetadata']
760
+ end
761
+
762
+ if attributes.has_key?(:'requireSignerCertificate')
763
+ self.require_signer_certificate = attributes[:'requireSignerCertificate']
764
+ end
765
+
766
+ if attributes.has_key?(:'requireSignOnPaper')
767
+ self.require_sign_on_paper = attributes[:'requireSignOnPaper']
768
+ end
769
+
770
+ if attributes.has_key?(:'requireUploadSignature')
771
+ self.require_upload_signature = attributes[:'requireUploadSignature']
772
+ end
773
+
774
+ if attributes.has_key?(:'roleName')
775
+ self.role_name = attributes[:'roleName']
776
+ end
777
+
778
+ if attributes.has_key?(:'routingOrder')
779
+ self.routing_order = attributes[:'routingOrder']
780
+ end
781
+
782
+ if attributes.has_key?(:'routingOrderMetadata')
783
+ self.routing_order_metadata = attributes[:'routingOrderMetadata']
784
+ end
785
+
786
+ if attributes.has_key?(:'sentDateTime')
787
+ self.sent_date_time = attributes[:'sentDateTime']
788
+ end
789
+
790
+ if attributes.has_key?(:'signatureInfo')
791
+ self.signature_info = attributes[:'signatureInfo']
792
+ end
793
+
794
+ if attributes.has_key?(:'signedDateTime')
795
+ self.signed_date_time = attributes[:'signedDateTime']
796
+ end
797
+
798
+ if attributes.has_key?(:'signInEachLocation')
799
+ self.sign_in_each_location = attributes[:'signInEachLocation']
800
+ end
801
+
802
+ if attributes.has_key?(:'signInEachLocationMetadata')
803
+ self.sign_in_each_location_metadata = attributes[:'signInEachLocationMetadata']
804
+ end
805
+
806
+ if attributes.has_key?(:'signingGroupId')
807
+ self.signing_group_id = attributes[:'signingGroupId']
808
+ end
809
+
810
+ if attributes.has_key?(:'signingGroupIdMetadata')
811
+ self.signing_group_id_metadata = attributes[:'signingGroupIdMetadata']
812
+ end
813
+
814
+ if attributes.has_key?(:'signingGroupName')
815
+ self.signing_group_name = attributes[:'signingGroupName']
816
+ end
817
+
818
+ if attributes.has_key?(:'signingGroupUsers')
819
+ if (value = attributes[:'signingGroupUsers']).is_a?(Array)
820
+ self.signing_group_users = value
821
+ end
822
+ end
823
+
824
+ if attributes.has_key?(:'smsAuthentication')
825
+ self.sms_authentication = attributes[:'smsAuthentication']
826
+ end
827
+
828
+ if attributes.has_key?(:'socialAuthentications')
829
+ if (value = attributes[:'socialAuthentications']).is_a?(Array)
830
+ self.social_authentications = value
831
+ end
832
+ end
833
+
834
+ if attributes.has_key?(:'status')
835
+ self.status = attributes[:'status']
836
+ end
837
+
838
+ if attributes.has_key?(:'statusCode')
839
+ self.status_code = attributes[:'statusCode']
840
+ end
841
+
842
+ if attributes.has_key?(:'suppressEmails')
843
+ self.suppress_emails = attributes[:'suppressEmails']
844
+ end
845
+
846
+ if attributes.has_key?(:'tabs')
847
+ self.tabs = attributes[:'tabs']
848
+ end
849
+
850
+ if attributes.has_key?(:'templateLocked')
851
+ self.template_locked = attributes[:'templateLocked']
852
+ end
853
+
854
+ if attributes.has_key?(:'templateRequired')
855
+ self.template_required = attributes[:'templateRequired']
856
+ end
857
+
858
+ if attributes.has_key?(:'totalTabCount')
859
+ self.total_tab_count = attributes[:'totalTabCount']
860
+ end
861
+
862
+ if attributes.has_key?(:'userId')
863
+ self.user_id = attributes[:'userId']
864
+ end
865
+ end
866
+
867
+ # Show invalid properties with the reasons. Usually used together with valid?
868
+ # @return Array for valid properties with the reasons
869
+ def list_invalid_properties
870
+ invalid_properties = Array.new
871
+ invalid_properties
872
+ end
873
+
874
+ # Check to see if the all the properties in the model are valid
875
+ # @return true if the model is valid
876
+ def valid?
877
+ true
878
+ end
879
+
880
+ # Checks equality by comparing each attribute.
881
+ # @param [Object] Object to be compared
882
+ def ==(o)
883
+ return true if self.equal?(o)
884
+ self.class == o.class &&
885
+ access_code == o.access_code &&
886
+ access_code_metadata == o.access_code_metadata &&
887
+ add_access_code_to_email == o.add_access_code_to_email &&
888
+ additional_notifications == o.additional_notifications &&
889
+ additional_notifications_metadata == o.additional_notifications_metadata &&
890
+ agent_can_edit_email == o.agent_can_edit_email &&
891
+ agent_can_edit_name == o.agent_can_edit_name &&
892
+ allow_system_override_for_locked_recipient == o.allow_system_override_for_locked_recipient &&
893
+ auto_navigation == o.auto_navigation &&
894
+ bulk_recipients_uri == o.bulk_recipients_uri &&
895
+ can_sign_offline == o.can_sign_offline &&
896
+ client_user_id == o.client_user_id &&
897
+ completed_count == o.completed_count &&
898
+ creation_reason == o.creation_reason &&
899
+ custom_fields == o.custom_fields &&
900
+ declined_date_time == o.declined_date_time &&
901
+ declined_reason == o.declined_reason &&
902
+ default_recipient == o.default_recipient &&
903
+ delivered_date_time == o.delivered_date_time &&
904
+ delivery_method == o.delivery_method &&
905
+ delivery_method_metadata == o.delivery_method_metadata &&
906
+ designator_id == o.designator_id &&
907
+ designator_id_guid == o.designator_id_guid &&
908
+ document_visibility == o.document_visibility &&
909
+ email == o.email &&
910
+ email_metadata == o.email_metadata &&
911
+ email_notification == o.email_notification &&
912
+ embedded_recipient_start_url == o.embedded_recipient_start_url &&
913
+ error_details == o.error_details &&
914
+ excluded_documents == o.excluded_documents &&
915
+ fax_number == o.fax_number &&
916
+ fax_number_metadata == o.fax_number_metadata &&
917
+ first_name == o.first_name &&
918
+ first_name_metadata == o.first_name_metadata &&
919
+ full_name == o.full_name &&
920
+ full_name_metadata == o.full_name_metadata &&
921
+ id_check_configuration_name == o.id_check_configuration_name &&
922
+ id_check_configuration_name_metadata == o.id_check_configuration_name_metadata &&
923
+ id_check_information_input == o.id_check_information_input &&
924
+ identity_verification == o.identity_verification &&
925
+ inherit_email_notification_configuration == o.inherit_email_notification_configuration &&
926
+ is_bulk_recipient == o.is_bulk_recipient &&
927
+ is_bulk_recipient_metadata == o.is_bulk_recipient_metadata &&
928
+ last_name == o.last_name &&
929
+ last_name_metadata == o.last_name_metadata &&
930
+ locked_recipient_phone_auth_editable == o.locked_recipient_phone_auth_editable &&
931
+ locked_recipient_sms_editable == o.locked_recipient_sms_editable &&
932
+ name == o.name &&
933
+ name_metadata == o.name_metadata &&
934
+ notary_id == o.notary_id &&
935
+ notary_signers == o.notary_signers &&
936
+ notary_type == o.notary_type &&
937
+ note == o.note &&
938
+ note_metadata == o.note_metadata &&
939
+ offline_attributes == o.offline_attributes &&
940
+ phone_authentication == o.phone_authentication &&
941
+ proof_file == o.proof_file &&
942
+ recipient_attachments == o.recipient_attachments &&
943
+ recipient_authentication_status == o.recipient_authentication_status &&
944
+ recipient_feature_metadata == o.recipient_feature_metadata &&
945
+ recipient_id == o.recipient_id &&
946
+ recipient_id_guid == o.recipient_id_guid &&
947
+ recipient_signature_providers == o.recipient_signature_providers &&
948
+ recipient_supplies_tabs == o.recipient_supplies_tabs &&
949
+ recipient_type == o.recipient_type &&
950
+ recipient_type_metadata == o.recipient_type_metadata &&
951
+ require_id_lookup == o.require_id_lookup &&
952
+ require_id_lookup_metadata == o.require_id_lookup_metadata &&
953
+ require_signer_certificate == o.require_signer_certificate &&
954
+ require_sign_on_paper == o.require_sign_on_paper &&
955
+ require_upload_signature == o.require_upload_signature &&
956
+ role_name == o.role_name &&
957
+ routing_order == o.routing_order &&
958
+ routing_order_metadata == o.routing_order_metadata &&
959
+ sent_date_time == o.sent_date_time &&
960
+ signature_info == o.signature_info &&
961
+ signed_date_time == o.signed_date_time &&
962
+ sign_in_each_location == o.sign_in_each_location &&
963
+ sign_in_each_location_metadata == o.sign_in_each_location_metadata &&
964
+ signing_group_id == o.signing_group_id &&
965
+ signing_group_id_metadata == o.signing_group_id_metadata &&
966
+ signing_group_name == o.signing_group_name &&
967
+ signing_group_users == o.signing_group_users &&
968
+ sms_authentication == o.sms_authentication &&
969
+ social_authentications == o.social_authentications &&
970
+ status == o.status &&
971
+ status_code == o.status_code &&
972
+ suppress_emails == o.suppress_emails &&
973
+ tabs == o.tabs &&
974
+ template_locked == o.template_locked &&
975
+ template_required == o.template_required &&
976
+ total_tab_count == o.total_tab_count &&
977
+ user_id == o.user_id
978
+ end
979
+
980
+ # @see the `==` method
981
+ # @param [Object] Object to be compared
982
+ def eql?(o)
983
+ self == o
984
+ end
985
+
986
+ # Calculates hash code according to all attributes.
987
+ # @return [Fixnum] Hash code
988
+ def hash
989
+ [access_code, access_code_metadata, add_access_code_to_email, additional_notifications, additional_notifications_metadata, agent_can_edit_email, agent_can_edit_name, allow_system_override_for_locked_recipient, auto_navigation, bulk_recipients_uri, can_sign_offline, client_user_id, completed_count, creation_reason, custom_fields, declined_date_time, declined_reason, default_recipient, delivered_date_time, delivery_method, delivery_method_metadata, designator_id, designator_id_guid, document_visibility, email, email_metadata, email_notification, embedded_recipient_start_url, error_details, excluded_documents, fax_number, fax_number_metadata, first_name, first_name_metadata, full_name, full_name_metadata, id_check_configuration_name, id_check_configuration_name_metadata, id_check_information_input, identity_verification, inherit_email_notification_configuration, is_bulk_recipient, is_bulk_recipient_metadata, last_name, last_name_metadata, locked_recipient_phone_auth_editable, locked_recipient_sms_editable, name, name_metadata, notary_id, notary_signers, notary_type, note, note_metadata, offline_attributes, phone_authentication, proof_file, recipient_attachments, recipient_authentication_status, recipient_feature_metadata, recipient_id, recipient_id_guid, recipient_signature_providers, recipient_supplies_tabs, recipient_type, recipient_type_metadata, require_id_lookup, require_id_lookup_metadata, require_signer_certificate, require_sign_on_paper, require_upload_signature, role_name, routing_order, routing_order_metadata, sent_date_time, signature_info, signed_date_time, sign_in_each_location, sign_in_each_location_metadata, signing_group_id, signing_group_id_metadata, signing_group_name, signing_group_users, sms_authentication, social_authentications, status, status_code, suppress_emails, tabs, template_locked, template_required, total_tab_count, user_id].hash
990
+ end
991
+
992
+ # Builds the object from hash
993
+ # @param [Hash] attributes Model attributes in the form of hash
994
+ # @return [Object] Returns the model itself
995
+ def build_from_hash(attributes)
996
+ return nil unless attributes.is_a?(Hash)
997
+ self.class.swagger_types.each_pair do |key, type|
998
+ if type =~ /\AArray<(.*)>/i
999
+ # check to ensure the input is an array given that the attribute
1000
+ # is documented as an array but the input is not
1001
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
1002
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
1003
+ end
1004
+ elsif !attributes[self.class.attribute_map[key]].nil?
1005
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
1006
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
1007
+ end
1008
+
1009
+ self
1010
+ end
1011
+
1012
+ # Deserializes the data based on type
1013
+ # @param string type Data type
1014
+ # @param string value Value to be deserialized
1015
+ # @return [Object] Deserialized data
1016
+ def _deserialize(type, value)
1017
+ case type.to_sym
1018
+ when :DateTime
1019
+ DateTime.parse(value)
1020
+ when :Date
1021
+ Date.parse(value)
1022
+ when :String
1023
+ value.to_s
1024
+ when :Integer
1025
+ value.to_i
1026
+ when :Float
1027
+ value.to_f
1028
+ when :BOOLEAN
1029
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
1030
+ true
1031
+ else
1032
+ false
1033
+ end
1034
+ when :Object
1035
+ # generic object (usually a Hash), return directly
1036
+ value
1037
+ when /\AArray<(?<inner_type>.+)>\z/
1038
+ inner_type = Regexp.last_match[:inner_type]
1039
+ value.map { |v| _deserialize(inner_type, v) }
1040
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
1041
+ k_type = Regexp.last_match[:k_type]
1042
+ v_type = Regexp.last_match[:v_type]
1043
+ {}.tap do |hash|
1044
+ value.each do |k, v|
1045
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
1046
+ end
1047
+ end
1048
+ else # model
1049
+ temp_model = DocuSign_eSign.const_get(type).new
1050
+ temp_model.build_from_hash(value)
1051
+ end
1052
+ end
1053
+
1054
+ # Returns the string representation of the object
1055
+ # @return [String] String presentation of the object
1056
+ def to_s
1057
+ to_hash.to_s
1058
+ end
1059
+
1060
+ # to_body is an alias to to_hash (backward compatibility)
1061
+ # @return [Hash] Returns the object in the form of hash
1062
+ def to_body
1063
+ to_hash
1064
+ end
1065
+
1066
+ # Returns the object in the form of hash
1067
+ # @return [Hash] Returns the object in the form of hash
1068
+ def to_hash
1069
+ hash = {}
1070
+ self.class.attribute_map.each_pair do |attr, param|
1071
+ value = self.send(attr)
1072
+ next if value.nil?
1073
+ hash[param] = _to_hash(value)
1074
+ end
1075
+ hash
1076
+ end
1077
+
1078
+ # Outputs non-array value in the form of hash
1079
+ # For object, use to_hash. Otherwise, just return the value
1080
+ # @param [Object] value Any valid value
1081
+ # @return [Hash] Returns the value in the form of hash
1082
+ def _to_hash(value)
1083
+ if value.is_a?(Array)
1084
+ value.compact.map { |v| _to_hash(v) }
1085
+ elsif value.is_a?(Hash)
1086
+ {}.tap do |hash|
1087
+ value.each { |k, v| hash[k] = _to_hash(v) }
1088
+ end
1089
+ elsif value.respond_to? :to_hash
1090
+ value.to_hash
1091
+ else
1092
+ value
1093
+ end
1094
+ end
1095
+
1096
+ end
1097
+ end