sentdm 0.29.0 → 0.30.0

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 (265) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +11 -0
  3. data/README.md +27 -1
  4. data/lib/sentdm/internal/type/base_model.rb +5 -5
  5. data/lib/sentdm/models/api_meta.rb +34 -0
  6. data/lib/sentdm/models/api_response_of_contact.rb +46 -0
  7. data/lib/sentdm/models/api_response_of_contact_message_summary.rb +43 -0
  8. data/lib/sentdm/models/api_response_of_conversation_messages_list.rb +43 -0
  9. data/lib/sentdm/models/api_response_of_profile_detail.rb +43 -0
  10. data/lib/sentdm/models/api_response_of_user.rb +43 -0
  11. data/lib/sentdm/models/api_response_template.rb +43 -0
  12. data/lib/sentdm/models/api_response_webhook.rb +43 -0
  13. data/lib/sentdm/models/billing_contact_info.rb +47 -0
  14. data/lib/sentdm/models/brand_business_info.rb +114 -0
  15. data/lib/sentdm/models/brand_compliance_info.rb +59 -0
  16. data/lib/sentdm/models/brand_contact_info.rb +58 -0
  17. data/lib/sentdm/models/brands_brand_data.rb +34 -0
  18. data/lib/sentdm/models/contact_delete_params.rb +2 -16
  19. data/lib/sentdm/models/contact_list_response.rb +12 -295
  20. data/lib/sentdm/models/contact_message_summary.rb +76 -0
  21. data/lib/sentdm/models/contact_response.rb +139 -0
  22. data/lib/sentdm/models/conversation_messages_list.rb +245 -0
  23. data/lib/sentdm/models/error_detail.rb +42 -0
  24. data/lib/sentdm/models/me_retrieve_response.rb +12 -242
  25. data/lib/sentdm/models/message_retrieve_activities_response.rb +9 -159
  26. data/lib/sentdm/models/message_retrieve_status_response.rb +6 -74
  27. data/lib/sentdm/models/message_send_response.rb +6 -74
  28. data/lib/sentdm/models/mutation_request.rb +20 -0
  29. data/lib/sentdm/models/number_lookup_response.rb +6 -74
  30. data/lib/sentdm/models/pagination_meta.rb +84 -0
  31. data/lib/sentdm/models/payment_details.rb +40 -0
  32. data/lib/sentdm/models/profile_complete_response.rb +6 -74
  33. data/lib/sentdm/models/profile_create_params.rb +9 -345
  34. data/lib/sentdm/models/profile_delete_params.rb +2 -16
  35. data/lib/sentdm/models/profile_detail.rb +650 -0
  36. data/lib/sentdm/models/profile_list_response.rb +12 -815
  37. data/lib/sentdm/models/profile_settings.rb +85 -0
  38. data/lib/sentdm/models/profile_update_params.rb +9 -345
  39. data/lib/sentdm/models/profiles/api_response_of_brand_campaign.rb +45 -0
  40. data/lib/sentdm/models/profiles/api_response_of_list_of_brand_campaign.rb +45 -0
  41. data/lib/sentdm/models/profiles/brand_campaign.rb +247 -0
  42. data/lib/sentdm/models/profiles/campaign_create_params.rb +3 -156
  43. data/lib/sentdm/models/profiles/campaign_data.rb +136 -0
  44. data/lib/sentdm/models/profiles/campaign_delete_params.rb +2 -17
  45. data/lib/sentdm/models/profiles/campaign_update_params.rb +3 -156
  46. data/lib/sentdm/models/profiles/campaign_use_case.rb +71 -0
  47. data/lib/sentdm/models/profiles/campaign_use_case_data.rb +29 -0
  48. data/lib/sentdm/models/template.rb +102 -0
  49. data/lib/sentdm/models/template_list_response.rb +12 -258
  50. data/lib/sentdm/models/user_list_response.rb +12 -249
  51. data/lib/sentdm/models/user_remove_params.rb +2 -16
  52. data/lib/sentdm/models/user_response.rb +94 -0
  53. data/lib/sentdm/models/webhook_event_type.rb +45 -0
  54. data/lib/sentdm/models/webhook_list_event_types_response.rb +12 -203
  55. data/lib/sentdm/models/webhook_list_events_response.rb +9 -157
  56. data/lib/sentdm/models/webhook_list_response.rb +12 -276
  57. data/lib/sentdm/models/webhook_response.rb +120 -0
  58. data/lib/sentdm/models/webhook_rotate_secret_params.rb +2 -17
  59. data/lib/sentdm/models/webhook_rotate_secret_response.rb +6 -74
  60. data/lib/sentdm/models/webhook_test_response.rb +6 -74
  61. data/lib/sentdm/models.rb +52 -0
  62. data/lib/sentdm/resources/contacts.rb +8 -8
  63. data/lib/sentdm/resources/conversations.rb +4 -4
  64. data/lib/sentdm/resources/profiles/campaigns.rb +8 -8
  65. data/lib/sentdm/resources/profiles.rb +12 -12
  66. data/lib/sentdm/resources/templates.rb +6 -6
  67. data/lib/sentdm/resources/users.rb +6 -6
  68. data/lib/sentdm/resources/webhooks.rb +8 -8
  69. data/lib/sentdm/version.rb +1 -1
  70. data/lib/sentdm.rb +32 -22
  71. data/rbi/sentdm/models/api_meta.rbi +55 -0
  72. data/rbi/sentdm/models/api_response_of_contact.rbi +74 -0
  73. data/rbi/sentdm/models/api_response_of_contact_message_summary.rbi +79 -0
  74. data/rbi/sentdm/models/api_response_of_conversation_messages_list.rbi +79 -0
  75. data/rbi/sentdm/models/api_response_of_profile_detail.rbi +74 -0
  76. data/rbi/sentdm/models/api_response_of_user.rbi +74 -0
  77. data/rbi/sentdm/models/api_response_template.rbi +74 -0
  78. data/rbi/sentdm/models/api_response_webhook.rbi +74 -0
  79. data/rbi/sentdm/models/billing_contact_info.rbi +65 -0
  80. data/rbi/sentdm/models/brand_business_info.rbi +162 -0
  81. data/rbi/sentdm/models/brand_compliance_info.rbi +76 -0
  82. data/rbi/sentdm/models/brand_contact_info.rbi +78 -0
  83. data/rbi/sentdm/models/brands_brand_data.rbi +65 -0
  84. data/rbi/sentdm/models/contact_delete_params.rbi +2 -19
  85. data/rbi/sentdm/models/contact_list_response.rbi +16 -522
  86. data/rbi/sentdm/models/contact_message_summary.rbi +144 -0
  87. data/rbi/sentdm/models/contact_response.rbi +200 -0
  88. data/rbi/sentdm/models/conversation_messages_list.rbi +419 -0
  89. data/rbi/sentdm/models/error_detail.rbi +66 -0
  90. data/rbi/sentdm/models/me_retrieve_response.rbi +16 -367
  91. data/rbi/sentdm/models/message_retrieve_activities_response.rbi +12 -325
  92. data/rbi/sentdm/models/message_retrieve_status_response.rbi +8 -148
  93. data/rbi/sentdm/models/message_send_response.rbi +8 -135
  94. data/rbi/sentdm/models/mutation_request.rbi +32 -0
  95. data/rbi/sentdm/models/number_lookup_response.rbi +8 -135
  96. data/rbi/sentdm/models/pagination_meta.rbi +135 -0
  97. data/rbi/sentdm/models/payment_details.rbi +56 -0
  98. data/rbi/sentdm/models/profile_complete_response.rbi +8 -137
  99. data/rbi/sentdm/models/profile_create_params.rbi +12 -546
  100. data/rbi/sentdm/models/profile_delete_params.rbi +2 -19
  101. data/rbi/sentdm/models/profile_detail.rbi +918 -0
  102. data/rbi/sentdm/models/profile_list_response.rbi +16 -1347
  103. data/rbi/sentdm/models/profile_settings.rbi +102 -0
  104. data/rbi/sentdm/models/profile_update_params.rbi +12 -546
  105. data/rbi/sentdm/models/profiles/api_response_of_brand_campaign.rbi +81 -0
  106. data/rbi/sentdm/models/profiles/api_response_of_list_of_brand_campaign.rbi +76 -0
  107. data/rbi/sentdm/models/profiles/brand_campaign.rbi +299 -0
  108. data/rbi/sentdm/models/profiles/campaign_create_params.rbi +4 -218
  109. data/rbi/sentdm/models/profiles/campaign_data.rbi +158 -0
  110. data/rbi/sentdm/models/profiles/campaign_delete_params.rbi +1 -14
  111. data/rbi/sentdm/models/profiles/campaign_update_params.rbi +4 -218
  112. data/rbi/sentdm/models/profiles/campaign_use_case.rbi +110 -0
  113. data/rbi/sentdm/models/profiles/campaign_use_case_data.rbi +51 -0
  114. data/rbi/sentdm/models/template.rbi +139 -0
  115. data/rbi/sentdm/models/template_list_response.rbi +16 -464
  116. data/rbi/sentdm/models/user_list_response.rbi +16 -444
  117. data/rbi/sentdm/models/user_remove_params.rbi +2 -19
  118. data/rbi/sentdm/models/user_response.rbi +131 -0
  119. data/rbi/sentdm/models/webhook_event_type.rbi +74 -0
  120. data/rbi/sentdm/models/webhook_list_event_types_response.rbi +16 -414
  121. data/rbi/sentdm/models/webhook_list_events_response.rbi +12 -314
  122. data/rbi/sentdm/models/webhook_list_response.rbi +16 -475
  123. data/rbi/sentdm/models/webhook_response.rbi +153 -0
  124. data/rbi/sentdm/models/webhook_rotate_secret_params.rbi +1 -14
  125. data/rbi/sentdm/models/webhook_rotate_secret_response.rbi +8 -148
  126. data/rbi/sentdm/models/webhook_test_response.rbi +8 -135
  127. data/rbi/sentdm/models.rbi +54 -0
  128. data/rbi/sentdm/resources/contacts.rbi +4 -4
  129. data/rbi/sentdm/resources/conversations.rbi +2 -2
  130. data/rbi/sentdm/resources/profiles/campaigns.rbi +5 -5
  131. data/rbi/sentdm/resources/profiles.rbi +9 -13
  132. data/rbi/sentdm/resources/templates.rbi +3 -3
  133. data/rbi/sentdm/resources/users.rbi +3 -3
  134. data/rbi/sentdm/resources/webhooks.rbi +4 -4
  135. data/sig/sentdm/models/api_meta.rbs +27 -0
  136. data/sig/sentdm/models/api_response_of_contact.rbs +39 -0
  137. data/sig/sentdm/models/api_response_of_contact_message_summary.rbs +39 -0
  138. data/sig/sentdm/models/api_response_of_conversation_messages_list.rbs +39 -0
  139. data/sig/sentdm/models/api_response_of_profile_detail.rbs +39 -0
  140. data/sig/sentdm/models/api_response_of_user.rbs +39 -0
  141. data/sig/sentdm/models/api_response_template.rbs +39 -0
  142. data/sig/sentdm/models/api_response_webhook.rbs +39 -0
  143. data/sig/sentdm/models/billing_contact_info.rbs +30 -0
  144. data/sig/sentdm/models/brand_business_info.rbs +89 -0
  145. data/sig/sentdm/models/brand_compliance_info.rbs +45 -0
  146. data/sig/sentdm/models/brand_contact_info.rbs +45 -0
  147. data/sig/sentdm/models/brands_brand_data.rbs +30 -0
  148. data/sig/sentdm/models/contact_delete_params.rbs +6 -10
  149. data/sig/sentdm/models/contact_list_response.rbs +20 -263
  150. data/sig/sentdm/models/contact_message_summary.rbs +84 -0
  151. data/sig/sentdm/models/contact_response.rbs +118 -0
  152. data/sig/sentdm/models/conversation_messages_list.rbs +240 -0
  153. data/sig/sentdm/models/error_detail.rbs +39 -0
  154. data/sig/sentdm/models/me_retrieve_response.rbs +18 -176
  155. data/sig/sentdm/models/message_retrieve_activities_response.rbs +14 -142
  156. data/sig/sentdm/models/message_retrieve_status_response.rbs +9 -71
  157. data/sig/sentdm/models/message_send_response.rbs +9 -71
  158. data/sig/sentdm/models/mutation_request.rbs +15 -0
  159. data/sig/sentdm/models/number_lookup_response.rbs +9 -71
  160. data/sig/sentdm/models/pagination_meta.rbs +67 -0
  161. data/sig/sentdm/models/payment_details.rbs +30 -0
  162. data/sig/sentdm/models/profile_complete_response.rbs +9 -71
  163. data/sig/sentdm/models/profile_create_params.rbs +12 -263
  164. data/sig/sentdm/models/profile_delete_params.rbs +6 -10
  165. data/sig/sentdm/models/profile_detail.rbs +461 -0
  166. data/sig/sentdm/models/profile_list_response.rbs +20 -606
  167. data/sig/sentdm/models/profile_settings.rbs +50 -0
  168. data/sig/sentdm/models/profile_update_params.rbs +12 -263
  169. data/sig/sentdm/models/profiles/api_response_of_brand_campaign.rbs +41 -0
  170. data/sig/sentdm/models/profiles/api_response_of_list_of_brand_campaign.rbs +41 -0
  171. data/sig/sentdm/models/profiles/brand_campaign.rbs +194 -0
  172. data/sig/sentdm/models/profiles/campaign_create_params.rbs +4 -108
  173. data/sig/sentdm/models/profiles/campaign_data.rbs +87 -0
  174. data/sig/sentdm/models/profiles/campaign_delete_params.rbs +8 -15
  175. data/sig/sentdm/models/profiles/campaign_update_params.rbs +4 -108
  176. data/sig/sentdm/models/profiles/campaign_use_case.rbs +66 -0
  177. data/sig/sentdm/models/profiles/campaign_use_case_data.rbs +27 -0
  178. data/sig/sentdm/models/template.rbs +84 -0
  179. data/sig/sentdm/models/template_list_response.rbs +19 -230
  180. data/sig/sentdm/models/user_list_response.rbs +20 -224
  181. data/sig/sentdm/models/user_remove_params.rbs +6 -10
  182. data/sig/sentdm/models/user_response.rbs +79 -0
  183. data/sig/sentdm/models/webhook_event_type.rbs +51 -0
  184. data/sig/sentdm/models/webhook_list_event_types_response.rbs +20 -196
  185. data/sig/sentdm/models/webhook_list_events_response.rbs +14 -142
  186. data/sig/sentdm/models/webhook_list_response.rbs +20 -255
  187. data/sig/sentdm/models/webhook_response.rbs +110 -0
  188. data/sig/sentdm/models/webhook_rotate_secret_params.rbs +8 -17
  189. data/sig/sentdm/models/webhook_rotate_secret_response.rbs +9 -71
  190. data/sig/sentdm/models/webhook_test_response.rbs +9 -71
  191. data/sig/sentdm/models.rbs +52 -0
  192. data/sig/sentdm/resources/contacts.rbs +4 -4
  193. data/sig/sentdm/resources/conversations.rbs +2 -2
  194. data/sig/sentdm/resources/profiles/campaigns.rbs +5 -5
  195. data/sig/sentdm/resources/profiles.rbs +9 -9
  196. data/sig/sentdm/resources/templates.rbs +3 -3
  197. data/sig/sentdm/resources/users.rbs +3 -3
  198. data/sig/sentdm/resources/webhooks.rbs +4 -4
  199. metadata +98 -68
  200. data/lib/sentdm/models/contact_create_response.rb +0 -249
  201. data/lib/sentdm/models/contact_retrieve_message_summary_response.rb +0 -186
  202. data/lib/sentdm/models/contact_retrieve_response.rb +0 -249
  203. data/lib/sentdm/models/contact_update_response.rb +0 -249
  204. data/lib/sentdm/models/conversation_list_messages_response.rb +0 -436
  205. data/lib/sentdm/models/conversation_list_response.rb +0 -433
  206. data/lib/sentdm/models/profile_create_response.rb +0 -760
  207. data/lib/sentdm/models/profile_retrieve_response.rb +0 -762
  208. data/lib/sentdm/models/profile_update_response.rb +0 -760
  209. data/lib/sentdm/models/profiles/campaign_create_response.rb +0 -420
  210. data/lib/sentdm/models/profiles/campaign_list_response.rb +0 -421
  211. data/lib/sentdm/models/profiles/campaign_update_response.rb +0 -420
  212. data/lib/sentdm/models/template_create_response.rb +0 -209
  213. data/lib/sentdm/models/template_retrieve_response.rb +0 -209
  214. data/lib/sentdm/models/template_update_response.rb +0 -209
  215. data/lib/sentdm/models/user_invite_response.rb +0 -201
  216. data/lib/sentdm/models/user_retrieve_response.rb +0 -201
  217. data/lib/sentdm/models/user_update_role_response.rb +0 -201
  218. data/lib/sentdm/models/webhook_create_response.rb +0 -229
  219. data/lib/sentdm/models/webhook_retrieve_response.rb +0 -229
  220. data/lib/sentdm/models/webhook_toggle_status_response.rb +0 -229
  221. data/lib/sentdm/models/webhook_update_response.rb +0 -229
  222. data/rbi/sentdm/models/contact_create_response.rbi +0 -407
  223. data/rbi/sentdm/models/contact_retrieve_message_summary_response.rbi +0 -397
  224. data/rbi/sentdm/models/contact_retrieve_response.rbi +0 -409
  225. data/rbi/sentdm/models/contact_update_response.rbi +0 -407
  226. data/rbi/sentdm/models/conversation_list_messages_response.rbi +0 -843
  227. data/rbi/sentdm/models/conversation_list_response.rbi +0 -819
  228. data/rbi/sentdm/models/profile_create_response.rbi +0 -1226
  229. data/rbi/sentdm/models/profile_retrieve_response.rbi +0 -1230
  230. data/rbi/sentdm/models/profile_update_response.rbi +0 -1226
  231. data/rbi/sentdm/models/profiles/campaign_create_response.rbi +0 -674
  232. data/rbi/sentdm/models/profiles/campaign_list_response.rbi +0 -667
  233. data/rbi/sentdm/models/profiles/campaign_update_response.rbi +0 -674
  234. data/rbi/sentdm/models/template_create_response.rbi +0 -349
  235. data/rbi/sentdm/models/template_retrieve_response.rbi +0 -355
  236. data/rbi/sentdm/models/template_update_response.rbi +0 -349
  237. data/rbi/sentdm/models/user_invite_response.rbi +0 -336
  238. data/rbi/sentdm/models/user_retrieve_response.rbi +0 -336
  239. data/rbi/sentdm/models/user_update_role_response.rbi +0 -341
  240. data/rbi/sentdm/models/webhook_create_response.rbi +0 -361
  241. data/rbi/sentdm/models/webhook_retrieve_response.rbi +0 -363
  242. data/rbi/sentdm/models/webhook_toggle_status_response.rbi +0 -379
  243. data/rbi/sentdm/models/webhook_update_response.rbi +0 -361
  244. data/sig/sentdm/models/contact_create_response.rbs +0 -216
  245. data/sig/sentdm/models/contact_retrieve_message_summary_response.rbs +0 -182
  246. data/sig/sentdm/models/contact_retrieve_response.rbs +0 -216
  247. data/sig/sentdm/models/contact_update_response.rbs +0 -216
  248. data/sig/sentdm/models/conversation_list_messages_response.rbs +0 -404
  249. data/sig/sentdm/models/conversation_list_response.rbs +0 -404
  250. data/sig/sentdm/models/profile_create_response.rbs +0 -559
  251. data/sig/sentdm/models/profile_retrieve_response.rbs +0 -559
  252. data/sig/sentdm/models/profile_update_response.rbs +0 -559
  253. data/sig/sentdm/models/profiles/campaign_create_response.rbs +0 -357
  254. data/sig/sentdm/models/profiles/campaign_list_response.rbs +0 -357
  255. data/sig/sentdm/models/profiles/campaign_update_response.rbs +0 -357
  256. data/sig/sentdm/models/template_create_response.rbs +0 -182
  257. data/sig/sentdm/models/template_retrieve_response.rbs +0 -182
  258. data/sig/sentdm/models/template_update_response.rbs +0 -182
  259. data/sig/sentdm/models/user_invite_response.rbs +0 -177
  260. data/sig/sentdm/models/user_retrieve_response.rbs +0 -177
  261. data/sig/sentdm/models/user_update_role_response.rbs +0 -177
  262. data/sig/sentdm/models/webhook_create_response.rbs +0 -208
  263. data/sig/sentdm/models/webhook_retrieve_response.rbs +0 -208
  264. data/sig/sentdm/models/webhook_toggle_status_response.rbs +0 -208
  265. data/sig/sentdm/models/webhook_update_response.rbs +0 -208
