rcs 1.0.10
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/lib/environment.rb +7 -0
- data/lib/gemconfig.rb +14 -0
- data/lib/rcs/company/client.rb +416 -0
- data/lib/rcs/company/types/company_register_response.rb +63 -0
- data/lib/rcs/company/types/company_register_response_brand.rb +67 -0
- data/lib/rcs/company/types/company_update_response.rb +63 -0
- data/lib/rcs/company/types/company_update_response_brand.rb +67 -0
- data/lib/rcs/send/client.rb +343 -0
- data/lib/rcs/send/types/send_mms_response.rb +67 -0
- data/lib/rcs/send/types/send_rcs_response.rb +67 -0
- data/lib/rcs/send/types/send_sms_response.rb +67 -0
- data/lib/rcs/types/action.rb +146 -0
- data/lib/rcs/types/action_lat_long.rb +68 -0
- data/lib/rcs/types/action_type.rb +16 -0
- data/lib/rcs/types/additional_email.rb +65 -0
- data/lib/rcs/types/additional_phone_number.rb +65 -0
- data/lib/rcs/types/additional_website.rb +65 -0
- data/lib/rcs/types/bad_request_error_body.rb +57 -0
- data/lib/rcs/types/card.rb +90 -0
- data/lib/rcs/types/company.rb +268 -0
- data/lib/rcs/types/company_additional_emails_item.rb +67 -0
- data/lib/rcs/types/company_additional_phone_numbers_item.rb +67 -0
- data/lib/rcs/types/company_additional_websites_item.rb +67 -0
- data/lib/rcs/types/company_contact.rb +117 -0
- data/lib/rcs/types/company_details.rb +110 -0
- data/lib/rcs/types/forbidden_error_body.rb +57 -0
- data/lib/rcs/types/internal_server_error_body.rb +57 -0
- data/lib/rcs/types/optionals.rb +99 -0
- data/lib/rcs/types/point_of_contact.rb +72 -0
- data/lib/rcs/types/rcs_functionalities.rb +117 -0
- data/lib/rcs/types/unauthorized_error_body.rb +57 -0
- data/lib/rcs.rb +126 -0
- data/lib/requests.rb +163 -0
- data/lib/types_export.rb +29 -0
- metadata +158 -0
@@ -0,0 +1,268 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "date"
|
4
|
+
require_relative "company_additional_websites_item"
|
5
|
+
require_relative "company_additional_emails_item"
|
6
|
+
require_relative "company_additional_phone_numbers_item"
|
7
|
+
require "ostruct"
|
8
|
+
require "json"
|
9
|
+
|
10
|
+
module Pinnacle
|
11
|
+
class Company
|
12
|
+
# @return [Integer] The unique identifier for the company
|
13
|
+
attr_reader :id
|
14
|
+
# @return [DateTime] The date and time when the company was created
|
15
|
+
attr_reader :created_at
|
16
|
+
# @return [String] The name of the company
|
17
|
+
attr_reader :name
|
18
|
+
# @return [String] The address of the company
|
19
|
+
attr_reader :address
|
20
|
+
# @return [String] The Employer Identification Number (EIN) of the company
|
21
|
+
attr_reader :ein
|
22
|
+
# @return [String] A description of the company
|
23
|
+
attr_reader :description
|
24
|
+
# @return [String] The brand color of the company
|
25
|
+
attr_reader :brand_color
|
26
|
+
# @return [String] The URL of the company's logo
|
27
|
+
attr_reader :logo_url
|
28
|
+
# @return [String] The URL of the company's hero image
|
29
|
+
attr_reader :hero_url
|
30
|
+
# @return [String] The primary website URL of the company
|
31
|
+
attr_reader :primary_website_url
|
32
|
+
# @return [String] The label for the primary website URL
|
33
|
+
attr_reader :primary_website_label
|
34
|
+
# @return [String] The primary phone number of the company
|
35
|
+
attr_reader :primary_phone
|
36
|
+
# @return [String] The label for the primary phone number
|
37
|
+
attr_reader :primary_phone_label
|
38
|
+
# @return [String] The primary email address of the company
|
39
|
+
attr_reader :primary_email
|
40
|
+
# @return [String] The label for the primary email address
|
41
|
+
attr_reader :primary_email_label
|
42
|
+
# @return [String] The URL of the company's privacy policy
|
43
|
+
attr_reader :privacy_policy_url
|
44
|
+
# @return [String] The URL of the company's terms of service
|
45
|
+
attr_reader :tos_url
|
46
|
+
# @return [String] The name of the point of contact
|
47
|
+
attr_reader :poc_name
|
48
|
+
# @return [String] The title of the point of contact
|
49
|
+
attr_reader :poc_title
|
50
|
+
# @return [String] The email address of the point of contact
|
51
|
+
attr_reader :poc_email
|
52
|
+
# @return [Array<String>] A list of test phone numbers
|
53
|
+
attr_reader :test_numbers
|
54
|
+
# @return [String] The approval status of the company
|
55
|
+
attr_reader :status
|
56
|
+
# @return [Array<Pinnacle::CompanyAdditionalWebsitesItem>] A list of additional websites
|
57
|
+
attr_reader :additional_websites
|
58
|
+
# @return [Array<Pinnacle::CompanyAdditionalEmailsItem>] A list of additional email addresses
|
59
|
+
attr_reader :additional_emails
|
60
|
+
# @return [Array<Pinnacle::CompanyAdditionalPhoneNumbersItem>] A list of additional phone numbers
|
61
|
+
attr_reader :additional_phone_numbers
|
62
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
63
|
+
attr_reader :additional_properties
|
64
|
+
# @return [Object]
|
65
|
+
attr_reader :_field_set
|
66
|
+
protected :_field_set
|
67
|
+
|
68
|
+
OMIT = Object.new
|
69
|
+
|
70
|
+
# @param id [Integer] The unique identifier for the company
|
71
|
+
# @param created_at [DateTime] The date and time when the company was created
|
72
|
+
# @param name [String] The name of the company
|
73
|
+
# @param address [String] The address of the company
|
74
|
+
# @param ein [String] The Employer Identification Number (EIN) of the company
|
75
|
+
# @param description [String] A description of the company
|
76
|
+
# @param brand_color [String] The brand color of the company
|
77
|
+
# @param logo_url [String] The URL of the company's logo
|
78
|
+
# @param hero_url [String] The URL of the company's hero image
|
79
|
+
# @param primary_website_url [String] The primary website URL of the company
|
80
|
+
# @param primary_website_label [String] The label for the primary website URL
|
81
|
+
# @param primary_phone [String] The primary phone number of the company
|
82
|
+
# @param primary_phone_label [String] The label for the primary phone number
|
83
|
+
# @param primary_email [String] The primary email address of the company
|
84
|
+
# @param primary_email_label [String] The label for the primary email address
|
85
|
+
# @param privacy_policy_url [String] The URL of the company's privacy policy
|
86
|
+
# @param tos_url [String] The URL of the company's terms of service
|
87
|
+
# @param poc_name [String] The name of the point of contact
|
88
|
+
# @param poc_title [String] The title of the point of contact
|
89
|
+
# @param poc_email [String] The email address of the point of contact
|
90
|
+
# @param test_numbers [Array<String>] A list of test phone numbers
|
91
|
+
# @param status [String] The approval status of the company
|
92
|
+
# @param additional_websites [Array<Pinnacle::CompanyAdditionalWebsitesItem>] A list of additional websites
|
93
|
+
# @param additional_emails [Array<Pinnacle::CompanyAdditionalEmailsItem>] A list of additional email addresses
|
94
|
+
# @param additional_phone_numbers [Array<Pinnacle::CompanyAdditionalPhoneNumbersItem>] A list of additional phone numbers
|
95
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
96
|
+
# @return [Pinnacle::Company]
|
97
|
+
def initialize(id: OMIT, created_at: OMIT, name: OMIT, address: OMIT, ein: OMIT, description: OMIT,
|
98
|
+
brand_color: OMIT, logo_url: OMIT, hero_url: OMIT, primary_website_url: OMIT, primary_website_label: OMIT, primary_phone: OMIT, primary_phone_label: OMIT, primary_email: OMIT, primary_email_label: OMIT, privacy_policy_url: OMIT, tos_url: OMIT, poc_name: OMIT, poc_title: OMIT, poc_email: OMIT, test_numbers: OMIT, status: OMIT, additional_websites: OMIT, additional_emails: OMIT, additional_phone_numbers: OMIT, additional_properties: nil)
|
99
|
+
@id = id if id != OMIT
|
100
|
+
@created_at = created_at if created_at != OMIT
|
101
|
+
@name = name if name != OMIT
|
102
|
+
@address = address if address != OMIT
|
103
|
+
@ein = ein if ein != OMIT
|
104
|
+
@description = description if description != OMIT
|
105
|
+
@brand_color = brand_color if brand_color != OMIT
|
106
|
+
@logo_url = logo_url if logo_url != OMIT
|
107
|
+
@hero_url = hero_url if hero_url != OMIT
|
108
|
+
@primary_website_url = primary_website_url if primary_website_url != OMIT
|
109
|
+
@primary_website_label = primary_website_label if primary_website_label != OMIT
|
110
|
+
@primary_phone = primary_phone if primary_phone != OMIT
|
111
|
+
@primary_phone_label = primary_phone_label if primary_phone_label != OMIT
|
112
|
+
@primary_email = primary_email if primary_email != OMIT
|
113
|
+
@primary_email_label = primary_email_label if primary_email_label != OMIT
|
114
|
+
@privacy_policy_url = privacy_policy_url if privacy_policy_url != OMIT
|
115
|
+
@tos_url = tos_url if tos_url != OMIT
|
116
|
+
@poc_name = poc_name if poc_name != OMIT
|
117
|
+
@poc_title = poc_title if poc_title != OMIT
|
118
|
+
@poc_email = poc_email if poc_email != OMIT
|
119
|
+
@test_numbers = test_numbers if test_numbers != OMIT
|
120
|
+
@status = status if status != OMIT
|
121
|
+
@additional_websites = additional_websites if additional_websites != OMIT
|
122
|
+
@additional_emails = additional_emails if additional_emails != OMIT
|
123
|
+
@additional_phone_numbers = additional_phone_numbers if additional_phone_numbers != OMIT
|
124
|
+
@additional_properties = additional_properties
|
125
|
+
@_field_set = {
|
126
|
+
"id": id,
|
127
|
+
"createdAt": created_at,
|
128
|
+
"name": name,
|
129
|
+
"address": address,
|
130
|
+
"ein": ein,
|
131
|
+
"description": description,
|
132
|
+
"brandColor": brand_color,
|
133
|
+
"logoUrl": logo_url,
|
134
|
+
"heroUrl": hero_url,
|
135
|
+
"primaryWebsiteUrl": primary_website_url,
|
136
|
+
"primaryWebsiteLabel": primary_website_label,
|
137
|
+
"primaryPhone": primary_phone,
|
138
|
+
"primaryPhoneLabel": primary_phone_label,
|
139
|
+
"primaryEmail": primary_email,
|
140
|
+
"primaryEmailLabel": primary_email_label,
|
141
|
+
"privacyPolicyUrl": privacy_policy_url,
|
142
|
+
"tosUrl": tos_url,
|
143
|
+
"pocName": poc_name,
|
144
|
+
"pocTitle": poc_title,
|
145
|
+
"pocEmail": poc_email,
|
146
|
+
"testNumbers": test_numbers,
|
147
|
+
"status": status,
|
148
|
+
"additionalWebsites": additional_websites,
|
149
|
+
"additionalEmails": additional_emails,
|
150
|
+
"additionalPhoneNumbers": additional_phone_numbers
|
151
|
+
}.reject do |_k, v|
|
152
|
+
v == OMIT
|
153
|
+
end
|
154
|
+
end
|
155
|
+
|
156
|
+
# Deserialize a JSON object to an instance of Company
|
157
|
+
#
|
158
|
+
# @param json_object [String]
|
159
|
+
# @return [Pinnacle::Company]
|
160
|
+
def self.from_json(json_object:)
|
161
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
162
|
+
parsed_json = JSON.parse(json_object)
|
163
|
+
id = parsed_json["id"]
|
164
|
+
created_at = (DateTime.parse(parsed_json["createdAt"]) unless parsed_json["createdAt"].nil?)
|
165
|
+
name = parsed_json["name"]
|
166
|
+
address = parsed_json["address"]
|
167
|
+
ein = parsed_json["ein"]
|
168
|
+
description = parsed_json["description"]
|
169
|
+
brand_color = parsed_json["brandColor"]
|
170
|
+
logo_url = parsed_json["logoUrl"]
|
171
|
+
hero_url = parsed_json["heroUrl"]
|
172
|
+
primary_website_url = parsed_json["primaryWebsiteUrl"]
|
173
|
+
primary_website_label = parsed_json["primaryWebsiteLabel"]
|
174
|
+
primary_phone = parsed_json["primaryPhone"]
|
175
|
+
primary_phone_label = parsed_json["primaryPhoneLabel"]
|
176
|
+
primary_email = parsed_json["primaryEmail"]
|
177
|
+
primary_email_label = parsed_json["primaryEmailLabel"]
|
178
|
+
privacy_policy_url = parsed_json["privacyPolicyUrl"]
|
179
|
+
tos_url = parsed_json["tosUrl"]
|
180
|
+
poc_name = parsed_json["pocName"]
|
181
|
+
poc_title = parsed_json["pocTitle"]
|
182
|
+
poc_email = parsed_json["pocEmail"]
|
183
|
+
test_numbers = parsed_json["testNumbers"]
|
184
|
+
status = parsed_json["status"]
|
185
|
+
additional_websites = parsed_json["additionalWebsites"]&.map do |item|
|
186
|
+
item = item.to_json
|
187
|
+
Pinnacle::CompanyAdditionalWebsitesItem.from_json(json_object: item)
|
188
|
+
end
|
189
|
+
additional_emails = parsed_json["additionalEmails"]&.map do |item|
|
190
|
+
item = item.to_json
|
191
|
+
Pinnacle::CompanyAdditionalEmailsItem.from_json(json_object: item)
|
192
|
+
end
|
193
|
+
additional_phone_numbers = parsed_json["additionalPhoneNumbers"]&.map do |item|
|
194
|
+
item = item.to_json
|
195
|
+
Pinnacle::CompanyAdditionalPhoneNumbersItem.from_json(json_object: item)
|
196
|
+
end
|
197
|
+
new(
|
198
|
+
id: id,
|
199
|
+
created_at: created_at,
|
200
|
+
name: name,
|
201
|
+
address: address,
|
202
|
+
ein: ein,
|
203
|
+
description: description,
|
204
|
+
brand_color: brand_color,
|
205
|
+
logo_url: logo_url,
|
206
|
+
hero_url: hero_url,
|
207
|
+
primary_website_url: primary_website_url,
|
208
|
+
primary_website_label: primary_website_label,
|
209
|
+
primary_phone: primary_phone,
|
210
|
+
primary_phone_label: primary_phone_label,
|
211
|
+
primary_email: primary_email,
|
212
|
+
primary_email_label: primary_email_label,
|
213
|
+
privacy_policy_url: privacy_policy_url,
|
214
|
+
tos_url: tos_url,
|
215
|
+
poc_name: poc_name,
|
216
|
+
poc_title: poc_title,
|
217
|
+
poc_email: poc_email,
|
218
|
+
test_numbers: test_numbers,
|
219
|
+
status: status,
|
220
|
+
additional_websites: additional_websites,
|
221
|
+
additional_emails: additional_emails,
|
222
|
+
additional_phone_numbers: additional_phone_numbers,
|
223
|
+
additional_properties: struct
|
224
|
+
)
|
225
|
+
end
|
226
|
+
|
227
|
+
# Serialize an instance of Company to a JSON object
|
228
|
+
#
|
229
|
+
# @return [String]
|
230
|
+
def to_json(*_args)
|
231
|
+
@_field_set&.to_json
|
232
|
+
end
|
233
|
+
|
234
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
235
|
+
# hash and check each fields type against the current object's property
|
236
|
+
# definitions.
|
237
|
+
#
|
238
|
+
# @param obj [Object]
|
239
|
+
# @return [Void]
|
240
|
+
def self.validate_raw(obj:)
|
241
|
+
obj.id&.is_a?(Integer) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
|
242
|
+
obj.created_at&.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
|
243
|
+
obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
|
244
|
+
obj.address&.is_a?(String) != false || raise("Passed value for field obj.address is not the expected type, validation failed.")
|
245
|
+
obj.ein&.is_a?(String) != false || raise("Passed value for field obj.ein is not the expected type, validation failed.")
|
246
|
+
obj.description&.is_a?(String) != false || raise("Passed value for field obj.description is not the expected type, validation failed.")
|
247
|
+
obj.brand_color&.is_a?(String) != false || raise("Passed value for field obj.brand_color is not the expected type, validation failed.")
|
248
|
+
obj.logo_url&.is_a?(String) != false || raise("Passed value for field obj.logo_url is not the expected type, validation failed.")
|
249
|
+
obj.hero_url&.is_a?(String) != false || raise("Passed value for field obj.hero_url is not the expected type, validation failed.")
|
250
|
+
obj.primary_website_url&.is_a?(String) != false || raise("Passed value for field obj.primary_website_url is not the expected type, validation failed.")
|
251
|
+
obj.primary_website_label&.is_a?(String) != false || raise("Passed value for field obj.primary_website_label is not the expected type, validation failed.")
|
252
|
+
obj.primary_phone&.is_a?(String) != false || raise("Passed value for field obj.primary_phone is not the expected type, validation failed.")
|
253
|
+
obj.primary_phone_label&.is_a?(String) != false || raise("Passed value for field obj.primary_phone_label is not the expected type, validation failed.")
|
254
|
+
obj.primary_email&.is_a?(String) != false || raise("Passed value for field obj.primary_email is not the expected type, validation failed.")
|
255
|
+
obj.primary_email_label&.is_a?(String) != false || raise("Passed value for field obj.primary_email_label is not the expected type, validation failed.")
|
256
|
+
obj.privacy_policy_url&.is_a?(String) != false || raise("Passed value for field obj.privacy_policy_url is not the expected type, validation failed.")
|
257
|
+
obj.tos_url&.is_a?(String) != false || raise("Passed value for field obj.tos_url is not the expected type, validation failed.")
|
258
|
+
obj.poc_name&.is_a?(String) != false || raise("Passed value for field obj.poc_name is not the expected type, validation failed.")
|
259
|
+
obj.poc_title&.is_a?(String) != false || raise("Passed value for field obj.poc_title is not the expected type, validation failed.")
|
260
|
+
obj.poc_email&.is_a?(String) != false || raise("Passed value for field obj.poc_email is not the expected type, validation failed.")
|
261
|
+
obj.test_numbers&.is_a?(Array) != false || raise("Passed value for field obj.test_numbers is not the expected type, validation failed.")
|
262
|
+
obj.status&.is_a?(String) != false || raise("Passed value for field obj.status is not the expected type, validation failed.")
|
263
|
+
obj.additional_websites&.is_a?(Array) != false || raise("Passed value for field obj.additional_websites is not the expected type, validation failed.")
|
264
|
+
obj.additional_emails&.is_a?(Array) != false || raise("Passed value for field obj.additional_emails is not the expected type, validation failed.")
|
265
|
+
obj.additional_phone_numbers&.is_a?(Array) != false || raise("Passed value for field obj.additional_phone_numbers is not the expected type, validation failed.")
|
266
|
+
end
|
267
|
+
end
|
268
|
+
end
|
@@ -0,0 +1,67 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "ostruct"
|
4
|
+
require "json"
|
5
|
+
|
6
|
+
module Pinnacle
|
7
|
+
class CompanyAdditionalEmailsItem
|
8
|
+
# @return [String] The additional email address
|
9
|
+
attr_reader :email
|
10
|
+
# @return [String] The label for the additional email address
|
11
|
+
attr_reader :label
|
12
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
13
|
+
attr_reader :additional_properties
|
14
|
+
# @return [Object]
|
15
|
+
attr_reader :_field_set
|
16
|
+
protected :_field_set
|
17
|
+
|
18
|
+
OMIT = Object.new
|
19
|
+
|
20
|
+
# @param email [String] The additional email address
|
21
|
+
# @param label [String] The label for the additional email address
|
22
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
23
|
+
# @return [Pinnacle::CompanyAdditionalEmailsItem]
|
24
|
+
def initialize(email: OMIT, label: OMIT, additional_properties: nil)
|
25
|
+
@email = email if email != OMIT
|
26
|
+
@label = label if label != OMIT
|
27
|
+
@additional_properties = additional_properties
|
28
|
+
@_field_set = { "email": email, "label": label }.reject do |_k, v|
|
29
|
+
v == OMIT
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
# Deserialize a JSON object to an instance of CompanyAdditionalEmailsItem
|
34
|
+
#
|
35
|
+
# @param json_object [String]
|
36
|
+
# @return [Pinnacle::CompanyAdditionalEmailsItem]
|
37
|
+
def self.from_json(json_object:)
|
38
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
39
|
+
parsed_json = JSON.parse(json_object)
|
40
|
+
email = parsed_json["email"]
|
41
|
+
label = parsed_json["label"]
|
42
|
+
new(
|
43
|
+
email: email,
|
44
|
+
label: label,
|
45
|
+
additional_properties: struct
|
46
|
+
)
|
47
|
+
end
|
48
|
+
|
49
|
+
# Serialize an instance of CompanyAdditionalEmailsItem to a JSON object
|
50
|
+
#
|
51
|
+
# @return [String]
|
52
|
+
def to_json(*_args)
|
53
|
+
@_field_set&.to_json
|
54
|
+
end
|
55
|
+
|
56
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
57
|
+
# hash and check each fields type against the current object's property
|
58
|
+
# definitions.
|
59
|
+
#
|
60
|
+
# @param obj [Object]
|
61
|
+
# @return [Void]
|
62
|
+
def self.validate_raw(obj:)
|
63
|
+
obj.email&.is_a?(String) != false || raise("Passed value for field obj.email is not the expected type, validation failed.")
|
64
|
+
obj.label&.is_a?(String) != false || raise("Passed value for field obj.label is not the expected type, validation failed.")
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
@@ -0,0 +1,67 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "ostruct"
|
4
|
+
require "json"
|
5
|
+
|
6
|
+
module Pinnacle
|
7
|
+
class CompanyAdditionalPhoneNumbersItem
|
8
|
+
# @return [String] The label for the additional phone number
|
9
|
+
attr_reader :label
|
10
|
+
# @return [String] The additional phone number
|
11
|
+
attr_reader :phone
|
12
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
13
|
+
attr_reader :additional_properties
|
14
|
+
# @return [Object]
|
15
|
+
attr_reader :_field_set
|
16
|
+
protected :_field_set
|
17
|
+
|
18
|
+
OMIT = Object.new
|
19
|
+
|
20
|
+
# @param label [String] The label for the additional phone number
|
21
|
+
# @param phone [String] The additional phone number
|
22
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
23
|
+
# @return [Pinnacle::CompanyAdditionalPhoneNumbersItem]
|
24
|
+
def initialize(label: OMIT, phone: OMIT, additional_properties: nil)
|
25
|
+
@label = label if label != OMIT
|
26
|
+
@phone = phone if phone != OMIT
|
27
|
+
@additional_properties = additional_properties
|
28
|
+
@_field_set = { "label": label, "phone": phone }.reject do |_k, v|
|
29
|
+
v == OMIT
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
# Deserialize a JSON object to an instance of CompanyAdditionalPhoneNumbersItem
|
34
|
+
#
|
35
|
+
# @param json_object [String]
|
36
|
+
# @return [Pinnacle::CompanyAdditionalPhoneNumbersItem]
|
37
|
+
def self.from_json(json_object:)
|
38
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
39
|
+
parsed_json = JSON.parse(json_object)
|
40
|
+
label = parsed_json["label"]
|
41
|
+
phone = parsed_json["phone"]
|
42
|
+
new(
|
43
|
+
label: label,
|
44
|
+
phone: phone,
|
45
|
+
additional_properties: struct
|
46
|
+
)
|
47
|
+
end
|
48
|
+
|
49
|
+
# Serialize an instance of CompanyAdditionalPhoneNumbersItem to a JSON object
|
50
|
+
#
|
51
|
+
# @return [String]
|
52
|
+
def to_json(*_args)
|
53
|
+
@_field_set&.to_json
|
54
|
+
end
|
55
|
+
|
56
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
57
|
+
# hash and check each fields type against the current object's property
|
58
|
+
# definitions.
|
59
|
+
#
|
60
|
+
# @param obj [Object]
|
61
|
+
# @return [Void]
|
62
|
+
def self.validate_raw(obj:)
|
63
|
+
obj.label&.is_a?(String) != false || raise("Passed value for field obj.label is not the expected type, validation failed.")
|
64
|
+
obj.phone&.is_a?(String) != false || raise("Passed value for field obj.phone is not the expected type, validation failed.")
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
@@ -0,0 +1,67 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "ostruct"
|
4
|
+
require "json"
|
5
|
+
|
6
|
+
module Pinnacle
|
7
|
+
class CompanyAdditionalWebsitesItem
|
8
|
+
# @return [String] The URL of the additional website
|
9
|
+
attr_reader :url
|
10
|
+
# @return [String] The label for the additional website
|
11
|
+
attr_reader :label
|
12
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
13
|
+
attr_reader :additional_properties
|
14
|
+
# @return [Object]
|
15
|
+
attr_reader :_field_set
|
16
|
+
protected :_field_set
|
17
|
+
|
18
|
+
OMIT = Object.new
|
19
|
+
|
20
|
+
# @param url [String] The URL of the additional website
|
21
|
+
# @param label [String] The label for the additional website
|
22
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
23
|
+
# @return [Pinnacle::CompanyAdditionalWebsitesItem]
|
24
|
+
def initialize(url: OMIT, label: OMIT, additional_properties: nil)
|
25
|
+
@url = url if url != OMIT
|
26
|
+
@label = label if label != OMIT
|
27
|
+
@additional_properties = additional_properties
|
28
|
+
@_field_set = { "url": url, "label": label }.reject do |_k, v|
|
29
|
+
v == OMIT
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
# Deserialize a JSON object to an instance of CompanyAdditionalWebsitesItem
|
34
|
+
#
|
35
|
+
# @param json_object [String]
|
36
|
+
# @return [Pinnacle::CompanyAdditionalWebsitesItem]
|
37
|
+
def self.from_json(json_object:)
|
38
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
39
|
+
parsed_json = JSON.parse(json_object)
|
40
|
+
url = parsed_json["url"]
|
41
|
+
label = parsed_json["label"]
|
42
|
+
new(
|
43
|
+
url: url,
|
44
|
+
label: label,
|
45
|
+
additional_properties: struct
|
46
|
+
)
|
47
|
+
end
|
48
|
+
|
49
|
+
# Serialize an instance of CompanyAdditionalWebsitesItem to a JSON object
|
50
|
+
#
|
51
|
+
# @return [String]
|
52
|
+
def to_json(*_args)
|
53
|
+
@_field_set&.to_json
|
54
|
+
end
|
55
|
+
|
56
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
57
|
+
# hash and check each fields type against the current object's property
|
58
|
+
# definitions.
|
59
|
+
#
|
60
|
+
# @param obj [Object]
|
61
|
+
# @return [Void]
|
62
|
+
def self.validate_raw(obj:)
|
63
|
+
obj.url&.is_a?(String) != false || raise("Passed value for field obj.url is not the expected type, validation failed.")
|
64
|
+
obj.label&.is_a?(String) != false || raise("Passed value for field obj.label is not the expected type, validation failed.")
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
@@ -0,0 +1,117 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "ostruct"
|
4
|
+
require "json"
|
5
|
+
|
6
|
+
module Pinnacle
|
7
|
+
class CompanyContact
|
8
|
+
# @return [String] Primary website URL.
|
9
|
+
attr_reader :primary_website_url
|
10
|
+
# @return [String] Label for the primary website.
|
11
|
+
attr_reader :primary_website_label
|
12
|
+
# @return [String] Primary phone number in international format.
|
13
|
+
attr_reader :primary_phone
|
14
|
+
# @return [String] Label for the primary phone number.
|
15
|
+
attr_reader :primary_phone_label
|
16
|
+
# @return [String] Primary email address.
|
17
|
+
attr_reader :primary_email
|
18
|
+
# @return [String] Label for the primary email address.
|
19
|
+
attr_reader :primary_email_label
|
20
|
+
# @return [String] URL of the privacy policy.
|
21
|
+
attr_reader :privacy_policy_url
|
22
|
+
# @return [String] URL of the terms of service.
|
23
|
+
attr_reader :tos_url
|
24
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
25
|
+
attr_reader :additional_properties
|
26
|
+
# @return [Object]
|
27
|
+
attr_reader :_field_set
|
28
|
+
protected :_field_set
|
29
|
+
|
30
|
+
OMIT = Object.new
|
31
|
+
|
32
|
+
# @param primary_website_url [String] Primary website URL.
|
33
|
+
# @param primary_website_label [String] Label for the primary website.
|
34
|
+
# @param primary_phone [String] Primary phone number in international format.
|
35
|
+
# @param primary_phone_label [String] Label for the primary phone number.
|
36
|
+
# @param primary_email [String] Primary email address.
|
37
|
+
# @param primary_email_label [String] Label for the primary email address.
|
38
|
+
# @param privacy_policy_url [String] URL of the privacy policy.
|
39
|
+
# @param tos_url [String] URL of the terms of service.
|
40
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
41
|
+
# @return [Pinnacle::CompanyContact]
|
42
|
+
def initialize(primary_website_url:, primary_website_label:, primary_phone:, primary_phone_label:, primary_email:,
|
43
|
+
primary_email_label:, privacy_policy_url:, tos_url:, additional_properties: nil)
|
44
|
+
@primary_website_url = primary_website_url
|
45
|
+
@primary_website_label = primary_website_label
|
46
|
+
@primary_phone = primary_phone
|
47
|
+
@primary_phone_label = primary_phone_label
|
48
|
+
@primary_email = primary_email
|
49
|
+
@primary_email_label = primary_email_label
|
50
|
+
@privacy_policy_url = privacy_policy_url
|
51
|
+
@tos_url = tos_url
|
52
|
+
@additional_properties = additional_properties
|
53
|
+
@_field_set = {
|
54
|
+
"primaryWebsiteUrl": primary_website_url,
|
55
|
+
"primaryWebsiteLabel": primary_website_label,
|
56
|
+
"primaryPhone": primary_phone,
|
57
|
+
"primaryPhoneLabel": primary_phone_label,
|
58
|
+
"primaryEmail": primary_email,
|
59
|
+
"primaryEmailLabel": primary_email_label,
|
60
|
+
"privacyPolicyUrl": privacy_policy_url,
|
61
|
+
"tosUrl": tos_url
|
62
|
+
}
|
63
|
+
end
|
64
|
+
|
65
|
+
# Deserialize a JSON object to an instance of CompanyContact
|
66
|
+
#
|
67
|
+
# @param json_object [String]
|
68
|
+
# @return [Pinnacle::CompanyContact]
|
69
|
+
def self.from_json(json_object:)
|
70
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
71
|
+
parsed_json = JSON.parse(json_object)
|
72
|
+
primary_website_url = parsed_json["primaryWebsiteUrl"]
|
73
|
+
primary_website_label = parsed_json["primaryWebsiteLabel"]
|
74
|
+
primary_phone = parsed_json["primaryPhone"]
|
75
|
+
primary_phone_label = parsed_json["primaryPhoneLabel"]
|
76
|
+
primary_email = parsed_json["primaryEmail"]
|
77
|
+
primary_email_label = parsed_json["primaryEmailLabel"]
|
78
|
+
privacy_policy_url = parsed_json["privacyPolicyUrl"]
|
79
|
+
tos_url = parsed_json["tosUrl"]
|
80
|
+
new(
|
81
|
+
primary_website_url: primary_website_url,
|
82
|
+
primary_website_label: primary_website_label,
|
83
|
+
primary_phone: primary_phone,
|
84
|
+
primary_phone_label: primary_phone_label,
|
85
|
+
primary_email: primary_email,
|
86
|
+
primary_email_label: primary_email_label,
|
87
|
+
privacy_policy_url: privacy_policy_url,
|
88
|
+
tos_url: tos_url,
|
89
|
+
additional_properties: struct
|
90
|
+
)
|
91
|
+
end
|
92
|
+
|
93
|
+
# Serialize an instance of CompanyContact to a JSON object
|
94
|
+
#
|
95
|
+
# @return [String]
|
96
|
+
def to_json(*_args)
|
97
|
+
@_field_set&.to_json
|
98
|
+
end
|
99
|
+
|
100
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
101
|
+
# hash and check each fields type against the current object's property
|
102
|
+
# definitions.
|
103
|
+
#
|
104
|
+
# @param obj [Object]
|
105
|
+
# @return [Void]
|
106
|
+
def self.validate_raw(obj:)
|
107
|
+
obj.primary_website_url.is_a?(String) != false || raise("Passed value for field obj.primary_website_url is not the expected type, validation failed.")
|
108
|
+
obj.primary_website_label.is_a?(String) != false || raise("Passed value for field obj.primary_website_label is not the expected type, validation failed.")
|
109
|
+
obj.primary_phone.is_a?(String) != false || raise("Passed value for field obj.primary_phone is not the expected type, validation failed.")
|
110
|
+
obj.primary_phone_label.is_a?(String) != false || raise("Passed value for field obj.primary_phone_label is not the expected type, validation failed.")
|
111
|
+
obj.primary_email.is_a?(String) != false || raise("Passed value for field obj.primary_email is not the expected type, validation failed.")
|
112
|
+
obj.primary_email_label.is_a?(String) != false || raise("Passed value for field obj.primary_email_label is not the expected type, validation failed.")
|
113
|
+
obj.privacy_policy_url.is_a?(String) != false || raise("Passed value for field obj.privacy_policy_url is not the expected type, validation failed.")
|
114
|
+
obj.tos_url.is_a?(String) != false || raise("Passed value for field obj.tos_url is not the expected type, validation failed.")
|
115
|
+
end
|
116
|
+
end
|
117
|
+
end
|