pingram 1.0.28 → 1.0.30

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 (27) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/lib/pingram/api/account_api.rb +66 -0
  4. data/lib/pingram/api_client.rb +1 -1
  5. data/lib/pingram/models/account_get_response.rb +54 -31
  6. data/lib/pingram/models/account_patch_request.rb +149 -0
  7. data/lib/pingram/models/billing_post_response_body.rb +50 -27
  8. data/lib/pingram/models/ten_dlc_brand_admin_update_request.rb +13 -2
  9. data/lib/pingram/models/ten_dlc_brand_create_request.rb +99 -12
  10. data/lib/pingram/models/ten_dlc_brand_registration.rb +13 -1
  11. data/lib/pingram/models/ten_dlc_brand_registration_details.rb +13 -1
  12. data/lib/pingram/models/ten_dlc_brand_update_request.rb +13 -2
  13. data/lib/pingram/models/ten_dlc_campaign_admin_update_request.rb +20 -0
  14. data/lib/pingram/models/ten_dlc_campaign_registration.rb +20 -0
  15. data/lib/pingram/models/ten_dlc_campaign_registration_details.rb +20 -0
  16. data/lib/pingram/models/ten_dlc_campaign_update_request.rb +20 -0
  17. data/lib/pingram/version.rb +1 -1
  18. data/lib/pingram.rb +1 -0
  19. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/byebug-13.0.0/gem_make.out +5 -5
  20. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/date-3.5.1/gem_make.out +5 -5
  21. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/io-console-0.9.2/gem_make.out +5 -5
  22. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/io-console-0.9.2/mkmf.log +3 -3
  23. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/jaro_winkler-1.5.6/gem_make.out +5 -5
  24. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-5.5.0/gem_make.out +5 -5
  25. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/racc-1.8.1/gem_make.out +5 -5
  26. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.2.0/gem_make.out +5 -5
  27. metadata +3 -2
@@ -22,31 +22,43 @@ module Pingram
22
22
  # Legal entity type for a 10DLC brand. - PRIVATE_PROFIT: private for-profit (LLC, corp, etc.) - SOLE_PROPRIETOR: sole proprietorship - PUBLIC_PROFIT: publicly traded for-profit - NON_PROFIT: non-profit - GOVERNMENT: government
23
23
  attr_accessor :business_type
24
24
 
25
+ # Official registered legal business name. For SOLE_PROPRIETOR, optional DBA or trade name (defaults to firstName and lastName).
25
26
  attr_accessor :legal_name
26
27
 
27
- # Required when businessType is SOLE_PROPRIETOR.
28
+ # Public brand name shown to recipients and carriers. Use the name customers recognize (your DBA or trade name). For companies with no DBA, use the same value as legalName. For SOLE_PROPRIETOR, this is the brand you send as — not the individual's legal name (set firstName and lastName for that). If the sole proprietor has no DBA, use first and last name.
29
+ attr_accessor :display_name
30
+
31
+ # Legal first name of the sole proprietor. Required when businessType is SOLE_PROPRIETOR.
28
32
  attr_accessor :first_name
29
33
 
30
- # Required when businessType is SOLE_PROPRIETOR.
34
+ # Legal last name of the sole proprietor. Required when businessType is SOLE_PROPRIETOR.
31
35
  attr_accessor :last_name
32
36
 
33
37
  # For US companies (country US): 9-digit EIN (Employer Identification Number). For Canada (country CA): 9-digit BN (Business Number). For other countries: national business tax identifier. Required except when businessType is SOLE_PROPRIETOR.
34
38
  attr_accessor :tax_id
35
39
 
40
+ # Public website for the brand. Include a scheme (https://) or a domain; https:// is prepended when omitted. Carriers expect a working site with privacy policy and terms.
36
41
  attr_accessor :website
37
42
 
43
+ # ISO 3166-1 alpha-2 country of incorporation (for example US or CA).
38
44
  attr_accessor :country
39
45
 
46
+ # Street address that matches official tax registration.
40
47
  attr_accessor :street
41
48
 
49
+ # City that matches official tax registration.
42
50
  attr_accessor :city
43
51
 
52
+ # State (US) or province (CA) that matches official tax registration.
44
53
  attr_accessor :state
45
54
 
55
+ # ZIP code (US) or postal code (CA) that matches official tax registration.
46
56
  attr_accessor :postal_code
47
57
 
58
+ # Email for the 10DLC compliance contact. Used for carrier and registration follow-up.
48
59
  attr_accessor :compliance_contact_email