@@ -0,0 +1,247 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module Profiles
6
+ class BrandCampaign < Sentdm::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ #
9
+ # @return [String, nil]
10
+ optional :id, String
11
+
12
+ # @!attribute billed_date
13
+ #
14
+ # @return [Time, nil]
15
+ optional :billed_date, Time, api_name: :billedDate, nil?: true
16
+
17
+ # @!attribute brand_id
18
+ #
19
+ # @return [String, nil]
20
+ optional :brand_id, String, api_name: :brandId, nil?: true
21
+
22
+ # @!attribute cost
23
+ #
24
+ # @return [Float, nil]
25
+ optional :cost, Float, nil?: true
26
+
27
+ # @!attribute created_at
28
+ #
29
+ # @return [Time, nil]
30
+ optional :created_at, Time, api_name: :createdAt
31
+
32
+ # @!attribute customer_id
33
+ #
34
+ # @return [String, nil]
35
+ optional :customer_id, String, api_name: :customerId
36
+
37
+ # @!attribute dca_elections_complete
38
+ # True once every carrier has completed its DCA election and the campaign is
39
+ # operationally ready for traffic.
40
+ #
41
+ # @return [Boolean, nil]
42
+ optional :dca_elections_complete,
43
+ Sentdm::Internal::Type::Boolean,
44
+ api_name: :dcaElectionsComplete,
45
+ nil?: true
46
+
47
+ # @!attribute dca_elections_completed_at
48
+ #
49
+ # @return [Time, nil]
50
+ optional :dca_elections_completed_at, Time, api_name: :dcaElectionsCompletedAt, nil?: true
51
+
52
+ # @!attribute description
53
+ #
54
+ # @return [String, nil]
55
+ optional :description, String
56
+
57
+ # @!attribute has_submission_transaction
58
+ # True when the one-time campaign submission fee has already been charged.
59
+ #
60
+ # @return [Boolean, nil]
61
+ optional :has_submission_transaction,
62
+ Sentdm::Internal::Type::Boolean,
63
+ api_name: :hasSubmissionTransaction
64
+
65
+ # @!attribute help_keywords
66
+ #
67
+ # @return [String, nil]
68
+ optional :help_keywords, String, api_name: :helpKeywords, nil?: true
69
+
70
+ # @!attribute help_message
71
+ #
72
+ # @return [String, nil]
73
+ optional :help_message, String, api_name: :helpMessage, nil?: true
74
+
75
+ # @!attribute message_flow
76
+ #
77
+ # @return [String, nil]
78
+ optional :message_flow, String, api_name: :messageFlow, nil?: true
79
+
80
+ # @!attribute name
81
+ #
82
+ # @return [String, nil]
83
+ optional :name, String
84
+
85
+ # @!attribute optin_keywords
86
+ #
87
+ # @return [String, nil]
88
+ optional :optin_keywords, String, api_name: :optinKeywords, nil?: true
89
+
90
+ # @!attribute optin_message
91
+ #
92
+ # @return [String, nil]
93
+ optional :optin_message, String, api_name: :optinMessage, nil?: true
94
+
95
+ # @!attribute optout_keywords
96
+ #
97
+ # @return [String, nil]
98
+ optional :optout_keywords, String, api_name: :optoutKeywords, nil?: true
99
+
100
+ # @!attribute optout_message
101
+ #
102
+ # @return [String, nil]
103
+ optional :optout_message, String, api_name: :optoutMessage, nil?: true
104
+
105
+ # @!attribute privacy_policy_link
106
+ #
107
+ # @return [String, nil]
108
+ optional :privacy_policy_link, String, api_name: :privacyPolicyLink, nil?: true
109
+
110
+ # @!attribute status
111
+ #
112
+ # @return [Symbol, Sentdm::Models::Profiles::BrandCampaign::Status, nil]
113
+ optional :status, enum: -> { Sentdm::Profiles::BrandCampaign::Status }, nil?: true
114
+
115
+ # @!attribute submitted_at
116
+ #
117
+ # @return [Time, nil]
118
+ optional :submitted_at, Time, api_name: :submittedAt, nil?: true
119
+
120
+ # @!attribute submitted_to_tcr
121
+ #
122
+ # @return [Boolean, nil]
123
+ optional :submitted_to_tcr, Sentdm::Internal::Type::Boolean, api_name: :submittedToTCR
124
+
125
+ # @!attribute tcr_campaign_id
126
+ # The Campaign Registry identifier, once the campaign has been accepted.
127
+ #
128
+ # @return [String, nil]
129
+ optional :tcr_campaign_id, String, api_name: :tcrCampaignId, nil?: true
130
+
131
+ # @!attribute tcr_sync_error
132
+ # Surfaced so customers can see why a submission did not reach the registry.
133
+ #
134
+ # @return [String, nil]
135
+ optional :tcr_sync_error, String, api_name: :tcrSyncError, nil?: true
136
+
137
+ # @!attribute terms_and_conditions_link
138
+ #
139
+ # @return [String, nil]
140
+ optional :terms_and_conditions_link, String, api_name: :termsAndConditionsLink, nil?: true
141
+
142
+ # @!attribute type
143
+ # Campaign type (for example KYC or App).
144
+ #
145
+ # @return [String, nil]
146
+ optional :type, String
147
+
148
+ # @!attribute updated_at
149
+ #
150
+ # @return [Time, nil]
151
+ optional :updated_at, Time, api_name: :updatedAt, nil?: true
152
+
153
+ # @!attribute use_cases
154
+ #
155
+ # @return [Array<Sentdm::Models::Profiles::CampaignUseCase>, nil]
156
+ optional :use_cases,
157
+ -> { Sentdm::Internal::Type::ArrayOf[Sentdm::Profiles::CampaignUseCase] },
158
+ api_name: :useCases
159
+
160
+ # @!attribute volume
161
+ # Expected messaging volume for this campaign — customer-supplied on
162
+ # create/update, and the input to both the TCR usecase classification (LOW_VOLUME
163
+ # vs MIXED/specific) and the campaign fee tier. Surfaced so customers can read
164
+ # back the value they set.
165
+ #
166
+ # @return [String, nil]
167
+ optional :volume, String, nil?: true
168
+
169
+ # @!method initialize(id: nil, billed_date: nil, brand_id: nil, cost: nil, created_at: nil, customer_id: nil, dca_elections_complete: nil, dca_elections_completed_at: nil, description: nil, has_submission_transaction: nil, help_keywords: nil, help_message: nil, message_flow: nil, name: nil, optin_keywords: nil, optin_message: nil, optout_keywords: nil, optout_message: nil, privacy_policy_link: nil, status: nil, submitted_at: nil, submitted_to_tcr: nil, tcr_campaign_id: nil, tcr_sync_error: nil, terms_and_conditions_link: nil, type: nil, updated_at: nil, use_cases: nil, volume: nil)
170
+ # Some parameter documentations has been truncated, see
171
+ # {Sentdm::Models::Profiles::BrandCampaign} for more details.
172
+ #
173
+ # A 10DLC campaign registered for a brand.
174
+ #
175
+ # @param id [String]
176
+ #
177
+ # @param billed_date [Time, nil]
178
+ #
179
+ # @param brand_id [String, nil]
180
+ #
181
+ # @param cost [Float, nil]
182
+ #
183
+ # @param created_at [Time]
184
+ #
185
+ # @param customer_id [String]
186
+ #
187
+ # @param dca_elections_complete [Boolean, nil] True once every carrier has completed its DCA election and the campaign is
188
+ #
189
+ # @param dca_elections_completed_at [Time, nil]
190
+ #
191
+ # @param description [String]
192
+ #
193
+ # @param has_submission_transaction [Boolean] True when the one-time campaign submission fee has already been charged.
194
+ #
195
+ # @param help_keywords [String, nil]
196
+ #
197
+ # @param help_message [String, nil]
198
+ #
199
+ # @param message_flow [String, nil]
200
+ #
201
+ # @param name [String]
202
+ #
203
+ # @param optin_keywords [String, nil]
204
+ #
205
+ # @param optin_message [String, nil]
206
+ #
207
+ # @param optout_keywords [String, nil]
208
+ #
209
+ # @param optout_message [String, nil]
210
+ #
211
+ # @param privacy_policy_link [String, nil]
212
+ #
213
+ # @param status [Symbol, Sentdm::Models::Profiles::BrandCampaign::Status, nil]
214
+ #
215
+ # @param submitted_at [Time, nil]
216
+ #
217
+ # @param submitted_to_tcr [Boolean]
218
+ #
219
+ # @param tcr_campaign_id [String, nil] The Campaign Registry identifier, once the campaign has been accepted.
220
+ #
221
+ # @param tcr_sync_error [String, nil] Surfaced so customers can see why a submission did not reach the registry.
222
+ #
223
+ # @param terms_and_conditions_link [String, nil]
224
+ #
225
+ # @param type [String] Campaign type (for example KYC or App).
226
+ #
227
+ # @param updated_at [Time, nil]
228
+ #
229
+ # @param use_cases [Array<Sentdm::Models::Profiles::CampaignUseCase>]
230
+ #
231
+ # @param volume [String, nil] Expected messaging volume for this campaign — customer-supplied on create/update
232
+
233
+ # @see Sentdm::Models::Profiles::BrandCampaign#status
234
+ module Status
235
+ extend Sentdm::Internal::Type::Enum
236
+
237
+ SENT_CREATED = :SENT_CREATED
238
+ ACTIVE = :ACTIVE
239
+ EXPIRED = :EXPIRED
240
+
241
+ # @!method self.values
242
+ # @return [Array<Symbol>]
243
+ end
244
+ end
245
+ end
246
+ end
247
+ end
@@ -16,8 +16,8 @@ module Sentdm
16
16
  # @!attribute campaign
