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,158 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Resources
5
+ class Users
6
+ # Retrieves detailed information about a specific user in an organization or
7
+ # profile. Requires developer role or higher.
8
+ #
9
+ # @overload retrieve(user_id, request_options: {})
10
+ #
11
+ # @param user_id [String]
12
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
13
+ #
14
+ # @return [Sentdm::Models::APIResponseOfUser]
15
+ #
16
+ # @see Sentdm::Models::UserRetrieveParams
17
+ def retrieve(user_id, params = {})
18
+ @client.request(
19
+ method: :get,
20
+ path: ["v3/users/%1$s", user_id],
21
+ model: Sentdm::APIResponseOfUser,
22
+ options: params[:request_options]
23
+ )
24
+ end
25
+
26
+ # Retrieves all users who have access to the organization or profile identified by
27
+ # the API key, including their roles and status. Shows invited users (pending
28
+ # acceptance) and active users. Requires developer role or higher.
29
+ #
30
+ # @overload list(request_options: {})
31
+ #
32
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
33
+ #
34
+ # @return [Sentdm::Models::UserListResponse]
35
+ #
36
+ # @see Sentdm::Models::UserListParams
37
+ def list(params = {})
38
+ @client.request(
39
+ method: :get,
40
+ path: "v3/users",
41
+ model: Sentdm::Models::UserListResponse,
42
+ options: params[:request_options]
43
+ )
44
+ end
45
+
46
+ # Some parameter documentations has been truncated, see
47
+ # {Sentdm::Models::UserInviteParams} for more details.
48
+ #
49
+ # Sends an invitation to a user to join the organization or profile with a
50
+ # specific role. Requires admin role. The user will receive an invitation email
51
+ # with a token to accept. Invitation tokens expire after 7 days.
52
+ #
53
+ # @overload invite(email: nil, name: nil, role: nil, test_mode: nil, idempotency_key: nil, request_options: {})
54
+ #
55
+ # @param email [String] Body param: User email address (required)
56
+ #
57
+ # @param name [String] Body param: User full name (required)
58
+ #
59
+ # @param role [String] Body param: User role: admin, billing, or developer (required)
60
+ #
61
+ # @param test_mode [Boolean] Body param: Test mode flag - when true, the operation is simulated without side
62
+ #
63
+ # @param idempotency_key [String] Header param: Unique key to ensure idempotent request processing. Must be 1-255
64
+ #
65
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
66
+ #
67
+ # @return [Sentdm::Models::APIResponseOfUser]
68
+ #
69
+ # @see Sentdm::Models::UserInviteParams
70
+ def invite(params = {})
71
+ parsed, options = Sentdm::UserInviteParams.dump_request(params)
72
+ header_params = {idempotency_key: "idempotency-key"}
73
+ @client.request(
74
+ method: :post,
75
+ path: "v3/users",
76
+ headers: parsed.slice(*header_params.keys).transform_keys(header_params),
77
+ body: parsed.except(*header_params.keys),
78
+ model: Sentdm::APIResponseOfUser,
79
+ options: options
80
+ )
81
+ end
82
+
83
+ # Some parameter documentations has been truncated, see
84
+ # {Sentdm::Models::UserRemoveParams} for more details.
85
+ #
86
+ # Removes a user's access to an organization or profile. Requires admin role. You
87
+ # cannot remove yourself or remove the last admin.
88
+ #
89
+ # @overload remove(path_user_id, test_mode: nil, body_user_id: nil, request_options: {})
90
+ #
91
+ # @param path_user_id [String]
92
+ #
93
+ # @param test_mode [Boolean] Test mode flag - when true, the operation is simulated without side effects
94
+ #
95
+ # @param body_user_id [String] User ID from route parameter
96
+ #
97
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
98
+ #
99
+ # @return [nil]
100
+ #
101
+ # @see Sentdm::Models::UserRemoveParams
102
+ def remove(path_user_id, params = {})
103
+ parsed, options = Sentdm::UserRemoveParams.dump_request(params)
104
+ @client.request(
105
+ method: :delete,
106
+ path: ["v3/users/%1$s", path_user_id],
107
+ headers: {"content-type" => "*/*"},
108
+ body: parsed,
109
+ model: NilClass,
110
+ options: options
111
+ )
112
+ end
113
+
114
+ # Some parameter documentations has been truncated, see
115
+ # {Sentdm::Models::UserUpdateRoleParams} for more details.
116
+ #
117
+ # Updates a user's role in the organization or profile. Requires admin role. You
118
+ # cannot change your own role or demote the last admin.
119
+ #
120
+ # @overload update_role(path_user_id, role: nil, test_mode: nil, body_user_id: nil, idempotency_key: nil, request_options: {})
121
+ #
122
+ # @param path_user_id [String] Path param
123
+ #
124
+ # @param role [String] Body param: User role: admin, billing, or developer (required)
125
+ #
126
+ # @param test_mode [Boolean] Body param: Test mode flag - when true, the operation is simulated without side
127
+ #
128
+ # @param body_user_id [String] Body param: User ID from route parameter
129
+ #
130
+ # @param idempotency_key [String] Header param: Unique key to ensure idempotent request processing. Must be 1-255
131
+ #
132
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
133
+ #
134
+ # @return [Sentdm::Models::APIResponseOfUser]
135
+ #
136
+ # @see Sentdm::Models::UserUpdateRoleParams
137
+ def update_role(path_user_id, params = {})
138
+ parsed, options = Sentdm::UserUpdateRoleParams.dump_request(params)
139
+ header_params = {idempotency_key: "idempotency-key"}
140
+ @client.request(
141
+ method: :patch,
142
+ path: ["v3/users/%1$s", path_user_id],
143
+ headers: parsed.slice(*header_params.keys).transform_keys(header_params),
144
+ body: parsed.except(*header_params.keys),
145
+ model: Sentdm::APIResponseOfUser,
146
+ options: options
147
+ )
148
+ end
149
+
150
+ # @api private
151
+ #
152
+ # @param client [Sentdm::Client]
153
+ def initialize(client:)
154
+ @client = client
155
+ end
156
+ end
157
+ end
158
+ end
@@ -0,0 +1,295 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Resources
5
+ class Webhooks
6
+ # Some parameter documentations has been truncated, see
7
+ # {Sentdm::Models::WebhookCreateParams} for more details.
8
+ #
9
+ # Creates a new webhook endpoint for the authenticated customer.
10
+ #
11
+ # @overload create(display_name: nil, endpoint_url: nil, event_types: nil, retry_count: nil, test_mode: nil, timeout_seconds: nil, idempotency_key: nil, request_options: {})
12
+ #
13
+ # @param display_name [String] Body param
14
+ #
15
+ # @param endpoint_url [String] Body param
16
+ #
17
+ # @param event_types [Array<String>] Body param
18
+ #
19
+ # @param retry_count [Integer] Body param
20
+ #
21
+ # @param test_mode [Boolean] Body param: Test mode flag - when true, the operation is simulated without side
22
+ #
23
+ # @param timeout_seconds [Integer] Body param
24
+ #
25
+ # @param idempotency_key [String] Header param: Unique key to ensure idempotent request processing. Must be 1-255
26
+ #
27
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
28
+ #
29
+ # @return [Sentdm::Models::APIResponseWebhook]
30
+ #
31
+ # @see Sentdm::Models::WebhookCreateParams
32
+ def create(params = {})
33
+ parsed, options = Sentdm::WebhookCreateParams.dump_request(params)
34
+ header_params = {idempotency_key: "idempotency-key"}
35
+ @client.request(
36
+ method: :post,
37
+ path: "v3/webhooks",
38
+ headers: parsed.slice(*header_params.keys).transform_keys(header_params),
39
+ body: parsed.except(*header_params.keys),
40
+ model: Sentdm::APIResponseWebhook,
41
+ options: options
42
+ )
43
+ end
44
+
45
+ # Retrieves a single webhook by ID for the authenticated customer.
46
+ #
47
+ # @overload retrieve(id, request_options: {})
48
+ #
49
+ # @param id [String]
50
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
51
+ #
52
+ # @return [Sentdm::Models::APIResponseWebhook]
53
+ #
54
+ # @see Sentdm::Models::WebhookRetrieveParams
55
+ def retrieve(id, params = {})
56
+ @client.request(
57
+ method: :get,
58
+ path: ["v3/webhooks/%1$s", id],
59
+ model: Sentdm::APIResponseWebhook,
60
+ options: params[:request_options]
61
+ )
62
+ end
63
+
64
+ # Some parameter documentations has been truncated, see
65
+ # {Sentdm::Models::WebhookUpdateParams} for more details.
66
+ #
67
+ # Updates an existing webhook for the authenticated customer.
68
+ #
69
+ # @overload update(id, display_name: nil, endpoint_url: nil, event_types: nil, retry_count: nil, test_mode: nil, timeout_seconds: nil, idempotency_key: nil, request_options: {})
70
+ #
71
+ # @param id [String] Path param
72
+ #
73
+ # @param display_name [String] Body param
74
+ #
75
+ # @param endpoint_url [String] Body param
76
+ #
77
+ # @param event_types [Array<String>] Body param
78
+ #
79
+ # @param retry_count [Integer] Body param
80
+ #
81
+ # @param test_mode [Boolean] Body param: Test mode flag - when true, the operation is simulated without side
82
+ #
83
+ # @param timeout_seconds [Integer] Body param
84
+ #
85
+ # @param idempotency_key [String] Header param: Unique key to ensure idempotent request processing. Must be 1-255
86
+ #
87
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
88
+ #
89
+ # @return [Sentdm::Models::APIResponseWebhook]
90
+ #
91
+ # @see Sentdm::Models::WebhookUpdateParams
92
+ def update(id, params = {})
93
+ parsed, options = Sentdm::WebhookUpdateParams.dump_request(params)
94
+ header_params = {idempotency_key: "idempotency-key"}
95
+ @client.request(
96
+ method: :put,
97
+ path: ["v3/webhooks/%1$s", id],
98
+ headers: parsed.slice(*header_params.keys).transform_keys(header_params),
99
+ body: parsed.except(*header_params.keys),
100
+ model: Sentdm::APIResponseWebhook,
101
+ options: options
102
+ )
103
+ end
104
+
105
+ # Retrieves a paginated list of webhooks for the authenticated customer.
106
+ #
107
+ # @overload list(page:, page_size:, is_active: nil, search: nil, request_options: {})
108
+ #
109
+ # @param page [Integer]
110
+ # @param page_size [Integer]
111
+ # @param is_active [Boolean, nil]
112
+ # @param search [String, nil]
113
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
114
+ #
115
+ # @return [Sentdm::Models::WebhookListResponse]
116
+ #
117
+ # @see Sentdm::Models::WebhookListParams
118
+ def list(params)
119
+ parsed, options = Sentdm::WebhookListParams.dump_request(params)
120
+ @client.request(
121
+ method: :get,
122
+ path: "v3/webhooks",
123
+ query: parsed.transform_keys(page_size: "pageSize", is_active: "isActive"),
124
+ model: Sentdm::Models::WebhookListResponse,
125
+ options: options
126
+ )
127
+ end
128
+
129
+ # Deletes a webhook for the authenticated customer.
130
+ #
131
+ # @overload delete(id, request_options: {})
132
+ #
133
+ # @param id [String]
134
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
135
+ #
136
+ # @return [nil]
137
+ #
138
+ # @see Sentdm::Models::WebhookDeleteParams
139
+ def delete(id, params = {})
140
+ @client.request(
141
+ method: :delete,
142
+ path: ["v3/webhooks/%1$s", id],
143
+ model: NilClass,
144
+ options: params[:request_options]
145
+ )
146
+ end
147
+
148
+ # Retrieves all available webhook event types that can be subscribed to.
149
+ #
150
+ # @overload list_event_types(request_options: {})
151
+ #
152
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
153
+ #
154
+ # @return [Sentdm::Models::WebhookListEventTypesResponse]
155
+ #
156
+ # @see Sentdm::Models::WebhookListEventTypesParams
157
+ def list_event_types(params = {})
158
+ @client.request(
159
+ method: :get,
160
+ path: "v3/webhooks/event-types",
161
+ model: Sentdm::Models::WebhookListEventTypesResponse,
162
+ options: params[:request_options]
163
+ )
164
+ end
165
+
166
+ # Retrieves a paginated list of delivery events for the specified webhook.
167
+ #
168
+ # @overload list_events(id, page:, page_size:, search: nil, request_options: {})
169
+ #
170
+ # @param id [String]
171
+ # @param page [Integer]
172
+ # @param page_size [Integer]
173
+ # @param search [String, nil]
174
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
175
+ #
176
+ # @return [Sentdm::Models::WebhookListEventsResponse]
177
+ #
178
+ # @see Sentdm::Models::WebhookListEventsParams
179
+ def list_events(id, params)
180
+ parsed, options = Sentdm::WebhookListEventsParams.dump_request(params)
181
+ @client.request(
182
+ method: :get,
183
+ path: ["v3/webhooks/%1$s/events", id],
184
+ query: parsed.transform_keys(page_size: "pageSize"),
185
+ model: Sentdm::Models::WebhookListEventsResponse,
186
+ options: options
187
+ )
188
+ end
189
+
190
+ # Some parameter documentations has been truncated, see
191
+ # {Sentdm::Models::WebhookRotateSecretParams} for more details.
192
+ #
193
+ # Generates a new signing secret for the specified webhook. The old secret is
194
+ # immediately invalidated.
195
+ #
196
+ # @overload rotate_secret(id, body:, idempotency_key: nil, request_options: {})
197
+ #
198
+ # @param id [String] Path param
199
+ #
200
+ # @param body [Sentdm::Models::WebhookRotateSecretParams::Body] Body param
201
+ #
202
+ # @param idempotency_key [String] Header param: Unique key to ensure idempotent request processing. Must be 1-255
203
+ #
204
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
205
+ #
206
+ # @return [Sentdm::Models::WebhookRotateSecretResponse]
207
+ #
208
+ # @see Sentdm::Models::WebhookRotateSecretParams
209
+ def rotate_secret(id, params)
210
+ parsed, options = Sentdm::WebhookRotateSecretParams.dump_request(params)
211
+ @client.request(
212
+ method: :post,
213
+ path: ["v3/webhooks/%1$s/rotate-secret", id],
214
+ headers: parsed.except(:body).transform_keys(idempotency_key: "idempotency-key"),
215
+ body: parsed[:body],
216
+ model: Sentdm::Models::WebhookRotateSecretResponse,
217
+ options: options
218
+ )
219
+ end
220
+
221
+ # Some parameter documentations has been truncated, see
222
+ # {Sentdm::Models::WebhookTestParams} for more details.
223
+ #
224
+ # Sends a test event to the specified webhook endpoint to verify connectivity.
225
+ #
226
+ # @overload test_(id, event_type: nil, test_mode: nil, idempotency_key: nil, request_options: {})
227
+ #
228
+ # @param id [String] Path param
229
+ #
230
+ # @param event_type [String] Body param
231
+ #
232
+ # @param test_mode [Boolean] Body param: Test mode flag - when true, the operation is simulated without side
233
+ #
234
+ # @param idempotency_key [String] Header param: Unique key to ensure idempotent request processing. Must be 1-255
235
+ #
236
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
237
+ #
238
+ # @return [Sentdm::Models::WebhookTestResponse]
239
+ #
240
+ # @see Sentdm::Models::WebhookTestParams
241
+ def test_(id, params = {})
242
+ parsed, options = Sentdm::WebhookTestParams.dump_request(params)
243
+ header_params = {idempotency_key: "idempotency-key"}
244
+ @client.request(
245
+ method: :post,
246
+ path: ["v3/webhooks/%1$s/test", id],
247
+ headers: parsed.slice(*header_params.keys).transform_keys(header_params),
248
+ body: parsed.except(*header_params.keys),
249
+ model: Sentdm::Models::WebhookTestResponse,
250
+ options: options
251
+ )
252
+ end
253
+
254
+ # Some parameter documentations has been truncated, see
255
+ # {Sentdm::Models::WebhookToggleStatusParams} for more details.
256
+ #
257
+ # Activates or deactivates a webhook for the authenticated customer.
258
+ #
259
+ # @overload toggle_status(id, is_active: nil, test_mode: nil, idempotency_key: nil, request_options: {})
260
+ #
261
+ # @param id [String] Path param
262
+ #
263
+ # @param is_active [Boolean] Body param
264
+ #
265
+ # @param test_mode [Boolean] Body param: Test mode flag - when true, the operation is simulated without side
266
+ #
267
+ # @param idempotency_key [String] Header param: Unique key to ensure idempotent request processing. Must be 1-255
268
+ #
269
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
270
+ #
271
+ # @return [Sentdm::Models::APIResponseWebhook]
272
+ #
273
+ # @see Sentdm::Models::WebhookToggleStatusParams
274
+ def toggle_status(id, params = {})
275
+ parsed, options = Sentdm::WebhookToggleStatusParams.dump_request(params)
276
+ header_params = {idempotency_key: "idempotency-key"}
277
+ @client.request(
278
+ method: :patch,
279
+ path: ["v3/webhooks/%1$s/toggle-status", id],
280
+ headers: parsed.slice(*header_params.keys).transform_keys(header_params),
281
+ body: parsed.except(*header_params.keys),
282
+ model: Sentdm::APIResponseWebhook,
283
+ options: options
284
+ )
285
+ end
286
+
287
+ # @api private
288
+ #
289
+ # @param client [Sentdm::Client]
290
+ def initialize(client:)
291
+ @client = client
292
+ end
293
+ end
294
+ end
295
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Sentdm
4
- VERSION = "0.1.0"
4
+ VERSION = "0.3.0"
5
5
  end
