sentdm 0.2.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 (355) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +10 -0
  3. data/README.md +96 -39
  4. data/lib/sentdm/client.rb +28 -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 -12
  114. data/rbi/sentdm/client.rbi +20 -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 +11 -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_v2.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 -38
  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_v2.rb +0 -100
  336. data/lib/sentdm/resources/number_lookup.rb +0 -37
  337. data/rbi/sentdm/models/contact_list_item.rbi +0 -144
  338. data/rbi/sentdm/models/contact_retrieve_by_phone_params.rbi +0 -40
  339. data/rbi/sentdm/models/contact_retrieve_id_params.rbi +0 -40
  340. data/rbi/sentdm/models/message_retrieve_response.rbi +0 -376
  341. data/rbi/sentdm/models/message_send_quick_message_params.rbi +0 -56
  342. data/rbi/sentdm/models/message_send_to_contact_params.rbi +0 -63
  343. data/rbi/sentdm/models/message_send_to_phone_params.rbi +0 -65
  344. data/rbi/sentdm/models/number_lookup_retrieve_params.rbi +0 -35
  345. data/rbi/sentdm/models/number_lookup_retrieve_response.rbi +0 -132
  346. data/rbi/sentdm/models/template_response_v2.rbi +0 -149
  347. data/rbi/sentdm/resources/number_lookup.rbi +0 -24
  348. data/sig/sentdm/models/contact_retrieve_by_phone_params.rbs +0 -23
  349. data/sig/sentdm/models/contact_retrieve_id_params.rbs +0 -20
  350. data/sig/sentdm/models/message_retrieve_response.rbs +0 -188
  351. data/sig/sentdm/models/message_send_quick_message_params.rbs +0 -28
  352. data/sig/sentdm/models/message_send_to_contact_params.rbs +0 -36
  353. data/sig/sentdm/models/message_send_to_phone_params.rbs +0 -36
  354. data/sig/sentdm/models/number_lookup_retrieve_params.rbs +0 -23
  355. data/sig/sentdm/models/number_lookup_retrieve_response.rbs +0 -78
@@ -7,25 +7,25 @@ module Sentdm
7
7
  # Required template body with content for different channels (multi-channel,
8
8
  # SMS-specific, or WhatsApp-specific)
9
9
  #
10
- # @return [Sentdm::Models::TemplateDefinition::Body]
11
- required :body, -> { Sentdm::TemplateDefinition::Body }
10
+ # @return [Sentdm::Models::SentDmServicesCommonContractsPocOsTemplateBody]
11
+ required :body, -> { Sentdm::SentDmServicesCommonContractsPocOsTemplateBody }
12
12
 
13
13
  # @!attribute authentication_config
14
14
  # Configuration specific to AUTHENTICATION category templates (optional)
15
15
  #
16
- # @return [Sentdm::Models::TemplateDefinition::AuthenticationConfig, nil]
16
+ # @return [Sentdm::Models::SentDmServicesCommonContractsPocOsAuthenticationConfig, nil]
17
17
  optional :authentication_config,
18
- -> { Sentdm::TemplateDefinition::AuthenticationConfig },
18
+ -> { Sentdm::SentDmServicesCommonContractsPocOsAuthenticationConfig },
19
19
  api_name: :authenticationConfig,
20
20
  nil?: true
21
21
 
22
22
  # @!attribute buttons
23
23
  # Optional list of interactive buttons (e.g., quick replies, URLs, phone numbers)
24
24
  #
25
- # @return [Array<Sentdm::Models::TemplateDefinition::Button>, nil]
25
+ # @return [Array<Sentdm::Models::SentDmServicesCommonContractsPocOsTemplateButton>, nil]
26
26
  optional :buttons,
27
27
  -> {
28
- Sentdm::Internal::Type::ArrayOf[Sentdm::TemplateDefinition::Button]
28
+ Sentdm::Internal::Type::ArrayOf[Sentdm::SentDmServicesCommonContractsPocOsTemplateButton]
29
29
  },
30
30
  nil?: true
31
31
 
@@ -38,14 +38,14 @@ module Sentdm
38
38
  # @!attribute footer
39
39
  # Optional template footer with optional variables
40
40
  #