49
60
 
61
+ # Phone number for the 10DLC compliance contact. E.164 preferred; national numbers are normalized using country.
50
62
  attr_accessor :compliance_contact_phone
51
63
 
52
64
  class EnumAttributeValidator
@@ -77,6 +89,7 @@ module Pingram
77
89
  :'scenario_id' => :'scenarioId',
78
90
  :'business_type' => :'businessType',
79
91
  :'legal_name' => :'legalName',
92
+ :'display_name' => :'displayName',
80
93
  :'first_name' => :'firstName',
81
94
  :'last_name' => :'lastName',
82
95
  :'tax_id' => :'taxId',
@@ -107,6 +120,7 @@ module Pingram
107
120
  :'scenario_id' => :'String',
108
121
  :'business_type' => :'String',
109
122
  :'legal_name' => :'String',
123
+ :'display_name' => :'String',
110
124
  :'first_name' => :'String',
111
125
  :'last_name' => :'String',
112
126
  :'tax_id' => :'String',
@@ -157,8 +171,12 @@ module Pingram
157
171
 
158
172
  if attributes.key?(:'legal_name')
159
173
  self.legal_name = attributes[:'legal_name']
174
+ end
175
+
176
+ if attributes.key?(:'display_name')
177
+ self.display_name = attributes[:'display_name']
160
178
  else
161
- self.legal_name = nil
179
+ self.display_name = nil
162
180
  end
163
181
 
164
182
  if attributes.key?(:'first_name')
@@ -187,18 +205,26 @@ module Pingram
187
205
 
188
206
  if attributes.key?(:'street')
189
207
  self.street = attributes[:'street']
208
+ else
209
+ self.street = nil
190
210
  end
191
211
 
192
212
  if attributes.key?(:'city')
193
213
  self.city = attributes[:'city']
214
+ else
215
+ self.city = nil
194
216
  end
195
217
 
196
218
  if attributes.key?(:'state')
197
219
  self.state = attributes[:'state']
220
+ else
221
+ self.state = nil
198
222
  end
199
223
 
200
224
  if attributes.key?(:'postal_code')
201
225
  self.postal_code = attributes[:'postal_code']
226
+ else
227
+ self.postal_code = nil
202
228
  end
203
229
 
204
230
  if attributes.key?(:'compliance_contact_email')
@@ -227,8 +253,8 @@ module Pingram
227
253
  invalid_properties.push('invalid value for "business_type", business_type cannot be nil.')
228
254
  end
229
255
 
230
- if @legal_name.nil?
231
- invalid_properties.push('invalid value for "legal_name", legal_name cannot be nil.')
256
+ if @display_name.nil?
257
+ invalid_properties.push('invalid value for "display_name", display_name cannot be nil.')
232
258
  end
233
259
 
234
260
  if @website.nil?
@@ -239,6 +265,22 @@ module Pingram
239
265
  invalid_properties.push('invalid value for "country", country cannot be nil.')
240
266
  end
241
267
 
268
+ if @street.nil?
269
+ invalid_properties.push('invalid value for "street", street cannot be nil.')
270
+ end
271
+
272
+ if @city.nil?
273
+ invalid_properties.push('invalid value for "city", city cannot be nil.')
274
+ end
275
+
276
+ if @state.nil?
277
+ invalid_properties.push('invalid value for "state", state cannot be nil.')
278
+ end
279
+
280
+ if @postal_code.nil?
281
+ invalid_properties.push('invalid value for "postal_code", postal_code cannot be nil.')
282
+ end
283
+
242
284
  if @compliance_contact_email.nil?
243
285
  invalid_properties.push('invalid value for "compliance_contact_email", compliance_contact_email cannot be nil.')
244
286
  end
@@ -260,9 +302,13 @@ module Pingram
260
302
  return false if @business_type.nil?
261
303
  business_type_validator = EnumAttributeValidator.new('String', ["PRIVATE_PROFIT", "SOLE_PROPRIETOR", "PUBLIC_PROFIT", "NON_PROFIT", "GOVERNMENT"])
262
304
  return false unless business_type_validator.valid?(@business_type)
263
- return false if @legal_name.nil?
305
+ return false if @display_name.nil?
264
306
  return false if @website.nil?
265
307
  return false if @country.nil?
308
+ return false if @street.nil?
309
+ return false if @city.nil?
310
+ return false if @state.nil?
311
+ return false if @postal_code.nil?
266
312
  return false if @compliance_contact_email.nil?
