pingram 1.0.19 → 1.0.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +3 -3
  3. data/lib/pingram/api/account_api.rb +70 -66
  4. data/lib/pingram/api/email_api.rb +61 -0
  5. data/lib/pingram/api/members_api.rb +2 -2
  6. data/lib/pingram/api_client.rb +1 -1
  7. data/lib/pingram/client_wrapper.rb +0 -10
  8. data/lib/pingram/models/{push_settings_fcm_response.rb → campaign_webhook_response.rb} +20 -19
  9. data/lib/pingram/models/create_account_request.rb +150 -0
  10. data/lib/pingram/models/create_account_response.rb +30 -30
  11. data/lib/pingram/models/{create_account_request_body.rb → create_personal_access_token_request.rb} +18 -7
  12. data/lib/pingram/models/create_personal_access_token_response.rb +313 -0
  13. data/lib/pingram/models/{apn_config.rb → delete_email_suppressions_response.rb} +36 -86
  14. data/lib/pingram/models/get_members_response_inner.rb +29 -1
  15. data/lib/pingram/models/intercom_webhook_data_item_any_of.rb +1 -0
  16. data/lib/pingram/models/list_invoices_response.rb +194 -0
  17. data/lib/pingram/models/list_invoices_response_invoices_inner.rb +389 -0
  18. data/lib/pingram/models/{push_settings_fcm_put_request.rb → list_personal_access_tokens_response.rb} +21 -19
  19. data/lib/pingram/models/list_personal_access_tokens_response_tokens_inner.rb +287 -0
  20. data/lib/pingram/models/member_update_request.rb +1 -0
  21. data/lib/pingram/models/sender_post_body.rb +1 -11
  22. data/lib/pingram/models/ten_dlc_brand_registration_details.rb +14 -14
  23. data/lib/pingram/models/ten_dlc_campaign_registration_details.rb +457 -0
  24. data/lib/pingram/models/ten_dlc_campaign_update_request.rb +363 -0
  25. data/lib/pingram/version.rb +1 -1
  26. data/lib/pingram.rb +11 -5
  27. data/vendor/bundle/ruby/3.2.0/cache/io-console-0.9.2.gem +0 -0
  28. data/vendor/bundle/ruby/3.2.0/cache/reline-0.7.0.gem +0 -0
  29. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/byebug-13.0.0/gem_make.out +5 -5
  30. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/date-3.5.1/gem_make.out +5 -5
  31. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/{io-console-0.8.2 → io-console-0.9.2}/gem_make.out +15 -14
  32. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/io-console-0.9.2/io/console.so +0 -0
  33. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/{io-console-0.8.2 → io-console-0.9.2}/mkmf.log +112 -109
  34. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/jaro_winkler-1.5.6/gem_make.out +5 -5
  35. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-5.4.0/gem_make.out +5 -5
  36. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/racc-1.8.1/gem_make.out +5 -5
  37. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.2.0/gem_make.out +5 -5
  38. data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.8.2 → io-console-0.9.2}/ext/io/console/Makefile +1 -1
  39. data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.8.2 → io-console-0.9.2}/ext/io/console/console.c +521 -28
  40. data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.8.2 → io-console-0.9.2}/ext/io/console/extconf.rb +13 -14
  41. data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.8.2 → io-console-0.9.2}/ext/io/console/win32_vk.inc +313 -165
  42. data/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.2/lib/io/console.so +0 -0
  43. data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/lib/reline/io/ansi.rb +6 -4
  44. data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/lib/reline/io/windows.rb +49 -23
  45. data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/lib/reline/io.rb +8 -2
  46. data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/lib/reline/line_editor.rb +49 -21
  47. data/vendor/bundle/ruby/3.2.0/gems/reline-0.7.0/lib/reline/version.rb +3 -0
  48. data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/lib/reline.rb +10 -9
  49. data/vendor/bundle/ruby/3.2.0/specifications/{io-console-0.8.2.gemspec → io-console-0.9.2.gemspec} +3 -3
  50. data/vendor/bundle/ruby/3.2.0/specifications/{reline-0.6.3.gemspec → reline-0.7.0.gemspec} +2 -2
  51. metadata +55 -49
  52. data/lib/pingram/api/push_settings_api.rb +0 -374
  53. data/vendor/bundle/ruby/3.2.0/cache/io-console-0.8.2.gem +0 -0
  54. data/vendor/bundle/ruby/3.2.0/cache/reline-0.6.3.gem +0 -0
  55. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/io-console-0.8.2/io/console.so +0 -0
  56. data/vendor/bundle/ruby/3.2.0/gems/io-console-0.8.2/lib/io/console.so +0 -0
  57. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/version.rb +0 -3
  58. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/{io-console-0.8.2 → io-console-0.9.2}/gem.build_complete +0 -0
  59. data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.8.2 → io-console-0.9.2}/.document +0 -0
  60. data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.8.2 → io-console-0.9.2}/BSDL +0 -0
  61. data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.8.2 → io-console-0.9.2}/COPYING +0 -0
  62. data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.8.2 → io-console-0.9.2}/README.md +0 -0
  63. data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.8.2 → io-console-0.9.2}/lib/io/console/size.rb +0 -0
  64. data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/BSDL +0 -0
  65. data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/COPYING +0 -0
  66. data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/README.md +0 -0
  67. data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/lib/reline/config.rb +0 -0
  68. data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/lib/reline/face.rb +0 -0
  69. data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/lib/reline/history.rb +0 -0
  70. data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/lib/reline/io/dumb.rb +0 -0
  71. data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/lib/reline/key_actor/base.rb +0 -0
  72. data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/lib/reline/key_actor/composite.rb +0 -0
  73. data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/lib/reline/key_actor/emacs.rb +2 -2
  74. /data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/lib/reline/key_actor/vi_command.rb +0 -0
  75. /data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/lib/reline/key_actor/vi_insert.rb +0 -0
  76. /data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/lib/reline/key_actor.rb +0 -0
  77. /data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/lib/reline/key_stroke.rb +0 -0
  78. /data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/lib/reline/kill_ring.rb +0 -0
  79. /data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/lib/reline/unicode/east_asian_width.rb +0 -0
  80. /data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/lib/reline/unicode.rb +0 -0
  81. /data/vendor/bundle/ruby/3.2.0/gems/{reline-0.6.3 → reline-0.7.0}/license_of_rb-readline +0 -0
