sentdm 0.26.0 → 0.28.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 (293) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +40 -0
  3. data/README.md +1 -27
  4. data/lib/sentdm/client.rb +71 -8
  5. data/lib/sentdm/internal/type/base_model.rb +5 -5
  6. data/lib/sentdm/models/contact_create_response.rb +249 -0
  7. data/lib/sentdm/models/contact_delete_params.rb +16 -2
  8. data/lib/sentdm/models/contact_list_response.rb +299 -16
  9. data/lib/sentdm/models/contact_retrieve_message_summary_response.rb +186 -0
  10. data/lib/sentdm/models/contact_retrieve_response.rb +249 -0
  11. data/lib/sentdm/models/contact_update_response.rb +249 -0
  12. data/lib/sentdm/models/conversation_list_messages_response.rb +436 -0
  13. data/lib/sentdm/models/conversation_list_response.rb +433 -0
  14. data/lib/sentdm/models/inbound_message_event.rb +52 -0
  15. data/lib/sentdm/models/inbound_message_event_payload.rb +81 -0
  16. data/lib/sentdm/models/me_retrieve_response.rb +242 -12
  17. data/lib/sentdm/models/message_event.rb +53 -0
  18. data/lib/sentdm/models/message_event_payload.rb +92 -0
  19. data/lib/sentdm/models/message_retrieve_activities_response.rb +165 -7
  20. data/lib/sentdm/models/message_retrieve_status_response.rb +74 -6
  21. data/lib/sentdm/models/message_send_response.rb +113 -28
  22. data/lib/sentdm/models/number_lookup_response.rb +74 -6
  23. data/lib/sentdm/models/profile_complete_response.rb +74 -6
  24. data/lib/sentdm/models/profile_create_params.rb +378 -26
  25. data/lib/sentdm/models/profile_create_response.rb +760 -0
  26. data/lib/sentdm/models/profile_delete_params.rb +16 -2
  27. data/lib/sentdm/models/profile_list_response.rb +825 -14
  28. data/lib/sentdm/models/profile_retrieve_response.rb +762 -0
  29. data/lib/sentdm/models/profile_update_params.rb +391 -24
  30. data/lib/sentdm/models/profile_update_response.rb +760 -0
  31. data/lib/sentdm/models/profiles/campaign_create_params.rb +156 -3
  32. data/lib/sentdm/models/profiles/campaign_create_response.rb +420 -0
  33. data/lib/sentdm/models/profiles/campaign_delete_params.rb +17 -2
  34. data/lib/sentdm/models/profiles/campaign_list_response.rb +421 -0
  35. data/lib/sentdm/models/profiles/campaign_update_params.rb +156 -3
  36. data/lib/sentdm/models/profiles/campaign_update_response.rb +420 -0
  37. data/lib/sentdm/models/template_create_response.rb +209 -0
  38. data/lib/sentdm/models/template_event.rb +52 -0
  39. data/lib/sentdm/models/template_event_payload.rb +88 -0
  40. data/lib/sentdm/models/template_list_params.rb +9 -2
  41. data/lib/sentdm/models/template_list_response.rb +262 -16
  42. data/lib/sentdm/models/template_retrieve_response.rb +209 -0
  43. data/lib/sentdm/models/template_update_response.rb +209 -0
  44. data/lib/sentdm/models/user_invite_response.rb +201 -0
  45. data/lib/sentdm/models/user_list_response.rb +259 -14
  46. data/lib/sentdm/models/user_remove_params.rb +16 -2
  47. data/lib/sentdm/models/user_retrieve_response.rb +201 -0
  48. data/lib/sentdm/models/user_update_role_response.rb +201 -0
  49. data/lib/sentdm/models/webhook_create_response.rb +229 -0
  50. data/lib/sentdm/models/webhook_list_event_types_response.rb +213 -13
  51. data/lib/sentdm/models/webhook_list_events_response.rb +207 -16
  52. data/lib/sentdm/models/webhook_list_response.rb +280 -15
  53. data/lib/sentdm/models/webhook_retrieve_response.rb +229 -0
  54. data/lib/sentdm/models/webhook_rotate_secret_params.rb +17 -2
  55. data/lib/sentdm/models/webhook_rotate_secret_response.rb +74 -6
  56. data/lib/sentdm/models/webhook_test_response.rb +74 -6
  57. data/lib/sentdm/models/webhook_toggle_status_response.rb +229 -0
  58. data/lib/sentdm/models/webhook_update_response.rb +229 -0
  59. data/lib/sentdm/models.rb +11 -51
  60. data/lib/sentdm/resources/contacts.rb +30 -13
  61. data/lib/sentdm/resources/conversations.rb +12 -4
  62. data/lib/sentdm/resources/me.rb +6 -1
  63. data/lib/sentdm/resources/messages.rb +17 -5
  64. data/lib/sentdm/resources/numbers.rb +6 -1
  65. data/lib/sentdm/resources/profiles/campaigns.rb +47 -9
  66. data/lib/sentdm/resources/profiles.rb +137 -61
  67. data/lib/sentdm/resources/templates.rb +14 -8
  68. data/lib/sentdm/resources/users.rb +15 -10
  69. data/lib/sentdm/resources/webhooks.rb +19 -9
  70. data/lib/sentdm/version.rb +1 -1
  71. data/lib/sentdm.rb +28 -32
  72. data/rbi/sentdm/client.rbi +71 -8
  73. data/rbi/sentdm/models/contact_create_response.rbi +407 -0
  74. data/rbi/sentdm/models/contact_delete_params.rbi +19 -2
  75. data/rbi/sentdm/models/contact_list_response.rbi +527 -21
  76. data/rbi/sentdm/models/contact_retrieve_message_summary_response.rbi +397 -0
  77. data/rbi/sentdm/models/contact_retrieve_response.rbi +409 -0
  78. data/rbi/sentdm/models/contact_update_response.rbi +407 -0
  79. data/rbi/sentdm/models/conversation_list_messages_response.rbi +843 -0
  80. data/rbi/sentdm/models/conversation_list_response.rbi +819 -0
  81. data/rbi/sentdm/models/inbound_message_event.rbi +88 -0
  82. data/rbi/sentdm/models/inbound_message_event_payload.rbi +122 -0
  83. data/rbi/sentdm/models/me_retrieve_response.rbi +367 -16
  84. data/rbi/sentdm/models/message_event.rbi +86 -0
  85. data/rbi/sentdm/models/message_event_payload.rbi +132 -0
  86. data/rbi/sentdm/models/message_retrieve_activities_response.rbi +335 -11
  87. data/rbi/sentdm/models/message_retrieve_status_response.rbi +148 -8
  88. data/rbi/sentdm/models/message_send_response.rbi +178 -32
  89. data/rbi/sentdm/models/number_lookup_response.rbi +135 -8
  90. data/rbi/sentdm/models/profile_complete_response.rbi +137 -8
  91. data/rbi/sentdm/models/profile_create_params.rbi +592 -42
  92. data/rbi/sentdm/models/profile_create_response.rbi +1226 -0
  93. data/rbi/sentdm/models/profile_delete_params.rbi +19 -2
  94. data/rbi/sentdm/models/profile_list_response.rbi +1366 -18
  95. data/rbi/sentdm/models/profile_retrieve_response.rbi +1230 -0
  96. data/rbi/sentdm/models/profile_update_params.rbi +610 -30
  97. data/rbi/sentdm/models/profile_update_response.rbi +1226 -0
  98. data/rbi/sentdm/models/profiles/campaign_create_params.rbi +218 -4
  99. data/rbi/sentdm/models/profiles/campaign_create_response.rbi +674 -0
  100. data/rbi/sentdm/models/profiles/campaign_delete_params.rbi +14 -1
  101. data/rbi/sentdm/models/profiles/campaign_list_response.rbi +667 -0
  102. data/rbi/sentdm/models/profiles/campaign_update_params.rbi +218 -4
  103. data/rbi/sentdm/models/profiles/campaign_update_response.rbi +674 -0
  104. data/rbi/sentdm/models/template_create_response.rbi +349 -0
  105. data/rbi/sentdm/models/template_event.rbi +84 -0
  106. data/rbi/sentdm/models/template_event_payload.rbi +131 -0
  107. data/rbi/sentdm/models/template_list_params.rbi +10 -2
  108. data/rbi/sentdm/models/template_list_response.rbi +469 -21
  109. data/rbi/sentdm/models/template_retrieve_response.rbi +355 -0
  110. data/rbi/sentdm/models/template_update_response.rbi +349 -0
  111. data/rbi/sentdm/models/user_invite_response.rbi +336 -0
  112. data/rbi/sentdm/models/user_list_response.rbi +463 -18
  113. data/rbi/sentdm/models/user_remove_params.rbi +19 -2
  114. data/rbi/sentdm/models/user_retrieve_response.rbi +336 -0
  115. data/rbi/sentdm/models/user_update_role_response.rbi +341 -0
  116. data/rbi/sentdm/models/webhook_create_response.rbi +361 -0
  117. data/rbi/sentdm/models/webhook_list_event_types_response.rbi +433 -16
  118. data/rbi/sentdm/models/webhook_list_events_response.rbi +379 -19
  119. data/rbi/sentdm/models/webhook_list_response.rbi +480 -19
  120. data/rbi/sentdm/models/webhook_retrieve_response.rbi +363 -0
  121. data/rbi/sentdm/models/webhook_rotate_secret_params.rbi +14 -1
  122. data/rbi/sentdm/models/webhook_rotate_secret_response.rbi +148 -8
  123. data/rbi/sentdm/models/webhook_test_response.rbi +135 -8
  124. data/rbi/sentdm/models/webhook_toggle_status_response.rbi +379 -0
  125. data/rbi/sentdm/models/webhook_update_response.rbi +361 -0
  126. data/rbi/sentdm/models.rbi +11 -53
  127. data/rbi/sentdm/resources/contacts.rbi +24 -9
  128. data/rbi/sentdm/resources/conversations.rbi +10 -2
  129. data/rbi/sentdm/resources/me.rbi +6 -1
  130. data/rbi/sentdm/resources/messages.rbi +17 -5
  131. data/rbi/sentdm/resources/numbers.rbi +6 -1
  132. data/rbi/sentdm/resources/profiles/campaigns.rbi +36 -6
  133. data/rbi/sentdm/resources/profiles.rbi +177 -68
  134. data/rbi/sentdm/resources/templates.rbi +15 -5
  135. data/rbi/sentdm/resources/users.rbi +12 -6
  136. data/rbi/sentdm/resources/webhooks.rbi +15 -5
  137. data/sig/sentdm/models/contact_create_response.rbs +216 -0
  138. data/sig/sentdm/models/contact_delete_params.rbs +10 -6
  139. data/sig/sentdm/models/contact_list_response.rbs +263 -20
  140. data/sig/sentdm/models/contact_retrieve_message_summary_response.rbs +182 -0
  141. data/sig/sentdm/models/contact_retrieve_response.rbs +216 -0
  142. data/sig/sentdm/models/contact_update_response.rbs +216 -0
  143. data/sig/sentdm/models/conversation_list_messages_response.rbs +404 -0
  144. data/sig/sentdm/models/conversation_list_response.rbs +404 -0
  145. data/sig/sentdm/models/inbound_message_event.rbs +39 -0
  146. data/sig/sentdm/models/inbound_message_event_payload.rbs +69 -0
  147. data/sig/sentdm/models/me_retrieve_response.rbs +176 -18
  148. data/sig/sentdm/models/message_event.rbs +39 -0
  149. data/sig/sentdm/models/message_event_payload.rbs +72 -0
  150. data/sig/sentdm/models/message_retrieve_activities_response.rbs +147 -12
  151. data/sig/sentdm/models/message_retrieve_status_response.rbs +71 -9
  152. data/sig/sentdm/models/message_send_response.rbs +71 -9
  153. data/sig/sentdm/models/number_lookup_response.rbs +71 -9
  154. data/sig/sentdm/models/profile_complete_response.rbs +71 -9
  155. data/sig/sentdm/models/profile_create_params.rbs +271 -24
  156. data/sig/sentdm/models/profile_create_response.rbs +559 -0
  157. data/sig/sentdm/models/profile_delete_params.rbs +10 -6
  158. data/sig/sentdm/models/profile_list_response.rbs +615 -15
  159. data/sig/sentdm/models/profile_retrieve_response.rbs +559 -0
  160. data/sig/sentdm/models/profile_update_params.rbs +263 -12
  161. data/sig/sentdm/models/profile_update_response.rbs +559 -0
  162. data/sig/sentdm/models/profiles/campaign_create_params.rbs +108 -4
  163. data/sig/sentdm/models/profiles/campaign_create_response.rbs +357 -0
  164. data/sig/sentdm/models/profiles/campaign_delete_params.rbs +15 -8
  165. data/sig/sentdm/models/profiles/campaign_list_response.rbs +357 -0
  166. data/sig/sentdm/models/profiles/campaign_update_params.rbs +108 -4
  167. data/sig/sentdm/models/profiles/campaign_update_response.rbs +357 -0
  168. data/sig/sentdm/models/template_create_response.rbs +182 -0
  169. data/sig/sentdm/models/template_event.rbs +39 -0
  170. data/sig/sentdm/models/template_event_payload.rbs +76 -0
  171. data/sig/sentdm/models/template_list_response.rbs +230 -19
  172. data/sig/sentdm/models/template_retrieve_response.rbs +182 -0
  173. data/sig/sentdm/models/template_update_response.rbs +182 -0
  174. data/sig/sentdm/models/user_invite_response.rbs +177 -0
  175. data/sig/sentdm/models/user_list_response.rbs +233 -15
  176. data/sig/sentdm/models/user_remove_params.rbs +10 -6
  177. data/sig/sentdm/models/user_retrieve_response.rbs +177 -0
  178. data/sig/sentdm/models/user_update_role_response.rbs +177 -0
  179. data/sig/sentdm/models/webhook_create_response.rbs +208 -0
  180. data/sig/sentdm/models/webhook_list_event_types_response.rbs +203 -15
  181. data/sig/sentdm/models/webhook_list_events_response.rbs +160 -19
  182. data/sig/sentdm/models/webhook_list_response.rbs +255 -20
  183. data/sig/sentdm/models/webhook_retrieve_response.rbs +208 -0
  184. data/sig/sentdm/models/webhook_rotate_secret_params.rbs +17 -8
  185. data/sig/sentdm/models/webhook_rotate_secret_response.rbs +71 -9
  186. data/sig/sentdm/models/webhook_test_response.rbs +71 -9
  187. data/sig/sentdm/models/webhook_toggle_status_response.rbs +208 -0
  188. data/sig/sentdm/models/webhook_update_response.rbs +208 -0
  189. data/sig/sentdm/models.rbs +11 -51
  190. data/sig/sentdm/resources/contacts.rbs +4 -4
  191. data/sig/sentdm/resources/conversations.rbs +2 -2
  192. data/sig/sentdm/resources/profiles/campaigns.rbs +5 -5
  193. data/sig/sentdm/resources/profiles.rbs +11 -11
  194. data/sig/sentdm/resources/templates.rbs +3 -3
  195. data/sig/sentdm/resources/users.rbs +3 -3
  196. data/sig/sentdm/resources/webhooks.rbs +4 -4
  197. metadata +86 -98
  198. data/lib/sentdm/models/api_meta.rb +0 -34
  199. data/lib/sentdm/models/api_response_of_contact.rb +0 -46
  200. data/lib/sentdm/models/api_response_of_contact_message_summary.rb +0 -43
  201. data/lib/sentdm/models/api_response_of_conversation_messages_list.rb +0 -43
  202. data/lib/sentdm/models/api_response_of_profile_detail.rb +0 -43
  203. data/lib/sentdm/models/api_response_of_user.rb +0 -43
  204. data/lib/sentdm/models/api_response_template.rb +0 -43
  205. data/lib/sentdm/models/api_response_webhook.rb +0 -43
  206. data/lib/sentdm/models/billing_contact_info.rb +0 -47
  207. data/lib/sentdm/models/brand_business_info.rb +0 -114
  208. data/lib/sentdm/models/brand_compliance_info.rb +0 -67
  209. data/lib/sentdm/models/brand_contact_info.rb +0 -58
  210. data/lib/sentdm/models/brands_brand_data.rb +0 -34
  211. data/lib/sentdm/models/contact_message_summary.rb +0 -76
  212. data/lib/sentdm/models/contact_response.rb +0 -126
  213. data/lib/sentdm/models/conversation_messages_list.rb +0 -245
  214. data/lib/sentdm/models/error_detail.rb +0 -42
  215. data/lib/sentdm/models/mutation_request.rb +0 -20
  216. data/lib/sentdm/models/pagination_meta.rb +0 -80
  217. data/lib/sentdm/models/payment_details.rb +0 -44
  218. data/lib/sentdm/models/profile_detail.rb +0 -597
  219. data/lib/sentdm/models/profile_settings.rb +0 -66
  220. data/lib/sentdm/models/profiles/api_response_of_brand_campaign.rb +0 -45
  221. data/lib/sentdm/models/profiles/api_response_of_list_of_brand_campaign.rb +0 -45
  222. data/lib/sentdm/models/profiles/brand_campaign.rb +0 -247
  223. data/lib/sentdm/models/profiles/campaign_data.rb +0 -130
  224. data/lib/sentdm/models/profiles/campaign_use_case.rb +0 -71
  225. data/lib/sentdm/models/profiles/campaign_use_case_data.rb +0 -29
  226. data/lib/sentdm/models/template.rb +0 -90
  227. data/lib/sentdm/models/user_response.rb +0 -82
  228. data/lib/sentdm/models/webhook_event_type.rb +0 -45
  229. data/lib/sentdm/models/webhook_response.rb +0 -95
  230. data/rbi/sentdm/models/api_meta.rbi +0 -55
  231. data/rbi/sentdm/models/api_response_of_contact.rbi +0 -74
  232. data/rbi/sentdm/models/api_response_of_contact_message_summary.rbi +0 -79
  233. data/rbi/sentdm/models/api_response_of_conversation_messages_list.rbi +0 -79
  234. data/rbi/sentdm/models/api_response_of_profile_detail.rbi +0 -74
  235. data/rbi/sentdm/models/api_response_of_user.rbi +0 -74
  236. data/rbi/sentdm/models/api_response_template.rbi +0 -74
  237. data/rbi/sentdm/models/api_response_webhook.rbi +0 -74
  238. data/rbi/sentdm/models/billing_contact_info.rbi +0 -65
  239. data/rbi/sentdm/models/brand_business_info.rbi +0 -162
  240. data/rbi/sentdm/models/brand_compliance_info.rbi +0 -84
  241. data/rbi/sentdm/models/brand_contact_info.rbi +0 -78
  242. data/rbi/sentdm/models/brands_brand_data.rbi +0 -65
  243. data/rbi/sentdm/models/contact_message_summary.rbi +0 -144
  244. data/rbi/sentdm/models/contact_response.rbi +0 -183
  245. data/rbi/sentdm/models/conversation_messages_list.rbi +0 -419
  246. data/rbi/sentdm/models/error_detail.rbi +0 -66
  247. data/rbi/sentdm/models/mutation_request.rbi +0 -32
  248. data/rbi/sentdm/models/pagination_meta.rbi +0 -135
  249. data/rbi/sentdm/models/payment_details.rbi +0 -59
  250. data/rbi/sentdm/models/profile_detail.rbi +0 -866
  251. data/rbi/sentdm/models/profile_settings.rbi +0 -86
  252. data/rbi/sentdm/models/profiles/api_response_of_brand_campaign.rbi +0 -81
  253. data/rbi/sentdm/models/profiles/api_response_of_list_of_brand_campaign.rbi +0 -76
  254. data/rbi/sentdm/models/profiles/brand_campaign.rbi +0 -299
  255. data/rbi/sentdm/models/profiles/campaign_data.rbi +0 -146
  256. data/rbi/sentdm/models/profiles/campaign_use_case.rbi +0 -110
  257. data/rbi/sentdm/models/profiles/campaign_use_case_data.rbi +0 -51
  258. data/rbi/sentdm/models/template.rbi +0 -129
  259. data/rbi/sentdm/models/user_response.rbi +0 -118
  260. data/rbi/sentdm/models/webhook_event_type.rbi +0 -74
  261. data/rbi/sentdm/models/webhook_response.rbi +0 -140
  262. data/sig/sentdm/models/api_meta.rbs +0 -27
  263. data/sig/sentdm/models/api_response_of_contact.rbs +0 -39
  264. data/sig/sentdm/models/api_response_of_contact_message_summary.rbs +0 -39
  265. data/sig/sentdm/models/api_response_of_conversation_messages_list.rbs +0 -39
  266. data/sig/sentdm/models/api_response_of_profile_detail.rbs +0 -39
  267. data/sig/sentdm/models/api_response_of_user.rbs +0 -39
  268. data/sig/sentdm/models/api_response_template.rbs +0 -39
  269. data/sig/sentdm/models/api_response_webhook.rbs +0 -39
  270. data/sig/sentdm/models/billing_contact_info.rbs +0 -30
  271. data/sig/sentdm/models/brand_business_info.rbs +0 -89
  272. data/sig/sentdm/models/brand_compliance_info.rbs +0 -50
  273. data/sig/sentdm/models/brand_contact_info.rbs +0 -45
  274. data/sig/sentdm/models/brands_brand_data.rbs +0 -30
  275. data/sig/sentdm/models/contact_message_summary.rbs +0 -84
  276. data/sig/sentdm/models/contact_response.rbs +0 -111
  277. data/sig/sentdm/models/conversation_messages_list.rbs +0 -240
  278. data/sig/sentdm/models/error_detail.rbs +0 -39
  279. data/sig/sentdm/models/mutation_request.rbs +0 -15
  280. data/sig/sentdm/models/pagination_meta.rbs +0 -67
  281. data/sig/sentdm/models/payment_details.rbs +0 -30
  282. data/sig/sentdm/models/profile_detail.rbs +0 -469
  283. data/sig/sentdm/models/profile_settings.rbs +0 -50
  284. data/sig/sentdm/models/profiles/api_response_of_brand_campaign.rbs +0 -41
  285. data/sig/sentdm/models/profiles/api_response_of_list_of_brand_campaign.rbs +0 -41
  286. data/sig/sentdm/models/profiles/brand_campaign.rbs +0 -194
  287. data/sig/sentdm/models/profiles/campaign_data.rbs +0 -87
  288. data/sig/sentdm/models/profiles/campaign_use_case.rbs +0 -66
  289. data/sig/sentdm/models/profiles/campaign_use_case_data.rbs +0 -27
  290. data/sig/sentdm/models/template.rbs +0 -79
  291. data/sig/sentdm/models/user_response.rbs +0 -72
  292. data/sig/sentdm/models/webhook_event_type.rbs +0 -51
  293. data/sig/sentdm/models/webhook_response.rbs +0 -103