267
313
  return false if @compliance_contact_phone.nil?
268
314
  true
@@ -289,13 +335,13 @@ module Pingram
289
335
  end
290
336
 
291
337
  # Custom attribute writer method with validation
292
- # @param [Object] legal_name Value to be assigned
293
- def legal_name=(legal_name)
294
- if legal_name.nil?
295
- fail ArgumentError, 'legal_name cannot be nil'
338
+ # @param [Object] display_name Value to be assigned
339
+ def display_name=(display_name)
340
+ if display_name.nil?
341
+ fail ArgumentError, 'display_name cannot be nil'
296
342
  end
297
343
 
298
- @legal_name = legal_name
344
+ @display_name = display_name
299
345
  end
300
346
 
301
347
  # Custom attribute writer method with validation
@@ -318,6 +364,46 @@ module Pingram
318
364
  @country = country
319
365
  end
320
366
 
367
+ # Custom attribute writer method with validation
368
+ # @param [Object] street Value to be assigned
369
+ def street=(street)
370
+ if street.nil?
371
+ fail ArgumentError, 'street cannot be nil'
372
+ end
373
+
374
+ @street = street
375
+ end
376
+
377
+ # Custom attribute writer method with validation
378
+ # @param [Object] city Value to be assigned
379
+ def city=(city)
380
+ if city.nil?
381
+ fail ArgumentError, 'city cannot be nil'
382
+ end
383
+
384
+ @city = city
385
+ end
386
+
387
+ # Custom attribute writer method with validation
388
+ # @param [Object] state Value to be assigned
389
+ def state=(state)
390
+ if state.nil?
391
+ fail ArgumentError, 'state cannot be nil'
392
+ end
393
+
394
+ @state = state
395
+ end
396
+
397
+ # Custom attribute writer method with validation
398
+ # @param [Object] postal_code Value to be assigned
399
+ def postal_code=(postal_code)
400
+ if postal_code.nil?
401
+ fail ArgumentError, 'postal_code cannot be nil'
402
+ end
403
+
404
+ @postal_code = postal_code
405
+ end
406
+
321
407
  # Custom attribute writer method with validation
322
408
  # @param [Object] compliance_contact_email Value to be assigned
323
409
  def compliance_contact_email=(compliance_contact_email)
@@ -346,6 +432,7 @@ module Pingram
346
432
  scenario_id == o.scenario_id &&
347
433
  business_type == o.business_type &&
348
434
  legal_name == o.legal_name &&
435
+ display_name == o.display_name &&
349
436
  first_name == o.first_name &&
350
437
  last_name == o.last_name &&
351
438
  tax_id == o.tax_id &&
@@ -368,7 +455,7 @@ module Pingram
368
455
  # Calculates hash code according to all attributes.
369
456
  # @return [Integer] Hash code
370
457
  def hash
371
- [scenario_id, business_type, legal_name, first_name, last_name, tax_id, website, country, street, city, state, postal_code, compliance_contact_email, compliance_contact_phone].hash
458
+ [scenario_id, business_type, legal_name, display_name, first_name, last_name, tax_id, website, country, street, city, state, postal_code, compliance_contact_email, compliance_contact_phone].hash
372
459
  end
373
460
 
374
461
  # Builds the object from hash
@@ -22,34 +22,46 @@ module Pingram
22
22
 
23
23
  attr_accessor :business_type
24
24
 
25
+ # Official registered legal business name. For SOLE_PROPRIETOR, may be a DBA or trade name.
25
26
  attr_accessor :legal_name
26
27
 
27
- # Brand display name (marketing/DBA); defaults to legalName on customer submit.
28
+ # Public brand name shown to recipients and carriers.
28
29
  attr_accessor :display_name
29
30
 
31
+ # Legal first name of the sole proprietor. Present when businessType is SOLE_PROPRIETOR.
30
32
  attr_accessor :first_name
31
33
 
34
+ # Legal last name of the sole proprietor. Present when businessType is SOLE_PROPRIETOR.
32
35
  attr_accessor :last_name
33
36
 
37
+ # For US companies (country US): 9-digit EIN (Employer Identification Number). For Canada (country CA): 9-digit BN (Business Number). For other countries: national business tax identifier. Omitted when businessType is SOLE_PROPRIETOR.
34
38
  attr_accessor :tax_id
35
39
 
40
+ # Public website for the brand.
36
41
  attr_accessor :website
