sentdm 0.19.0 → 0.20.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 (284) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/README.md +31 -1
  4. data/lib/sentdm/internal/type/base_model.rb +5 -5
  5. data/lib/sentdm/internal/type/enum.rb +25 -0
  6. data/lib/sentdm/models/api_meta.rb +34 -0
  7. data/lib/sentdm/models/api_response_of_contact.rb +46 -0
  8. data/lib/sentdm/models/api_response_of_profile_detail.rb +43 -0
  9. data/lib/sentdm/models/api_response_of_user.rb +43 -0
  10. data/lib/sentdm/models/api_response_template.rb +43 -0
  11. data/lib/sentdm/models/api_response_webhook.rb +43 -0
  12. data/lib/sentdm/models/billing_contact_info.rb +47 -0
  13. data/lib/sentdm/models/brands_brand_data.rb +38 -0
  14. data/lib/sentdm/models/contact_delete_params.rb +2 -16
  15. data/lib/sentdm/models/contact_list_response.rb +12 -278
  16. data/lib/sentdm/models/contact_response.rb +126 -0
  17. data/lib/sentdm/models/destination_country.rb +21 -0
  18. data/lib/sentdm/models/error_detail.rb +42 -0
  19. data/lib/sentdm/models/me_retrieve_response.rb +12 -204
  20. data/lib/sentdm/models/message_retrieve_activities_response.rb +6 -74
  21. data/lib/sentdm/models/message_retrieve_status_response.rb +6 -74
  22. data/lib/sentdm/models/message_send_response.rb +6 -74
  23. data/lib/sentdm/models/mutation_request.rb +20 -0
  24. data/lib/sentdm/models/number_lookup_response.rb +6 -74
  25. data/lib/sentdm/models/pagination_meta.rb +80 -0
  26. data/lib/sentdm/models/payment_details.rb +44 -0
  27. data/lib/sentdm/models/profile_complete_response.rb +6 -74
  28. data/lib/sentdm/models/profile_create_params.rb +9 -423
  29. data/lib/sentdm/models/profile_delete_params.rb +2 -16
  30. data/lib/sentdm/models/profile_detail.rb +605 -0
  31. data/lib/sentdm/models/profile_list_response.rb +9 -753
  32. data/lib/sentdm/models/profile_settings.rb +66 -0
  33. data/lib/sentdm/models/profile_update_params.rb +9 -423
  34. data/lib/sentdm/models/profiles/api_response_of_tcr_campaign_with_use_cases.rb +45 -0
  35. data/lib/sentdm/models/profiles/base_dto.rb +32 -0
  36. data/lib/sentdm/models/profiles/campaign_create_params.rb +3 -165
  37. data/lib/sentdm/models/profiles/campaign_data.rb +123 -0
  38. data/lib/sentdm/models/profiles/campaign_delete_params.rb +2 -17
  39. data/lib/sentdm/models/profiles/campaign_list_response.rb +9 -420
  40. data/lib/sentdm/models/profiles/campaign_update_params.rb +3 -165
  41. data/lib/sentdm/models/profiles/messaging_use_case_us.rb +28 -0
  42. data/lib/sentdm/models/profiles/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rb +29 -0
  43. data/lib/sentdm/models/profiles/tcr_campaign_with_use_cases.rb +248 -0
  44. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rb +34 -0
  45. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rb +48 -0
  46. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rb +38 -0
  47. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rb +81 -0
  48. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rb +34 -0
  49. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rb +39 -0
  50. data/lib/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_business_info.rb +116 -0
  51. data/lib/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_compliance_info.rb +75 -0
  52. data/lib/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_contact_info.rb +58 -0
  53. data/lib/sentdm/models/tcr_brand_relationship.rb +18 -0
  54. data/lib/sentdm/models/tcr_vertical.rb +36 -0
  55. data/lib/sentdm/models/template.rb +90 -0
  56. data/lib/sentdm/models/template_body_content.rb +27 -0
  57. data/lib/sentdm/models/template_create_params.rb +3 -889
  58. data/lib/sentdm/models/template_definition.rb +66 -0
  59. data/lib/sentdm/models/template_list_response.rb +12 -242
  60. data/lib/sentdm/models/template_update_params.rb +3 -889
  61. data/lib/sentdm/models/template_variable.rb +80 -0
  62. data/lib/sentdm/models/user_list_response.rb +9 -154
  63. data/lib/sentdm/models/user_remove_params.rb +2 -16
  64. data/lib/sentdm/models/user_response.rb +82 -0
  65. data/lib/sentdm/models/webhook_event_type.rb +45 -0
  66. data/lib/sentdm/models/webhook_list_event_types_response.rb +9 -118
  67. data/lib/sentdm/models/webhook_list_events_response.rb +9 -153
  68. data/lib/sentdm/models/webhook_list_response.rb +12 -247
  69. data/lib/sentdm/models/webhook_response.rb +95 -0
  70. data/lib/sentdm/models/webhook_rotate_secret_params.rb +2 -17
  71. data/lib/sentdm/models/webhook_rotate_secret_response.rb +6 -74
  72. data/lib/sentdm/models/webhook_test_response.rb +6 -74
  73. data/lib/sentdm/models.rb +77 -0
  74. data/lib/sentdm/resources/contacts.rb +6 -6
  75. data/lib/sentdm/resources/profiles/campaigns.rb +6 -6
  76. data/lib/sentdm/resources/profiles.rb +12 -12
  77. data/lib/sentdm/resources/templates.rb +8 -8
  78. data/lib/sentdm/resources/users.rb +6 -6
  79. data/lib/sentdm/resources/webhooks.rb +8 -8
  80. data/lib/sentdm/version.rb +1 -1
  81. data/lib/sentdm.rb +40 -18
  82. data/rbi/sentdm/models/api_meta.rbi +55 -0
  83. data/rbi/sentdm/models/api_response_of_contact.rbi +74 -0
  84. data/rbi/sentdm/models/api_response_of_profile_detail.rbi +74 -0
  85. data/rbi/sentdm/models/api_response_of_user.rbi +74 -0
  86. data/rbi/sentdm/models/api_response_template.rbi +74 -0
  87. data/rbi/sentdm/models/api_response_webhook.rbi +74 -0
  88. data/rbi/sentdm/models/billing_contact_info.rbi +65 -0
  89. data/rbi/sentdm/models/brands_brand_data.rbi +104 -0
  90. data/rbi/sentdm/models/contact_delete_params.rbi +2 -19
  91. data/rbi/sentdm/models/contact_list_response.rbi +16 -505
  92. data/rbi/sentdm/models/contact_response.rbi +183 -0
  93. data/rbi/sentdm/models/destination_country.rbi +32 -0
  94. data/rbi/sentdm/models/error_detail.rbi +66 -0
  95. data/rbi/sentdm/models/me_retrieve_response.rbi +16 -335
  96. data/rbi/sentdm/models/message_retrieve_activities_response.rbi +8 -154
  97. data/rbi/sentdm/models/message_retrieve_status_response.rbi +8 -148
  98. data/rbi/sentdm/models/message_send_response.rbi +8 -135
  99. data/rbi/sentdm/models/mutation_request.rbi +32 -0
  100. data/rbi/sentdm/models/number_lookup_response.rbi +8 -135
  101. data/rbi/sentdm/models/pagination_meta.rbi +135 -0
  102. data/rbi/sentdm/models/payment_details.rbi +59 -0
  103. data/rbi/sentdm/models/profile_complete_response.rbi +8 -137
  104. data/rbi/sentdm/models/profile_create_params.rbi +12 -810
  105. data/rbi/sentdm/models/profile_delete_params.rbi +2 -19
  106. data/rbi/sentdm/models/profile_detail.rbi +874 -0
  107. data/rbi/sentdm/models/profile_list_response.rbi +14 -1400
  108. data/rbi/sentdm/models/profile_settings.rbi +86 -0
  109. data/rbi/sentdm/models/profile_update_params.rbi +12 -810
  110. data/rbi/sentdm/models/profiles/api_response_of_tcr_campaign_with_use_cases.rbi +83 -0
  111. data/rbi/sentdm/models/profiles/base_dto.rbi +53 -0
  112. data/rbi/sentdm/models/profiles/campaign_create_params.rbi +4 -289
  113. data/rbi/sentdm/models/profiles/campaign_data.rbi +148 -0
  114. data/rbi/sentdm/models/profiles/campaign_delete_params.rbi +1 -14
  115. data/rbi/sentdm/models/profiles/campaign_list_response.rbi +11 -733
  116. data/rbi/sentdm/models/profiles/campaign_update_params.rbi +4 -289
  117. data/rbi/sentdm/models/profiles/messaging_use_case_us.rbi +73 -0
  118. data/rbi/sentdm/models/profiles/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rbi +51 -0
  119. data/rbi/sentdm/models/profiles/tcr_campaign_with_use_cases.rbi +425 -0
  120. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rbi +56 -0
  121. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rbi +87 -0
  122. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rbi +72 -0
  123. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rbi +104 -0
  124. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rbi +57 -0
  125. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rbi +59 -0
  126. data/rbi/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_business_info.rbi +180 -0
  127. data/rbi/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_compliance_info.rbi +95 -0
  128. data/rbi/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_contact_info.rbi +81 -0
  129. data/rbi/sentdm/models/tcr_brand_relationship.rbi +30 -0
  130. data/rbi/sentdm/models/tcr_vertical.rbi +41 -0
  131. data/rbi/sentdm/models/template.rbi +129 -0
  132. data/rbi/sentdm/models/template_body_content.rbi +43 -0
  133. data/rbi/sentdm/models/template_create_params.rbi +4 -1701
  134. data/rbi/sentdm/models/template_definition.rbi +164 -0
  135. data/rbi/sentdm/models/template_list_response.rbi +16 -454
  136. data/rbi/sentdm/models/template_update_params.rbi +4 -1701
  137. data/rbi/sentdm/models/template_variable.rbi +120 -0
  138. data/rbi/sentdm/models/user_list_response.rbi +14 -271
  139. data/rbi/sentdm/models/user_remove_params.rbi +2 -19
  140. data/rbi/sentdm/models/user_response.rbi +118 -0
  141. data/rbi/sentdm/models/webhook_event_type.rbi +74 -0
  142. data/rbi/sentdm/models/webhook_list_event_types_response.rbi +12 -247
  143. data/rbi/sentdm/models/webhook_list_events_response.rbi +12 -314
  144. data/rbi/sentdm/models/webhook_list_response.rbi +16 -462
  145. data/rbi/sentdm/models/webhook_response.rbi +140 -0
  146. data/rbi/sentdm/models/webhook_rotate_secret_params.rbi +1 -14
  147. data/rbi/sentdm/models/webhook_rotate_secret_response.rbi +8 -148
  148. data/rbi/sentdm/models/webhook_test_response.rbi +8 -135
  149. data/rbi/sentdm/models.rbi +77 -0
  150. data/rbi/sentdm/resources/contacts.rbi +3 -3
  151. data/rbi/sentdm/resources/profiles/campaigns.rbi +4 -4
  152. data/rbi/sentdm/resources/profiles.rbi +9 -13
  153. data/rbi/sentdm/resources/templates.rbi +5 -6
  154. data/rbi/sentdm/resources/users.rbi +3 -3
  155. data/rbi/sentdm/resources/webhooks.rbi +4 -4
  156. data/sig/sentdm/models/api_meta.rbs +27 -0
  157. data/sig/sentdm/models/api_response_of_contact.rbs +39 -0
  158. data/sig/sentdm/models/api_response_of_profile_detail.rbs +39 -0
  159. data/sig/sentdm/models/api_response_of_user.rbs +39 -0
  160. data/sig/sentdm/models/api_response_template.rbs +39 -0
  161. data/sig/sentdm/models/api_response_webhook.rbs +39 -0
  162. data/sig/sentdm/models/billing_contact_info.rbs +30 -0
  163. data/sig/sentdm/models/brands_brand_data.rbs +30 -0
  164. data/sig/sentdm/models/contact_delete_params.rbs +6 -10
  165. data/sig/sentdm/models/contact_list_response.rbs +20 -256
  166. data/sig/sentdm/models/contact_response.rbs +111 -0
  167. data/sig/sentdm/models/destination_country.rbs +19 -0
  168. data/sig/sentdm/models/error_detail.rbs +39 -0
  169. data/sig/sentdm/models/me_retrieve_response.rbs +18 -176
  170. data/sig/sentdm/models/message_retrieve_activities_response.rbs +9 -71
  171. data/sig/sentdm/models/message_retrieve_status_response.rbs +9 -71
  172. data/sig/sentdm/models/message_send_response.rbs +9 -71
  173. data/sig/sentdm/models/mutation_request.rbs +15 -0
  174. data/sig/sentdm/models/number_lookup_response.rbs +9 -71
  175. data/sig/sentdm/models/pagination_meta.rbs +67 -0
  176. data/sig/sentdm/models/payment_details.rbs +30 -0
  177. data/sig/sentdm/models/profile_complete_response.rbs +9 -71
  178. data/sig/sentdm/models/profile_create_params.rbs +12 -363
  179. data/sig/sentdm/models/profile_delete_params.rbs +6 -10
  180. data/sig/sentdm/models/profile_detail.rbs +474 -0
  181. data/sig/sentdm/models/profile_list_response.rbs +15 -645
  182. data/sig/sentdm/models/profile_settings.rbs +50 -0
  183. data/sig/sentdm/models/profile_update_params.rbs +12 -363
  184. data/sig/sentdm/models/profiles/api_response_of_tcr_campaign_with_use_cases.rbs +41 -0
  185. data/sig/sentdm/models/profiles/base_dto.rbs +27 -0
  186. data/sig/sentdm/models/profiles/campaign_create_params.rbs +4 -138
  187. data/sig/sentdm/models/profiles/campaign_data.rbs +82 -0
  188. data/sig/sentdm/models/profiles/campaign_delete_params.rbs +8 -15
  189. data/sig/sentdm/models/profiles/campaign_list_response.rbs +13 -396
  190. data/sig/sentdm/models/profiles/campaign_update_params.rbs +4 -138
  191. data/sig/sentdm/models/profiles/messaging_use_case_us.rbs +40 -0
  192. data/sig/sentdm/models/profiles/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rbs +27 -0
  193. data/sig/sentdm/models/profiles/tcr_campaign_with_use_cases.rbs +299 -0
  194. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rbs +24 -0
  195. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rbs +35 -0
  196. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rbs +32 -0
  197. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rbs +75 -0
  198. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rbs +30 -0
  199. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rbs +30 -0
  200. data/sig/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_business_info.rbs +89 -0
  201. data/sig/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_compliance_info.rbs +55 -0
  202. data/sig/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_contact_info.rbs +45 -0
  203. data/sig/sentdm/models/tcr_brand_relationship.rbs +22 -0
  204. data/sig/sentdm/models/tcr_vertical.rbs +58 -0
  205. data/sig/sentdm/models/template.rbs +79 -0
  206. data/sig/sentdm/models/template_body_content.rbs +30 -0
  207. data/sig/sentdm/models/template_create_params.rbs +6 -853
  208. data/sig/sentdm/models/template_definition.rbs +45 -0
  209. data/sig/sentdm/models/template_list_response.rbs +19 -225
  210. data/sig/sentdm/models/template_update_params.rbs +4 -851
  211. data/sig/sentdm/models/template_variable.rbs +84 -0
  212. data/sig/sentdm/models/user_list_response.rbs +15 -151
  213. data/sig/sentdm/models/user_remove_params.rbs +6 -10
  214. data/sig/sentdm/models/user_response.rbs +72 -0
  215. data/sig/sentdm/models/webhook_event_type.rbs +51 -0
  216. data/sig/sentdm/models/webhook_list_event_types_response.rbs +15 -130
  217. data/sig/sentdm/models/webhook_list_events_response.rbs +14 -142
  218. data/sig/sentdm/models/webhook_list_response.rbs +20 -248
  219. data/sig/sentdm/models/webhook_response.rbs +103 -0
  220. data/sig/sentdm/models/webhook_rotate_secret_params.rbs +8 -17
  221. data/sig/sentdm/models/webhook_rotate_secret_response.rbs +9 -71
  222. data/sig/sentdm/models/webhook_test_response.rbs +9 -71
  223. data/sig/sentdm/models.rbs +68 -0
  224. data/sig/sentdm/resources/contacts.rbs +3 -3
  225. data/sig/sentdm/resources/profiles/campaigns.rbs +4 -4
  226. data/sig/sentdm/resources/profiles.rbs +9 -9
  227. data/sig/sentdm/resources/templates.rbs +5 -5
  228. data/sig/sentdm/resources/users.rbs +3 -3
  229. data/sig/sentdm/resources/webhooks.rbs +4 -4
  230. metadata +121 -55
  231. data/lib/sentdm/models/contact_create_response.rb +0 -236
  232. data/lib/sentdm/models/contact_retrieve_response.rb +0 -236
  233. data/lib/sentdm/models/contact_update_response.rb +0 -236
  234. data/lib/sentdm/models/profile_create_response.rb +0 -781
  235. data/lib/sentdm/models/profile_retrieve_response.rb +0 -783
  236. data/lib/sentdm/models/profile_update_response.rb +0 -781
  237. data/lib/sentdm/models/profiles/campaign_create_response.rb +0 -459
  238. data/lib/sentdm/models/profiles/campaign_update_response.rb +0 -459
  239. data/lib/sentdm/models/template_create_response.rb +0 -197
  240. data/lib/sentdm/models/template_retrieve_response.rb +0 -197
  241. data/lib/sentdm/models/template_update_response.rb +0 -197
  242. data/lib/sentdm/models/user_invite_response.rb +0 -189
  243. data/lib/sentdm/models/user_retrieve_response.rb +0 -189
  244. data/lib/sentdm/models/user_update_role_response.rb +0 -189
  245. data/lib/sentdm/models/webhook_create_response.rb +0 -204
  246. data/lib/sentdm/models/webhook_retrieve_response.rb +0 -204
  247. data/lib/sentdm/models/webhook_toggle_status_response.rb +0 -204
  248. data/lib/sentdm/models/webhook_update_response.rb +0 -204
  249. data/rbi/sentdm/models/contact_create_response.rbi +0 -390
  250. data/rbi/sentdm/models/contact_retrieve_response.rbi +0 -392
  251. data/rbi/sentdm/models/contact_update_response.rbi +0 -390
  252. data/rbi/sentdm/models/profile_create_response.rbi +0 -1439
  253. data/rbi/sentdm/models/profile_retrieve_response.rbi +0 -1443
  254. data/rbi/sentdm/models/profile_update_response.rbi +0 -1439
  255. data/rbi/sentdm/models/profiles/campaign_create_response.rbi +0 -814
  256. data/rbi/sentdm/models/profiles/campaign_update_response.rbi +0 -814
  257. data/rbi/sentdm/models/template_create_response.rbi +0 -339
  258. data/rbi/sentdm/models/template_retrieve_response.rbi +0 -345
  259. data/rbi/sentdm/models/template_update_response.rbi +0 -339
  260. data/rbi/sentdm/models/user_invite_response.rbi +0 -323
  261. data/rbi/sentdm/models/user_retrieve_response.rbi +0 -323
  262. data/rbi/sentdm/models/user_update_role_response.rbi +0 -328
  263. data/rbi/sentdm/models/webhook_create_response.rbi +0 -348
  264. data/rbi/sentdm/models/webhook_retrieve_response.rbi +0 -350
  265. data/rbi/sentdm/models/webhook_toggle_status_response.rbi +0 -366
  266. data/rbi/sentdm/models/webhook_update_response.rbi +0 -348
  267. data/sig/sentdm/models/contact_create_response.rbs +0 -209
  268. data/sig/sentdm/models/contact_retrieve_response.rbs +0 -209
  269. data/sig/sentdm/models/contact_update_response.rbs +0 -209
  270. data/sig/sentdm/models/profile_create_response.rbs +0 -662
  271. data/sig/sentdm/models/profile_retrieve_response.rbs +0 -662
  272. data/sig/sentdm/models/profile_update_response.rbs +0 -662
  273. data/sig/sentdm/models/profiles/campaign_create_response.rbs +0 -424
  274. data/sig/sentdm/models/profiles/campaign_update_response.rbs +0 -424
  275. data/sig/sentdm/models/template_create_response.rbs +0 -177
  276. data/sig/sentdm/models/template_retrieve_response.rbs +0 -177
  277. data/sig/sentdm/models/template_update_response.rbs +0 -177
  278. data/sig/sentdm/models/user_invite_response.rbs +0 -170
  279. data/sig/sentdm/models/user_retrieve_response.rbs +0 -170
  280. data/sig/sentdm/models/user_update_role_response.rbs +0 -170
  281. data/sig/sentdm/models/webhook_create_response.rbs +0 -201
  282. data/sig/sentdm/models/webhook_retrieve_response.rbs +0 -201
  283. data/sig/sentdm/models/webhook_toggle_status_response.rbs +0 -201
  284. data/sig/sentdm/models/webhook_update_response.rbs +0 -201
