-
Notifications
You must be signed in to change notification settings - Fork 19
/
eg006_embed_clickwrap_service.rb
83 lines (64 loc) · 2.51 KB
/
eg006_embed_clickwrap_service.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
# frozen_string_literal: true
class Clickwrap::Eg006EmbedClickwrapService
attr_reader :args
def initialize(args)
@args = args
end
def worker
# Step 2. Construct your API headers
#ds-snippet-start:Click6Step2
configuration = DocuSign_Click::Configuration.new
configuration.host = args[:base_path]
api_client = DocuSign_Click::ApiClient.new configuration
api_client.set_default_header('Authorization', "Bearer #{args[:access_token]}")
api_client.config.debugging = true
#ds-snippet-end:Click6Step2
#ds-snippet-start:Click6Step3
document_data = {
'fullName' => args[:full_name],
'email' => args[:email],
'company' => args[:company],
'title' => args[:title],
'date' => args[:date]
}
userAgreementRequest = DocuSign_Click::UserAgreementRequest.new({
clientUserId: args[:email],
documentData: document_data
})
#ds-snippet-end:Click6Step3
#ds-snippet-start:Click6Step4
accounts_api = DocuSign_Click::AccountsApi.new(api_client)
response = accounts_api.create_has_agreed(args[:account_id], args[:clickwrap_id], userAgreementRequest)
response.as_json
#ds-snippet-end:Click6Step4
end
def get_active_clickwraps
configuration = DocuSign_Click::Configuration.new
configuration.host = args[:ds_base_path]
api_client = DocuSign_Click::ApiClient.new configuration
api_client.set_default_header('Authorization', "Bearer #{args[:ds_access_token]}")
accounts_api = DocuSign_Click::AccountsApi.new(api_client)
options = DocuSign_Click::GetClickwrapsOptions.new
options.status = 'active'
results = accounts_api.get_clickwraps(
args[:ds_account_id],
options
)
puts results.as_json['clickwraps']
results.as_json['clickwraps']
end
def get_inactive_clickwraps
configuration = DocuSign_Click::Configuration.new
configuration.host = args[:ds_base_path]
api_client = DocuSign_Click::ApiClient.new configuration
api_client.set_default_header('Authorization', "Bearer #{args[:ds_access_token]}")
accounts_api = DocuSign_Click::AccountsApi.new(api_client)
options = DocuSign_Click::GetClickwrapsOptions.new
options.status = 'inactive'
results = accounts_api.get_clickwraps(
args[:ds_account_id],
options
)
results.as_json['clickwraps']
end
end