37
42
 
43
+ # ISO 3166-1 alpha-2 country of incorporation (for example US or CA).
38
44
  attr_accessor :country
39
45
 
46
+ # Street address that matches official tax registration.
40
47
  attr_accessor :street
41
48
 
49
+ # City that matches official tax registration.
42
50
  attr_accessor :city
43
51
 
52
+ # State (US) or province (CA) that matches official tax registration.
44
53
  attr_accessor :state
45
54
 
55
+ # ZIP code (US) or postal code (CA) that matches official tax registration.
46
56
  attr_accessor :postal_code
47
57
 
48
58
  # Legacy records only; new submissions use structured address fields.
49
59
  attr_accessor :full_address
50
60
 
61
+ # Email for the 10DLC compliance contact.
51
62
  attr_accessor :compliance_contact_email
52
63
 
64
+ # Phone number for the 10DLC compliance contact.
53
65
  attr_accessor :compliance_contact_phone
54
66
 
55
67
  # Pingram-side 10DLC registration workflow status (brand or campaign). - 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,34 +22,46 @@ module Pingram
22
22
 
23
23
  attr_accessor :business_type
24
24
 
25
+ # Official registered legal business name. For SOLE_PROPRIETOR, may be a DBA or trade name.
25
26
  attr_accessor :legal_name
26
27
 
27
- # Brand display name (marketing/DBA); defaults to legalName on customer submit.
28
+ # Public brand name shown to recipients and carriers.
28
29
  attr_accessor :display_name
29
30
 
31
+ # Legal first name of the sole proprietor. Present when businessType is SOLE_PROPRIETOR.
30
32
  attr_accessor :first_name
31
33
 
34
+ # Legal last name of the sole proprietor. Present when businessType is SOLE_PROPRIETOR.
32
35
  attr_accessor :last_name
33
36
 
37
+ # For US companies (country US): 9-digit EIN (Employer Identification Number). For Canada (country CA): 9-digit BN (Business Number). For other countries: national business tax identifier. Omitted when businessType is SOLE_PROPRIETOR.
34
38
  attr_accessor :tax_id
35
39
 
40
+ # Public website for the brand.
36
41
  attr_accessor :website
37
42
 
43
+ # ISO 3166-1 alpha-2 country of incorporation (for example US or CA).
38
44
  attr_accessor :country
39
45
 
46
+ # Street address that matches official tax registration.
40
47
  attr_accessor :street
41
48
 
49
+ # City that matches official tax registration.
42
50
  attr_accessor :city
43
51
 
52
+ # State (US) or province (CA) that matches official tax registration.
44
53
  attr_accessor :state
45
54
 
55
+ # ZIP code (US) or postal code (CA) that matches official tax registration.
46
56
  attr_accessor :postal_code
47
57
 
48
58
  # Legacy records only; new submissions use structured address fields.
49
59
  attr_accessor :full_address
50
60
 
61
+ # Email for the 10DLC compliance contact.
51
62
  attr_accessor :compliance_contact_email
52
63
 
64
+ # Phone number for the 10DLC compliance contact.
53
65
  attr_accessor :compliance_contact_phone
54
66
 
55
67
  # Pingram-side 10DLC registration workflow status (brand or campaign). - 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,32 +22,43 @@ module Pingram
22
22
  # Legal entity type for a 10DLC brand. - PRIVATE_PROFIT: private for-profit (LLC, corp, etc.) - SOLE_PROPRIETOR: sole proprietorship - PUBLIC_PROFIT: publicly traded for-profit - NON_PROFIT: non-profit - GOVERNMENT: government
23
23
  attr_accessor :business_type
24
24
 
25
+ # Official registered legal business name. For SOLE_PROPRIETOR, optional DBA or trade name (defaults to firstName and lastName).
25
26
  attr_accessor :legal_name
26
27
 
27
- # Brand display name (marketing/DBA); defaults to legalName when omitted on legalName-only updates.
28
+ # Public brand name shown to recipients and carriers. Use the name customers recognize (your DBA or trade name). For SOLE_PROPRIETOR, this is the brand you send as — not the individual's legal name. Omit to keep the existing value. If you change legalName and omit displayName, displayName is reset to the new legalName.
28
29
  attr_accessor :display_name
29
30
 
31
+ # Legal first name of the sole proprietor. Required when businessType is SOLE_PROPRIETOR.
30
32
  attr_accessor :first_name
31
33
 