17
17
  # Campaign data for create or update operation
18
18
  #
19
- # @return [Sentdm::Models::Profiles::CampaignCreateParams::Campaign]
20
- required :campaign, -> { Sentdm::Profiles::CampaignCreateParams::Campaign }
19
+ # @return [Sentdm::Models::Profiles::CampaignData]
20
+ required :campaign, -> { Sentdm::Profiles::CampaignData }
21
21
 
22
22
  # @!attribute sandbox
23
23
  # Sandbox flag - when true, the operation is simulated without side effects Useful
@@ -42,7 +42,7 @@ module Sentdm
42
42
  #
43
43
  # @param profile_id [String]
44
44
  #
45
- # @param campaign [Sentdm::Models::Profiles::CampaignCreateParams::Campaign] Campaign data for create or update operation
45
+ # @param campaign [Sentdm::Models::Profiles::CampaignData] Campaign data for create or update operation
46
46
  #
47
47
  # @param sandbox [Boolean] Sandbox flag - when true, the operation is simulated without side effects
48
48
  #
@@ -51,159 +51,6 @@ module Sentdm
51
51
  # @param x_profile_id [String]
52
52
  #
53
53
  # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
54
-
55
- class Campaign < Sentdm::Internal::Type::BaseModel
56
- # @!attribute description
57
- # Campaign description
58
- #
59
- # @return [String]
60
- required :description, String
61
-
62
- # @!attribute name
63
- # Campaign name
64
- #
65
- # @return [String]
66
- required :name, String
67
-
68
- # @!attribute type
69
- # Campaign type (e.g., "KYC", "App").
70
- #
71
- # Still required of a caller, and consulted by nothing. It named the signup path
72
- # that produced the campaign, was written to a column no query filters on, no TCR
73
- # payload carries and no fee or status decision reads, and is now defaulted at the
74
- # entity instead. It stays required so that a request which was valid before is
75
- # still valid — dropping it would be the client-visible change, not keeping it.
76
- #
77
- # @return [String]
78
- required :type, String
79
-
80
- # @!attribute use_cases
81
- # List of use cases with sample messages
82
- #
83
- # @return [Array<Sentdm::Models::Profiles::CampaignCreateParams::Campaign::UseCase>]
84
- required :use_cases,
85
- -> {
86
- Sentdm::Internal::Type::ArrayOf[Sentdm::Profiles::CampaignCreateParams::Campaign::UseCase]
87
- },
88
- api_name: :useCases
89
-
90
- # @!attribute help_keywords
91
- # Comma-separated keywords that trigger help message (e.g., "HELP, INFO, SUPPORT")
92
- #
93
- # @return [String, nil]
94
- optional :help_keywords, String, api_name: :helpKeywords, nil?: true
95
-
96
- # @!attribute help_message
97
- # Message sent when user requests help
98
- #
99
- # @return [String, nil]
100
- optional :help_message, String, api_name: :helpMessage, nil?: true
101
-
102
- # @!attribute message_flow
103
- # Description of how messages flow in the campaign
104
- #
105
- # @return [String, nil]
106
- optional :message_flow, String, api_name: :messageFlow, nil?: true
107
-
108
- # @!attribute optin_keywords
109
- # Comma-separated keywords that trigger opt-in (e.g., "YES, START, SUBSCRIBE")
110
- #
111
- # @return [String, nil]
112
- optional :optin_keywords, String, api_name: :optinKeywords, nil?: true
113
-
114
- # @!attribute optin_message
115
- # Message sent when user opts in
116
- #
117
- # @return [String, nil]
118
- optional :optin_message, String, api_name: :optinMessage, nil?: true
119
-
120
- # @!attribute optout_keywords
121
- # Comma-separated keywords that trigger opt-out (e.g., "STOP, UNSUBSCRIBE, END")
122
- #
123
- # @return [String, nil]
124
- optional :optout_keywords, String, api_name: :optoutKeywords, nil?: true
125
-
126
- # @!attribute optout_message
127
- # Message sent when user opts out
128
- #
129
- # @return [String, nil]
130
- optional :optout_message, String, api_name: :optoutMessage, nil?: true
131
-
132
- # @!attribute privacy_policy_link
133
- # URL to privacy policy
134
- #
135
- # @return [String, nil]
136
- optional :privacy_policy_link, String, api_name: :privacyPolicyLink, nil?: true
137
-
138
- # @!attribute terms_and_conditions_link
139
- # URL to terms and conditions
140
- #
141
- # @return [String, nil]
142
- optional :terms_and_conditions_link, String, api_name: :termsAndConditionsLink, nil?: true
143
-
144
- # @!attribute volume
145
- # Expected messaging volume for this campaign. Numeric string (e.g. "1999",
146
- # "5000"). Values below 2000 bill at the low-volume tier.
147
- #
148
- # @return [String, nil]
149
- optional :volume, String, nil?: true
150
-
151
- # @!method initialize(description:, name:, type:, use_cases:, help_keywords: nil, help_message: nil, message_flow: nil, optin_keywords: nil, optin_message: nil, optout_keywords: nil, optout_message: nil, privacy_policy_link: nil, terms_and_conditions_link: nil, volume: nil)
152
- # Some parameter documentations has been truncated, see
153
- # {Sentdm::Models::Profiles::CampaignCreateParams::Campaign} for more details.
154
- #
155
- # Campaign data for create or update operation
156
- #
157
- # @param description [String] Campaign description
158
- #
159
- # @param name [String] Campaign name
160
- #
161
- # @param type [String] Campaign type (e.g., "KYC", "App").
162
- #
163
- # @param use_cases [Array<Sentdm::Models::Profiles::CampaignCreateParams::Campaign::UseCase>] List of use cases with sample messages
164
- #
165
- # @param help_keywords [String, nil] Comma-separated keywords that trigger help message (e.g., "HELP, INFO, SUPPORT")
166
- #
167
- # @param help_message [String, nil] Message sent when user requests help
168
- #
169
- # @param message_flow [String, nil] Description of how messages flow in the campaign
170
- #
171
- # @param optin_keywords [String, nil] Comma-separated keywords that trigger opt-in (e.g., "YES, START, SUBSCRIBE")
172
- #
173
- # @param optin_message [String, nil] Message sent when user opts in
174
- #
175
- # @param optout_keywords [String, nil] Comma-separated keywords that trigger opt-out (e.g., "STOP, UNSUBSCRIBE, END")
176
- #
177
- # @param optout_message [String, nil] Message sent when user opts out
178
- #
179
- # @param privacy_policy_link [String, nil] URL to privacy policy
180
- #
181
- # @param terms_and_conditions_link [String, nil] URL to terms and conditions
182
- #
183
- # @param volume [String, nil] Expected messaging volume for this campaign. Numeric string (e.g. "1999", "5000"
184
-
185
- class UseCase < Sentdm::Internal::Type::BaseModel
186
- # @!attribute messaging_use_case_us
187
- #
188
- # @return [Symbol, Sentdm::Models::Profiles::MessagingUseCaseUs]
189
- required :messaging_use_case_us,
190
- enum: -> { Sentdm::Profiles::MessagingUseCaseUs },
191
- api_name: :messagingUseCaseUs
192
-
193
- # @!attribute sample_messages
194
- # Sample messages for this use case (1-5 messages, max 1024 characters each)
195
- #
196
- # @return [Array<String>]
197
- required :sample_messages, Sentdm::Internal::Type::ArrayOf[String], api_name: :sampleMessages
198
-
199
- # @!method initialize(messaging_use_case_us:, sample_messages:)
200
- # Campaign use case with sample messages
201
- #
202
- # @param messaging_use_case_us [Symbol, Sentdm::Models::Profiles::MessagingUseCaseUs]
203
- #
204
- # @param sample_messages [Array<String>] Sample messages for this use case (1-5 messages, max 1024 characters each)
205
- end
206
- end
207
54
  end
