sentdm 0.1.0 → 0.3.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 (361) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +18 -0
  3. data/README.md +96 -39
  4. data/lib/sentdm/client.rb +29 -36
  5. data/lib/sentdm/internal/type/base_model.rb +5 -5
  6. data/lib/sentdm/internal/type/enum.rb +25 -0
  7. data/lib/sentdm/models/api_error.rb +42 -0
  8. data/lib/sentdm/models/api_meta.rb +42 -0
  9. data/lib/sentdm/models/api_response_brand_with_kyc.rb +43 -0
  10. data/lib/sentdm/models/api_response_contact.rb +43 -0
  11. data/lib/sentdm/models/api_response_of_profile_detail.rb +43 -0
  12. data/lib/sentdm/models/api_response_of_user.rb +43 -0
  13. data/lib/sentdm/models/api_response_template.rb +43 -0
  14. data/lib/sentdm/models/api_response_webhook.rb +43 -0
  15. data/lib/sentdm/models/brand_create_params.rb +41 -0
  16. data/lib/sentdm/models/brand_data.rb +237 -0
  17. data/lib/sentdm/models/brand_delete_params.rb +27 -0
  18. data/lib/sentdm/models/brand_list_params.rb +14 -0
  19. data/lib/sentdm/models/brand_list_response.rb +43 -0
  20. data/lib/sentdm/models/brand_update_params.rb +41 -0
  21. data/lib/sentdm/models/brand_with_kyc.rb +335 -0
  22. data/lib/sentdm/models/brands/api_response_tcr_campaign_with_use_cases.rb +45 -0
  23. data/lib/sentdm/models/brands/base_dto.rb +32 -0
  24. data/lib/sentdm/models/brands/campaign_create_params.rb +43 -0
  25. data/lib/sentdm/models/brands/campaign_data.rb +123 -0
  26. data/lib/sentdm/models/brands/campaign_delete_params.rb +36 -0
  27. data/lib/sentdm/models/brands/campaign_list_params.rb +16 -0
  28. data/lib/sentdm/models/brands/campaign_list_response.rb +47 -0
  29. data/lib/sentdm/models/brands/campaign_update_params.rb +50 -0
  30. data/lib/sentdm/models/brands/messaging_use_case_us.rb +28 -0
  31. data/lib/sentdm/models/brands/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rb +30 -0
  32. data/lib/sentdm/models/brands/tcr_campaign_with_use_cases.rb +236 -0
  33. data/lib/sentdm/models/contact.rb +122 -0
  34. data/lib/sentdm/models/contact_create_params.rb +41 -0
  35. data/lib/sentdm/models/contact_delete_params.rb +27 -0
  36. data/lib/sentdm/models/contact_list_params.rb +28 -5
  37. data/lib/sentdm/models/contact_list_response.rb +46 -21
  38. data/lib/sentdm/models/{message_retrieve_params.rb → contact_retrieve_params.rb} +2 -2
  39. data/lib/sentdm/models/contact_update_params.rb +49 -0
  40. data/lib/sentdm/models/destination_country.rb +21 -0
  41. data/lib/sentdm/models/lookup_retrieve_phone_info_params.rb +14 -0
  42. data/lib/sentdm/models/lookup_retrieve_phone_info_response.rb +104 -0
  43. data/lib/sentdm/models/me_retrieve_params.rb +14 -0
  44. data/lib/sentdm/models/me_retrieve_response.rb +200 -0
  45. data/lib/sentdm/models/message_retrieve_activities_params.rb +14 -0
  46. data/lib/sentdm/models/message_retrieve_activities_response.rb +103 -0
  47. data/lib/sentdm/models/message_retrieve_status_params.rb +14 -0
  48. data/lib/sentdm/models/message_retrieve_status_response.rb +237 -0
  49. data/lib/sentdm/models/message_send_params.rb +88 -0
  50. data/lib/sentdm/models/message_send_response.rb +123 -0
  51. data/lib/sentdm/models/mutation_request.rb +20 -0
  52. data/lib/sentdm/models/pagination_meta.rb +80 -0
  53. data/lib/sentdm/models/profile_complete_params.rb +41 -0
  54. data/lib/sentdm/models/profile_complete_response.rb +8 -0
  55. data/lib/sentdm/models/profile_create_params.rb +122 -0
  56. data/lib/sentdm/models/profile_delete_params.rb +34 -0
  57. data/lib/sentdm/models/profile_detail.rb +200 -0
  58. data/lib/sentdm/models/profile_list_params.rb +14 -0
  59. data/lib/sentdm/models/profile_list_response.rb +57 -0
  60. data/lib/sentdm/models/profile_retrieve_params.rb +14 -0
  61. data/lib/sentdm/models/profile_settings.rb +66 -0
  62. data/lib/sentdm/models/profile_update_params.rb +169 -0
  63. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rb +34 -0
  64. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rb +40 -0
  65. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rb +38 -0
  66. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rb +81 -0
  67. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rb +34 -0
  68. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rb +39 -0
  69. data/lib/sentdm/models/tcr_brand_relationship.rb +18 -0
  70. data/lib/sentdm/models/tcr_vertical.rb +36 -0
  71. data/lib/sentdm/models/template.rb +90 -0
  72. data/lib/sentdm/models/template_create_params.rb +40 -19
  73. data/lib/sentdm/models/template_definition.rb +15 -255
  74. data/lib/sentdm/models/template_delete_params.rb +22 -1
  75. data/lib/sentdm/models/template_list_params.rb +9 -10
  76. data/lib/sentdm/models/template_list_response.rb +46 -21
  77. data/lib/sentdm/models/template_update_params.rb +73 -0
  78. data/lib/sentdm/models/user_invite_params.rb +57 -0
  79. data/lib/sentdm/models/user_list_params.rb +14 -0
  80. data/lib/sentdm/models/user_list_response.rb +57 -0
  81. data/lib/sentdm/models/user_remove_params.rb +34 -0
  82. data/lib/sentdm/models/user_response.rb +82 -0
  83. data/lib/sentdm/models/user_retrieve_params.rb +14 -0
  84. data/lib/sentdm/models/user_update_role_params.rb +49 -0
  85. data/lib/sentdm/models/webhook_create_params.rb +68 -0
  86. data/lib/sentdm/models/webhook_delete_params.rb +14 -0
  87. data/lib/sentdm/models/webhook_list_event_types_params.rb +14 -0
  88. data/lib/sentdm/models/webhook_list_event_types_response.rb +85 -0
  89. data/lib/sentdm/models/webhook_list_events_params.rb +32 -0
  90. data/lib/sentdm/models/webhook_list_events_response.rb +135 -0
  91. data/lib/sentdm/models/webhook_list_params.rb +38 -0
  92. data/lib/sentdm/models/webhook_list_response.rb +64 -0
  93. data/lib/sentdm/models/webhook_response.rb +87 -0
  94. data/lib/sentdm/models/webhook_retrieve_params.rb +14 -0
  95. data/lib/sentdm/models/webhook_rotate_secret_params.rb +30 -0
  96. data/lib/sentdm/models/webhook_rotate_secret_response.rb +56 -0
  97. data/lib/sentdm/models/webhook_test_params.rb +40 -0
  98. data/lib/sentdm/models/webhook_test_response.rb +62 -0
  99. data/lib/sentdm/models/webhook_toggle_status_params.rb +40 -0
  100. data/lib/sentdm/models/webhook_update_params.rb +68 -0
  101. data/lib/sentdm/models.rb +124 -10
  102. data/lib/sentdm/resources/brands/campaigns.rb +144 -0
  103. data/lib/sentdm/resources/brands.rb +128 -0
  104. data/lib/sentdm/resources/contacts.rb +111 -38
  105. data/lib/sentdm/resources/lookup.rb +35 -0
  106. data/lib/sentdm/resources/me.rb +34 -0
  107. data/lib/sentdm/resources/messages.rb +42 -77
  108. data/lib/sentdm/resources/profiles.rb +254 -0
  109. data/lib/sentdm/resources/templates.rb +94 -45
  110. data/lib/sentdm/resources/users.rb +158 -0
  111. data/lib/sentdm/resources/webhooks.rb +295 -0
  112. data/lib/sentdm/version.rb +1 -1
  113. data/lib/sentdm.rb +94 -14
  114. data/rbi/sentdm/client.rbi +22 -25
  115. data/rbi/sentdm/models/api_error.rbi +66 -0
  116. data/rbi/sentdm/models/api_meta.rbi +69 -0
  117. data/rbi/sentdm/models/api_response_brand_with_kyc.rbi +74 -0
  118. data/rbi/sentdm/models/api_response_contact.rbi +74 -0
  119. data/rbi/sentdm/models/api_response_of_profile_detail.rbi +74 -0
  120. data/rbi/sentdm/models/api_response_of_user.rbi +74 -0
  121. data/rbi/sentdm/models/api_response_template.rbi +74 -0
  122. data/rbi/sentdm/models/api_response_webhook.rbi +74 -0
  123. data/rbi/sentdm/models/brand_create_params.rbi +68 -0
  124. data/rbi/sentdm/models/brand_data.rbi +266 -0
  125. data/rbi/sentdm/models/brand_delete_params.rbi +62 -0
  126. data/rbi/sentdm/models/brand_list_params.rbi +27 -0
  127. data/rbi/sentdm/models/brand_list_response.rbi +71 -0
  128. data/rbi/sentdm/models/brand_update_params.rbi +68 -0
  129. data/rbi/sentdm/models/brand_with_kyc.rbi +398 -0
  130. data/rbi/sentdm/models/brands/api_response_tcr_campaign_with_use_cases.rbi +83 -0
  131. data/rbi/sentdm/models/brands/base_dto.rbi +53 -0
  132. data/rbi/sentdm/models/brands/campaign_create_params.rbi +73 -0
  133. data/rbi/sentdm/models/brands/campaign_data.rbi +148 -0
  134. data/rbi/sentdm/models/brands/campaign_delete_params.rbi +78 -0
  135. data/rbi/sentdm/models/brands/campaign_list_params.rbi +29 -0
  136. data/rbi/sentdm/models/brands/campaign_list_response.rbi +82 -0
  137. data/rbi/sentdm/models/brands/campaign_update_params.rbi +79 -0
  138. data/rbi/sentdm/models/brands/messaging_use_case_us.rbi +69 -0
  139. data/rbi/sentdm/models/brands/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rbi +52 -0
  140. data/rbi/sentdm/models/brands/tcr_campaign_with_use_cases.rbi +404 -0
  141. data/rbi/sentdm/models/contact.rbi +179 -0
  142. data/rbi/sentdm/models/contact_create_params.rbi +68 -0
  143. data/rbi/sentdm/models/contact_delete_params.rbi +62 -0
  144. data/rbi/sentdm/models/contact_list_params.rbi +26 -4
  145. data/rbi/sentdm/models/contact_list_response.rbi +91 -37
  146. data/rbi/sentdm/models/{message_retrieve_params.rbi → contact_retrieve_params.rbi} +2 -2
  147. data/rbi/sentdm/models/contact_update_params.rbi +73 -0
  148. data/rbi/sentdm/models/destination_country.rbi +32 -0
  149. data/rbi/sentdm/models/lookup_retrieve_phone_info_params.rbi +30 -0
  150. data/rbi/sentdm/models/lookup_retrieve_phone_info_response.rbi +183 -0
  151. data/rbi/sentdm/models/me_retrieve_params.rbi +27 -0
  152. data/rbi/sentdm/models/me_retrieve_response.rbi +314 -0
  153. data/rbi/sentdm/models/message_retrieve_activities_params.rbi +30 -0
  154. data/rbi/sentdm/models/message_retrieve_activities_response.rbi +234 -0
  155. data/rbi/sentdm/models/message_retrieve_status_params.rbi +27 -0
  156. data/rbi/sentdm/models/message_retrieve_status_response.rbi +434 -0
  157. data/rbi/sentdm/models/message_send_params.rbi +143 -0
  158. data/rbi/sentdm/models/message_send_response.rbi +231 -0
  159. data/rbi/sentdm/models/mutation_request.rbi +32 -0
  160. data/rbi/sentdm/models/pagination_meta.rbi +135 -0
  161. data/rbi/sentdm/models/profile_complete_params.rbi +65 -0
  162. data/rbi/sentdm/models/profile_complete_response.rbi +8 -0
  163. data/rbi/sentdm/models/profile_create_params.rbi +156 -0
  164. data/rbi/sentdm/models/profile_delete_params.rbi +59 -0
  165. data/rbi/sentdm/models/profile_detail.rbi +273 -0
  166. data/rbi/sentdm/models/profile_list_params.rbi +27 -0
  167. data/rbi/sentdm/models/profile_list_response.rbi +111 -0
  168. data/rbi/sentdm/models/profile_retrieve_params.rbi +27 -0
  169. data/rbi/sentdm/models/profile_settings.rbi +86 -0
  170. data/rbi/sentdm/models/profile_update_params.rbi +196 -0
  171. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rbi +56 -0
  172. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rbi +76 -0
  173. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rbi +79 -0
  174. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rbi +104 -0
  175. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rbi +60 -0
  176. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rbi +62 -0
  177. data/rbi/sentdm/models/tcr_brand_relationship.rbi +30 -0
  178. data/rbi/sentdm/models/tcr_vertical.rbi +41 -0
  179. data/rbi/sentdm/models/template.rbi +129 -0
  180. data/rbi/sentdm/models/template_create_params.rbi +47 -23
  181. data/rbi/sentdm/models/template_definition.rbi +74 -405
  182. data/rbi/sentdm/models/template_delete_params.rbi +36 -5
  183. data/rbi/sentdm/models/template_list_params.rbi +8 -10
  184. data/rbi/sentdm/models/template_list_response.rbi +91 -37
  185. data/rbi/sentdm/models/template_update_params.rbi +105 -0
  186. data/rbi/sentdm/models/user_invite_params.rbi +90 -0
  187. data/rbi/sentdm/models/user_list_params.rbi +27 -0
  188. data/rbi/sentdm/models/user_list_response.rbi +111 -0
  189. data/rbi/sentdm/models/user_remove_params.rbi +59 -0
  190. data/rbi/sentdm/models/user_response.rbi +118 -0
  191. data/rbi/sentdm/models/user_retrieve_params.rbi +27 -0
  192. data/rbi/sentdm/models/user_update_role_params.rbi +79 -0
  193. data/rbi/sentdm/models/webhook_create_params.rbi +102 -0
  194. data/rbi/sentdm/models/webhook_delete_params.rbi +27 -0
  195. data/rbi/sentdm/models/webhook_list_event_types_params.rbi +27 -0
  196. data/rbi/sentdm/models/webhook_list_event_types_response.rbi +206 -0
  197. data/rbi/sentdm/models/webhook_list_events_params.rbi +48 -0
  198. data/rbi/sentdm/models/webhook_list_events_response.rbi +263 -0
  199. data/rbi/sentdm/models/webhook_list_params.rbi +59 -0
  200. data/rbi/sentdm/models/webhook_list_response.rbi +126 -0
  201. data/rbi/sentdm/models/webhook_response.rbi +134 -0
  202. data/rbi/sentdm/models/webhook_retrieve_params.rbi +27 -0
  203. data/rbi/sentdm/models/webhook_rotate_secret_params.rbi +67 -0
  204. data/rbi/sentdm/models/webhook_rotate_secret_response.rbi +112 -0
  205. data/rbi/sentdm/models/webhook_test_params.rbi +66 -0
  206. data/rbi/sentdm/models/webhook_test_response.rbi +111 -0
  207. data/rbi/sentdm/models/webhook_toggle_status_params.rbi +66 -0
  208. data/rbi/sentdm/models/webhook_update_params.rbi +102 -0
  209. data/rbi/sentdm/models.rbi +125 -10
  210. data/rbi/sentdm/resources/brands/campaigns.rbi +108 -0
  211. data/rbi/sentdm/resources/brands.rbi +93 -0
  212. data/rbi/sentdm/resources/contacts.rbi +89 -26
  213. data/rbi/sentdm/resources/lookup.rbi +24 -0
  214. data/rbi/sentdm/resources/me.rbi +23 -0
  215. data/rbi/sentdm/resources/messages.rbi +41 -60
  216. data/rbi/sentdm/resources/profiles.rbi +238 -0
  217. data/rbi/sentdm/resources/templates.rbi +94 -41
  218. data/rbi/sentdm/resources/users.rbi +116 -0
  219. data/rbi/sentdm/resources/webhooks.rbi +218 -0
  220. data/sig/sentdm/client.rbs +9 -8
  221. data/sig/sentdm/models/api_error.rbs +39 -0
  222. data/sig/sentdm/models/api_meta.rbs +41 -0
  223. data/sig/sentdm/models/api_response_brand_with_kyc.rbs +39 -0
  224. data/sig/sentdm/models/api_response_contact.rbs +39 -0
  225. data/sig/sentdm/models/api_response_of_profile_detail.rbs +39 -0
  226. data/sig/sentdm/models/api_response_of_user.rbs +39 -0
  227. data/sig/sentdm/models/api_response_template.rbs +39 -0
  228. data/sig/sentdm/models/api_response_webhook.rbs +39 -0
  229. data/sig/sentdm/models/brand_create_params.rbs +36 -0
  230. data/sig/sentdm/models/brand_data.rbs +164 -0
  231. data/sig/sentdm/models/brand_delete_params.rbs +32 -0
  232. data/sig/sentdm/models/brand_list_params.rbs +14 -0
  233. data/sig/sentdm/models/brand_list_response.rbs +39 -0
  234. data/sig/sentdm/models/brand_update_params.rbs +36 -0
  235. data/sig/sentdm/models/brand_with_kyc.rbs +237 -0
  236. data/sig/sentdm/models/brands/api_response_tcr_campaign_with_use_cases.rbs +41 -0
  237. data/sig/sentdm/models/brands/base_dto.rbs +27 -0
  238. data/sig/sentdm/models/brands/campaign_create_params.rbs +42 -0
  239. data/sig/sentdm/models/brands/campaign_data.rbs +82 -0
  240. data/sig/sentdm/models/brands/campaign_delete_params.rbs +38 -0
  241. data/sig/sentdm/models/brands/campaign_list_params.rbs +17 -0
  242. data/sig/sentdm/models/brands/campaign_list_response.rbs +41 -0
  243. data/sig/sentdm/models/brands/campaign_update_params.rbs +47 -0
  244. data/sig/sentdm/models/brands/messaging_use_case_us.rbs +40 -0
  245. data/sig/sentdm/models/brands/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rbs +27 -0
  246. data/sig/sentdm/models/brands/tcr_campaign_with_use_cases.rbs +285 -0
  247. data/sig/sentdm/models/{contact_list_item.rbs → contact.rbs} +31 -5
  248. data/sig/sentdm/models/contact_create_params.rbs +38 -0
  249. data/sig/sentdm/models/contact_delete_params.rbs +32 -0
  250. data/sig/sentdm/models/contact_list_params.rbs +19 -1
  251. data/sig/sentdm/models/contact_list_response.rbs +44 -31
  252. data/sig/sentdm/models/{message_retrieve_params.rbs → contact_retrieve_params.rbs} +2 -2
  253. data/sig/sentdm/models/contact_update_params.rbs +45 -0
  254. data/sig/sentdm/models/destination_country.rbs +19 -0
  255. data/sig/sentdm/models/lookup_retrieve_phone_info_params.rbs +15 -0
  256. data/sig/sentdm/models/lookup_retrieve_phone_info_response.rbs +102 -0
  257. data/sig/sentdm/models/me_retrieve_params.rbs +14 -0
  258. data/sig/sentdm/models/me_retrieve_response.rbs +162 -0
  259. data/sig/sentdm/models/message_retrieve_activities_params.rbs +15 -0
  260. data/sig/sentdm/models/message_retrieve_activities_response.rbs +105 -0
  261. data/sig/sentdm/models/message_retrieve_status_params.rbs +15 -0
  262. data/sig/sentdm/models/message_retrieve_status_response.rbs +224 -0
  263. data/sig/sentdm/models/message_send_params.rbs +79 -0
  264. data/sig/sentdm/models/message_send_response.rbs +108 -0
  265. data/sig/sentdm/models/mutation_request.rbs +15 -0
  266. data/sig/sentdm/models/pagination_meta.rbs +67 -0
  267. data/sig/sentdm/models/profile_complete_params.rbs +36 -0
  268. data/sig/sentdm/models/profile_complete_response.rbs +5 -0
  269. data/sig/sentdm/models/profile_create_params.rbs +96 -0
  270. data/sig/sentdm/models/profile_delete_params.rbs +32 -0
  271. data/sig/sentdm/models/profile_detail.rbs +168 -0
  272. data/sig/sentdm/models/profile_list_params.rbs +14 -0
  273. data/sig/sentdm/models/profile_list_response.rbs +53 -0
  274. data/sig/sentdm/models/profile_retrieve_params.rbs +15 -0
  275. data/sig/sentdm/models/profile_settings.rbs +50 -0
  276. data/sig/sentdm/models/profile_update_params.rbs +122 -0
  277. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rbs +24 -0
  278. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rbs +30 -0
  279. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rbs +38 -0
  280. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rbs +75 -0
  281. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rbs +32 -0
  282. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rbs +32 -0
  283. data/sig/sentdm/models/tcr_brand_relationship.rbs +22 -0
  284. data/sig/sentdm/models/tcr_vertical.rbs +58 -0
  285. data/sig/sentdm/models/{template_response.rbs → template.rbs} +18 -31
  286. data/sig/sentdm/models/template_create_params.rbs +29 -6
  287. data/sig/sentdm/models/template_definition.rbs +20 -233
  288. data/sig/sentdm/models/template_delete_params.rbs +18 -3
  289. data/sig/sentdm/models/template_list_response.rbs +44 -31
  290. data/sig/sentdm/models/template_update_params.rbs +62 -0
  291. data/sig/sentdm/models/user_invite_params.rbs +56 -0
  292. data/sig/sentdm/models/user_list_params.rbs +14 -0
  293. data/sig/sentdm/models/user_list_response.rbs +53 -0
  294. data/sig/sentdm/models/user_remove_params.rbs +32 -0
  295. data/sig/sentdm/models/user_response.rbs +72 -0
  296. data/sig/sentdm/models/user_retrieve_params.rbs +15 -0
  297. data/sig/sentdm/models/user_update_role_params.rbs +49 -0
  298. data/sig/sentdm/models/webhook_create_params.rbs +70 -0
  299. data/sig/sentdm/models/webhook_delete_params.rbs +15 -0
  300. data/sig/sentdm/models/webhook_list_event_types_params.rbs +15 -0
  301. data/sig/sentdm/models/webhook_list_event_types_response.rbs +98 -0
  302. data/sig/sentdm/models/webhook_list_events_params.rbs +32 -0
  303. data/sig/sentdm/models/webhook_list_events_response.rbs +146 -0
  304. data/sig/sentdm/models/webhook_list_params.rbs +36 -0
  305. data/sig/sentdm/models/webhook_list_response.rbs +67 -0
  306. data/sig/sentdm/models/webhook_response.rbs +98 -0
  307. data/sig/sentdm/models/webhook_retrieve_params.rbs +15 -0
  308. data/sig/sentdm/models/webhook_rotate_secret_params.rbs +38 -0
  309. data/sig/sentdm/models/webhook_rotate_secret_response.rbs +51 -0
  310. data/sig/sentdm/models/webhook_test_params.rbs +38 -0
  311. data/sig/sentdm/models/webhook_test_response.rbs +55 -0
  312. data/sig/sentdm/models/webhook_toggle_status_params.rbs +38 -0
  313. data/sig/sentdm/models/webhook_update_params.rbs +70 -0
  314. data/sig/sentdm/models.rbs +118 -10
  315. data/sig/sentdm/resources/brands/campaigns.rbs +38 -0
  316. data/sig/sentdm/resources/brands.rbs +34 -0
  317. data/sig/sentdm/resources/contacts.rbs +28 -8
  318. data/sig/sentdm/resources/lookup.rbs +12 -0
  319. data/sig/sentdm/resources/{number_lookup.rbs → me.rbs} +2 -3
  320. data/sig/sentdm/resources/messages.rbs +12 -18
  321. data/sig/sentdm/resources/profiles.rbs +72 -0
  322. data/sig/sentdm/resources/templates.rbs +24 -4
  323. data/sig/sentdm/resources/users.rbs +41 -0
  324. data/sig/sentdm/resources/webhooks.rbs +80 -0
  325. metadata +284 -44
  326. data/lib/sentdm/models/contact_list_item.rb +0 -96
  327. data/lib/sentdm/models/contact_retrieve_by_phone_params.rb +0 -22
  328. data/lib/sentdm/models/contact_retrieve_id_params.rb +0 -22
  329. data/lib/sentdm/models/message_retrieve_response.rb +0 -227
  330. data/lib/sentdm/models/message_send_quick_message_params.rb +0 -34
  331. data/lib/sentdm/models/message_send_to_contact_params.rb +0 -46
  332. data/lib/sentdm/models/message_send_to_phone_params.rb +0 -47
  333. data/lib/sentdm/models/number_lookup_retrieve_params.rb +0 -20
  334. data/lib/sentdm/models/number_lookup_retrieve_response.rb +0 -83
  335. data/lib/sentdm/models/template_response.rb +0 -100
  336. data/lib/sentdm/resources/number_lookup.rb +0 -37
  337. data/lib/sentdm/resources/organizations/users.rb +0 -16
  338. data/lib/sentdm/resources/organizations.rb +0 -18
  339. data/rbi/sentdm/models/contact_list_item.rbi +0 -144
  340. data/rbi/sentdm/models/contact_retrieve_by_phone_params.rbi +0 -40
  341. data/rbi/sentdm/models/contact_retrieve_id_params.rbi +0 -40
  342. data/rbi/sentdm/models/message_retrieve_response.rbi +0 -376
  343. data/rbi/sentdm/models/message_send_quick_message_params.rbi +0 -56
  344. data/rbi/sentdm/models/message_send_to_contact_params.rbi +0 -63
  345. data/rbi/sentdm/models/message_send_to_phone_params.rbi +0 -65
  346. data/rbi/sentdm/models/number_lookup_retrieve_params.rbi +0 -35
  347. data/rbi/sentdm/models/number_lookup_retrieve_response.rbi +0 -132
  348. data/rbi/sentdm/models/template_response.rbi +0 -149
  349. data/rbi/sentdm/resources/number_lookup.rbi +0 -24
  350. data/rbi/sentdm/resources/organizations/users.rbi +0 -14
  351. data/rbi/sentdm/resources/organizations.rbi +0 -15
  352. data/sig/sentdm/models/contact_retrieve_by_phone_params.rbs +0 -23
  353. data/sig/sentdm/models/contact_retrieve_id_params.rbs +0 -20
  354. data/sig/sentdm/models/message_retrieve_response.rbs +0 -188
  355. data/sig/sentdm/models/message_send_quick_message_params.rbs +0 -28
  356. data/sig/sentdm/models/message_send_to_contact_params.rbs +0 -36
  357. data/sig/sentdm/models/message_send_to_phone_params.rbs +0 -36
  358. data/sig/sentdm/models/number_lookup_retrieve_params.rbs +0 -23
  359. data/sig/sentdm/models/number_lookup_retrieve_response.rbs +0 -78
  360. data/sig/sentdm/resources/organizations/users.rbs +0 -9
  361. data/sig/sentdm/resources/organizations.rbs +0 -9