41
- # @return [Sentdm::Models::TemplateDefinition::Footer, nil]
42
- optional :footer, -> { Sentdm::TemplateDefinition::Footer }, nil?: true
41
+ # @return [Sentdm::Models::SentDmServicesCommonContractsPocOsTemplateFooter, nil]
42
+ optional :footer, -> { Sentdm::SentDmServicesCommonContractsPocOsTemplateFooter }, nil?: true
43
43
 
44
44
  # @!attribute header
45
45
  # Optional template header with optional variables
46
46
  #
47
- # @return [Sentdm::Models::TemplateDefinition::Header, nil]
48
- optional :header, -> { Sentdm::TemplateDefinition::Header }, nil?: true
47
+ # @return [Sentdm::Models::SentDmServicesCommonContractsPocOsTemplateHeader, nil]
48
+ optional :header, -> { Sentdm::SentDmServicesCommonContractsPocOsTemplateHeader }, nil?: true
49
49
 
50
50
  # @!method initialize(body:, authentication_config: nil, buttons: nil, definition_version: nil, footer: nil, header: nil)
51
51
  # Some parameter documentations has been truncated, see
@@ -54,257 +54,17 @@ module Sentdm
54
54
  # Complete definition of a message template including header, body, footer, and
55
55
  # buttons
56
56
  #
57
- # @param body [Sentdm::Models::TemplateDefinition::Body] Required template body with content for different channels (multi-channel, SMS-s
57
+ # @param body [Sentdm::Models::SentDmServicesCommonContractsPocOsTemplateBody] Required template body with content for different channels (multi-channel, SMS-s
58
58
  #
59
- # @param authentication_config [Sentdm::Models::TemplateDefinition::AuthenticationConfig, nil] Configuration specific to AUTHENTICATION category templates (optional)
59
+ # @param authentication_config [Sentdm::Models::SentDmServicesCommonContractsPocOsAuthenticationConfig, nil] Configuration specific to AUTHENTICATION category templates (optional)
60
60
  #
61
- # @param buttons [Array<Sentdm::Models::TemplateDefinition::Button>, nil] Optional list of interactive buttons (e.g., quick replies, URLs, phone numbers)
61
+ # @param buttons [Array<Sentdm::Models::SentDmServicesCommonContractsPocOsTemplateButton>, nil] Optional list of interactive buttons (e.g., quick replies, URLs, phone numbers)
62
62
  #
63
63
  # @param definition_version [String, nil] The version of the template definition format
64
64
  #
65
- # @param footer [Sentdm::Models::TemplateDefinition::Footer, nil] Optional template footer with optional variables
65
+ # @param footer [Sentdm::Models::SentDmServicesCommonContractsPocOsTemplateFooter, nil] Optional template footer with optional variables
66
66
  #