@@ -1,110 +0,0 @@
1
- # typed: strong
2
-
3
- module Sentdm
4
- module Models
5
- module Profiles
6
- class CampaignUseCase < Sentdm::Internal::Type::BaseModel
7
- OrHash =
8
- T.type_alias do
9
- T.any(Sentdm::Profiles::CampaignUseCase, Sentdm::Internal::AnyHash)
10
- end
11
-
12
- sig { returns(T.nilable(String)) }
13
- attr_reader :id
14
-
15
- sig { params(id: String).void }
16
- attr_writer :id
17
-
18
- sig { returns(T.nilable(String)) }
19
- attr_reader :campaign_id
20
-
21
- sig { params(campaign_id: String).void }
22
- attr_writer :campaign_id
23
-
24
- sig { returns(T.nilable(Time)) }
25
- attr_reader :created_at
26
-
27
- sig { params(created_at: Time).void }
28
- attr_writer :created_at
29
-
30
- sig { returns(T.nilable(String)) }
31
- attr_reader :customer_id
32
-
33
- sig { params(customer_id: String).void }
34
- attr_writer :customer_id
35
-
36
- sig do
37
- returns(T.nilable(Sentdm::Profiles::MessagingUseCaseUs::TaggedSymbol))
38
- end
39
- attr_reader :messaging_use_case_us
40
-
41
- sig do
42
- params(
43
- messaging_use_case_us:
44
- Sentdm::Profiles::MessagingUseCaseUs::OrSymbol
45
- ).void
46
- end
47
- attr_writer :messaging_use_case_us
48
-
49
- # Sample messages submitted to the registry for this use case.
50
- sig { returns(T.nilable(T::Array[String])) }
51
- attr_reader :sample_messages
52
-
53
- sig { params(sample_messages: T::Array[String]).void }
54
- attr_writer :sample_messages
55
-
56
- sig { returns(T.nilable(Time)) }
57
- attr_accessor :updated_at
58
-
59
- # Customer-facing use-case representation for the public v3 campaign contract.
60
- # Exists for the same reason as BrandCampaignV3Response: nesting the
61
- # TcrCampaignUseCase database entity in a public response means any column added
62
- # to that table silently becomes part of the customer-facing contract. This DTO is
63
- # an explicit allowlist, so a new column stays invisible until it is added here on
64
- # purpose. This mirrors exactly the fields the entity already serialized, so it
65
- # removes nothing from the current response shape. It only closes the future-leak
66
- # path.
67
- sig do
68
- params(
69
- id: String,
70
- campaign_id: String,
71
- created_at: Time,
72
- customer_id: String,
73
- messaging_use_case_us:
74
- Sentdm::Profiles::MessagingUseCaseUs::OrSymbol,
75
- sample_messages: T::Array[String],
76
- updated_at: T.nilable(Time)
77
- ).returns(T.attached_class)
78
- end
79
- def self.new(
80
- id: nil,
81
- campaign_id: nil,
82
- created_at: nil,
83
- customer_id: nil,
84
- messaging_use_case_us: nil,
85
- # Sample messages submitted to the registry for this use case.
86
- sample_messages: nil,
87
- updated_at: nil
88
- )
89
- end
90
-
91
- sig do
92
- override.returns(
93
- {
94
- id: String,
95
- campaign_id: String,
96
- created_at: Time,
97
- customer_id: String,
98
- messaging_use_case_us:
99
- Sentdm::Profiles::MessagingUseCaseUs::TaggedSymbol,
100
- sample_messages: T::Array[String],
101
- updated_at: T.nilable(Time)
102
- }
103
- )
104
- end
105
- def to_hash
106
- end
107
- end
108
- end
109
- end
110
- end
@@ -1,51 +0,0 @@
1
- # typed: strong
2
-
3
- module Sentdm
4
- module Models
5
- module Profiles
6
- class CampaignUseCaseData < Sentdm::Internal::Type::BaseModel
7
- OrHash =
8
- T.type_alias do
9
- T.any(
10
- Sentdm::Profiles::CampaignUseCaseData,
11
- Sentdm::Internal::AnyHash
12
- )
13
- end
14
-
15
- sig { returns(Sentdm::Profiles::MessagingUseCaseUs::OrSymbol) }
16
- attr_accessor :messaging_use_case_us
17
-
18
- # Sample messages for this use case (1-5 messages, max 1024 characters each)
19
- sig { returns(T::Array[String]) }
20
- attr_accessor :sample_messages
21
-
22
- # Campaign use case with sample messages
23
- sig do
24
- params(
25
- messaging_use_case_us:
26
- Sentdm::Profiles::MessagingUseCaseUs::OrSymbol,
27
- sample_messages: T::Array[String]
28
- ).returns(T.attached_class)
29
- end
30
- def self.new(
31
- messaging_use_case_us:,
32
- # Sample messages for this use case (1-5 messages, max 1024 characters each)
33
- sample_messages:
34
- )
35
- end
36
-
37
- sig do
38
- override.returns(
39
- {
40
- messaging_use_case_us:
41
- Sentdm::Profiles::MessagingUseCaseUs::OrSymbol,
42
- sample_messages: T::Array[String]
43
- }
44
- )
45
- end
46
- def to_hash
47
- end
48
- end
49
- end
50
- end
51
- end
@@ -1,129 +0,0 @@
1
- # typed: strong
2
-
3
- module Sentdm
4
- module Models
5
- class Template < Sentdm::Internal::Type::BaseModel
6
- OrHash =
7
- T.type_alias { T.any(Sentdm::Template, Sentdm::Internal::AnyHash) }
8
-
9
- # Unique template identifier
10
- sig { returns(T.nilable(String)) }
11
- attr_reader :id
12
-
13
- sig { params(id: String).void }
14
- attr_writer :id
15
-
16
- # Template category: MARKETING, UTILITY, AUTHENTICATION
17
- sig { returns(T.nilable(String)) }
18
- attr_reader :category
19
-
20
- sig { params(category: String).void }
21
- attr_writer :category
22
-
23
- # Supported channels: sms, whatsapp
24
- sig { returns(T.nilable(T::Array[String])) }
25
- attr_accessor :channels
26
-
27
- # When the template was created
28
- sig { returns(T.nilable(Time)) }
29
- attr_reader :created_at
30
-
31
- sig { params(created_at: Time).void }
32
- attr_writer :created_at
33
-
34
- # Whether the template is published and active
35
- sig { returns(T.nilable(T::Boolean)) }
36
- attr_reader :is_published
37
-
38
- sig { params(is_published: T::Boolean).void }
39
- attr_writer :is_published
40
-
41
- # Template language code (e.g., en_US)
42
- sig { returns(T.nilable(String)) }
43
- attr_reader :language
44
-
45
- sig { params(language: String).void }
46
- attr_writer :language
47
-
48
- # Template display name
49
- sig { returns(T.nilable(String)) }
50
- attr_reader :name
51
-
52
- sig { params(name: String).void }
53
- attr_writer :name
54
-
55
- # Template status: APPROVED, PENDING, REJECTED
56
- sig { returns(T.nilable(String)) }
57
- attr_reader :status
58
-
59
- sig { params(status: String).void }
60
- attr_writer :status
61
-
62
- # When the template was last updated
63
- sig { returns(T.nilable(Time)) }
64
- attr_accessor :updated_at
65
-
66
- # Template variables for personalization
67
- sig { returns(T.nilable(T::Array[String])) }
68
- attr_accessor :variables
69
-
70
- # Template response for v3 API
71
- sig do
72
- params(
73
- id: String,
74
- category: String,
75
- channels: T.nilable(T::Array[String]),
76
- created_at: Time,
77
- is_published: T::Boolean,
78
- language: String,
79
- name: String,
80
- status: String,
81
- updated_at: T.nilable(Time),
82
- variables: T.nilable(T::Array[String])
83
- ).returns(T.attached_class)
84
- end
85
- def self.new(
86
- # Unique template identifier
87
- id: nil,
88
- # Template category: MARKETING, UTILITY, AUTHENTICATION
89
- category: nil,
90
- # Supported channels: sms, whatsapp
91
- channels: nil,
92
- # When the template was created
93
- created_at: nil,
94
- # Whether the template is published and active
95
- is_published: nil,
96
- # Template language code (e.g., en_US)
97
- language: nil,
98
- # Template display name
99
- name: nil,
100
- # Template status: APPROVED, PENDING, REJECTED
101
- status: nil,
102
- # When the template was last updated
103
- updated_at: nil,
104
- # Template variables for personalization
105
- variables: nil
106
- )
107
- end
108
-
109
- sig do
110
- override.returns(
111
- {
112
- id: String,
113
- category: String,
114
- channels: T.nilable(T::Array[String]),
115
- created_at: Time,
116
- is_published: T::Boolean,
117
- language: String,
118
- name: String,
119
- status: String,
120
- updated_at: T.nilable(Time),
121
- variables: T.nilable(T::Array[String])
122
- }
123
- )
124
- end
125
- def to_hash
126
- end
127
- end
128
- end
129
- end
@@ -1,118 +0,0 @@
1
- # typed: strong
2
-
3
- module Sentdm
4
- module Models
5
- class UserResponse < Sentdm::Internal::Type::BaseModel
6
- OrHash =
7
- T.type_alias { T.any(Sentdm::UserResponse, Sentdm::Internal::AnyHash) }
8
-
9
- # User unique identifier
10
- sig { returns(T.nilable(String)) }
11
- attr_reader :id
12
-
13
- sig { params(id: String).void }
14
- attr_writer :id
15
-
16
- # When the user was added to the organization
17
- sig { returns(T.nilable(Time)) }
18
- attr_reader :created_at
19
-
20
- sig { params(created_at: Time).void }
21
- attr_writer :created_at
22
-
23
- # User email address
24
- sig { returns(T.nilable(String)) }
25
- attr_reader :email
26
-
27
- sig { params(email: String).void }
28
- attr_writer :email
29
-
30
- # When the user was invited
31
- sig { returns(T.nilable(Time)) }
32
- attr_accessor :invited_at
33
-
34
- # When the user last logged in
35
- sig { returns(T.nilable(Time)) }
36
- attr_accessor :last_login_at
37
-
38
- # User full name
39
- sig { returns(T.nilable(String)) }
40
- attr_reader :name
41
-
42
- sig { params(name: String).void }
43
- attr_writer :name
44
-
45
- # User role in the organization: admin, billing, developer
46
- sig { returns(T.nilable(String)) }
47
- attr_reader :role
48
-
49
- sig { params(role: String).void }
50
- attr_writer :role
51
-
52
- # User status: active, invited, suspended, rejected
53
- sig { returns(T.nilable(String)) }
54
- attr_reader :status
55
-
56
- sig { params(status: String).void }
57
- attr_writer :status
58
-
59
- # When the user record was last updated
60
- sig { returns(T.nilable(Time)) }
61
- attr_accessor :updated_at
62
-
63
- # User response for v3 API
64
- sig do
65
- params(
66
- id: String,
67
- created_at: Time,
68
- email: String,
69
- invited_at: T.nilable(Time),
70
- last_login_at: T.nilable(Time),
71
- name: String,
72
- role: String,
73
- status: String,
74
- updated_at: T.nilable(Time)
75
- ).returns(T.attached_class)
76
- end
77
- def self.new(
78
- # User unique identifier
79
- id: nil,
80
- # When the user was added to the organization
81
- created_at: nil,
82
- # User email address
83
- email: nil,
84
- # When the user was invited
85
- invited_at: nil,
86
- # When the user last logged in
87
- last_login_at: nil,
88
- # User full name
89
- name: nil,
90
- # User role in the organization: admin, billing, developer
91
- role: nil,
92
- # User status: active, invited, suspended, rejected
93
- status: nil,
94
- # When the user record was last updated
95
- updated_at: nil
96
- )
97
- end
98
-
99
- sig do
100
- override.returns(
101
- {
102
- id: String,
103
- created_at: Time,
104
- email: String,
105
- invited_at: T.nilable(Time),
106
- last_login_at: T.nilable(Time),
107
- name: String,
108
- role: String,
109
- status: String,
110
- updated_at: T.nilable(Time)
111
- }
112
- )
113
- end
114
- def to_hash
115
- end
116
- end
117
- end
118
- end
@@ -1,74 +0,0 @@
1
- # typed: strong
2
-
3
- module Sentdm
4
- module Models
5
- class WebhookEventType < Sentdm::Internal::Type::BaseModel
6
- OrHash =
7
- T.type_alias do
8
- T.any(Sentdm::WebhookEventType, Sentdm::Internal::AnyHash)
9
- end
10
-
11
- sig { returns(T.nilable(String)) }
12
- attr_accessor :description
13
-
14
- sig { returns(T.nilable(String)) }
15
- attr_reader :display_name
16
-
17
- sig { params(display_name: String).void }
18
- attr_writer :display_name
19
-
20
- sig { returns(T.nilable(String)) }
21
- attr_accessor :event_type
22
-
23
- sig { returns(T.nilable(T::Boolean)) }
24
- attr_reader :is_active
25
-
26
- sig { params(is_active: T::Boolean).void }
27
- attr_writer :is_active
28
-
29
- sig { returns(T.nilable(String)) }
30
- attr_reader :name
31
-
32
- sig { params(name: String).void }
33
- attr_writer :name
34
-
35
- sig { returns(T.nilable(T::Array[Sentdm::WebhookEventType])) }
36
- attr_accessor :sub_types
37
-
38
- sig do
39
- params(
40
- description: T.nilable(String),
41
- display_name: String,
42
- event_type: T.nilable(String),
43
- is_active: T::Boolean,
44
- name: String,
45
- sub_types: T.nilable(T::Array[Sentdm::WebhookEventType])
46
- ).returns(T.attached_class)
47
- end
48
- def self.new(
49
- description: nil,
50
- display_name: nil,
51
- event_type: nil,
52
- is_active: nil,
53
- name: nil,
54
- sub_types: nil
55
- )
56
- end
57
-
58
- sig do
59
- override.returns(
60
- {
61
- description: T.nilable(String),
62
- display_name: String,
63
- event_type: T.nilable(String),
64
- is_active: T::Boolean,
65
- name: String,
66
- sub_types: T.nilable(T::Array[Sentdm::WebhookEventType])
67
- }
68
- )
69
- end
70
- def to_hash
71
- end
72
- end
73
- end
74
- end
@@ -1,140 +0,0 @@
1
- # typed: strong
2
-
3
- module Sentdm
4
- module Models
5
- class WebhookResponse < Sentdm::Internal::Type::BaseModel
6
- OrHash =
7
- T.type_alias do
8
- T.any(Sentdm::WebhookResponse, Sentdm::Internal::AnyHash)
9
- end
10
-
11
- sig { returns(T.nilable(String)) }
12
- attr_reader :id
13
-
14
- sig { params(id: String).void }
15
- attr_writer :id
16
-
17
- sig { returns(T.nilable(Integer)) }
18
- attr_reader :consecutive_failures
19
-
20
- sig { params(consecutive_failures: Integer).void }
21
- attr_writer :consecutive_failures
22
-
23
- sig { returns(T.nilable(Time)) }
24
- attr_reader :created_at
25
-
26
- sig { params(created_at: Time).void }
27
- attr_writer :created_at
28
-
29
- sig { returns(T.nilable(String)) }
30
- attr_reader :display_name
31
-
32
- sig { params(display_name: String).void }
33
- attr_writer :display_name
34
-
35
- sig { returns(T.nilable(String)) }
36
- attr_reader :endpoint_url
37
-
38
- sig { params(endpoint_url: String).void }
39
- attr_writer :endpoint_url
40
-
41
- sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) }
42
- attr_accessor :event_filters
43
-
44
- sig { returns(T.nilable(T::Array[String])) }
45
- attr_reader :event_types
46
-
47
- sig { params(event_types: T::Array[String]).void }
48
- attr_writer :event_types
49
-
50
- sig { returns(T.nilable(T::Boolean)) }
51
- attr_reader :is_active
52
-
53
- sig { params(is_active: T::Boolean).void }
54
- attr_writer :is_active
55
-
56
- sig { returns(T.nilable(Time)) }
57
- attr_accessor :last_delivery_attempt_at
58
-
59
- sig { returns(T.nilable(Time)) }
60
- attr_accessor :last_successful_delivery_at
61
-
62
- sig { returns(T.nilable(Integer)) }
63
- attr_reader :retry_count
64
-
65
- sig { params(retry_count: Integer).void }
66
- attr_writer :retry_count
67
-
68
- sig { returns(T.nilable(String)) }
69
- attr_accessor :signing_secret
70
-
71
- sig { returns(T.nilable(Integer)) }
72
- attr_reader :timeout_seconds
73
-
74
- sig { params(timeout_seconds: Integer).void }
75
- attr_writer :timeout_seconds
76
-
77
- sig { returns(T.nilable(Time)) }
78
- attr_accessor :updated_at
79
-
80
- sig do
81
- params(
82
- id: String,
83
- consecutive_failures: Integer,
84
- created_at: Time,
85
- display_name: String,
86
- endpoint_url: String,
87
- event_filters: T.nilable(T::Hash[Symbol, T::Array[String]]),
88
- event_types: T::Array[String],
89
- is_active: T::Boolean,
90
- last_delivery_attempt_at: T.nilable(Time),
91
- last_successful_delivery_at: T.nilable(Time),
92
- retry_count: Integer,
93
- signing_secret: T.nilable(String),
94
- timeout_seconds: Integer,
95
- updated_at: T.nilable(Time)
96
- ).returns(T.attached_class)
97
- end
98
- def self.new(
99
- id: nil,
100
- consecutive_failures: nil,
101
- created_at: nil,
102
- display_name: nil,
103
- endpoint_url: nil,
104
- event_filters: nil,
105
- event_types: nil,
106
- is_active: nil,
107
- last_delivery_attempt_at: nil,
108
- last_successful_delivery_at: nil,
109
- retry_count: nil,
110
- signing_secret: nil,
111
- timeout_seconds: nil,
112
- updated_at: nil
113
- )
114
- end
115
-
116
- sig do
117
- override.returns(
118
- {
119
- id: String,
120
- consecutive_failures: Integer,
121
- created_at: Time,
122
- display_name: String,
123
- endpoint_url: String,
124
- event_filters: T.nilable(T::Hash[Symbol, T::Array[String]]),
125
- event_types: T::Array[String],
126
- is_active: T::Boolean,
127
- last_delivery_attempt_at: T.nilable(Time),
128
- last_successful_delivery_at: T.nilable(Time),
129
- retry_count: Integer,
130
- signing_secret: T.nilable(String),
131
- timeout_seconds: Integer,
132
- updated_at: T.nilable(Time)
133
- }
134
- )
135
- end
136
- def to_hash
137
- end
138
- end
139
- end
140
- end
@@ -1,27 +0,0 @@
1
- module Sentdm
2
- module Models
3
- type api_meta = { request_id: String, timestamp: Time, version: String }
4
-
5
- class APIMeta < Sentdm::Internal::Type::BaseModel
6
- attr_reader request_id: String?
7
-
8
- def request_id=: (String) -> String
9
-
10
- attr_reader timestamp: Time?
11
-
12
- def timestamp=: (Time) -> Time
13
-
14
- attr_reader version: String?
15
-
16
- def version=: (String) -> String
17
-
18
- def initialize: (
19
- ?request_id: String,
20
- ?timestamp: Time,
21
- ?version: String
22
- ) -> void
23
-
24
- def to_hash: -> { request_id: String, timestamp: Time, version: String }
25
- end
26
- end
27
- end
@@ -1,39 +0,0 @@
1
- module Sentdm
2
- module Models
3
- type api_response_of_contact =
4
- {
5
- data: Sentdm::ContactResponse?,
6
- error: Sentdm::ErrorDetail?,
7
- meta: Sentdm::APIMeta,
8
- success: bool
9
- }
10
-
11
- class APIResponseOfContact < Sentdm::Internal::Type::BaseModel
12
- attr_accessor data: Sentdm::ContactResponse?
13
-
14
- attr_accessor error: Sentdm::ErrorDetail?
15
-
16
- attr_reader meta: Sentdm::APIMeta?
17
-
18
- def meta=: (Sentdm::APIMeta) -> Sentdm::APIMeta
19
-
20
- attr_reader success: bool?
21
-
22
- def success=: (bool) -> bool
23
-
24
- def initialize: (
25
- ?data: Sentdm::ContactResponse?,
26
- ?error: Sentdm::ErrorDetail?,
27
- ?meta: Sentdm::APIMeta,
28
- ?success: bool
29
- ) -> void
30
-
31
- def to_hash: -> {
32
- data: Sentdm::ContactResponse?,
33
- error: Sentdm::ErrorDetail?,
34
- meta: Sentdm::APIMeta,
35
- success: bool
36
- }
37
- end
38
- end
39
- end