34
+ # Legal last name of the sole proprietor. Required when businessType is SOLE_PROPRIETOR.
32
35
  attr_accessor :last_name
33
36
 
34
- # For US companies (country US): 9-digit EIN (Employer Identification Number). For Canada (country CA): 9-digit BN (Business Number). For other countries: national business tax identifier.
37
+ # For US companies (country US): 9-digit EIN (Employer Identification Number). For Canada (country CA): 9-digit BN (Business Number). For other countries: national business tax identifier. Required except when businessType is SOLE_PROPRIETOR.
35
38
  attr_accessor :tax_id
36
39
 
40
+ # Public website for the brand. Include a scheme (https://) or a domain; https:// is prepended when omitted. Carriers expect a working site with privacy policy and terms.
37
41
  attr_accessor :website
38
42
 
43
+ # ISO 3166-1 alpha-2 country of incorporation (for example US or CA).
39
44
  attr_accessor :country
40
45
 
46
+ # Street address that matches official tax registration.
41
47
  attr_accessor :street
42
48
 
49
+ # City that matches official tax registration.
43
50
  attr_accessor :city
44
51
 
52
+ # State (US) or province (CA) that matches official tax registration.
45
53
  attr_accessor :state
46
54
 
55
+ # ZIP code (US) or postal code (CA) that matches official tax registration.
47
56
  attr_accessor :postal_code
48
57
 
58
+ # Email for the 10DLC compliance contact. Used for carrier and registration follow-up.
49
59
  attr_accessor :compliance_contact_email
50
60
 
61
+ # Phone number for the 10DLC compliance contact. E.164 preferred; national numbers are normalized using country.
51
62
  attr_accessor :compliance_contact_phone
52
63
 
53
64
  class EnumAttributeValidator
@@ -16,44 +16,64 @@ require 'time'
16
16
  module Pingram
17
17
  # Request body for PATCH /registrations/us/10dlc/campaign/admin
18
18
  class TenDlcCampaignAdminUpdateRequest < ApiModelBase
19
+ # Summary of what this campaign sends and why, including audience and typical message content. Required before carrier submission.
19
20
  attr_accessor :campaign_description
20
21
 
22
+ # Example SMS that represents actual campaign traffic. Required before carrier submission. Should match the use case and typically identify the brand and include STOP/HELP language.
21
23
  attr_accessor :campaign_sample1
22
24
 
25
+ # Second example SMS. Required before carrier submission. Required for MARKETING and MIXED use cases.
23
26
  attr_accessor :campaign_sample2
24
27
 
28
+ # Optional third example SMS.
25
29
  attr_accessor :campaign_sample3
26
30
 
31
+ # Optional fourth example SMS.
27
32
  attr_accessor :campaign_sample4
28
33
 
34
+ # How recipients opt in (for example website form, checkout, or keyword). Describe the call-to-action and where consent is collected. Required before carrier submission.
29
35
  attr_accessor :campaign_message_flow
30
36
 
37
+ # Extra opt-in keywords as a comma-separated list. START is always included.
31
38
  attr_accessor :campaign_optin_keywords
32
39
 
40
+ # Auto-reply sent when a recipient opts in. Required before carrier submission. Should confirm the subscription, mention message frequency, and include STOP and HELP instructions.
33
41
  attr_accessor :campaign_optin_message
34
42
 
43
+ # Extra opt-out keywords as a comma-separated list. STOP is always included.
35
44
  attr_accessor :campaign_optout_keywords
36
45
 
46
+ # Auto-reply sent when a recipient opts out. Required before carrier submission. Should confirm they will receive no further messages.
37
47
  attr_accessor :campaign_optout_message
38
48
 
49
+ # Extra help keywords as a comma-separated list. HELP is always included.
39
50
  attr_accessor :campaign_help_keywords
40
51
 
52
+ # Auto-reply sent when a recipient texts a help keyword. Required before carrier submission. Should include a support contact (email and/or phone).
41
53
  attr_accessor :campaign_help_message
42
54
 
55
+ # Whether campaign messages include URLs.
43
56
  attr_accessor :campaign_embedded_link
44
57
 
58
+ # Sample URL that appears in messages. Provide when campaignEmbeddedLink is true.
45
59
  attr_accessor :campaign_embedded_link_url
46
60
 
61
+ # Whether campaign messages include phone numbers.
47
62
  attr_accessor :campaign_embedded_phone
48
63
 
64
+ # Whether campaign content is age-restricted (18+).
49
65
  attr_accessor :campaign_age_gated
