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
@@ -0,0 +1,434 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ class MessageRetrieveStatusResponse < Sentdm::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Sentdm::Models::MessageRetrieveStatusResponse,
10
+ Sentdm::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # The response data (null if error)
15
+ sig do
16
+ returns(T.nilable(Sentdm::Models::MessageRetrieveStatusResponse::Data))
17
+ end
18
+ attr_reader :data
19
+
20
+ sig do
21
+ params(
22
+ data:
23
+ T.nilable(
24
+ Sentdm::Models::MessageRetrieveStatusResponse::Data::OrHash
25
+ )
26
+ ).void
27
+ end
28
+ attr_writer :data
29
+
30
+ # Error details (null if successful)
31
+ sig { returns(T.nilable(Sentdm::APIError)) }
32
+ attr_reader :error
33
+
34
+ sig { params(error: T.nilable(Sentdm::APIError::OrHash)).void }
35
+ attr_writer :error
36
+
37
+ # Metadata about the request and response
38
+ sig { returns(T.nilable(Sentdm::APIMeta)) }
39
+ attr_reader :meta
40
+
41
+ sig { params(meta: Sentdm::APIMeta::OrHash).void }
42
+ attr_writer :meta
43
+
44
+ # Indicates whether the request was successful
45
+ sig { returns(T.nilable(T::Boolean)) }
46
+ attr_reader :success
47
+
48
+ sig { params(success: T::Boolean).void }
49
+ attr_writer :success
50
+
51
+ # Standard API response envelope for all v3 endpoints
52
+ sig do
53
+ params(
54
+ data:
55
+ T.nilable(
56
+ Sentdm::Models::MessageRetrieveStatusResponse::Data::OrHash
57
+ ),
58
+ error: T.nilable(Sentdm::APIError::OrHash),
59
+ meta: Sentdm::APIMeta::OrHash,
60
+ success: T::Boolean
61
+ ).returns(T.attached_class)
62
+ end
63
+ def self.new(
64
+ # The response data (null if error)
65
+ data: nil,
66
+ # Error details (null if successful)
67
+ error: nil,
68
+ # Metadata about the request and response
69
+ meta: nil,
70
+ # Indicates whether the request was successful
71
+ success: nil
72
+ )
73
+ end
74
+
75
+ sig do
76
+ override.returns(
77
+ {
78
+ data:
79
+ T.nilable(Sentdm::Models::MessageRetrieveStatusResponse::Data),
80
+ error: T.nilable(Sentdm::APIError),
81
+ meta: Sentdm::APIMeta,
82
+ success: T::Boolean
83
+ }
84
+ )
85
+ end
86
+ def to_hash
87
+ end
88
+
89
+ class Data < Sentdm::Internal::Type::BaseModel
90
+ OrHash =
91
+ T.type_alias do
92
+ T.any(
93
+ Sentdm::Models::MessageRetrieveStatusResponse::Data,
94
+ Sentdm::Internal::AnyHash
95
+ )
96
+ end
97
+
98
+ sig { returns(T.nilable(String)) }
99
+ attr_reader :id
100
+
101
+ sig { params(id: String).void }
102
+ attr_writer :id
103
+
104
+ sig { returns(T.nilable(String)) }
105
+ attr_reader :channel
106
+
107
+ sig { params(channel: String).void }
108
+ attr_writer :channel
109
+
110
+ sig { returns(T.nilable(String)) }
111
+ attr_reader :contact_id
112
+
113
+ sig { params(contact_id: String).void }
114
+ attr_writer :contact_id
115
+
116
+ sig { returns(T.nilable(Time)) }
117
+ attr_reader :created_at
118
+
119
+ sig { params(created_at: Time).void }
120
+ attr_writer :created_at
121
+
122
+ sig { returns(T.nilable(String)) }
123
+ attr_reader :customer_id
124
+
125
+ sig { params(customer_id: String).void }
126
+ attr_writer :customer_id
127
+
128
+ sig do
129
+ returns(
130
+ T.nilable(
131
+ T::Array[
132
+ Sentdm::Models::MessageRetrieveStatusResponse::Data::Event
133
+ ]
134
+ )
135
+ )
136
+ end
137
+ attr_accessor :events
138
+
139
+ # Structured message body format for database storage. Preserves channel-specific
140
+ # components (header, body, footer, buttons).
141
+ sig do
142
+ returns(
143
+ T.nilable(
144
+ Sentdm::Models::MessageRetrieveStatusResponse::Data::MessageBody
145
+ )
146
+ )
147
+ end
148
+ attr_reader :message_body
149
+
150
+ sig do
151
+ params(
152
+ message_body:
153
+ T.nilable(
154
+ Sentdm::Models::MessageRetrieveStatusResponse::Data::MessageBody::OrHash
155
+ )
156
+ ).void
157
+ end
158
+ attr_writer :message_body
159
+
160
+ sig { returns(T.nilable(String)) }
161
+ attr_reader :phone
162
+
163
+ sig { params(phone: String).void }
164
+ attr_writer :phone
165
+
166
+ sig { returns(T.nilable(String)) }
167
+ attr_reader :phone_international
168
+
169
+ sig { params(phone_international: String).void }
170
+ attr_writer :phone_international
171
+
172
+ sig { returns(T.nilable(Float)) }
173
+ attr_accessor :price
174
+
175
+ sig { returns(T.nilable(String)) }
176
+ attr_reader :region_code
177
+
178
+ sig { params(region_code: String).void }
179
+ attr_writer :region_code
180
+
181
+ sig { returns(T.nilable(String)) }
182
+ attr_reader :status
183
+
184
+ sig { params(status: String).void }
185
+ attr_writer :status
186
+
187
+ sig { returns(T.nilable(String)) }
188
+ attr_reader :template_category
189
+
190
+ sig { params(template_category: String).void }
191
+ attr_writer :template_category
192
+
193
+ sig { returns(T.nilable(String)) }
194
+ attr_accessor :template_id
195
+
196
+ sig { returns(T.nilable(String)) }
197
+ attr_reader :template_name
198
+
199
+ sig { params(template_name: String).void }
200
+ attr_writer :template_name
201
+
202
+ # The response data (null if error)
203
+ sig do
204
+ params(
205
+ id: String,
206
+ channel: String,
207
+ contact_id: String,
208
+ created_at: Time,
209
+ customer_id: String,
210
+ events:
211
+ T.nilable(
212
+ T::Array[
213
+ Sentdm::Models::MessageRetrieveStatusResponse::Data::Event::OrHash
214
+ ]
215
+ ),
216
+ message_body:
217
+ T.nilable(
218
+ Sentdm::Models::MessageRetrieveStatusResponse::Data::MessageBody::OrHash
219
+ ),
220
+ phone: String,
221
+ phone_international: String,
222
+ price: T.nilable(Float),
223
+ region_code: String,
224
+ status: String,
225
+ template_category: String,
226
+ template_id: T.nilable(String),
227
+ template_name: String
228
+ ).returns(T.attached_class)
229
+ end
230
+ def self.new(
231
+ id: nil,
232
+ channel: nil,
233
+ contact_id: nil,
234
+ created_at: nil,
235
+ customer_id: nil,
236
+ events: nil,
237
+ # Structured message body format for database storage. Preserves channel-specific
238
+ # components (header, body, footer, buttons).
239
+ message_body: nil,
240
+ phone: nil,
241
+ phone_international: nil,
242
+ price: nil,
243
+ region_code: nil,
244
+ status: nil,
245
+ template_category: nil,
246
+ template_id: nil,
247
+ template_name: nil
248
+ )
249
+ end
250
+
251
+ sig do
252
+ override.returns(
253
+ {
254
+ id: String,
255
+ channel: String,
256
+ contact_id: String,
257
+ created_at: Time,
258
+ customer_id: String,
259
+ events:
260
+ T.nilable(
261
+ T::Array[
262
+ Sentdm::Models::MessageRetrieveStatusResponse::Data::Event
263
+ ]
264
+ ),
265
+ message_body:
266
+ T.nilable(
267
+ Sentdm::Models::MessageRetrieveStatusResponse::Data::MessageBody
268
+ ),
269
+ phone: String,
270
+ phone_international: String,
271
+ price: T.nilable(Float),
272
+ region_code: String,
273
+ status: String,
274
+ template_category: String,
275
+ template_id: T.nilable(String),
276
+ template_name: String
277
+ }
278
+ )
279
+ end
280
+ def to_hash
281
+ end
282
+
283
+ class Event < Sentdm::Internal::Type::BaseModel
284
+ OrHash =
285
+ T.type_alias do
286
+ T.any(
287
+ Sentdm::Models::MessageRetrieveStatusResponse::Data::Event,
288
+ Sentdm::Internal::AnyHash
289
+ )
290
+ end
291
+
292
+ sig { returns(T.nilable(String)) }
293
+ attr_accessor :description
294
+
295
+ sig { returns(T.nilable(String)) }
296
+ attr_reader :status
297
+
298
+ sig { params(status: String).void }
299
+ attr_writer :status
300
+
301
+ sig { returns(T.nilable(Time)) }
302
+ attr_reader :timestamp
303
+
304
+ sig { params(timestamp: Time).void }
305
+ attr_writer :timestamp
306
+
307
+ # Represents a status change event in a message's lifecycle (v3)
308
+ sig do
309
+ params(
310
+ description: T.nilable(String),
311
+ status: String,
312
+ timestamp: Time
313
+ ).returns(T.attached_class)
314
+ end
315
+ def self.new(description: nil, status: nil, timestamp: nil)
316
+ end
317
+
318
+ sig do
319
+ override.returns(
320
+ {
321
+ description: T.nilable(String),
322
+ status: String,
323
+ timestamp: Time
324
+ }
325
+ )
326
+ end
327
+ def to_hash
328
+ end
329
+ end
330
+
331
+ class MessageBody < Sentdm::Internal::Type::BaseModel
332
+ OrHash =
333
+ T.type_alias do
334
+ T.any(
335
+ Sentdm::Models::MessageRetrieveStatusResponse::Data::MessageBody,
336
+ Sentdm::Internal::AnyHash
337
+ )
338
+ end
339
+
340
+ sig do
341
+ returns(
342
+ T.nilable(
343
+ T::Array[
344
+ Sentdm::Models::MessageRetrieveStatusResponse::Data::MessageBody::Button
345
+ ]
346
+ )
347
+ )
348
+ end
349
+ attr_accessor :buttons
350
+
351
+ sig { returns(T.nilable(String)) }
352
+ attr_reader :content
353
+
354
+ sig { params(content: String).void }
355
+ attr_writer :content
356
+
357
+ sig { returns(T.nilable(String)) }
358
+ attr_accessor :footer
359
+
360
+ sig { returns(T.nilable(String)) }
361
+ attr_accessor :header
362
+
363
+ # Structured message body format for database storage. Preserves channel-specific
364
+ # components (header, body, footer, buttons).
365
+ sig do
366
+ params(
367
+ buttons:
368
+ T.nilable(
369
+ T::Array[
370
+ Sentdm::Models::MessageRetrieveStatusResponse::Data::MessageBody::Button::OrHash
371
+ ]
372
+ ),
373
+ content: String,
374
+ footer: T.nilable(String),
375
+ header: T.nilable(String)
376
+ ).returns(T.attached_class)
377
+ end
378
+ def self.new(buttons: nil, content: nil, footer: nil, header: nil)
379
+ end
380
+
381
+ sig do
382
+ override.returns(
383
+ {
384
+ buttons:
385
+ T.nilable(
386
+ T::Array[
387
+ Sentdm::Models::MessageRetrieveStatusResponse::Data::MessageBody::Button
388
+ ]
389
+ ),
390
+ content: String,
391
+ footer: T.nilable(String),
392
+ header: T.nilable(String)
393
+ }
394
+ )
395
+ end
396
+ def to_hash
397
+ end
398
+
399
+ class Button < Sentdm::Internal::Type::BaseModel
400
+ OrHash =
401
+ T.type_alias do
402
+ T.any(
403
+ Sentdm::Models::MessageRetrieveStatusResponse::Data::MessageBody::Button,
404
+ Sentdm::Internal::AnyHash
405
+ )
406
+ end
407
+
408
+ sig { returns(T.nilable(String)) }
409
+ attr_reader :type
410
+
411
+ sig { params(type: String).void }
412
+ attr_writer :type
413
+
414
+ sig { returns(T.nilable(String)) }
415
+ attr_reader :value
416
+
417
+ sig { params(value: String).void }
418
+ attr_writer :value
419
+
420
+ sig do
421
+ params(type: String, value: String).returns(T.attached_class)
422
+ end
423
+ def self.new(type: nil, value: nil)
424
+ end
425
+
426
+ sig { override.returns({ type: String, value: String }) }
427
+ def to_hash
428
+ end
429
+ end
430
+ end
431
+ end
432
+ end
433
+ end
434
+ end
@@ -0,0 +1,143 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ class MessageSendParams < 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::MessageSendParams, Sentdm::Internal::AnyHash)
12
+ end
13
+
14
+ # Channels to broadcast on, e.g. ["whatsapp", "sms"]. Each channel produces a
15
+ # separate message per recipient. "sent" = auto-detect, "rcs" = reserved
16
+ # (skipped). Defaults to ["sent"] (auto-detect) if omitted.
17
+ sig { returns(T.nilable(T::Array[String])) }
18
+ attr_accessor :channel
19
+
20
+ # Template reference (by id or name, with optional parameters)
21
+ sig { returns(T.nilable(Sentdm::MessageSendParams::Template)) }
22
+ attr_reader :template
23
+
24
+ sig { params(template: Sentdm::MessageSendParams::Template::OrHash).void }
25
+ attr_writer :template
26
+
27
+ # Test mode flag - when true, the operation is simulated without side effects
28
+ # Useful for testing integrations without actual execution
29
+ sig { returns(T.nilable(T::Boolean)) }
30
+ attr_reader :test_mode
31
+
32
+ sig { params(test_mode: T::Boolean).void }
33
+ attr_writer :test_mode
34
+
35
+ # List of recipient phone numbers in E.164 format (multi-recipient fan-out)
36
+ sig { returns(T.nilable(T::Array[String])) }
37
+ attr_reader :to
38
+
39
+ sig { params(to: T::Array[String]).void }
40
+ attr_writer :to
41
+
42
+ sig { returns(T.nilable(String)) }
43
+ attr_reader :idempotency_key
44
+
45
+ sig { params(idempotency_key: String).void }
46
+ attr_writer :idempotency_key
47
+
48
+ sig do
49
+ params(
50
+ channel: T.nilable(T::Array[String]),
51
+ template: Sentdm::MessageSendParams::Template::OrHash,
52
+ test_mode: T::Boolean,
53
+ to: T::Array[String],
54
+ idempotency_key: String,
55
+ request_options: Sentdm::RequestOptions::OrHash
56
+ ).returns(T.attached_class)
57
+ end
58
+ def self.new(
59
+ # Channels to broadcast on, e.g. ["whatsapp", "sms"]. Each channel produces a
60
+ # separate message per recipient. "sent" = auto-detect, "rcs" = reserved
61
+ # (skipped). Defaults to ["sent"] (auto-detect) if omitted.
62
+ channel: nil,
63
+ # Template reference (by id or name, with optional parameters)
64
+ template: nil,
65
+ # Test mode flag - when true, the operation is simulated without side effects
66
+ # Useful for testing integrations without actual execution
67
+ test_mode: nil,
68
+ # List of recipient phone numbers in E.164 format (multi-recipient fan-out)
69
+ to: nil,
70
+ idempotency_key: nil,
71
+ request_options: {}
72
+ )
73
+ end
74
+
75
+ sig do
76
+ override.returns(
77
+ {
78
+ channel: T.nilable(T::Array[String]),
79
+ template: Sentdm::MessageSendParams::Template,
80
+ test_mode: T::Boolean,
81
+ to: T::Array[String],
82
+ idempotency_key: String,
83
+ request_options: Sentdm::RequestOptions
84
+ }
85
+ )
86
+ end
87
+ def to_hash
88
+ end
89
+
90
+ class Template < Sentdm::Internal::Type::BaseModel
91
+ OrHash =
92
+ T.type_alias do
93
+ T.any(
94
+ Sentdm::MessageSendParams::Template,
95
+ Sentdm::Internal::AnyHash
96
+ )
97
+ end
98
+
99
+ # Template ID (mutually exclusive with name)
100
+ sig { returns(T.nilable(String)) }
101
+ attr_accessor :id
102
+
103
+ # Template name (mutually exclusive with id)
104
+ sig { returns(T.nilable(String)) }
105
+ attr_accessor :name
106
+
107
+ # Template variable parameters for personalization
108
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
109
+ attr_accessor :parameters
110
+
111
+ # Template reference (by id or name, with optional parameters)
112
+ sig do
113
+ params(
114
+ id: T.nilable(String),
115
+ name: T.nilable(String),
116
+ parameters: T.nilable(T::Hash[Symbol, String])
117
+ ).returns(T.attached_class)
118
+ end
119
+ def self.new(
120
+ # Template ID (mutually exclusive with name)
121
+ id: nil,
122
+ # Template name (mutually exclusive with id)
123
+ name: nil,
124
+ # Template variable parameters for personalization
125
+ parameters: nil
126
+ )
127
+ end
128
+
129
+ sig do
130
+ override.returns(
131
+ {
132
+ id: T.nilable(String),
133
+ name: T.nilable(String),
134
+ parameters: T.nilable(T::Hash[Symbol, String])
135
+ }
136
+ )
137
+ end
138
+ def to_hash
139
+ end
140
+ end
141
+ end
142
+ end
143
+ end