data/lib/sentdm.rb CHANGED
@@ -52,31 +52,111 @@ require_relative "sentdm/errors"
52
52
  require_relative "sentdm/internal/transport/base_client"
53
53
  require_relative "sentdm/internal/transport/pooled_net_requester"
54
54
  require_relative "sentdm/client"
55
- require_relative "sentdm/models/contact_list_item"
55
+ require_relative "sentdm/models/mutation_request"
56
+ require_relative "sentdm/models/brands/base_dto"
57
+ require_relative "sentdm/models/api_error"
58
+ require_relative "sentdm/models/api_meta"
59
+ require_relative "sentdm/models/api_response_brand_with_kyc"
60
+ require_relative "sentdm/models/api_response_contact"
61
+ require_relative "sentdm/models/api_response_of_profile_detail"
62
+ require_relative "sentdm/models/api_response_of_user"
63
+ require_relative "sentdm/models/api_response_template"
64
+ require_relative "sentdm/models/api_response_webhook"
65
+ require_relative "sentdm/models/brand_create_params"
66
+ require_relative "sentdm/models/brand_data"
67
+ require_relative "sentdm/models/brand_delete_params"
68
+ require_relative "sentdm/models/brand_list_params"
69
+ require_relative "sentdm/models/brand_list_response"
70
+ require_relative "sentdm/models/brands/api_response_tcr_campaign_with_use_cases"
71
+ require_relative "sentdm/models/brands/campaign_create_params"
72
+ require_relative "sentdm/models/brands/campaign_data"
73
+ require_relative "sentdm/models/brands/campaign_delete_params"
74
+ require_relative "sentdm/models/brands/campaign_list_params"
75
+ require_relative "sentdm/models/brands/campaign_list_response"
76
+ require_relative "sentdm/models/brands/campaign_update_params"
77
+ require_relative "sentdm/models/brands/messaging_use_case_us"
78
+ require_relative "sentdm/models/brands/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data"
79
+ require_relative "sentdm/models/brands/tcr_campaign_with_use_cases"
80
+ require_relative "sentdm/models/brand_update_params"
81
+ require_relative "sentdm/models/brand_with_kyc"
82
+ require_relative "sentdm/models/contact"
83
+ require_relative "sentdm/models/contact_create_params"
84
+ require_relative "sentdm/models/contact_delete_params"
56
85
  require_relative "sentdm/models/contact_list_params"