50
66
 
67
+ # Whether the campaign relates to direct lending or loan products.
51
68
  attr_accessor :campaign_direct_lending
52
69
 
70
+ # Public URL of the privacy policy that covers this SMS program.
53
71
  attr_accessor :campaign_privacy_policy_link
54
72
 
73
+ # Public URL of the terms and conditions that cover this SMS program.
55
74
  attr_accessor :campaign_terms_and_conditions_link
56
75
 
76
+ # 10DLC campaign use case submitted to carriers. Required before carrier submission. One of 2FA, ACCOUNT_NOTIFICATION, CUSTOMER_CARE, DELIVERY_NOTIFICATION, FRAUD_ALERT, MARKETING, MIXED, POLLING_VOTING, PUBLIC_SERVICE_ANNOUNCEMENT, or SECURITY_ALERT. For MIXED, append comma-separated sub-use cases after MIXED (sub-use cases cannot include MIXED), for example MIXED,2FA,ACCOUNT_NOTIFICATION.
57
77
  attr_accessor :campaign_usecase
58
78
 
59
79
  # Pingram-side 10DLC registration workflow status (brand or campaign). - 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
@@ -21,44 +21,64 @@ module Pingram
21
21
  # Pingram-side 10DLC registration workflow status (brand or campaign). - 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
22
  attr_accessor :campaign_status
23
23
 
24
+ # Summary of what this campaign sends and why, including audience and typical message content. Required before carrier submission.
24
25
  attr_accessor :campaign_description
25
26
 
27
+ # Example SMS that represents actual campaign traffic. Required before carrier submission. Should match the use case and typically identify the brand and include STOP/HELP language.
26
28
  attr_accessor :campaign_sample1
27
29
 
30
+ # Second example SMS. Required before carrier submission. Required for MARKETING and MIXED use cases.
28
31
  attr_accessor :campaign_sample2
29
32
 
33
+ # Optional third example SMS.
30
34
  attr_accessor :campaign_sample3
31
35
 
36
+ # Optional fourth example SMS.
32
37
  attr_accessor :campaign_sample4
33
38
 
39
+ # How recipients opt in (for example website form, checkout, or keyword). Describe the call-to-action and where consent is collected. Required before carrier submission.
34
40
  attr_accessor :campaign_message_flow
35
41
 
42
+ # Extra opt-in keywords as a comma-separated list. START is always included.
36
43
  attr_accessor :campaign_optin_keywords
37
44
 
45
+ # Auto-reply sent when a recipient opts in. Required before carrier submission. Should confirm the subscription, mention message frequency, and include STOP and HELP instructions.
38
46
  attr_accessor :campaign_optin_message
39
47
 
48
+ # Extra opt-out keywords as a comma-separated list. STOP is always included.
40
49
  attr_accessor :campaign_optout_keywords
41
50
 
51
+ # Auto-reply sent when a recipient opts out. Required before carrier submission. Should confirm they will receive no further messages.
42
52
  attr_accessor :campaign_optout_message
43
53
 
54
+ # Extra help keywords as a comma-separated list. HELP is always included.
44
55
  attr_accessor :campaign_help_keywords
45
56
 
57
+ # Auto-reply sent when a recipient texts a help keyword. Required before carrier submission. Should include a support contact (email and/or phone).
46
58
  attr_accessor :campaign_help_message
47
59
 
60
+ # Whether campaign messages include URLs.
48
61
  attr_accessor :campaign_embedded_link
49
62
 
63
+ # Sample URL that appears in messages. Provide when campaignEmbeddedLink is true.
50
64
  attr_accessor :campaign_embedded_link_url
51
65
 
66
+ # Whether campaign messages include phone numbers.
52
67
  attr_accessor :campaign_embedded_phone
53
68
 
69
+ # Whether campaign content is age-restricted (18+).
54
70
  attr_accessor :campaign_age_gated
55
71
 
72
+ # Whether the campaign relates to direct lending or loan products.
56
73
  attr_accessor :campaign_direct_lending
57
74
 
75
+ # Public URL of the privacy policy that covers this SMS program.
58
76
  attr_accessor :campaign_privacy_policy_link
59
77
 
78
+ # Public URL of the terms and conditions that cover this SMS program.
60
79
  attr_accessor :campaign_terms_and_conditions_link
61
80
 