67
- # @param header [Sentdm::Models::TemplateDefinition::Header, nil] Optional template header with optional variables
68
-
69
- # @see Sentdm::Models::TemplateDefinition#body
70
- class Body < Sentdm::Internal::Type::BaseModel
71
- # @!attribute multi_channel
72
- # Content that will be used for all channels (SMS and WhatsApp) unless
73
- # channel-specific content is provided
74
- #
75
- # @return [Sentdm::Models::TemplateBodyContent, nil]
76
- optional :multi_channel, -> { Sentdm::TemplateBodyContent }, api_name: :multiChannel, nil?: true
77
-
78
- # @!attribute sms
79
- # SMS-specific content that overrides multi-channel content for SMS messages
80
- #
81
- # @return [Sentdm::Models::TemplateBodyContent, nil]
82
- optional :sms, -> { Sentdm::TemplateBodyContent }, nil?: true
83
-
84
- # @!attribute whatsapp
85
- # WhatsApp-specific content that overrides multi-channel content for WhatsApp
86
- # messages
87
- #
88
- # @return [Sentdm::Models::TemplateBodyContent, nil]
89
- optional :whatsapp, -> { Sentdm::TemplateBodyContent }, nil?: true
90
-
91
- # @!method initialize(multi_channel: nil, sms: nil, whatsapp: nil)
92
- # Some parameter documentations has been truncated, see
93
- # {Sentdm::Models::TemplateDefinition::Body} for more details.
94
- #
95
- # Required template body with content for different channels (multi-channel,
96
- # SMS-specific, or WhatsApp-specific)
97
- #
98
- # @param multi_channel [Sentdm::Models::TemplateBodyContent, nil] Content that will be used for all channels (SMS and WhatsApp) unless channel-spe
99
- #
100
- # @param sms [Sentdm::Models::TemplateBodyContent, nil] SMS-specific content that overrides multi-channel content for SMS messages
101
- #
102
- # @param whatsapp [Sentdm::Models::TemplateBodyContent, nil] WhatsApp-specific content that overrides multi-channel content for WhatsApp mess
103
- end
104
-
105
- # @see Sentdm::Models::TemplateDefinition#authentication_config
106
- class AuthenticationConfig < Sentdm::Internal::Type::BaseModel
107
- # @!attribute add_security_recommendation
108
- # Whether to add the security recommendation text: "For your security, do not
109
- # share this code."
110
- #
111
- # @return [Boolean, nil]
112
- optional :add_security_recommendation,
113
- Sentdm::Internal::Type::Boolean,
114
- api_name: :addSecurityRecommendation
115
-
116
- # @!attribute code_expiration_minutes
117
- # Code expiration time in minutes (1-90). If set, adds footer: "This code expires
118
- # in X minutes."
119
- #
120
- # @return [Integer, nil]
121
- optional :code_expiration_minutes, Integer, api_name: :codeExpirationMinutes, nil?: true
122
-
123
- # @!method initialize(add_security_recommendation: nil, code_expiration_minutes: nil)
124
- # Some parameter documentations has been truncated, see
125
- # {Sentdm::Models::TemplateDefinition::AuthenticationConfig} for more details.
126
- #
127
- # Configuration specific to AUTHENTICATION category templates (optional)
128
- #
129
- # @param add_security_recommendation [Boolean] Whether to add the security recommendation text: "For your security, do not shar
130
- #
131
- # @param code_expiration_minutes [Integer, nil] Code expiration time in minutes (1-90). If set, adds footer: "This code expires
132
- end
133
-
134
- class Button < Sentdm::Internal::Type::BaseModel
135
- # @!attribute id
136
- # The unique identifier of the button (1-based index)
137
- #
138
- # @return [Integer, nil]
139
- optional :id, Integer
140
-
141
- # @!attribute props
142
- # Properties specific to the button type
143
- #
144
- # @return [Sentdm::Models::TemplateDefinition::Button::Props, nil]
145
- optional :props, -> { Sentdm::TemplateDefinition::Button::Props }
146
-
147
- # @!attribute type
148
- # The type of button (e.g., QUICK_REPLY, URL, PHONE_NUMBER, VOICE_CALL, COPY_CODE)
149
- #
150
- # @return [String, nil]
151
- optional :type, String
152
-
153
- # @!method initialize(id: nil, props: nil, type: nil)
154
- # Some parameter documentations has been truncated, see
155
- # {Sentdm::Models::TemplateDefinition::Button} for more details.
156
- #
157
- # Interactive button in a message template
158
- #
159
- # @param id [Integer] The unique identifier of the button (1-based index)
160
- #
161
- # @param props [Sentdm::Models::TemplateDefinition::Button::Props] Properties specific to the button type
162
- #
163
- # @param type [String] The type of button (e.g., QUICK_REPLY, URL, PHONE_NUMBER, VOICE_CALL, COPY_CODE)
164
-
165
- # @see Sentdm::Models::TemplateDefinition::Button#props
166
- class Props < Sentdm::Internal::Type::BaseModel
167
- # @!attribute active_for
168
- #
169
- # @return [Integer, nil]
170
- optional :active_for, Integer, api_name: :activeFor, nil?: true
171
-
172
- # @!attribute autofill_text
173
- #
174
- # @return [String, nil]
175
- optional :autofill_text, String, api_name: :autofillText, nil?: true
176
-
177
- # @!attribute country_code
178
- #
179
- # @return [String, nil]
180
- optional :country_code, String, api_name: :countryCode, nil?: true
181
-
182
- # @!attribute offer_code
183
- #
184
- # @return [String, nil]
185
- optional :offer_code, String, api_name: :offerCode, nil?: true
186
-
187
- # @!attribute otp_type
188
- #
189
- # @return [String, nil]
190
- optional :otp_type, String, api_name: :otpType, nil?: true
191
-
192
- # @!attribute package_name
193
- #
194
- # @return [String, nil]
195
- optional :package_name, String, api_name: :packageName, nil?: true
196
-
197
- # @!attribute phone_number
198
- #
199
- # @return [String, nil]
200
- optional :phone_number, String, api_name: :phoneNumber, nil?: true
201
-
202
- # @!attribute quick_reply_type
203
- #
204
- # @return [String, nil]
205
- optional :quick_reply_type, String, api_name: :quickReplyType, nil?: true
206
-
207
- # @!attribute signature_hash
208
- #
209
- # @return [String, nil]
210
- optional :signature_hash, String, api_name: :signatureHash, nil?: true
211
-
212
- # @!attribute text
213
- #
214
- # @return [String, nil]
215
- optional :text, String, nil?: true
216
-
217
- # @!attribute url
218
- #
219
- # @return [String, nil]
220
- optional :url, String, nil?: true
221
-
222
- # @!attribute url_type
223
- #
224
- # @return [String, nil]
225
- optional :url_type, String, api_name: :urlType, nil?: true
226
-
227
- # @!method initialize(active_for: nil, autofill_text: nil, country_code: nil, offer_code: nil, otp_type: nil, package_name: nil, phone_number: nil, quick_reply_type: nil, signature_hash: nil, text: nil, url: nil, url_type: nil)
228
- # Properties specific to the button type
229
- #
230
- # @param active_for [Integer, nil]
231
- # @param autofill_text [String, nil]
232
- # @param country_code [String, nil]
233
- # @param offer_code [String, nil]
234
- # @param otp_type [String, nil]
235
- # @param package_name [String, nil]
236
- # @param phone_number [String, nil]
237
- # @param quick_reply_type [String, nil]
238
- # @param signature_hash [String, nil]
239
- # @param text [String, nil]
240
- # @param url [String, nil]
241
- # @param url_type [String, nil]
242
- end
243
- end
244
-
245
- # @see Sentdm::Models::TemplateDefinition#footer
246
- class Footer < Sentdm::Internal::Type::BaseModel
247
- # @!attribute template
248
- # The footer template text with optional variable placeholders
249
- #
250
- # @return [String, nil]
251
- optional :template, String
252
-
253
- # @!attribute type
254
- # The type of footer (typically "text")
255
- #
256
- # @return [String, nil]
257
- optional :type, String, nil?: true
258
-
259
- # @!attribute variables
260
- # List of variables used in the footer template
261
- #
262
- # @return [Array<Sentdm::Models::TemplateVariable>, nil]
263
- optional :variables, -> { Sentdm::Internal::Type::ArrayOf[Sentdm::TemplateVariable] }, nil?: true
264
-
265
- # @!method initialize(template: nil, type: nil, variables: nil)
266
- # Optional template footer with optional variables
267
- #
268
- # @param template [String] The footer template text with optional variable placeholders
269
- #
270
- # @param type [String, nil] The type of footer (typically "text")
271
- #
272
- # @param variables [Array<Sentdm::Models::TemplateVariable>, nil] List of variables used in the footer template
273
- end
274
-
275
- # @see Sentdm::Models::TemplateDefinition#header
276
- class Header < Sentdm::Internal::Type::BaseModel
277
- # @!attribute template
278
- # The header template text with optional variable placeholders (e.g., "Welcome to
279
- # {{0:variable}}")
280
- #
281
- # @return [String, nil]
282
- optional :template, String
283
-
284
- # @!attribute type
285
- # The type of header (e.g., "text", "image", "video", "document")
286
- #
287
- # @return [String, nil]
288
- optional :type, String, nil?: true
289
-
290
- # @!attribute variables
291
- # List of variables used in the header template
292
- #
293
- # @return [Array<Sentdm::Models::TemplateVariable>, nil]
294
- optional :variables, -> { Sentdm::Internal::Type::ArrayOf[Sentdm::TemplateVariable] }, nil?: true
295
-
296
- # @!method initialize(template: nil, type: nil, variables: nil)
297
- # Some parameter documentations has been truncated, see
298
- # {Sentdm::Models::TemplateDefinition::Header} for more details.
299
- #
300
- # Optional template header with optional variables
301
- #
302
- # @param template [String] The header template text with optional variable placeholders (e.g., "Welcome to
303
- #
304
- # @param type [String, nil] The type of header (e.g., "text", "image", "video", "document")
305
- #
306
- # @param variables [Array<Sentdm::Models::TemplateVariable>, nil] List of variables used in the header template
307
- end
67
+ # @param header [Sentdm::Models::SentDmServicesCommonContractsPocOsTemplateHeader, nil] Optional template header with optional variables
308
68
  end