57
86
  require_relative "sentdm/models/contact_list_response"
58
- require_relative "sentdm/models/contact_retrieve_by_phone_params"
59
- require_relative "sentdm/models/contact_retrieve_id_params"
60
- require_relative "sentdm/models/message_retrieve_params"
61
- require_relative "sentdm/models/message_retrieve_response"
62
- require_relative "sentdm/models/message_send_quick_message_params"
63
- require_relative "sentdm/models/message_send_to_contact_params"
64
- require_relative "sentdm/models/message_send_to_phone_params"
65
- require_relative "sentdm/models/number_lookup_retrieve_params"
66
- require_relative "sentdm/models/number_lookup_retrieve_response"
87
+ require_relative "sentdm/models/contact_retrieve_params"
88
+ require_relative "sentdm/models/contact_update_params"
89
+ require_relative "sentdm/models/destination_country"
90
+ require_relative "sentdm/models/lookup_retrieve_phone_info_params"
91
+ require_relative "sentdm/models/lookup_retrieve_phone_info_response"
92
+ require_relative "sentdm/models/me_retrieve_params"
93
+ require_relative "sentdm/models/me_retrieve_response"
94
+ require_relative "sentdm/models/message_retrieve_activities_params"
95
+ require_relative "sentdm/models/message_retrieve_activities_response"
96
+ require_relative "sentdm/models/message_retrieve_status_params"
97
+ require_relative "sentdm/models/message_retrieve_status_response"
98
+ require_relative "sentdm/models/message_send_params"
99
+ require_relative "sentdm/models/message_send_response"
100
+ require_relative "sentdm/models/pagination_meta"
101
+ require_relative "sentdm/models/profile_complete_params"
102
+ require_relative "sentdm/models/profile_complete_response"
103
+ require_relative "sentdm/models/profile_create_params"
104
+ require_relative "sentdm/models/profile_delete_params"
105
+ require_relative "sentdm/models/profile_detail"
106
+ require_relative "sentdm/models/profile_list_params"
107
+ require_relative "sentdm/models/profile_list_response"
108
+ require_relative "sentdm/models/profile_retrieve_params"
109
+ require_relative "sentdm/models/profile_settings"
110
+ require_relative "sentdm/models/profile_update_params"
111
+ require_relative "sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config"
112
+ require_relative "sentdm/models/sent_dm_services_common_contracts_poc_os_template_body"
113
+ require_relative "sentdm/models/sent_dm_services_common_contracts_poc_os_template_button"
114
+ require_relative "sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props"
115
+ require_relative "sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer"
116
+ require_relative "sentdm/models/sent_dm_services_common_contracts_poc_os_template_header"
117
+ require_relative "sentdm/models/tcr_brand_relationship"
118
+ require_relative "sentdm/models/tcr_vertical"
119
+ require_relative "sentdm/models/template"
67
120
  require_relative "sentdm/models/template_body_content"