81
+ # 10DLC campaign use case submitted to carriers. Required before carrier submission. One of 2FA, ACCOUNT_NOTIFICATION, CUSTOMER_CARE, DELIVERY_NOTIFICATION, FRAUD_ALERT, MARKETING, MIXED, POLLING_VOTING, PUBLIC_SERVICE_ANNOUNCEMENT, or SECURITY_ALERT. For MIXED, append comma-separated sub-use cases after MIXED (sub-use cases cannot include MIXED), for example MIXED,2FA,ACCOUNT_NOTIFICATION.
62
82
  attr_accessor :campaign_usecase
63
83
 
64
84
  attr_accessor :created_at
@@ -21,44 +21,64 @@ module Pingram
21
21
  # Pingram-side 10DLC registration workflow status (brand or campaign). - 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
22
  attr_accessor :campaign_status
23
23
 
24
+ # Summary of what this campaign sends and why, including audience and typical message content. Required before carrier submission.
24
25
  attr_accessor :campaign_description
25
26
 
27
+ # Example SMS that represents actual campaign traffic. Required before carrier submission. Should match the use case and typically identify the brand and include STOP/HELP language.
26
28
  attr_accessor :campaign_sample1
27
29
 
30
+ # Second example SMS. Required before carrier submission. Required for MARKETING and MIXED use cases.
28
31
  attr_accessor :campaign_sample2
29
32
 
33
+ # Optional third example SMS.
30
34
  attr_accessor :campaign_sample3
31
35
 
36
+ # Optional fourth example SMS.
32
37
  attr_accessor :campaign_sample4
33
38
 
39
+ # How recipients opt in (for example website form, checkout, or keyword). Describe the call-to-action and where consent is collected. Required before carrier submission.
34
40
  attr_accessor :campaign_message_flow
35
41
 
42
+ # Extra opt-in keywords as a comma-separated list. START is always included.
36
43
  attr_accessor :campaign_optin_keywords
37
44
 
45
+ # Auto-reply sent when a recipient opts in. Required before carrier submission. Should confirm the subscription, mention message frequency, and include STOP and HELP instructions.
38
46
  attr_accessor :campaign_optin_message
39
47
 
48
+ # Extra opt-out keywords as a comma-separated list. STOP is always included.
40
49
  attr_accessor :campaign_optout_keywords
41
50
 
51
+ # Auto-reply sent when a recipient opts out. Required before carrier submission. Should confirm they will receive no further messages.
42
52
  attr_accessor :campaign_optout_message
43
53
 
54
+ # Extra help keywords as a comma-separated list. HELP is always included.
44
55
  attr_accessor :campaign_help_keywords
45
56
 
57
+ # Auto-reply sent when a recipient texts a help keyword. Required before carrier submission. Should include a support contact (email and/or phone).
46
58
  attr_accessor :campaign_help_message
47
59
 
60
+ # Whether campaign messages include URLs.
48
61
  attr_accessor :campaign_embedded_link
49
62
 
63
+ # Sample URL that appears in messages. Provide when campaignEmbeddedLink is true.
50
64
  attr_accessor :campaign_embedded_link_url
51
65
 
66
+ # Whether campaign messages include phone numbers.
52
67
  attr_accessor :campaign_embedded_phone
53
68
 
69
+ # Whether campaign content is age-restricted (18+).
54
70
  attr_accessor :campaign_age_gated
55
71
 
72
+ # Whether the campaign relates to direct lending or loan products.
56
73
  attr_accessor :campaign_direct_lending
57
74
 
75
+ # Public URL of the privacy policy that covers this SMS program.
58
76
  attr_accessor :campaign_privacy_policy_link
59
77
 
78
+ # Public URL of the terms and conditions that cover this SMS program.
60
79
  attr_accessor :campaign_terms_and_conditions_link
61
80
 
81
+ # 10DLC campaign use case submitted to carriers. Required before carrier submission. One of 2FA, ACCOUNT_NOTIFICATION, CUSTOMER_CARE, DELIVERY_NOTIFICATION, FRAUD_ALERT, MARKETING, MIXED, POLLING_VOTING, PUBLIC_SERVICE_ANNOUNCEMENT, or SECURITY_ALERT. For MIXED, append comma-separated sub-use cases after MIXED (sub-use cases cannot include MIXED), for example MIXED,2FA,ACCOUNT_NOTIFICATION.
62
82
  attr_accessor :campaign_usecase
63
83
 
64
84
  attr_accessor :created_at
@@ -16,44 +16,64 @@ require 'time'
16
16
  module Pingram