309
69
  end
310
70
  end
@@ -7,7 +7,28 @@ module Sentdm
7
7
  extend Sentdm::Internal::Type::RequestParameters::Converter
8
8
  include Sentdm::Internal::Type::RequestParameters
9
9
 
10
- # @!method initialize(request_options: {})
10
+ # @!attribute delete_from_meta
11
+ # Whether to also delete the template from WhatsApp/Meta (optional, defaults to
12
+ # false)
13
+ #
14
+ # @return [Boolean, nil]
15
+ optional :delete_from_meta, Sentdm::Internal::Type::Boolean, nil?: true
16
+
17
+ # @!attribute test_mode
18
+ # Test mode flag - when true, the operation is simulated without side effects
19
+ # Useful for testing integrations without actual execution
20
+ #
21
+ # @return [Boolean, nil]
22
+ optional :test_mode, Sentdm::Internal::Type::Boolean
23
+
24
+ # @!method initialize(delete_from_meta: nil, test_mode: nil, request_options: {})
25
+ # Some parameter documentations has been truncated, see
26
+ # {Sentdm::Models::TemplateDeleteParams} for more details.
27
+ #
28
+ # @param delete_from_meta [Boolean, nil] Whether to also delete the template from WhatsApp/Meta (optional, defaults to fa
29
+ #
30
+ # @param test_mode [Boolean] Test mode flag - when true, the operation is simulated without side effects
31
+ #
11
32
  # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
