Class: ContextIO::Account
- Inherits:
-
Object
- Object
- ContextIO::Account
show all
- Includes:
- CallHelpers
- Defined in:
- lib/context_io/account.rb
Constant Summary
collapse
- ACCOUNT_READERS =
I(username created suspended email_addresses first_name last_name
password_expired sources resource_url)
Instance Attribute Summary collapse
Instance Method Summary
collapse
-
#call_url ⇒ Object
-
#get_connect_tokens ⇒ Object
-
#get_contacts(**kwargs) ⇒ Object
-
#get_email_addresses ⇒ Object
-
#get_files(**kwargs) ⇒ Object
-
#get_messages(**kwargs) ⇒ Object
-
#get_sources(**kwargs) ⇒ Object
-
#get_sync ⇒ Object
-
#get_threads(**kwargs) ⇒ Object
-
#get_webhooks ⇒ Object
-
#initialize(parent:, identifier: nil, response: nil, status: nil, success: nil, api_call_made: nil) ⇒ Account
constructor
A new instance of Account.
-
#post(**kwargs) ⇒ Object
-
#post_connect_token(callback_url:, **kwargs) ⇒ Object
-
#post_email_address(email_address:) ⇒ Object
-
#post_source(email:, server:, username:, use_ssl:, port:, type: "IMAP", **kwargs) ⇒ Object
-
#post_webhook(callback_url:, failure_notif_url:, **kwargs) ⇒ Object
#build_url, #call_api_return_new_object, #call_api_return_updated_object, #delete, #get, #get_request, #parse_response, #return_post_api_call_made, #success?, #validate_params
#collection_return, #contact_collection_return
Constructor Details
#initialize(parent:, identifier: nil, response: nil, status: nil, success: nil, api_call_made: nil) ⇒ Account
Returns a new instance of Account.
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
# File 'lib/context_io/account.rb', line 14
def initialize(parent:,
identifier: nil,
response: nil,
status: nil,
success: nil,
api_call_made: nil)
@parent = parent
@connection = parent.connection
@id = identifier
@status = status
@success = success
@api_call_made = api_call_made
if response
parse_response(response)
end
end
|
Instance Attribute Details
#api_call_made ⇒ Object
Returns the value of attribute api_call_made.
12
13
14
|
# File 'lib/context_io/account.rb', line 12
def api_call_made
@api_call_made
end
|
Instance Method Details
#call_url ⇒ Object
31
32
33
|
# File 'lib/context_io/account.rb', line 31
def call_url
build_url("accounts", id)
end
|
#get_connect_tokens ⇒ Object
44
45
46
47
|
# File 'lib/context_io/account.rb', line 44
def get_connect_tokens
collection_return(url: "#{call_url}/connect_tokens",
klass: ConnectToken)
end
|
59
60
61
62
63
|
# File 'lib/context_io/account.rb', line 59
def get_contacts(**kwargs)
contact_collection_return(url: "#{call_url}/contacts",
valid_params: ValidGetParams::CONTACTS,
given_params: kwargs)
end
|
#get_email_addresses ⇒ Object
65
66
67
68
|
# File 'lib/context_io/account.rb', line 65
def get_email_addresses
collection_return(url: "#{call_url}/email_addresses",
klass: EmailAddress)
end
|
#get_files(**kwargs) ⇒ Object
80
81
82
83
84
85
|
# File 'lib/context_io/account.rb', line 80
def get_files(**kwargs)
collection_return(url: "#{call_url}/files",
klass: Files,
valid_params: ValidGetParams::FILES,
given_params: kwargs)
end
|
#get_messages(**kwargs) ⇒ Object
87
88
89
90
91
92
|
# File 'lib/context_io/account.rb', line 87
def get_messages(**kwargs)
collection_return(url: "#{call_url}/messages",
klass: Message,
valid_params: ValidGetParams::MESSAGES,
given_params: kwargs)
end
|
#get_sources(**kwargs) ⇒ Object
94
95
96
97
98
99
|
# File 'lib/context_io/account.rb', line 94
def get_sources(**kwargs)
collection_return(url: "#{call_url}/sources",
klass: Sources,
valid_params: ValidGetParams::SOURCES,
given_params: kwargs)
end
|
#get_sync ⇒ Object
116
117
118
|
# File 'lib/context_io/account.rb', line 116
def get_sync
Sync.new(parent: self).get
end
|
#get_threads(**kwargs) ⇒ Object
120
121
122
123
124
125
|
# File 'lib/context_io/account.rb', line 120
def get_threads(**kwargs)
call_api_return_new_object(klass: Threads,
url: "#{call_url}/threads",
valid_params: ValidGetParams::THREADS,
given_params: kwargs)
end
|
#get_webhooks ⇒ Object
127
128
129
130
|
# File 'lib/context_io/account.rb', line 127
def get_webhooks
collection_return(url: "#{call_url}/webhooks",
klass: Webhook)
end
|
#post(**kwargs) ⇒ Object
35
36
37
38
39
40
41
42
|
# File 'lib/context_io/account.rb', line 35
def post(**kwargs)
call_api_return_updated_object(klass: Account,
method: :post,
identifier: id,
url: call_url,
valid_params: ValidPostParams::ACCOUNT,
given_params: kwargs)
end
|
#post_connect_token(callback_url:, **kwargs) ⇒ Object
49
50
51
52
53
54
55
56
57
|
# File 'lib/context_io/account.rb', line 49
def post_connect_token(callback_url:, **kwargs)
given_params = kwargs.merge(callback_url: callback_url)
token = call_api_return_new_object(klass: ConnectToken,
url: "#{call_url}/connect_tokens",
method: :post,
valid_params: ValidPostParams::CONNECT_TOKEN,
given_params: given_params)
return_post_api_call_made(token)
end
|
#post_email_address(email_address:) ⇒ Object
70
71
72
73
74
75
76
77
78
|
# File 'lib/context_io/account.rb', line 70
def post_email_address(email_address:)
given_params = { email_address: email_address }
email = call_api_return_new_object(klass: EmailAddress,
url: "#{call_url}/email_addresses",
method: :post,
valid_params: [:email_address],
given_params: given_params)
return_post_api_call_made(email)
end
|
#post_source(email:, server:, username:, use_ssl:, port:, type: "IMAP", **kwargs) ⇒ Object
101
102
103
104
105
106
107
108
109
110
111
112
113
114
|
# File 'lib/context_io/account.rb', line 101
def post_source(email:, server:, username:, use_ssl:, port:, type: "IMAP", **kwargs)
given_params = kwargs.merge(email: email,
server: server,
username: username,
use_ssl: use_ssl,
port: port,
type: type)
token = call_api_return_new_object(klass: Sources,
url: "#{call_url}/sources",
method: :post,
valid_params: ValidPostParams::SOURCES,
given_params: given_params)
return_post_api_call_made(token)
end
|
#post_webhook(callback_url:, failure_notif_url:, **kwargs) ⇒ Object
132
133
134
135
136
137
138
139
140
141
|
# File 'lib/context_io/account.rb', line 132
def post_webhook(callback_url:, failure_notif_url:, **kwargs)
given_params = kwargs.merge(callback_url: callback_url,
failure_notif_url: failure_notif_url)
token = call_api_return_new_object(klass: Webhook,
url: "#{call_url}/webhooks",
method: :post,
valid_params: ValidPostParams::WEBHOOKS,
given_params: given_params)
return_post_api_call_made(token)
end
|