68
121
  require_relative "sentdm/models/template_create_params"
69
122
  require_relative "sentdm/models/template_definition"
70
123
  require_relative "sentdm/models/template_delete_params"
71
124
  require_relative "sentdm/models/template_list_params"
72
125
  require_relative "sentdm/models/template_list_response"
73
- require_relative "sentdm/models/template_response"
74
126
  require_relative "sentdm/models/template_retrieve_params"
127
+ require_relative "sentdm/models/template_update_params"
75
128
  require_relative "sentdm/models/template_variable"
129
+ require_relative "sentdm/models/user_invite_params"
130
+ require_relative "sentdm/models/user_list_params"
131
+ require_relative "sentdm/models/user_list_response"
132
+ require_relative "sentdm/models/user_remove_params"
133
+ require_relative "sentdm/models/user_response"
134
+ require_relative "sentdm/models/user_retrieve_params"
135
+ require_relative "sentdm/models/user_update_role_params"
136
+ require_relative "sentdm/models/webhook_create_params"
137
+ require_relative "sentdm/models/webhook_delete_params"
138
+ require_relative "sentdm/models/webhook_list_events_params"
139
+ require_relative "sentdm/models/webhook_list_events_response"
140
+ require_relative "sentdm/models/webhook_list_event_types_params"
141
+ require_relative "sentdm/models/webhook_list_event_types_response"
142
+ require_relative "sentdm/models/webhook_list_params"
143
+ require_relative "sentdm/models/webhook_list_response"
144
+ require_relative "sentdm/models/webhook_response"
145
+ require_relative "sentdm/models/webhook_retrieve_params"
146
+ require_relative "sentdm/models/webhook_rotate_secret_params"
147
+ require_relative "sentdm/models/webhook_rotate_secret_response"
148
+ require_relative "sentdm/models/webhook_test_params"
149
+ require_relative "sentdm/models/webhook_test_response"
150
+ require_relative "sentdm/models/webhook_toggle_status_params"
151
+ require_relative "sentdm/models/webhook_update_params"
76
152
  require_relative "sentdm/models"