12
33
  end
13
34
  end
@@ -8,45 +8,44 @@ module Sentdm
8
8
  include Sentdm::Internal::Type::RequestParameters
9
9
 
10
10
  # @!attribute page
11
- # The page number (zero-indexed). Default is 0.
11
+ # Page number (1-indexed)
12
12
  #
13
13
  # @return [Integer]
14
14
  required :page, Integer
15
15
 
16
16
  # @!attribute page_size
17
- # The number of items per page (1-1000). Default is 100.
18
17
  #
19
18
  # @return [Integer]
20
19
  required :page_size, Integer
21
20
 
22
21
  # @!attribute category
23
- # Optional filter by template category (e.g., MARKETING, UTILITY, AUTHENTICATION)
22
+ # Optional category filter: MARKETING, UTILITY, AUTHENTICATION
24
23
  #
25
24
  # @return [String, nil]
26
25
  optional :category, String, nil?: true
27
26
 
28
27
  # @!attribute search
29
- # Optional search term to filter templates by name or content
28
+ # Optional search term for filtering templates
30
29
  #
31
30
  # @return [String, nil]
32
31
  optional :search, String, nil?: true
33
32
 
34
33
  # @!attribute status
35
- # Optional filter by template status (e.g., APPROVED, PENDING, REJECTED, DRAFT)
34
+ # Optional status filter: APPROVED, PENDING, REJECTED
36
35
  #
37
36
  # @return [String, nil]
38
37
  optional :status, String, nil?: true
39
38
 
40
39
  # @!method initialize(page:, page_size:, category: nil, search: nil, status: nil, request_options: {})
41
- # @param page [Integer] The page number (zero-indexed). Default is 0.
40
+ # @param page [Integer] Page number (1-indexed)
42
41
  #
43
- # @param page_size [Integer] The number of items per page (1-1000). Default is 100.
42
+ # @param page_size [Integer]
44
43
  #
45
- # @param category [String, nil] Optional filter by template category (e.g., MARKETING, UTILITY, AUTHENTICATION)
44
+ # @param category [String, nil] Optional category filter: MARKETING, UTILITY, AUTHENTICATION
46
45
  #
47
- # @param search [String, nil] Optional search term to filter templates by name or content
46
+ # @param search [String, nil] Optional search term for filtering templates
48
47
  #
49
- # @param status [String, nil] Optional filter by template status (e.g., APPROVED, PENDING, REJECTED, DRAFT)
48
+ # @param status [String, nil] Optional status filter: APPROVED, PENDING, REJECTED
50
49
  #
51
50
  # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
52
51
  end
@@ -4,37 +4,62 @@ module Sentdm
4
4
  module Models
5
5
  # @see Sentdm::Resources::Templates#list