@@ -0,0 +1,196 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ class ProfileUpdateParams < Sentdm::Internal::Type::BaseModel
6
+ extend Sentdm::Internal::Type::RequestParameters::Converter
7
+ include Sentdm::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(Sentdm::ProfileUpdateParams, Sentdm::Internal::AnyHash)
12
+ end
13
+
14
+ # Whether contacts are shared across profiles (optional)
15
+ sig { returns(T.nilable(T::Boolean)) }
16
+ attr_accessor :allow_contact_sharing
17
+
18
+ # Whether number changes are allowed during onboarding (optional)
19
+ sig { returns(T.nilable(T::Boolean)) }
20
+ attr_accessor :allow_number_change_during_onboarding
21
+
22
+ # Whether templates are shared across profiles (optional)
23
+ sig { returns(T.nilable(T::Boolean)) }
24
+ attr_accessor :allow_template_sharing
25
+
26
+ # Billing model: profile, organization, or profile_and_organization (optional)
27
+ sig { returns(T.nilable(String)) }
28
+ attr_accessor :billing_model
29
+
30
+ # Profile description (optional)
31
+ sig { returns(T.nilable(String)) }
32
+ attr_accessor :description
33
+
34
+ # Profile icon URL (optional)
35
+ sig { returns(T.nilable(String)) }
36
+ attr_accessor :icon
37
+
38
+ # Whether this profile inherits contacts from organization (optional)
39
+ sig { returns(T.nilable(T::Boolean)) }
40
+ attr_accessor :inherit_contacts
41
+
42
+ # Whether this profile inherits TCR brand from organization (optional)
43
+ sig { returns(T.nilable(T::Boolean)) }
44
+ attr_accessor :inherit_tcr_brand
45
+
46
+ # Whether this profile inherits TCR campaign from organization (optional)
47
+ sig { returns(T.nilable(T::Boolean)) }
48
+ attr_accessor :inherit_tcr_campaign
49
+
50
+ # Whether this profile inherits templates from organization (optional)
51
+ sig { returns(T.nilable(T::Boolean)) }
52
+ attr_accessor :inherit_templates
53
+
54
+ # Profile name (optional)
55
+ sig { returns(T.nilable(String)) }
56
+ attr_accessor :name
57
+
58
+ # Profile ID from route parameter
59
+ sig { returns(T.nilable(String)) }
60
+ attr_reader :body_profile_id
61
+
62
+ sig { params(body_profile_id: String).void }
63
+ attr_writer :body_profile_id
64
+
65
+ # Direct phone number for SMS sending (optional)
66
+ sig { returns(T.nilable(String)) }
67
+ attr_accessor :sending_phone_number
68
+
69
+ # Reference to another profile to use for SMS/Telnyx configuration (optional)
70
+ sig { returns(T.nilable(String)) }
71
+ attr_accessor :sending_phone_number_profile_id
72
+
73
+ # Reference to another profile to use for WhatsApp configuration (optional)
74
+ sig { returns(T.nilable(String)) }
75
+ attr_accessor :sending_whatsapp_number_profile_id
76
+
77
+ # Profile short name/abbreviation (optional)
78
+ sig { returns(T.nilable(String)) }
79
+ attr_accessor :short_name
80
+
81
+ # Test mode flag - when true, the operation is simulated without side effects
82
+ # Useful for testing integrations without actual execution
83
+ sig { returns(T.nilable(T::Boolean)) }
84
+ attr_reader :test_mode
85
+
86
+ sig { params(test_mode: T::Boolean).void }
87
+ attr_writer :test_mode
88
+
89
+ # Direct phone number for WhatsApp sending (optional)
90
+ sig { returns(T.nilable(String)) }
91
+ attr_accessor :whatsapp_phone_number
92
+
93
+ sig { returns(T.nilable(String)) }
94
+ attr_reader :idempotency_key
95
+
96
+ sig { params(idempotency_key: String).void }
97
+ attr_writer :idempotency_key
98
+
99
+ sig do
100
+ params(
101
+ allow_contact_sharing: T.nilable(T::Boolean),
102
+ allow_number_change_during_onboarding: T.nilable(T::Boolean),
103
+ allow_template_sharing: T.nilable(T::Boolean),
104
+ billing_model: T.nilable(String),
105
+ description: T.nilable(String),
106
+ icon: T.nilable(String),
107
+ inherit_contacts: T.nilable(T::Boolean),
108
+ inherit_tcr_brand: T.nilable(T::Boolean),
109
+ inherit_tcr_campaign: T.nilable(T::Boolean),
110
+ inherit_templates: T.nilable(T::Boolean),
111
+ name: T.nilable(String),
112
+ body_profile_id: String,
113
+ sending_phone_number: T.nilable(String),
114
+ sending_phone_number_profile_id: T.nilable(String),
115
+ sending_whatsapp_number_profile_id: T.nilable(String),
116
+ short_name: T.nilable(String),
117
+ test_mode: T::Boolean,
118
+ whatsapp_phone_number: T.nilable(String),
119
+ idempotency_key: String,
120
+ request_options: Sentdm::RequestOptions::OrHash
121
+ ).returns(T.attached_class)
122
+ end
123
+ def self.new(
124
+ # Whether contacts are shared across profiles (optional)
125
+ allow_contact_sharing: nil,
126
+ # Whether number changes are allowed during onboarding (optional)
127
+ allow_number_change_during_onboarding: nil,
128
+ # Whether templates are shared across profiles (optional)
129
+ allow_template_sharing: nil,
130
+ # Billing model: profile, organization, or profile_and_organization (optional)
131
+ billing_model: nil,
132
+ # Profile description (optional)
133
+ description: nil,
134
+ # Profile icon URL (optional)
135
+ icon: nil,
136
+ # Whether this profile inherits contacts from organization (optional)
137
+ inherit_contacts: nil,
138
+ # Whether this profile inherits TCR brand from organization (optional)
139
+ inherit_tcr_brand: nil,
140
+ # Whether this profile inherits TCR campaign from organization (optional)
141
+ inherit_tcr_campaign: nil,
142
+ # Whether this profile inherits templates from organization (optional)
143
+ inherit_templates: nil,
144
+ # Profile name (optional)
145
+ name: nil,
146
+ # Profile ID from route parameter
147
+ body_profile_id: nil,
148
+ # Direct phone number for SMS sending (optional)
149
+ sending_phone_number: nil,
150
+ # Reference to another profile to use for SMS/Telnyx configuration (optional)
151
+ sending_phone_number_profile_id: nil,
152
+ # Reference to another profile to use for WhatsApp configuration (optional)
153
+ sending_whatsapp_number_profile_id: nil,
154
+ # Profile short name/abbreviation (optional)
155
+ short_name: nil,
156
+ # Test mode flag - when true, the operation is simulated without side effects
157
+ # Useful for testing integrations without actual execution
158
+ test_mode: nil,
159
+ # Direct phone number for WhatsApp sending (optional)
160
+ whatsapp_phone_number: nil,
161
+ idempotency_key: nil,
162
+ request_options: {}
163
+ )
164
+ end
165
+
166
+ sig do
167
+ override.returns(
168
+ {
169
+ allow_contact_sharing: T.nilable(T::Boolean),
170
+ allow_number_change_during_onboarding: T.nilable(T::Boolean),
171
+ allow_template_sharing: T.nilable(T::Boolean),
172
+ billing_model: T.nilable(String),
173
+ description: T.nilable(String),
174
+ icon: T.nilable(String),
175
+ inherit_contacts: T.nilable(T::Boolean),
176
+ inherit_tcr_brand: T.nilable(T::Boolean),
177
+ inherit_tcr_campaign: T.nilable(T::Boolean),
178
+ inherit_templates: T.nilable(T::Boolean),
179
+ name: T.nilable(String),
180
+ body_profile_id: String,
181
+ sending_phone_number: T.nilable(String),
182
+ sending_phone_number_profile_id: T.nilable(String),
183
+ sending_whatsapp_number_profile_id: T.nilable(String),
184
+ short_name: T.nilable(String),
185
+ test_mode: T::Boolean,
186
+ whatsapp_phone_number: T.nilable(String),
187
+ idempotency_key: String,
188
+ request_options: Sentdm::RequestOptions
189
+ }
190
+ )
191
+ end
192
+ def to_hash
193
+ end
194
+ end
195
+ end
196
+ 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,76 @@
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
+ # SMS-specific content that overrides multi-channel content for SMS messages
27
+ sig { returns(T.nilable(Sentdm::TemplateBodyContent)) }
28
+ attr_reader :sms
29
+
30
+ sig { params(sms: T.nilable(Sentdm::TemplateBodyContent::OrHash)).void }
31
+ attr_writer :sms
32
+
33
+ # WhatsApp-specific content that overrides multi-channel content for WhatsApp
34
+ # messages
35
+ sig { returns(T.nilable(Sentdm::TemplateBodyContent)) }
36
+ attr_reader :whatsapp
37
+
38
+ sig do
39
+ params(whatsapp: T.nilable(Sentdm::TemplateBodyContent::OrHash)).void
40
+ end
41
+ attr_writer :whatsapp
42
+
43
+ # Body section of a message template with channel-specific content
44
+ sig do
45
+ params(
46
+ multi_channel: T.nilable(Sentdm::TemplateBodyContent::OrHash),
47
+ sms: T.nilable(Sentdm::TemplateBodyContent::OrHash),
48
+ whatsapp: T.nilable(Sentdm::TemplateBodyContent::OrHash)
49
+ ).returns(T.attached_class)
50
+ end
51
+ def self.new(
52
+ # Content that will be used for all channels (SMS and WhatsApp) unless
53
+ # channel-specific content is provided
54
+ multi_channel: nil,
55
+ # SMS-specific content that overrides multi-channel content for SMS messages
56
+ sms: nil,
57
+ # WhatsApp-specific content that overrides multi-channel content for WhatsApp
58
+ # messages
59
+ whatsapp: nil
60
+ )
61
+ end
62
+
63
+ sig do
64
+ override.returns(
65
+ {
66
+ multi_channel: T.nilable(Sentdm::TemplateBodyContent),
67
+ sms: T.nilable(Sentdm::TemplateBodyContent),
68
+ whatsapp: T.nilable(Sentdm::TemplateBodyContent)
69
+ }
70
+ )
71
+ end
72
+ def to_hash
73
+ end
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,79 @@
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
+ # The unique identifier of the button (1-based index)
15
+ sig { returns(T.nilable(Integer)) }
16
+ attr_reader :id
17
+
18
+ sig { params(id: Integer).void }
19
+ attr_writer :id
20
+
21
+ # Properties specific to the button type
22
+ sig do
23
+ returns(
24
+ T.nilable(
25
+ Sentdm::SentDmServicesCommonContractsPocOsTemplateButtonProps
26
+ )
27
+ )
28
+ end
29
+ attr_reader :props
30
+
31
+ sig do
32
+ params(
33
+ props:
34
+ Sentdm::SentDmServicesCommonContractsPocOsTemplateButtonProps::OrHash
35
+ ).void
36
+ end
37
+ attr_writer :props
38
+
39
+ # The type of button (e.g., QUICK_REPLY, URL, PHONE_NUMBER, VOICE_CALL, COPY_CODE)
40
+ sig { returns(T.nilable(String)) }
41
+ attr_reader :type
42
+
43
+ sig { params(type: String).void }
44
+ attr_writer :type
45
+
46
+ # Interactive button in a message template
47
+ sig do
48
+ params(
49
+ id: Integer,
50
+ props:
51
+ Sentdm::SentDmServicesCommonContractsPocOsTemplateButtonProps::OrHash,
52
+ type: String
53
+ ).returns(T.attached_class)
54
+ end
55
+ def self.new(
56
+ # The unique identifier of the button (1-based index)
57
+ id: nil,
58
+ # Properties specific to the button type
59
+ props: nil,
60
+ # The type of button (e.g., QUICK_REPLY, URL, PHONE_NUMBER, VOICE_CALL, COPY_CODE)
61
+ type: nil
62
+ )
63
+ end
64
+
65
+ sig do
66
+ override.returns(
67
+ {
68
+ id: Integer,
69
+ props:
70
+ Sentdm::SentDmServicesCommonContractsPocOsTemplateButtonProps,
71
+ type: String
72
+ }
73
+ )
74
+ end
75
+ def to_hash
76
+ end
77
+ end
78
+ end
79
+ end
@@ -0,0 +1,104 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ class SentDmServicesCommonContractsPocOsTemplateButtonProps < Sentdm::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Sentdm::SentDmServicesCommonContractsPocOsTemplateButtonProps,
10
+ Sentdm::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ sig { returns(T.nilable(Integer)) }
15
+ attr_accessor :active_for
16
+
17
+ sig { returns(T.nilable(String)) }
18
+ attr_accessor :autofill_text
19
+
20
+ sig { returns(T.nilable(String)) }
21
+ attr_accessor :country_code
22
+
23
+ sig { returns(T.nilable(String)) }
24
+ attr_accessor :offer_code
25
+
26
+ sig { returns(T.nilable(String)) }
27
+ attr_accessor :otp_type
28
+
29
+ sig { returns(T.nilable(String)) }
30
+ attr_accessor :package_name
31
+
32
+ sig { returns(T.nilable(String)) }
33
+ attr_accessor :phone_number
34
+
35
+ sig { returns(T.nilable(String)) }
36
+ attr_accessor :quick_reply_type
37
+
38
+ sig { returns(T.nilable(String)) }
39
+ attr_accessor :signature_hash
40
+
41
+ sig { returns(T.nilable(String)) }
42
+ attr_accessor :text
43
+
44
+ sig { returns(T.nilable(String)) }
45
+ attr_accessor :url
46
+
47
+ sig { returns(T.nilable(String)) }
48
+ attr_accessor :url_type
49
+
50
+ sig do
51
+ params(
52
+ active_for: T.nilable(Integer),
53
+ autofill_text: T.nilable(String),
54
+ country_code: T.nilable(String),
55
+ offer_code: T.nilable(String),
56
+ otp_type: T.nilable(String),
57
+ package_name: T.nilable(String),
58
+ phone_number: T.nilable(String),
59
+ quick_reply_type: T.nilable(String),
60
+ signature_hash: T.nilable(String),
61
+ text: T.nilable(String),
62
+ url: T.nilable(String),
63
+ url_type: T.nilable(String)
64
+ ).returns(T.attached_class)
65
+ end
66
+ def self.new(
67
+ active_for: nil,
68
+ autofill_text: nil,
69
+ country_code: nil,
70
+ offer_code: nil,
71
+ otp_type: nil,
72
+ package_name: nil,
73
+ phone_number: nil,
74
+ quick_reply_type: nil,
75
+ signature_hash: nil,
76
+ text: nil,
77
+ url: nil,
78
+ url_type: nil
79
+ )
80
+ end
81
+
82
+ sig do
83
+ override.returns(
84
+ {
85
+ active_for: T.nilable(Integer),
86
+ autofill_text: T.nilable(String),
87
+ country_code: T.nilable(String),
88
+ offer_code: T.nilable(String),
89
+ otp_type: T.nilable(String),
90
+ package_name: T.nilable(String),
91
+ phone_number: T.nilable(String),
92
+ quick_reply_type: T.nilable(String),
93
+ signature_hash: T.nilable(String),
94
+ text: T.nilable(String),
95
+ url: T.nilable(String),
96
+ url_type: T.nilable(String)
97
+ }
98
+ )
99
+ end
100
+ def to_hash
101
+ end
102
+ end
103
+ end
104
+ end
@@ -0,0 +1,60 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ class SentDmServicesCommonContractsPocOsTemplateFooter < Sentdm::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Sentdm::SentDmServicesCommonContractsPocOsTemplateFooter,
10
+ Sentdm::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # The footer template text with optional variable placeholders
15
+ sig { returns(T.nilable(String)) }
16
+ attr_reader :template
17
+
18
+ sig { params(template: String).void }
19
+ attr_writer :template
20
+
21
+ # The type of footer (typically "text")
22
+ sig { returns(T.nilable(String)) }
23
+ attr_accessor :type
24
+
25
+ # List of variables used in the footer template
26
+ sig { returns(T.nilable(T::Array[Sentdm::TemplateVariable])) }
27
+ attr_accessor :variables
28
+
29
+ # Footer section of a message template
30
+ sig do
31
+ params(
32
+ template: String,
33
+ type: T.nilable(String),
34
+ variables: T.nilable(T::Array[Sentdm::TemplateVariable::OrHash])
35
+ ).returns(T.attached_class)
36
+ end
37
+ def self.new(
38
+ # The footer template text with optional variable placeholders
39
+ template: nil,
40
+ # The type of footer (typically "text")
41
+ type: nil,
42
+ # List of variables used in the footer template
43
+ variables: nil
44
+ )
45
+ end
46
+
47
+ sig do
48
+ override.returns(
49
+ {
50
+ template: String,
51
+ type: T.nilable(String),
52
+ variables: T.nilable(T::Array[Sentdm::TemplateVariable])
53
+ }
54
+ )
55
+ end
56
+ def to_hash
57
+ end
58
+ end
59
+ end
60
+ end
@@ -0,0 +1,62 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ class SentDmServicesCommonContractsPocOsTemplateHeader < Sentdm::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Sentdm::SentDmServicesCommonContractsPocOsTemplateHeader,
10
+ Sentdm::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # The header template text with optional variable placeholders (e.g., "Welcome to
15
+ # {{0:variable}}")
16
+ sig { returns(T.nilable(String)) }
17
+ attr_reader :template
18
+
19
+ sig { params(template: String).void }
20
+ attr_writer :template
21
+
22
+ # The type of header (e.g., "text", "image", "video", "document")
23
+ sig { returns(T.nilable(String)) }
24
+ attr_accessor :type
25
+
26
+ # List of variables used in the header template
27
+ sig { returns(T.nilable(T::Array[Sentdm::TemplateVariable])) }
28
+ attr_accessor :variables
29
+
30
+ # Header section of a message template
31
+ sig do
32
+ params(
33
+ template: String,
34
+ type: T.nilable(String),
35
+ variables: T.nilable(T::Array[Sentdm::TemplateVariable::OrHash])
36
+ ).returns(T.attached_class)
37
+ end
38
+ def self.new(
39
+ # The header template text with optional variable placeholders (e.g., "Welcome to
40
+ # {{0:variable}}")
41
+ template: nil,
42
+ # The type of header (e.g., "text", "image", "video", "document")
43
+ type: nil,
44
+ # List of variables used in the header template
45
+ variables: nil
46
+ )
47
+ end
48
+
49
+ sig do
50
+ override.returns(
51
+ {
52
+ template: String,
53
+ type: T.nilable(String),
54
+ variables: T.nilable(T::Array[Sentdm::TemplateVariable])
55
+ }
56
+ )
57
+ end
58
+ def to_hash
59
+ end
60
+ end
61
+ end
62
+ end
@@ -0,0 +1,30 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ module TcrBrandRelationship
6
+ extend Sentdm::Internal::Type::Enum
7
+
8
+ TaggedSymbol =
9
+ T.type_alias { T.all(Symbol, Sentdm::TcrBrandRelationship) }
10
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
11
+
12
+ BASIC_ACCOUNT =
13
+ T.let(:BASIC_ACCOUNT, Sentdm::TcrBrandRelationship::TaggedSymbol)
14
+ MEDIUM_ACCOUNT =
15
+ T.let(:MEDIUM_ACCOUNT, Sentdm::TcrBrandRelationship::TaggedSymbol)
16
+ LARGE_ACCOUNT =
17
+ T.let(:LARGE_ACCOUNT, Sentdm::TcrBrandRelationship::TaggedSymbol)
18
+ SMALL_ACCOUNT =
19
+ T.let(:SMALL_ACCOUNT, Sentdm::TcrBrandRelationship::TaggedSymbol)
20
+ KEY_ACCOUNT =
21
+ T.let(:KEY_ACCOUNT, Sentdm::TcrBrandRelationship::TaggedSymbol)
22
+
23
+ sig do
24
+ override.returns(T::Array[Sentdm::TcrBrandRelationship::TaggedSymbol])
25
+ end
26
+ def self.values
27
+ end
28
+ end
29
+ end
30
+ end