@@ -0,0 +1,457 @@
1
+ =begin
2
+ #Pingram
3
+
4
+ #Internal API for notification delivery and management
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Pingram
17
+ # Admin GET/PATCH response for 10DLC campaign registration
18
+ class TenDlcCampaignRegistrationDetails < ApiModelBase
19
+ attr_accessor :account_id
20
+
21
+ # Pingram-side brand registration workflow status. - not_started: no customer submission yet - pending_review: customer submitted; Pingram has not submitted to carriers - in_progress: submitted for carrier review - approved | rejected | info_needed: review outcome
22
+ attr_accessor :campaign_status
23
+
24
+ attr_accessor :campaign_description
25
+
26
+ attr_accessor :campaign_sample1
27
+
28
+ attr_accessor :campaign_sample2
29
+
30
+ attr_accessor :campaign_sample3
31
+
32
+ attr_accessor :campaign_sample4
33
+
34
+ attr_accessor :campaign_message_flow
35
+
36
+ attr_accessor :campaign_optin_keywords
37
+
38
+ attr_accessor :campaign_optin_message
39
+
40
+ attr_accessor :campaign_optout_keywords
41
+
42
+ attr_accessor :campaign_optout_message
43
+
44
+ attr_accessor :campaign_help_keywords
45
+
46
+ attr_accessor :campaign_help_message
47
+
48
+ attr_accessor :campaign_embedded_link
49
+
50
+ attr_accessor :campaign_embedded_link_url
51
+
52
+ attr_accessor :campaign_embedded_phone
53
+
54
+ attr_accessor :campaign_age_gated
55
+
56
+ attr_accessor :campaign_direct_lending
57
+
58
+ attr_accessor :campaign_privacy_policy_link
59
+
60
+ attr_accessor :campaign_terms_and_conditions_link
61
+
62
+ attr_accessor :campaign_usecase
63
+
64
+ attr_accessor :campaign_id
65
+
66
+ attr_accessor :created_at
67
+
68
+ attr_accessor :updated_at
69
+
70
+ class EnumAttributeValidator
71
+ attr_reader :datatype
72
+ attr_reader :allowable_values
73
+
74
+ def initialize(datatype, allowable_values)
75
+ @allowable_values = allowable_values.map do |value|
76
+ case datatype.to_s
77
+ when /Integer/i
78
+ value.to_i
79
+ when /Float/i
80
+ value.to_f
81
+ else
82
+ value
83
+ end
84
+ end
85
+ end
86
+
87
+ def valid?(value)
88
+ !value || allowable_values.include?(value)
89
+ end
90
+ end
91
+
92
+ # Attribute mapping from ruby-style variable name to JSON key.
93
+ def self.attribute_map
94
+ {
95
+ :'account_id' => :'accountId',
96
+ :'campaign_status' => :'campaignStatus',
97
+ :'campaign_description' => :'campaignDescription',
98
+ :'campaign_sample1' => :'campaignSample1',
99
+ :'campaign_sample2' => :'campaignSample2',
100
+ :'campaign_sample3' => :'campaignSample3',
101
+ :'campaign_sample4' => :'campaignSample4',
102
+ :'campaign_message_flow' => :'campaignMessageFlow',
103
+ :'campaign_optin_keywords' => :'campaignOptinKeywords',
104
+ :'campaign_optin_message' => :'campaignOptinMessage',
105
+ :'campaign_optout_keywords' => :'campaignOptoutKeywords',
106
+ :'campaign_optout_message' => :'campaignOptoutMessage',
107
+ :'campaign_help_keywords' => :'campaignHelpKeywords',
108
+ :'campaign_help_message' => :'campaignHelpMessage',
109
+ :'campaign_embedded_link' => :'campaignEmbeddedLink',
110
+ :'campaign_embedded_link_url' => :'campaignEmbeddedLinkUrl',
111
+ :'campaign_embedded_phone' => :'campaignEmbeddedPhone',
112
+ :'campaign_age_gated' => :'campaignAgeGated',
113
+ :'campaign_direct_lending' => :'campaignDirectLending',
114
+ :'campaign_privacy_policy_link' => :'campaignPrivacyPolicyLink',
115
+ :'campaign_terms_and_conditions_link' => :'campaignTermsAndConditionsLink',
116
+ :'campaign_usecase' => :'campaignUsecase',
117
+ :'campaign_id' => :'campaignId',
118
+ :'created_at' => :'createdAt',
119
+ :'updated_at' => :'updatedAt'
120
+ }
121
+ end
122
+
123
+ # Returns attribute mapping this model knows about
124
+ def self.acceptable_attribute_map
125
+ attribute_map
126
+ end
127
+
128
+ # Returns all the JSON keys this model knows about
129
+ def self.acceptable_attributes
130
+ acceptable_attribute_map.values
131
+ end
132
+
133
+ # Attribute type mapping.
134
+ def self.openapi_types
135
+ {
136
+ :'account_id' => :'String',
137
+ :'campaign_status' => :'String',
138
+ :'campaign_description' => :'String',
139
+ :'campaign_sample1' => :'String',
140
+ :'campaign_sample2' => :'String',
141
+ :'campaign_sample3' => :'String',
142
+ :'campaign_sample4' => :'String',
143
+ :'campaign_message_flow' => :'String',
144
+ :'campaign_optin_keywords' => :'String',
145
+ :'campaign_optin_message' => :'String',
146
+ :'campaign_optout_keywords' => :'String',
147
+ :'campaign_optout_message' => :'String',
148
+ :'campaign_help_keywords' => :'String',
149
+ :'campaign_help_message' => :'String',
150
+ :'campaign_embedded_link' => :'Boolean',
151
+ :'campaign_embedded_link_url' => :'String',
152
+ :'campaign_embedded_phone' => :'Boolean',
153
+ :'campaign_age_gated' => :'Boolean',
154
+ :'campaign_direct_lending' => :'Boolean',
155
+ :'campaign_privacy_policy_link' => :'String',
156
+ :'campaign_terms_and_conditions_link' => :'String',
157
+ :'campaign_usecase' => :'String',
158
+ :'campaign_id' => :'String',
159
+ :'created_at' => :'String',
160
+ :'updated_at' => :'String'
161
+ }
162
+ end
163
+
164
+ # List of attributes with nullable: true
165
+ def self.openapi_nullable
166
+ Set.new([
167
+ ])
168
+ end
169
+
170
+ # Initializes the object
171
+ # @param [Hash] attributes Model attributes in the form of hash
172
+ def initialize(attributes = {})
173
+ if (!attributes.is_a?(Hash))
174
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Pingram::TenDlcCampaignRegistrationDetails` initialize method"
175
+ end
176
+
177
+ # check to see if the attribute exists and convert string to symbol for hash key
178
+ acceptable_attribute_map = self.class.acceptable_attribute_map
179
+ attributes = attributes.each_with_object({}) { |(k, v), h|
180
+ if (!acceptable_attribute_map.key?(k.to_sym))
181
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Pingram::TenDlcCampaignRegistrationDetails`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
182
+ end
183
+ h[k.to_sym] = v
184
+ }
185
+
186
+ if attributes.key?(:'account_id')
187
+ self.account_id = attributes[:'account_id']
188
+ else
189
+ self.account_id = nil
190
+ end
191
+
192
+ if attributes.key?(:'campaign_status')
193
+ self.campaign_status = attributes[:'campaign_status']
194
+ else
195
+ self.campaign_status = nil
196
+ end
197
+
198
+ if attributes.key?(:'campaign_description')
199
+ self.campaign_description = attributes[:'campaign_description']
200
+ end
201
+
202
+ if attributes.key?(:'campaign_sample1')
203
+ self.campaign_sample1 = attributes[:'campaign_sample1']
204
+ end
205
+
206
+ if attributes.key?(:'campaign_sample2')
207
+ self.campaign_sample2 = attributes[:'campaign_sample2']
208
+ end
209
+
210
+ if attributes.key?(:'campaign_sample3')
211
+ self.campaign_sample3 = attributes[:'campaign_sample3']
212
+ end
213
+
214
+ if attributes.key?(:'campaign_sample4')
215
+ self.campaign_sample4 = attributes[:'campaign_sample4']
216
+ end
217
+
218
+ if attributes.key?(:'campaign_message_flow')
219
+ self.campaign_message_flow = attributes[:'campaign_message_flow']
220
+ end
221
+
222
+ if attributes.key?(:'campaign_optin_keywords')
223
+ self.campaign_optin_keywords = attributes[:'campaign_optin_keywords']
224
+ end
225
+
226
+ if attributes.key?(:'campaign_optin_message')
227
+ self.campaign_optin_message = attributes[:'campaign_optin_message']
228
+ end
229
+
230
+ if attributes.key?(:'campaign_optout_keywords')
231
+ self.campaign_optout_keywords = attributes[:'campaign_optout_keywords']
232
+ end
233
+
234
+ if attributes.key?(:'campaign_optout_message')
235
+ self.campaign_optout_message = attributes[:'campaign_optout_message']
236
+ end
237
+
238
+ if attributes.key?(:'campaign_help_keywords')
239
+ self.campaign_help_keywords = attributes[:'campaign_help_keywords']
240
+ end
241
+
242
+ if attributes.key?(:'campaign_help_message')
243
+ self.campaign_help_message = attributes[:'campaign_help_message']
244
+ end
245
+
246
+ if attributes.key?(:'campaign_embedded_link')
247
+ self.campaign_embedded_link = attributes[:'campaign_embedded_link']
248
+ end
249
+
250
+ if attributes.key?(:'campaign_embedded_link_url')
251
+ self.campaign_embedded_link_url = attributes[:'campaign_embedded_link_url']
252
+ end
253
+
254
+ if attributes.key?(:'campaign_embedded_phone')
255
+ self.campaign_embedded_phone = attributes[:'campaign_embedded_phone']
256
+ end
257
+
258
+ if attributes.key?(:'campaign_age_gated')
259
+ self.campaign_age_gated = attributes[:'campaign_age_gated']
260
+ end
261
+
262
+ if attributes.key?(:'campaign_direct_lending')
263
+ self.campaign_direct_lending = attributes[:'campaign_direct_lending']
264
+ end
265
+
266
+ if attributes.key?(:'campaign_privacy_policy_link')
267
+ self.campaign_privacy_policy_link = attributes[:'campaign_privacy_policy_link']
268
+ end
269
+
270
+ if attributes.key?(:'campaign_terms_and_conditions_link')
271
+ self.campaign_terms_and_conditions_link = attributes[:'campaign_terms_and_conditions_link']
272
+ end
273
+
274
+ if attributes.key?(:'campaign_usecase')
275
+ self.campaign_usecase = attributes[:'campaign_usecase']
276
+ end
277
+
278
+ if attributes.key?(:'campaign_id')
279
+ self.campaign_id = attributes[:'campaign_id']
280
+ end
281
+
282
+ if attributes.key?(:'created_at')
283
+ self.created_at = attributes[:'created_at']
284
+ else
285
+ self.created_at = nil
286
+ end
287
+
288
+ if attributes.key?(:'updated_at')
289
+ self.updated_at = attributes[:'updated_at']
290
+ else
291
+ self.updated_at = nil
292
+ end
293
+ end
294
+
295
+ # Show invalid properties with the reasons. Usually used together with valid?
296
+ # @return Array for valid properties with the reasons
297
+ def list_invalid_properties
298
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
299
+ invalid_properties = Array.new
300
+ if @account_id.nil?
301
+ invalid_properties.push('invalid value for "account_id", account_id cannot be nil.')
302
+ end
303
+
304
+ if @campaign_status.nil?
305
+ invalid_properties.push('invalid value for "campaign_status", campaign_status cannot be nil.')
306
+ end
307
+
308
+ if @created_at.nil?
309
+ invalid_properties.push('invalid value for "created_at", created_at cannot be nil.')
310
+ end
311
+
312
+ if @updated_at.nil?
313
+ invalid_properties.push('invalid value for "updated_at", updated_at cannot be nil.')
314
+ end
315
+
316
+ invalid_properties
317
+ end
318
+
319
+ # Check to see if the all the properties in the model are valid
320
+ # @return true if the model is valid
321
+ def valid?
322
+ warn '[DEPRECATED] the `valid?` method is obsolete'
323
+ return false if @account_id.nil?
324
+ return false if @campaign_status.nil?
325
+ campaign_status_validator = EnumAttributeValidator.new('String', ["not_started", "in_progress", "pending_review", "approved", "rejected", "info_needed"])
326
+ return false unless campaign_status_validator.valid?(@campaign_status)
327
+ return false if @created_at.nil?
328
+ return false if @updated_at.nil?
329
+ true
330
+ end
331
+
332
+ # Custom attribute writer method with validation
333
+ # @param [Object] account_id Value to be assigned
334
+ def account_id=(account_id)
335
+ if account_id.nil?
336
+ fail ArgumentError, 'account_id cannot be nil'
337
+ end
338
+
339
+ @account_id = account_id
340
+ end
341
+
342
+ # Custom attribute writer method checking allowed values (enum).
343
+ # @param [Object] campaign_status Object to be assigned
344
+ def campaign_status=(campaign_status)
345
+ validator = EnumAttributeValidator.new('String', ["not_started", "in_progress", "pending_review", "approved", "rejected", "info_needed"])
346
+ unless validator.valid?(campaign_status)
347
+ fail ArgumentError, "invalid value for \"campaign_status\", must be one of #{validator.allowable_values}."
348
+ end
349
+ @campaign_status = campaign_status
350
+ end
351
+
352
+ # Custom attribute writer method with validation
353
+ # @param [Object] created_at Value to be assigned
354
+ def created_at=(created_at)
355
+ if created_at.nil?
356
+ fail ArgumentError, 'created_at cannot be nil'
357
+ end
358
+
359
+ @created_at = created_at
360
+ end
361
+
362
+ # Custom attribute writer method with validation
363
+ # @param [Object] updated_at Value to be assigned
364
+ def updated_at=(updated_at)
365
+ if updated_at.nil?
366
+ fail ArgumentError, 'updated_at cannot be nil'
367
+ end
368
+
369
+ @updated_at = updated_at
370
+ end
371
+
372
+ # Checks equality by comparing each attribute.
373
+ # @param [Object] Object to be compared
374
+ def ==(o)
375
+ return true if self.equal?(o)
376
+ self.class == o.class &&
377
+ account_id == o.account_id &&
378
+ campaign_status == o.campaign_status &&
379
+ campaign_description == o.campaign_description &&
380
+ campaign_sample1 == o.campaign_sample1 &&
381
+ campaign_sample2 == o.campaign_sample2 &&
382
+ campaign_sample3 == o.campaign_sample3 &&
383
+ campaign_sample4 == o.campaign_sample4 &&
384
+ campaign_message_flow == o.campaign_message_flow &&
385
+ campaign_optin_keywords == o.campaign_optin_keywords &&
386
+ campaign_optin_message == o.campaign_optin_message &&
387
+ campaign_optout_keywords == o.campaign_optout_keywords &&
388
+ campaign_optout_message == o.campaign_optout_message &&
389
+ campaign_help_keywords == o.campaign_help_keywords &&
390
+ campaign_help_message == o.campaign_help_message &&
391
+ campaign_embedded_link == o.campaign_embedded_link &&
392
+ campaign_embedded_link_url == o.campaign_embedded_link_url &&
393
+ campaign_embedded_phone == o.campaign_embedded_phone &&
394
+ campaign_age_gated == o.campaign_age_gated &&
395
+ campaign_direct_lending == o.campaign_direct_lending &&
396
+ campaign_privacy_policy_link == o.campaign_privacy_policy_link &&
397
+ campaign_terms_and_conditions_link == o.campaign_terms_and_conditions_link &&
398
+ campaign_usecase == o.campaign_usecase &&
399
+ campaign_id == o.campaign_id &&
400
+ created_at == o.created_at &&
401
+ updated_at == o.updated_at
402
+ end
403
+
404
+ # @see the `==` method
405
+ # @param [Object] Object to be compared
406
+ def eql?(o)
407
+ self == o
408
+ end
409
+
410
+ # Calculates hash code according to all attributes.
411
+ # @return [Integer] Hash code
412
+ def hash
413
+ [account_id, campaign_status, campaign_description, campaign_sample1, campaign_sample2, campaign_sample3, campaign_sample4, campaign_message_flow, campaign_optin_keywords, campaign_optin_message, campaign_optout_keywords, campaign_optout_message, campaign_help_keywords, campaign_help_message, campaign_embedded_link, campaign_embedded_link_url, campaign_embedded_phone, campaign_age_gated, campaign_direct_lending, campaign_privacy_policy_link, campaign_terms_and_conditions_link, campaign_usecase, campaign_id, created_at, updated_at].hash
414
+ end
415
+
416
+ # Builds the object from hash
417
+ # @param [Hash] attributes Model attributes in the form of hash
418
+ # @return [Object] Returns the model itself
419
+ def self.build_from_hash(attributes)
420
+ return nil unless attributes.is_a?(Hash)
421
+ attributes = attributes.transform_keys(&:to_sym)
422
+ transformed_hash = {}
423
+ openapi_types.each_pair do |key, type|
424
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
425
+ transformed_hash["#{key}"] = nil
426
+ elsif type =~ /\AArray<(.*)>/i
427
+ # check to ensure the input is an array given that the attribute
428
+ # is documented as an array but the input is not
429
+ if attributes[attribute_map[key]].is_a?(Array)
430
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
431
+ end
432
+ elsif !attributes[attribute_map[key]].nil?
433
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
434
+ end
435
+ end
436
+ new(transformed_hash)
437
+ end
438
+
439
+ # Returns the object in the form of hash
440
+ # @return [Hash] Returns the object in the form of hash
441
+ def to_hash
442
+ hash = {}
443
+ self.class.attribute_map.each_pair do |attr, param|
444
+ value = self.send(attr)
445
+ if value.nil?
446
+ is_nullable = self.class.openapi_nullable.include?(attr)
447
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
448
+ end
449
+
450
+ hash[param] = _to_hash(value)
451
+ end
452
+ hash
453
+ end
454
+
455
+ end
456
+
457
+ end