6
6
  class TemplateListResponse < Sentdm::Internal::Type::BaseModel
7
- # @!attribute items
7
+ # @!attribute data
8
+ # The response data (null if error)
8
9
  #
9
- # @return [Array<Sentdm::Models::TemplateResponseV2>, nil]
10
- optional :items, -> { Sentdm::Internal::Type::ArrayOf[Sentdm::TemplateResponseV2] }
10
+ # @return [Sentdm::Models::TemplateListResponse::Data, nil]
11
+ optional :data, -> { Sentdm::Models::TemplateListResponse::Data }, nil?: true
11
12
 
12
- # @!attribute page
13
+ # @!attribute error
14
+ # Error details (null if successful)
13
15
  #
14
- # @return [Integer, nil]
15
- optional :page, Integer
16
+ # @return [Sentdm::Models::APIError, nil]
17
+ optional :error, -> { Sentdm::APIError }, nil?: true
16
18
 
17
- # @!attribute page_size
19
+ # @!attribute meta
20
+ # Metadata about the request and response
18
21
  #
19
- # @return [Integer, nil]
20
- optional :page_size, Integer, api_name: :pageSize
22
+ # @return [Sentdm::Models::APIMeta, nil]
23
+ optional :meta, -> { Sentdm::APIMeta }
21
24
 
22
- # @!attribute total_count
25
+ # @!attribute success
26
+ # Indicates whether the request was successful
23
27
  #
24
- # @return [Integer, nil]
25
- optional :total_count, Integer, api_name: :totalCount
28
+ # @return [Boolean, nil]
29
+ optional :success, Sentdm::Internal::Type::Boolean
26
30
 
27
- # @!attribute total_pages
31
+ # @!method initialize(data: nil, error: nil, meta: nil, success: nil)
32
+ # Standard API response envelope for all v3 endpoints
28
33
  #
29
- # @return [Integer, nil]
30
- optional :total_pages, Integer, api_name: :totalPages
34
+ # @param data [Sentdm::Models::TemplateListResponse::Data, nil] The response data (null if error)
35
+ #
36
+ # @param error [Sentdm::Models::APIError, nil] Error details (null if successful)
37
+ #
38
+ # @param meta [Sentdm::Models::APIMeta] Metadata about the request and response
39
+ #
40
+ # @param success [Boolean] Indicates whether the request was successful
41
+
42
+ # @see Sentdm::Models::TemplateListResponse#data
43
+ class Data < Sentdm::Internal::Type::BaseModel
44
+ # @!attribute pagination
45
+ # Pagination metadata
46
+ #
47
+ # @return [Sentdm::Models::PaginationMeta, nil]
48
+ optional :pagination, -> { Sentdm::PaginationMeta }
49
+
50
+ # @!attribute templates
51
+ # List of templates
52
+ #
53
+ # @return [Array<Sentdm::Models::Template>, nil]
54
+ optional :templates, -> { Sentdm::Internal::Type::ArrayOf[Sentdm::Template] }
31
55
 
32
- # @!method initialize(items: nil, page: nil, page_size: nil, total_count: nil, total_pages: nil)
33
- # @param items [Array<Sentdm::Models::TemplateResponseV2>]
34
- # @param page [Integer]
35
- # @param page_size [Integer]
36
- # @param total_count [Integer]
37
- # @param total_pages [Integer]
56
+ # @!method initialize(pagination: nil, templates: nil)
57
+ # The response data (null if error)
58
+ #
59
+ # @param pagination [Sentdm::Models::PaginationMeta] Pagination metadata
60
+ #
61
+ # @param templates [Array<Sentdm::Models::Template>] List of templates
62
+ end
38
63
  end
39
64
  end
40
65
  end