208
55
  end
209
56
  end
@@ -0,0 +1,136 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module Profiles
6
+ class CampaignData < Sentdm::Internal::Type::BaseModel
7
+ # @!attribute description
8
+ # Campaign description
9
+ #
10
+ # @return [String]
11
+ required :description, String
12
+
13
+ # @!attribute name
14
+ # Campaign name
15
+ #
16
+ # @return [String]
17
+ required :name, String
18
+
19
+ # @!attribute type
20
+ # Campaign type (e.g., "KYC", "App").
21
+ #
22
+ # Still required of a caller, and consulted by nothing. It named the signup path
23
+ # that produced the campaign, was written to a column no query filters on, no TCR
24
+ # payload carries and no fee or status decision reads, and is now defaulted at the
25
+ # entity instead. It stays required so that a request which was valid before is
26
+ # still valid — dropping it would be the client-visible change, not keeping it.
27
+ #
28
+ # @return [String]
29
+ required :type, String
30
+
31
+ # @!attribute use_cases
32
+ # List of use cases with sample messages
33
+ #
34
+ # @return [Array<Sentdm::Models::Profiles::CampaignUseCaseData>]
35
+ required :use_cases,
36
+ -> { Sentdm::Internal::Type::ArrayOf[Sentdm::Profiles::CampaignUseCaseData] },
37
+ api_name: :useCases
38
+
39
+ # @!attribute help_keywords
40
+ # Comma-separated keywords that trigger help message (e.g., "HELP, INFO, SUPPORT")
41
+ #
42
+ # @return [String, nil]
43
+ optional :help_keywords, String, api_name: :helpKeywords, nil?: true
44
+
45
+ # @!attribute help_message
46
+ # Message sent when user requests help
47
+ #
48
+ # @return [String, nil]
49
+ optional :help_message, String, api_name: :helpMessage, nil?: true
50
+
51
+ # @!attribute message_flow
52
+ # Description of how messages flow in the campaign
53
+ #
54
+ # @return [String, nil]
55
+ optional :message_flow, String, api_name: :messageFlow, nil?: true
56
+
57
+ # @!attribute optin_keywords
58
+ # Comma-separated keywords that trigger opt-in (e.g., "YES, START, SUBSCRIBE")
59
+ #
60
+ # @return [String, nil]
61
+ optional :optin_keywords, String, api_name: :optinKeywords, nil?: true
62
+
63
+ # @!attribute optin_message
64
+ # Message sent when user opts in
65
+ #
66
+ # @return [String, nil]
67
+ optional :optin_message, String, api_name: :optinMessage, nil?: true
68
+
69
+ # @!attribute optout_keywords
70
+ # Comma-separated keywords that trigger opt-out (e.g., "STOP, UNSUBSCRIBE, END")
71
+ #
72
+ # @return [String, nil]
73
+ optional :optout_keywords, String, api_name: :optoutKeywords, nil?: true
74
+
75
+ # @!attribute optout_message
76
+ # Message sent when user opts out
77
+ #
78
+ # @return [String, nil]
79
+ optional :optout_message, String, api_name: :optoutMessage, nil?: true
80
+
81
+ # @!attribute privacy_policy_link
82
+ # URL to privacy policy
83
+ #
84
+ # @return [String, nil]
85
+ optional :privacy_policy_link, String, api_name: :privacyPolicyLink, nil?: true
86
+
87
+ # @!attribute terms_and_conditions_link
88
+ # URL to terms and conditions
89
+ #
90
+ # @return [String, nil]
91
+ optional :terms_and_conditions_link, String, api_name: :termsAndConditionsLink, nil?: true
92
+
93
+ # @!attribute volume
94
+ # Expected messaging volume for this campaign. Numeric string (e.g. "1999",
95
+ # "5000"). Values below 2000 bill at the low-volume tier.
96
+ #
97
+ # @return [String, nil]
98
+ optional :volume, String, nil?: true
99
+
100
+ # @!method initialize(description:, name:, type:, use_cases:, help_keywords: nil, help_message: nil, message_flow: nil, optin_keywords: nil, optin_message: nil, optout_keywords: nil, optout_message: nil, privacy_policy_link: nil, terms_and_conditions_link: nil, volume: nil)
101
+ # Some parameter documentations has been truncated, see
102
+ # {Sentdm::Models::Profiles::CampaignData} for more details.
103
+ #
104
+ # Campaign data for create or update operation
105
+ #
106
+ # @param description [String] Campaign description
107
+ #
108
+ # @param name [String] Campaign name
109
+ #
110
+ # @param type [String] Campaign type (e.g., "KYC", "App").
111
+ #
112
+ # @param use_cases [Array<Sentdm::Models::Profiles::CampaignUseCaseData>] List of use cases with sample messages
113
+ #
114
+ # @param help_keywords [String, nil] Comma-separated keywords that trigger help message (e.g., "HELP, INFO, SUPPORT")
115
+ #
116
+ # @param help_message [String, nil] Message sent when user requests help
117
+ #
118
+ # @param message_flow [String, nil] Description of how messages flow in the campaign
119
+ #
120
+ # @param optin_keywords [String, nil] Comma-separated keywords that trigger opt-in (e.g., "YES, START, SUBSCRIBE")
121
+ #
122
+ # @param optin_message [String, nil] Message sent when user opts in
123
+ #
124
+ # @param optout_keywords [String, nil] Comma-separated keywords that trigger opt-out (e.g., "STOP, UNSUBSCRIBE, END")
125
+ #
126
+ # @param optout_message [String, nil] Message sent when user opts out
127
+ #
128
+ # @param privacy_policy_link [String, nil] URL to privacy policy
129
+ #
130
+ # @param terms_and_conditions_link [String, nil] URL to terms and conditions
131
+ #
132
+ # @param volume [String, nil] Expected messaging volume for this campaign. Numeric string (e.g. "1999", "5000"
133
+ end
134
+ end
135
+ end
136
+ end
@@ -4,7 +4,7 @@ module Sentdm
4
4
  module Models