153
+ require_relative "sentdm/resources/brands"
154
+ require_relative "sentdm/resources/brands/campaigns"
77
155
  require_relative "sentdm/resources/contacts"
156
+ require_relative "sentdm/resources/lookup"
157
+ require_relative "sentdm/resources/me"
78
158
  require_relative "sentdm/resources/messages"
79
- require_relative "sentdm/resources/number_lookup"
80
- require_relative "sentdm/resources/organizations"
81
- require_relative "sentdm/resources/organizations/users"
159
+ require_relative "sentdm/resources/profiles"
82
160
  require_relative "sentdm/resources/templates"
161
+ require_relative "sentdm/resources/users"
162
+ require_relative "sentdm/resources/webhooks"
@@ -10,49 +10,47 @@ module Sentdm
10
10
 
11
11
  DEFAULT_MAX_RETRY_DELAY = T.let(8.0, Float)
12
12
 
13
- # Customer API key for authentication
13
+ # Customer API key for authentication. Use `sk_live_*` keys for production and
14
+ # `sk_test_*` keys for sandbox/testing. Pass via the `x-api-key` header.
14
15
  sig { returns(String) }
15
16
  attr_reader :api_key
16
17
 
17
- # Customer sender ID (GUID) identifying the customer account
18
- sig { returns(String) }
19
- attr_reader :sender_id
18
+ sig { returns(Sentdm::Resources::Webhooks) }
19
+ attr_reader :webhooks
20
+
21
+ sig { returns(Sentdm::Resources::Users) }
22
+ attr_reader :users
20
23
 