@@ -0,0 +1,425 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ module Profiles
6
+ class TcrCampaignWithUseCases < Sentdm::Models::Profiles::BaseDto
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ Sentdm::Profiles::TcrCampaignWithUseCases,
11
+ Sentdm::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ sig { returns(T.nilable(Time)) }
16
+ attr_accessor :billed_date
17
+
18
+ sig { returns(T.nilable(String)) }
19
+ attr_accessor :brand_id
20
+
21
+ sig { returns(T.nilable(Float)) }
22
+ attr_accessor :cost
23
+
24
+ sig { returns(T.nilable(String)) }
25
+ attr_accessor :csp_id
26
+
27
+ sig { returns(T.nilable(String)) }
28
+ attr_reader :customer_id
29
+
30
+ sig { params(customer_id: String).void }
31
+ attr_writer :customer_id
32
+
33
+ sig { returns(T.nilable(T::Boolean)) }
34
+ attr_reader :dca_elections_complete
35
+
36
+ sig { params(dca_elections_complete: T::Boolean).void }
37
+ attr_writer :dca_elections_complete
38
+
39
+ sig { returns(T.nilable(Time)) }
40
+ attr_accessor :dca_elections_completed_at
41
+
42
+ sig { returns(T.nilable(String)) }
43
+ attr_reader :description
44
+
45
+ sig { params(description: String).void }
46
+ attr_writer :description
47
+
48
+ sig { returns(T.nilable(String)) }
49
+ attr_accessor :help_keywords
50
+
51
+ sig { returns(T.nilable(String)) }
52
+ attr_accessor :help_message
53
+
54
+ sig { returns(T.nilable(String)) }
55
+ attr_accessor :kyc_submission_form_id
56
+
57
+ sig { returns(T.nilable(String)) }
58
+ attr_accessor :message_flow
59
+
60
+ sig { returns(T.nilable(String)) }
61
+ attr_reader :name
62
+
63
+ sig { params(name: String).void }
64
+ attr_writer :name
65
+
66
+ sig { returns(T.nilable(String)) }
67
+ attr_accessor :optin_keywords
68
+
69
+ sig { returns(T.nilable(String)) }
70
+ attr_accessor :optin_message
71
+
72
+ sig { returns(T.nilable(String)) }
73
+ attr_accessor :optout_keywords
74
+
75
+ sig { returns(T.nilable(String)) }
76
+ attr_accessor :optout_message
77
+
78
+ sig { returns(T.nilable(String)) }
79
+ attr_accessor :privacy_policy_link
80
+
81
+ sig { returns(T.nilable(String)) }
82
+ attr_accessor :reseller_id
83
+
84
+ sig do
85
+ returns(
86
+ T.nilable(
87
+ Sentdm::Profiles::TcrCampaignWithUseCases::SharingStatus::TaggedSymbol
88
+ )
89
+ )
90
+ end
91
+ attr_accessor :sharing_status
92
+
93
+ sig do
94
+ returns(
95
+ T.nilable(
96
+ Sentdm::Profiles::TcrCampaignWithUseCases::Status::TaggedSymbol
97
+ )
98
+ )
99
+ end
100
+ attr_accessor :status
101
+
102
+ sig { returns(T.nilable(Time)) }
103
+ attr_accessor :submitted_at
104
+
105
+ sig { returns(T.nilable(T::Boolean)) }
106
+ attr_reader :submitted_to_tcr
107
+
108
+ sig { params(submitted_to_tcr: T::Boolean).void }
109
+ attr_writer :submitted_to_tcr
110
+
111
+ sig { returns(T.nilable(String)) }
112
+ attr_accessor :tcr_campaign_id
113
+
114
+ sig { returns(T.nilable(String)) }
115
+ attr_accessor :tcr_sync_error
116
+
117
+ sig { returns(T.nilable(String)) }
118
+ attr_accessor :telnyx_campaign_id
119
+
120
+ sig { returns(T.nilable(String)) }
121
+ attr_accessor :terms_and_conditions_link
122
+
123
+ sig { returns(T.nilable(String)) }
124
+ attr_reader :type
125
+
126
+ sig { params(type: String).void }
127
+ attr_writer :type
128
+
129
+ sig { returns(T.nilable(String)) }
130
+ attr_accessor :upstream_cnp_id
131
+
132
+ sig do
133
+ returns(
134
+ T.nilable(
135
+ T::Array[Sentdm::Profiles::TcrCampaignWithUseCases::UseCase]
136
+ )
137
+ )
138
+ end
139
+ attr_reader :use_cases
140
+
141
+ sig do
142
+ params(
143
+ use_cases:
144
+ T::Array[
145
+ Sentdm::Profiles::TcrCampaignWithUseCases::UseCase::OrHash
146
+ ]
147
+ ).void
148
+ end
149
+ attr_writer :use_cases
150
+
151
+ sig do
152
+ params(
153
+ billed_date: T.nilable(Time),
154
+ brand_id: T.nilable(String),
155
+ cost: T.nilable(Float),
156
+ csp_id: T.nilable(String),
157
+ customer_id: String,
158
+ dca_elections_complete: T::Boolean,
159
+ dca_elections_completed_at: T.nilable(Time),
160
+ description: String,
161
+ help_keywords: T.nilable(String),
162
+ help_message: T.nilable(String),
163
+ kyc_submission_form_id: T.nilable(String),
164
+ message_flow: T.nilable(String),
165
+ name: String,
166
+ optin_keywords: T.nilable(String),
167
+ optin_message: T.nilable(String),
168
+ optout_keywords: T.nilable(String),
169
+ optout_message: T.nilable(String),
170
+ privacy_policy_link: T.nilable(String),
171
+ reseller_id: T.nilable(String),
172
+ sharing_status:
173
+ T.nilable(
174
+ Sentdm::Profiles::TcrCampaignWithUseCases::SharingStatus::OrSymbol
175
+ ),
176
+ status:
177
+ T.nilable(
178
+ Sentdm::Profiles::TcrCampaignWithUseCases::Status::OrSymbol
179
+ ),
180
+ submitted_at: T.nilable(Time),
181
+ submitted_to_tcr: T::Boolean,
182
+ tcr_campaign_id: T.nilable(String),
183
+ tcr_sync_error: T.nilable(String),
184
+ telnyx_campaign_id: T.nilable(String),
185
+ terms_and_conditions_link: T.nilable(String),
186
+ type: String,
187
+ upstream_cnp_id: T.nilable(String),
188
+ use_cases:
189
+ T::Array[
190
+ Sentdm::Profiles::TcrCampaignWithUseCases::UseCase::OrHash
191
+ ]
192
+ ).returns(T.attached_class)
193
+ end
194
+ def self.new(
195
+ billed_date: nil,
196
+ brand_id: nil,
197
+ cost: nil,
198
+ csp_id: nil,
199
+ customer_id: nil,
200
+ dca_elections_complete: nil,
201
+ dca_elections_completed_at: nil,
202
+ description: nil,
203
+ help_keywords: nil,
204
+ help_message: nil,
205
+ kyc_submission_form_id: nil,
206
+ message_flow: nil,
207
+ name: nil,
208
+ optin_keywords: nil,
209
+ optin_message: nil,
210
+ optout_keywords: nil,
211
+ optout_message: nil,
212
+ privacy_policy_link: nil,
213
+ reseller_id: nil,
214
+ sharing_status: nil,
215
+ status: nil,
216
+ submitted_at: nil,
217
+ submitted_to_tcr: nil,
218
+ tcr_campaign_id: nil,
219
+ tcr_sync_error: nil,
220
+ telnyx_campaign_id: nil,
221
+ terms_and_conditions_link: nil,
222
+ type: nil,
223
+ upstream_cnp_id: nil,
224
+ use_cases: nil
225
+ )
226
+ end
227
+
228
+ sig do
229
+ override.returns(
230
+ {
231
+ billed_date: T.nilable(Time),
232
+ brand_id: T.nilable(String),
233
+ cost: T.nilable(Float),
234
+ csp_id: T.nilable(String),
235
+ customer_id: String,
236
+ dca_elections_complete: T::Boolean,
237
+ dca_elections_completed_at: T.nilable(Time),
238
+ description: String,
239
+ help_keywords: T.nilable(String),
240
+ help_message: T.nilable(String),
241
+ kyc_submission_form_id: T.nilable(String),
242
+ message_flow: T.nilable(String),
243
+ name: String,
244
+ optin_keywords: T.nilable(String),
245
+ optin_message: T.nilable(String),
246
+ optout_keywords: T.nilable(String),
247
+ optout_message: T.nilable(String),
248
+ privacy_policy_link: T.nilable(String),
249
+ reseller_id: T.nilable(String),
250
+ sharing_status:
251
+ T.nilable(
252
+ Sentdm::Profiles::TcrCampaignWithUseCases::SharingStatus::TaggedSymbol
253
+ ),
254
+ status:
255
+ T.nilable(
256
+ Sentdm::Profiles::TcrCampaignWithUseCases::Status::TaggedSymbol
257
+ ),
258
+ submitted_at: T.nilable(Time),
259
+ submitted_to_tcr: T::Boolean,
260
+ tcr_campaign_id: T.nilable(String),
261
+ tcr_sync_error: T.nilable(String),
262
+ telnyx_campaign_id: T.nilable(String),
263
+ terms_and_conditions_link: T.nilable(String),
264
+ type: String,
265
+ upstream_cnp_id: T.nilable(String),
266
+ use_cases:
267
+ T::Array[Sentdm::Profiles::TcrCampaignWithUseCases::UseCase]
268
+ }
269
+ )
270
+ end
271
+ def to_hash
272
+ end
273
+
274
+ module SharingStatus
275
+ extend Sentdm::Internal::Type::Enum
276
+
277
+ TaggedSymbol =
278
+ T.type_alias do
279
+ T.all(
280
+ Symbol,
281
+ Sentdm::Profiles::TcrCampaignWithUseCases::SharingStatus
282
+ )
283
+ end
284
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
285
+
286
+ PENDING =
287
+ T.let(
288
+ :PENDING,
289
+ Sentdm::Profiles::TcrCampaignWithUseCases::SharingStatus::TaggedSymbol
290
+ )
291
+ ACCEPTED =
292
+ T.let(
293
+ :ACCEPTED,
294
+ Sentdm::Profiles::TcrCampaignWithUseCases::SharingStatus::TaggedSymbol
295
+ )
296
+ DECLINED =
297
+ T.let(
298
+ :DECLINED,
299
+ Sentdm::Profiles::TcrCampaignWithUseCases::SharingStatus::TaggedSymbol
300
+ )
301
+
302
+ sig do
303
+ override.returns(
304
+ T::Array[
305
+ Sentdm::Profiles::TcrCampaignWithUseCases::SharingStatus::TaggedSymbol
306
+ ]
307
+ )
308
+ end
309
+ def self.values
310
+ end
311
+ end
312
+
313
+ module Status
314
+ extend Sentdm::Internal::Type::Enum
315
+
316
+ TaggedSymbol =
317
+ T.type_alias do
318
+ T.all(Symbol, Sentdm::Profiles::TcrCampaignWithUseCases::Status)
319
+ end
320
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
321
+
322
+ SENT_CREATED =
323
+ T.let(
324
+ :SENT_CREATED,
325
+ Sentdm::Profiles::TcrCampaignWithUseCases::Status::TaggedSymbol
326
+ )
327
+ ACTIVE =
328
+ T.let(
329
+ :ACTIVE,
330
+ Sentdm::Profiles::TcrCampaignWithUseCases::Status::TaggedSymbol
331
+ )
332
+ EXPIRED =
333
+ T.let(
334
+ :EXPIRED,
335
+ Sentdm::Profiles::TcrCampaignWithUseCases::Status::TaggedSymbol
336
+ )
337
+
338
+ sig do
339
+ override.returns(
340
+ T::Array[
341
+ Sentdm::Profiles::TcrCampaignWithUseCases::Status::TaggedSymbol
342
+ ]
343
+ )
344
+ end
345
+ def self.values
346
+ end
347
+ end
348
+
349
+ class UseCase < Sentdm::Models::Profiles::BaseDto
350
+ OrHash =
351
+ T.type_alias do
352
+ T.any(
353
+ Sentdm::Profiles::TcrCampaignWithUseCases::UseCase,
354
+ Sentdm::Internal::AnyHash
355
+ )
356
+ end
357
+
358
+ sig { returns(T.nilable(String)) }
359
+ attr_reader :campaign_id
360
+
361
+ sig { params(campaign_id: String).void }
362
+ attr_writer :campaign_id
363
+
364
+ sig { returns(T.nilable(String)) }
365
+ attr_reader :customer_id
366
+
367
+ sig { params(customer_id: String).void }
368
+ attr_writer :customer_id
369
+
370
+ sig do
371
+ returns(
372
+ T.nilable(Sentdm::Profiles::MessagingUseCaseUs::TaggedSymbol)
373
+ )
374
+ end
375
+ attr_reader :messaging_use_case_us
376
+
377
+ sig do
378
+ params(
379
+ messaging_use_case_us:
380
+ Sentdm::Profiles::MessagingUseCaseUs::OrSymbol
381
+ ).void
382
+ end
383
+ attr_writer :messaging_use_case_us
384
+
385
+ sig { returns(T.nilable(T::Array[String])) }
386
+ attr_reader :sample_messages
387
+
388
+ sig { params(sample_messages: T::Array[String]).void }
389
+ attr_writer :sample_messages
390
+
391
+ sig do
392
+ params(
393
+ campaign_id: String,
394
+ customer_id: String,
395
+ messaging_use_case_us:
396
+ Sentdm::Profiles::MessagingUseCaseUs::OrSymbol,
397
+ sample_messages: T::Array[String]
398
+ ).returns(T.attached_class)
399
+ end
400
+ def self.new(
401
+ campaign_id: nil,
402
+ customer_id: nil,
403
+ messaging_use_case_us: nil,
404
+ sample_messages: nil
405
+ )
406
+ end
407
+
408
+ sig do
409
+ override.returns(
410
+ {
411
+ campaign_id: String,
412
+ customer_id: String,
413
+ messaging_use_case_us:
414
+ Sentdm::Profiles::MessagingUseCaseUs::TaggedSymbol,
415
+ sample_messages: T::Array[String]
416
+ }
417
+ )
418
+ end
419
+ def to_hash
420
+ end
421
+ end
422
+ end
423
+ end
424
+ end
425
+ end
@@ -0,0 +1,56 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ class SentDmServicesCommonContractsPocOsAuthenticationConfig < Sentdm::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Sentdm::SentDmServicesCommonContractsPocOsAuthenticationConfig,
10
+ Sentdm::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # Whether to add the security recommendation text: "For your security, do not
15
+ # share this code."
16
+ sig { returns(T.nilable(T::Boolean)) }
17
+ attr_reader :add_security_recommendation
18
+
19
+ sig { params(add_security_recommendation: T::Boolean).void }
20
+ attr_writer :add_security_recommendation
21
+
22
+ # Code expiration time in minutes (1-90). If set, adds footer: "This code expires
23
+ # in X minutes."
24
+ sig { returns(T.nilable(Integer)) }
25
+ attr_accessor :code_expiration_minutes
26
+
27
+ # Configuration for AUTHENTICATION category templates
28
+ sig do
29
+ params(
30
+ add_security_recommendation: T::Boolean,
31
+ code_expiration_minutes: T.nilable(Integer)
32
+ ).returns(T.attached_class)
33
+ end
34
+ def self.new(
35
+ # Whether to add the security recommendation text: "For your security, do not
36
+ # share this code."
37
+ add_security_recommendation: nil,
38
+ # Code expiration time in minutes (1-90). If set, adds footer: "This code expires
39
+ # in X minutes."
40
+ code_expiration_minutes: nil
41
+ )
42
+ end
43
+
44
+ sig do
45
+ override.returns(
46
+ {
47
+ add_security_recommendation: T::Boolean,
48
+ code_expiration_minutes: T.nilable(Integer)
49
+ }
50
+ )
51
+ end
52
+ def to_hash
53
+ end
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,87 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ class SentDmServicesCommonContractsPocOsTemplateBody < Sentdm::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Sentdm::SentDmServicesCommonContractsPocOsTemplateBody,
10
+ Sentdm::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # Content that will be used for all channels (SMS and WhatsApp) unless
15
+ # channel-specific content is provided
16
+ sig { returns(T.nilable(Sentdm::TemplateBodyContent)) }
17
+ attr_reader :multi_channel
18
+
19
+ sig do
20
+ params(
21
+ multi_channel: T.nilable(Sentdm::TemplateBodyContent::OrHash)
22
+ ).void
23
+ end
24
+ attr_writer :multi_channel
25
+
26
+ # RCS-specific content that overrides multi-channel content for RCS messages
27
+ sig { returns(T.nilable(Sentdm::TemplateBodyContent)) }
28
+ attr_reader :rcs
29
+
30
+ sig { params(rcs: T.nilable(Sentdm::TemplateBodyContent::OrHash)).void }
31
+ attr_writer :rcs
32
+
33
+ # SMS-specific content that overrides multi-channel content for SMS messages
34
+ sig { returns(T.nilable(Sentdm::TemplateBodyContent)) }
35
+ attr_reader :sms
36
+
37
+ sig { params(sms: T.nilable(Sentdm::TemplateBodyContent::OrHash)).void }
38
+ attr_writer :sms
39
+
40
+ # WhatsApp-specific content that overrides multi-channel content for WhatsApp
41
+ # messages
42
+ sig { returns(T.nilable(Sentdm::TemplateBodyContent)) }
43
+ attr_reader :whatsapp
44
+
45
+ sig do
46
+ params(whatsapp: T.nilable(Sentdm::TemplateBodyContent::OrHash)).void
47
+ end
48
+ attr_writer :whatsapp
49
+
50
+ # Body section of a message template with channel-specific content
51
+ sig do
52
+ params(
53
+ multi_channel: T.nilable(Sentdm::TemplateBodyContent::OrHash),
54
+ rcs: T.nilable(Sentdm::TemplateBodyContent::OrHash),
55
+ sms: T.nilable(Sentdm::TemplateBodyContent::OrHash),
56
+ whatsapp: T.nilable(Sentdm::TemplateBodyContent::OrHash)
57
+ ).returns(T.attached_class)
58
+ end
59
+ def self.new(
60
+ # Content that will be used for all channels (SMS and WhatsApp) unless
61
+ # channel-specific content is provided
62
+ multi_channel: nil,
63
+ # RCS-specific content that overrides multi-channel content for RCS messages
64
+ rcs: nil,
65
+ # SMS-specific content that overrides multi-channel content for SMS messages
66
+ sms: nil,
67
+ # WhatsApp-specific content that overrides multi-channel content for WhatsApp
68
+ # messages
69
+ whatsapp: nil
70
+ )
71
+ end
72
+
73
+ sig do
74
+ override.returns(
75
+ {
76
+ multi_channel: T.nilable(Sentdm::TemplateBodyContent),
77
+ rcs: T.nilable(Sentdm::TemplateBodyContent),
78
+ sms: T.nilable(Sentdm::TemplateBodyContent),
79
+ whatsapp: T.nilable(Sentdm::TemplateBodyContent)
80
+ }
81
+ )
82
+ end
83
+ def to_hash
84
+ end
85
+ end
86
+ end
87
+ end
@@ -0,0 +1,72 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ class SentDmServicesCommonContractsPocOsTemplateButton < Sentdm::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Sentdm::SentDmServicesCommonContractsPocOsTemplateButton,
10
+ Sentdm::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # Properties specific to the button type
15
+ sig do
16
+ returns(Sentdm::SentDmServicesCommonContractsPocOsTemplateButtonProps)
17
+ end
18
+ attr_reader :props
19
+
20
+ sig do
21
+ params(
22
+ props:
23
+ Sentdm::SentDmServicesCommonContractsPocOsTemplateButtonProps::OrHash
24
+ ).void
25
+ end
26
+ attr_writer :props
27
+
28
+ # The type of button (e.g., QUICK_REPLY, URL, PHONE_NUMBER, VOICE_CALL, COPY_CODE)
29
+ sig { returns(String) }
30
+ attr_accessor :type
31
+
32
+ # The unique identifier of the button (1-based index)
33
+ sig { returns(T.nilable(Integer)) }
34
+ attr_reader :id
35
+
36
+ sig { params(id: Integer).void }
37
+ attr_writer :id
38
+
39
+ # Interactive button in a message template
40
+ sig do
41
+ params(
42
+ props:
43
+ Sentdm::SentDmServicesCommonContractsPocOsTemplateButtonProps::OrHash,
44
+ type: String,
45
+ id: Integer
46
+ ).returns(T.attached_class)
47
+ end
48
+ def self.new(
49
+ # Properties specific to the button type
50
+ props:,
51
+ # The type of button (e.g., QUICK_REPLY, URL, PHONE_NUMBER, VOICE_CALL, COPY_CODE)
52
+ type:,
53
+ # The unique identifier of the button (1-based index)
54
+ id: nil
55
+ )
56
+ end
57
+
58
+ sig do
59
+ override.returns(
60
+ {
61
+ props:
62
+ Sentdm::SentDmServicesCommonContractsPocOsTemplateButtonProps,
63
+ type: String,
64
+ id: Integer
65
+ }
66
+ )
67
+ end
68
+ def to_hash
69
+ end
70
+ end
71
+ end
72
+ end