5
5
  module Profiles
6
6
  # @see Sentdm::Resources::Profiles::Campaigns#delete
7
- class CampaignDeleteParams < Sentdm::Internal::Type::BaseModel
7
+ class CampaignDeleteParams < Sentdm::Models::MutationRequest
8
8
  extend Sentdm::Internal::Type::RequestParameters::Converter
9
9
  include Sentdm::Internal::Type::RequestParameters
10
10
 
@@ -18,30 +18,15 @@ module Sentdm
18
18
  # @return [String]
19
19
  required :campaign_id, String
20
20
 
21
- # @!attribute sandbox
22
- # Sandbox flag - when true, the operation is simulated without side effects Useful
23
- # for testing integrations without actual execution
24
- #
25
- # @return [Boolean, nil]
26
- optional :sandbox, Sentdm::Internal::Type::Boolean
27
-
28
21
  # @!attribute x_profile_id
29
22
  #
30
23
  # @return [String, nil]
31
24
  optional :x_profile_id, String
32
25
 
33
- # @!method initialize(profile_id:, campaign_id:, sandbox: nil, x_profile_id: nil, request_options: {})
34
- # Some parameter documentations has been truncated, see
35
- # {Sentdm::Models::Profiles::CampaignDeleteParams} for more details.
36
- #
26
+ # @!method initialize(profile_id:, campaign_id:, x_profile_id: nil, request_options: {})
37
27
  # @param profile_id [String]
38
- #
39
28
  # @param campaign_id [String]
40
- #
41
- # @param sandbox [Boolean] Sandbox flag - when true, the operation is simulated without side effects
42
- #
43
29
  # @param x_profile_id [String]
44
- #
45
30
  # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
46
31
  end
47
32
  end