21
24
  sig { returns(Sentdm::Resources::Templates) }
22
25
  attr_reader :templates
23
26
 
24
- sig { returns(Sentdm::Resources::Contacts) }
25
- attr_reader :contacts
27
+ sig { returns(Sentdm::Resources::Profiles) }
28
+ attr_reader :profiles
26
29
 
27
30
  sig { returns(Sentdm::Resources::Messages) }
28
31
  attr_reader :messages
29
32
 
30
- sig { returns(Sentdm::Resources::NumberLookup) }
31
- attr_reader :number_lookup
33
+ sig { returns(Sentdm::Resources::Lookup) }
34
+ attr_reader :lookup
32
35
 
33
- sig { returns(Sentdm::Resources::Organizations) }
34
- attr_reader :organizations
36
+ sig { returns(Sentdm::Resources::Contacts) }
37
+ attr_reader :contacts
35
38
 
36
- # @api private
37
- sig { override.returns(T::Hash[String, String]) }
38
- private def auth_headers
39
- end
39
+ sig { returns(Sentdm::Resources::Brands) }
40
+ attr_reader :brands
40
41
 
41
- # @api private
42
- sig { returns(T::Hash[String, String]) }
43
- private def customer_api_key
44
- end
42
+ sig { returns(Sentdm::Resources::Me) }
43
+ attr_reader :me
45
44
 