@@ -0,0 +1,73 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ # @see Sentdm::Resources::Templates#update
6
+ class TemplateUpdateParams < Sentdm::Internal::Type::BaseModel
7
+ extend Sentdm::Internal::Type::RequestParameters::Converter
8
+ include Sentdm::Internal::Type::RequestParameters
9
+
10
+ # @!attribute category
11
+ # Template category: MARKETING, UTILITY, AUTHENTICATION
12
+ #
13
+ # @return [String, nil]
14
+ optional :category, String, nil?: true
15
+
16
+ # @!attribute definition
17
+ # Template definition including header, body, footer, and buttons
18
+ #
19
+ # @return [Sentdm::Models::TemplateDefinition, nil]
20
+ optional :definition, -> { Sentdm::TemplateDefinition }, nil?: true
21
+
22
+ # @!attribute language
23
+ # Template language code (e.g., en_US)
24
+ #
25
+ # @return [String, nil]
26
+ optional :language, String, nil?: true
27
+
28
+ # @!attribute name
29
+ # Template display name
30
+ #
31
+ # @return [String, nil]
32
+ optional :name, String, nil?: true
33
+
34
+ # @!attribute submit_for_review
35
+ # Whether to submit the template for review after updating (default: false)
36
+ #
37
+ # @return [Boolean, nil]
38
+ optional :submit_for_review, Sentdm::Internal::Type::Boolean
39
+
40
+ # @!attribute test_mode
41
+ # Test mode flag - when true, the operation is simulated without side effects
42
+ # Useful for testing integrations without actual execution
43
+ #
44
+ # @return [Boolean, nil]
45
+ optional :test_mode, Sentdm::Internal::Type::Boolean
46
+
47
+ # @!attribute idempotency_key
48
+ #
49
+ # @return [String, nil]
50
+ optional :idempotency_key, String
51
+
52
+ # @!method initialize(category: nil, definition: nil, language: nil, name: nil, submit_for_review: nil, test_mode: nil, idempotency_key: nil, request_options: {})
53
+ # Some parameter documentations has been truncated, see
54
+ # {Sentdm::Models::TemplateUpdateParams} for more details.
55
+ #
56
+ # @param category [String, nil] Template category: MARKETING, UTILITY, AUTHENTICATION
57
+ #
58
+ # @param definition [Sentdm::Models::TemplateDefinition, nil] Template definition including header, body, footer, and buttons
59
+ #
60
+ # @param language [String, nil] Template language code (e.g., en_US)
61
+ #
62
+ # @param name [String, nil] Template display name
63
+ #
64
+ # @param submit_for_review [Boolean] Whether to submit the template for review after updating (default: false)
65
+ #
66
+ # @param test_mode [Boolean] Test mode flag - when true, the operation is simulated without side effects
67
+ #
68
+ # @param idempotency_key [String]
69
+ #
70
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
71
+ end
72
+ end
73
+ end
@@ -0,0 +1,57 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ # @see Sentdm::Resources::Users#invite
6
+ class UserInviteParams < Sentdm::Internal::Type::BaseModel
7
+ extend Sentdm::Internal::Type::RequestParameters::Converter
8
+ include Sentdm::Internal::Type::RequestParameters
9
+
10
+ # @!attribute email
11
+ # User email address (required)
12
+ #
13
+ # @return [String, nil]
14
+ optional :email, String
15
+
16
+ # @!attribute name
17
+ # User full name (required)
18
+ #
19
+ # @return [String, nil]
20
+ optional :name, String
21
+
22
+ # @!attribute role
23
+ # User role: admin, billing, or developer (required)
24
+ #
25
+ # @return [String, nil]
26
+ optional :role, String
27
+
28
+ # @!attribute test_mode
29
+ # Test mode flag - when true, the operation is simulated without side effects
30
+ # Useful for testing integrations without actual execution
31
+ #
32
+ # @return [Boolean, nil]
33
+ optional :test_mode, Sentdm::Internal::Type::Boolean
34
+
35
+ # @!attribute idempotency_key
36
+ #
37
+ # @return [String, nil]
38
+ optional :idempotency_key, String
39
+
40
+ # @!method initialize(email: nil, name: nil, role: nil, test_mode: nil, idempotency_key: nil, request_options: {})
41
+ # Some parameter documentations has been truncated, see
42
+ # {Sentdm::Models::UserInviteParams} for more details.
43
+ #
44
+ # @param email [String] User email address (required)
45
+ #
46
+ # @param name [String] User full name (required)
47
+ #
48
+ # @param role [String] User role: admin, billing, or developer (required)
49
+ #
50
+ # @param test_mode [Boolean] Test mode flag - when true, the operation is simulated without side effects
51
+ #
52
+ # @param idempotency_key [String]
53
+ #
54
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ # @see Sentdm::Resources::Users#list
6
+ class UserListParams < Sentdm::Internal::Type::BaseModel
7
+ extend Sentdm::Internal::Type::RequestParameters::Converter
8
+ include Sentdm::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end