17
17
  # Request body for PATCH /registrations/us/10dlc/campaign
18
18
  class TenDlcCampaignUpdateRequest < ApiModelBase
19
+ # Summary of what this campaign sends and why, including audience and typical message content. Required before carrier submission.
19
20
  attr_accessor :campaign_description
20
21
 
22
+ # Example SMS that represents actual campaign traffic. Required before carrier submission. Should match the use case and typically identify the brand and include STOP/HELP language.
21
23
  attr_accessor :campaign_sample1
22
24
 
25
+ # Second example SMS. Required before carrier submission. Required for MARKETING and MIXED use cases.
23
26
  attr_accessor :campaign_sample2
24
27
 
28
+ # Optional third example SMS.
25
29
  attr_accessor :campaign_sample3
26
30
 
31
+ # Optional fourth example SMS.
27
32
  attr_accessor :campaign_sample4
28
33
 
34
+ # How recipients opt in (for example website form, checkout, or keyword). Describe the call-to-action and where consent is collected. Required before carrier submission.
29
35
  attr_accessor :campaign_message_flow
30
36
 
37
+ # Extra opt-in keywords as a comma-separated list. START is always included.
31
38
  attr_accessor :campaign_optin_keywords
32
39
 
40
+ # Auto-reply sent when a recipient opts in. Required before carrier submission. Should confirm the subscription, mention message frequency, and include STOP and HELP instructions.
33
41
  attr_accessor :campaign_optin_message
34
42
 
43
+ # Extra opt-out keywords as a comma-separated list. STOP is always included.
35
44
  attr_accessor :campaign_optout_keywords
36
45
 
46
+ # Auto-reply sent when a recipient opts out. Required before carrier submission. Should confirm they will receive no further messages.
37
47
  attr_accessor :campaign_optout_message
38
48
 
49
+ # Extra help keywords as a comma-separated list. HELP is always included.
39
50
  attr_accessor :campaign_help_keywords
40
51
 
52
+ # Auto-reply sent when a recipient texts a help keyword. Required before carrier submission. Should include a support contact (email and/or phone).
41
53
  attr_accessor :campaign_help_message
42
54
 
55
+ # Whether campaign messages include URLs.
43
56
  attr_accessor :campaign_embedded_link
44
57
 
58
+ # Sample URL that appears in messages. Provide when campaignEmbeddedLink is true.
45
59
  attr_accessor :campaign_embedded_link_url
46
60
 
61
+ # Whether campaign messages include phone numbers.
47
62
  attr_accessor :campaign_embedded_phone
48
63
 
64
+ # Whether campaign content is age-restricted (18+).
49
65
  attr_accessor :campaign_age_gated
50
66
 
67
+ # Whether the campaign relates to direct lending or loan products.
51
68
  attr_accessor :campaign_direct_lending
52
69
 
70
+ # Public URL of the privacy policy that covers this SMS program.
53
71
  attr_accessor :campaign_privacy_policy_link
54
72
 
73
+ # Public URL of the terms and conditions that cover this SMS program.
55
74
  attr_accessor :campaign_terms_and_conditions_link
56
75
 
76
+ # 10DLC campaign use case submitted to carriers. Required before carrier submission. One of 2FA, ACCOUNT_NOTIFICATION, CUSTOMER_CARE, DELIVERY_NOTIFICATION, FRAUD_ALERT, MARKETING, MIXED, POLLING_VOTING, PUBLIC_SERVICE_ANNOUNCEMENT, or SECURITY_ALERT. For MIXED, append comma-separated sub-use cases after MIXED (sub-use cases cannot include MIXED), for example MIXED,2FA,ACCOUNT_NOTIFICATION.
57
77
  attr_accessor :campaign_usecase
58
78
 
59
79
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -11,5 +11,5 @@ Generator version: 7.19.0
11
11
  =end
12
12
 
13
13
  module Pingram
14
- VERSION = '1.0.28'
14
+ VERSION = '1.0.30'
15
15
  end
data/lib/pingram.rb CHANGED
@@ -25,6 +25,7 @@ require 'pingram/models/accept_invite_response'
25
25
  require 'pingram/models/account_addresses_response'
26
26
  require 'pingram/models/account_addresses_response_addresses_inner'
27
27
  require 'pingram/models/account_get_response'
28
+ require 'pingram/models/account_patch_request'
28
29
  require 'pingram/models/address_response'
29
30
  require 'pingram/models/api_error_body'
30
31
  require 'pingram/models/api_error_response'