46
45
  # @api private
47
- sig { returns(T::Hash[String, String]) }
48
- private def customer_sender_id
46
+ sig { override.returns(T::Hash[String, String]) }
47
+ private def auth_headers
49
48
  end
50
49
 
51
50
  # Creates and returns a new client for interacting with the API.
52
51
  sig do
53
52
  params(
54
53
  api_key: T.nilable(String),
55
- sender_id: T.nilable(String),
56
54
  base_url: T.nilable(String),
57
55
  max_retries: Integer,
58
56
  timeout: Float,
@@ -61,11 +59,10 @@ module Sentdm
61
59
  ).returns(T.attached_class)
62
60
  end
63
61
  def self.new(
64
- # Customer API key for authentication Defaults to `ENV["SENT_DM_API_KEY"]`
62
+ # Customer API key for authentication. Use `sk_live_*` keys for production and
63
+ # `sk_test_*` keys for sandbox/testing. Pass via the `x-api-key` header. Defaults
64
+ # to `ENV["SENT_DM_API_KEY"]`
65
65
  api_key: ENV["SENT_DM_API_KEY"],
66
- # Customer sender ID (GUID) identifying the customer account Defaults to
67
- # `ENV["SENT_DM_SENDER_ID"]`
68
- sender_id: ENV["SENT_DM_SENDER_ID"],
69
66
  # Override the default base URL for the API, e.g.,
70
67
  # `"https://api.example.com/v2/"`. Defaults to `ENV["SENT_DM_BASE_URL"]`
71
68
  base_url: ENV["SENT_DM_BASE_URL"],