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
@@ -8,67 +8,121 @@ module Sentdm
8
8
  T.any(Sentdm::Models::TemplateListResponse, Sentdm::Internal::AnyHash)
9
9
  end
10
10
 
11
- sig { returns(T.nilable(T::Array[Sentdm::TemplateResponse])) }
12
- attr_reader :items
11
+ # The response data (null if error)
12
+ sig { returns(T.nilable(Sentdm::Models::TemplateListResponse::Data)) }
13
+ attr_reader :data
13
14
 
14
- sig { params(items: T::Array[Sentdm::TemplateResponse::OrHash]).void }
15
- attr_writer :items
16
-
17
- sig { returns(T.nilable(Integer)) }
18
- attr_reader :page
19
-
20
- sig { params(page: Integer).void }
21
- attr_writer :page
15
+ sig do
16
+ params(
17
+ data: T.nilable(Sentdm::Models::TemplateListResponse::Data::OrHash)
18
+ ).void
19
+ end
20
+ attr_writer :data
22
21
 
23
- sig { returns(T.nilable(Integer)) }
24
- attr_reader :page_size
22
+ # Error details (null if successful)
23
+ sig { returns(T.nilable(Sentdm::APIError)) }
24
+ attr_reader :error
25
25
 
26
- sig { params(page_size: Integer).void }
27
- attr_writer :page_size
26
+ sig { params(error: T.nilable(Sentdm::APIError::OrHash)).void }
27
+ attr_writer :error
28
28
 
29
- sig { returns(T.nilable(Integer)) }
30
- attr_reader :total_count
29
+ # Metadata about the request and response
30
+ sig { returns(T.nilable(Sentdm::APIMeta)) }
31
+ attr_reader :meta
31
32
 
32
- sig { params(total_count: Integer).void }
33
- attr_writer :total_count
33
+ sig { params(meta: Sentdm::APIMeta::OrHash).void }
34
+ attr_writer :meta
34
35
 
35
- sig { returns(T.nilable(Integer)) }
36
- attr_reader :total_pages
36
+ # Indicates whether the request was successful
37
+ sig { returns(T.nilable(T::Boolean)) }
38
+ attr_reader :success
37
39
 
38
- sig { params(total_pages: Integer).void }
39
- attr_writer :total_pages
40
+ sig { params(success: T::Boolean).void }
41
+ attr_writer :success
40
42
 
43
+ # Standard API response envelope for all v3 endpoints
41
44
  sig do
42
45
  params(
43
- items: T::Array[Sentdm::TemplateResponse::OrHash],
44
- page: Integer,
45
- page_size: Integer,
46
- total_count: Integer,
47
- total_pages: Integer
46
+ data: T.nilable(Sentdm::Models::TemplateListResponse::Data::OrHash),
47
+ error: T.nilable(Sentdm::APIError::OrHash),
48
+ meta: Sentdm::APIMeta::OrHash,
49
+ success: T::Boolean
48
50
  ).returns(T.attached_class)
49
51
  end
50
52
  def self.new(
51
- items: nil,
52
- page: nil,
53
- page_size: nil,
54
- total_count: nil,
55
- total_pages: nil
53
+ # The response data (null if error)
54
+ data: nil,
55
+ # Error details (null if successful)
56
+ error: nil,
57
+ # Metadata about the request and response
58
+ meta: nil,
59
+ # Indicates whether the request was successful
60
+ success: nil
56
61
  )
57
62
  end
58
63
 
59
64
  sig do
60
65
  override.returns(
61
66
  {
62
- items: T::Array[Sentdm::TemplateResponse],
63
- page: Integer,
64
- page_size: Integer,
65
- total_count: Integer,
66
- total_pages: Integer
67
+ data: T.nilable(Sentdm::Models::TemplateListResponse::Data),
68
+ error: T.nilable(Sentdm::APIError),
69
+ meta: Sentdm::APIMeta,
70
+ success: T::Boolean
67
71
  }
68
72
  )
69
73
  end
70
74
  def to_hash
71
75
  end
76
+
77
+ class Data < Sentdm::Internal::Type::BaseModel
78
+ OrHash =
79
+ T.type_alias do
80
+ T.any(
81
+ Sentdm::Models::TemplateListResponse::Data,
82
+ Sentdm::Internal::AnyHash
83
+ )
84
+ end
85
+
86
+ # Pagination metadata
87
+ sig { returns(T.nilable(Sentdm::PaginationMeta)) }
88
+ attr_reader :pagination
89
+
90
+ sig { params(pagination: Sentdm::PaginationMeta::OrHash).void }
91
+ attr_writer :pagination
92
+
93
+ # List of templates
94
+ sig { returns(T.nilable(T::Array[Sentdm::Template])) }
95
+ attr_reader :templates
96
+
97
+ sig { params(templates: T::Array[Sentdm::Template::OrHash]).void }
98
+ attr_writer :templates
99
+
100
+ # The response data (null if error)
101
+ sig do
102
+ params(
103
+ pagination: Sentdm::PaginationMeta::OrHash,
104
+ templates: T::Array[Sentdm::Template::OrHash]
105
+ ).returns(T.attached_class)
106
+ end
107
+ def self.new(
108
+ # Pagination metadata
109
+ pagination: nil,
110
+ # List of templates
111
+ templates: nil
112
+ )
113
+ end
114
+
115
+ sig do
116
+ override.returns(
117
+ {
118
+ pagination: Sentdm::PaginationMeta,
119
+ templates: T::Array[Sentdm::Template]
120
+ }
121
+ )
122
+ end
123
+ def to_hash
124
+ end
125
+ end
72
126
  end
73
127
  end
74
128
  end
@@ -0,0 +1,105 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ class TemplateUpdateParams < 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::TemplateUpdateParams, Sentdm::Internal::AnyHash)
12
+ end
13
+
14
+ # Template category: MARKETING, UTILITY, AUTHENTICATION
15
+ sig { returns(T.nilable(String)) }
16
+ attr_accessor :category
17
+
18
+ # Template definition including header, body, footer, and buttons
19
+ sig { returns(T.nilable(Sentdm::TemplateDefinition)) }
20
+ attr_reader :definition
21
+
22
+ sig do
23
+ params(definition: T.nilable(Sentdm::TemplateDefinition::OrHash)).void
24
+ end
25
+ attr_writer :definition
26
+
27
+ # Template language code (e.g., en_US)
28
+ sig { returns(T.nilable(String)) }
29
+ attr_accessor :language
30
+
31
+ # Template display name
32
+ sig { returns(T.nilable(String)) }
33
+ attr_accessor :name
34
+
35
+ # Whether to submit the template for review after updating (default: false)
36
+ sig { returns(T.nilable(T::Boolean)) }
37
+ attr_reader :submit_for_review
38
+
39
+ sig { params(submit_for_review: T::Boolean).void }
40
+ attr_writer :submit_for_review
41
+
42
+ # Test mode flag - when true, the operation is simulated without side effects
43
+ # Useful for testing integrations without actual execution
44
+ sig { returns(T.nilable(T::Boolean)) }
45
+ attr_reader :test_mode
46
+
47
+ sig { params(test_mode: T::Boolean).void }
48
+ attr_writer :test_mode
49
+
50
+ sig { returns(T.nilable(String)) }
51
+ attr_reader :idempotency_key
52
+
53
+ sig { params(idempotency_key: String).void }
54
+ attr_writer :idempotency_key
55
+
56
+ sig do
57
+ params(
58
+ category: T.nilable(String),
59
+ definition: T.nilable(Sentdm::TemplateDefinition::OrHash),
60
+ language: T.nilable(String),
61
+ name: T.nilable(String),
62
+ submit_for_review: T::Boolean,
63
+ test_mode: T::Boolean,
64
+ idempotency_key: String,
65
+ request_options: Sentdm::RequestOptions::OrHash
66
+ ).returns(T.attached_class)
67
+ end
68
+ def self.new(
69
+ # Template category: MARKETING, UTILITY, AUTHENTICATION
70
+ category: nil,
71
+ # Template definition including header, body, footer, and buttons
72
+ definition: nil,
73
+ # Template language code (e.g., en_US)
74
+ language: nil,
75
+ # Template display name
76
+ name: nil,
77
+ # Whether to submit the template for review after updating (default: false)
78
+ submit_for_review: nil,
79
+ # Test mode flag - when true, the operation is simulated without side effects
80
+ # Useful for testing integrations without actual execution
81
+ test_mode: nil,
82
+ idempotency_key: nil,
83
+ request_options: {}
84
+ )
85
+ end
86
+
87
+ sig do
88
+ override.returns(
89
+ {
90
+ category: T.nilable(String),
91
+ definition: T.nilable(Sentdm::TemplateDefinition),
92
+ language: T.nilable(String),
93
+ name: T.nilable(String),
94
+ submit_for_review: T::Boolean,
95
+ test_mode: T::Boolean,
96
+ idempotency_key: String,
97
+ request_options: Sentdm::RequestOptions
98
+ }
99
+ )
100
+ end
101
+ def to_hash
102
+ end
103
+ end
104
+ end
105
+ end
@@ -0,0 +1,90 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ class UserInviteParams < 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::UserInviteParams, Sentdm::Internal::AnyHash)
12
+ end
13
+
14
+ # User email address (required)
15
+ sig { returns(T.nilable(String)) }
16
+ attr_reader :email
17
+
18
+ sig { params(email: String).void }
19
+ attr_writer :email
20
+
21
+ # User full name (required)
22
+ sig { returns(T.nilable(String)) }
23
+ attr_reader :name
24
+
25
+ sig { params(name: String).void }
26
+ attr_writer :name
27
+
28
+ # User role: admin, billing, or developer (required)
29
+ sig { returns(T.nilable(String)) }
30
+ attr_reader :role
31
+
32
+ sig { params(role: String).void }
33
+ attr_writer :role
34
+
35
+ # Test mode flag - when true, the operation is simulated without side effects
36
+ # Useful for testing integrations without actual execution
37
+ sig { returns(T.nilable(T::Boolean)) }
38
+ attr_reader :test_mode
39
+
40
+ sig { params(test_mode: T::Boolean).void }
41
+ attr_writer :test_mode
42
+
43
+ sig { returns(T.nilable(String)) }
44
+ attr_reader :idempotency_key
45
+
46
+ sig { params(idempotency_key: String).void }
47
+ attr_writer :idempotency_key
48
+
49
+ sig do
50
+ params(
51
+ email: String,
52
+ name: String,
53
+ role: String,
54
+ test_mode: T::Boolean,
55
+ idempotency_key: String,
56
+ request_options: Sentdm::RequestOptions::OrHash
57
+ ).returns(T.attached_class)
58
+ end
59
+ def self.new(
60
+ # User email address (required)
61
+ email: nil,
62
+ # User full name (required)
63
+ name: nil,
64
+ # User role: admin, billing, or developer (required)
65
+ role: nil,
66
+ # Test mode flag - when true, the operation is simulated without side effects
67
+ # Useful for testing integrations without actual execution
68
+ test_mode: nil,
69
+ idempotency_key: nil,
70
+ request_options: {}
71
+ )
72
+ end
73
+
74
+ sig do
75
+ override.returns(
76
+ {
77
+ email: String,
78
+ name: String,
79
+ role: String,
80
+ test_mode: T::Boolean,
81
+ idempotency_key: String,
82
+ request_options: Sentdm::RequestOptions
83
+ }
84
+ )
85
+ end
86
+ def to_hash
87
+ end
88
+ end
89
+ end
90
+ end
@@ -0,0 +1,27 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ class UserListParams < 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::UserListParams, Sentdm::Internal::AnyHash)
12
+ end
13
+
14
+ sig do
15
+ params(request_options: Sentdm::RequestOptions::OrHash).returns(
16
+ T.attached_class
17
+ )
18
+ end
19
+ def self.new(request_options: {})
20
+ end
21
+
22
+ sig { override.returns({ request_options: Sentdm::RequestOptions }) }
23
+ def to_hash
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,111 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ class UserListResponse < Sentdm::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Sentdm::Models::UserListResponse, Sentdm::Internal::AnyHash)
9
+ end
10
+
11
+ # The response data (null if error)
12
+ sig { returns(T.nilable(Sentdm::Models::UserListResponse::Data)) }
13
+ attr_reader :data
14
+
15
+ sig do
16
+ params(
17
+ data: T.nilable(Sentdm::Models::UserListResponse::Data::OrHash)
18
+ ).void
19
+ end
20
+ attr_writer :data
21
+
22
+ # Error details (null if successful)
23
+ sig { returns(T.nilable(Sentdm::APIError)) }
24
+ attr_reader :error
25
+
26
+ sig { params(error: T.nilable(Sentdm::APIError::OrHash)).void }
27
+ attr_writer :error
28
+
29
+ # Metadata about the request and response
30
+ sig { returns(T.nilable(Sentdm::APIMeta)) }
31
+ attr_reader :meta
32
+
33
+ sig { params(meta: Sentdm::APIMeta::OrHash).void }
34
+ attr_writer :meta
35
+
36
+ # Indicates whether the request was successful
37
+ sig { returns(T.nilable(T::Boolean)) }
38
+ attr_reader :success
39
+
40
+ sig { params(success: T::Boolean).void }
41
+ attr_writer :success
42
+
43
+ # Standard API response envelope for all v3 endpoints
44
+ sig do
45
+ params(
46
+ data: T.nilable(Sentdm::Models::UserListResponse::Data::OrHash),
47
+ error: T.nilable(Sentdm::APIError::OrHash),
48
+ meta: Sentdm::APIMeta::OrHash,
49
+ success: T::Boolean
50
+ ).returns(T.attached_class)
51
+ end
52
+ def self.new(
53
+ # The response data (null if error)
54
+ data: nil,
55
+ # Error details (null if successful)
56
+ error: nil,
57
+ # Metadata about the request and response
58
+ meta: nil,
59
+ # Indicates whether the request was successful
60
+ success: nil
61
+ )
62
+ end
63
+
64
+ sig do
65
+ override.returns(
66
+ {
67
+ data: T.nilable(Sentdm::Models::UserListResponse::Data),
68
+ error: T.nilable(Sentdm::APIError),
69
+ meta: Sentdm::APIMeta,
70
+ success: T::Boolean
71
+ }
72
+ )
73
+ end
74
+ def to_hash
75
+ end
76
+
77
+ class Data < Sentdm::Internal::Type::BaseModel
78
+ OrHash =
79
+ T.type_alias do
80
+ T.any(
81
+ Sentdm::Models::UserListResponse::Data,
82
+ Sentdm::Internal::AnyHash
83
+ )
84
+ end
85
+
86
+ # List of users in the organization
87
+ sig { returns(T.nilable(T::Array[Sentdm::UserResponse])) }
88
+ attr_reader :users
89
+
90
+ sig { params(users: T::Array[Sentdm::UserResponse::OrHash]).void }
91
+ attr_writer :users
92
+
93
+ # The response data (null if error)
94
+ sig do
95
+ params(users: T::Array[Sentdm::UserResponse::OrHash]).returns(
96
+ T.attached_class
97
+ )
98
+ end
99
+ def self.new(
100
+ # List of users in the organization
101
+ users: nil
102
+ )
103
+ end
104
+
105
+ sig { override.returns({ users: T::Array[Sentdm::UserResponse] }) }
106
+ def to_hash
107
+ end
108
+ end
109
+ end
110
+ end
111
+ end
@@ -0,0 +1,59 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ class UserRemoveParams < 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::UserRemoveParams, Sentdm::Internal::AnyHash)
12
+ end
13
+
14
+ # Test mode flag - when true, the operation is simulated without side effects
15
+ # Useful for testing integrations without actual execution
16
+ sig { returns(T.nilable(T::Boolean)) }
17
+ attr_reader :test_mode
18
+
19
+ sig { params(test_mode: T::Boolean).void }
20
+ attr_writer :test_mode
21
+
22
+ # User ID from route parameter
23
+ sig { returns(T.nilable(String)) }
24
+ attr_reader :body_user_id
25
+
26
+ sig { params(body_user_id: String).void }
27
+ attr_writer :body_user_id
28
+
29
+ sig do
30
+ params(
31
+ test_mode: T::Boolean,
32
+ body_user_id: String,
33
+ request_options: Sentdm::RequestOptions::OrHash
34
+ ).returns(T.attached_class)
35
+ end
36
+ def self.new(
37
+ # Test mode flag - when true, the operation is simulated without side effects
38
+ # Useful for testing integrations without actual execution
39
+ test_mode: nil,
40
+ # User ID from route parameter
41
+ body_user_id: nil,
42
+ request_options: {}
43
+ )
44
+ end
45
+
46
+ sig do
47
+ override.returns(
48
+ {
49
+ test_mode: T::Boolean,
50
+ body_user_id: String,
51
+ request_options: Sentdm::RequestOptions
52
+ }
53
+ )
54
+ end
55
+ def to_hash
56
+ end
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,118 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ class UserResponse < Sentdm::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias { T.any(Sentdm::UserResponse, Sentdm::Internal::AnyHash) }
8
+
9
+ # User unique identifier
10
+ sig { returns(T.nilable(String)) }
11
+ attr_reader :id
12
+
13
+ sig { params(id: String).void }
14
+ attr_writer :id
15
+
16
+ # When the user was added to the organization
17
+ sig { returns(T.nilable(Time)) }
18
+ attr_reader :created_at
19
+
20
+ sig { params(created_at: Time).void }
21
+ attr_writer :created_at
22
+
23
+ # User email address
24
+ sig { returns(T.nilable(String)) }
25
+ attr_reader :email
26
+
27
+ sig { params(email: String).void }
28
+ attr_writer :email
29
+
30
+ # When the user was invited
31
+ sig { returns(T.nilable(Time)) }
32
+ attr_accessor :invited_at
33
+
34
+ # When the user last logged in
35
+ sig { returns(T.nilable(Time)) }
36
+ attr_accessor :last_login_at
37
+
38
+ # User full name
39
+ sig { returns(T.nilable(String)) }
40
+ attr_reader :name
41
+
42
+ sig { params(name: String).void }
43
+ attr_writer :name
44
+
45
+ # User role in the organization: admin, billing, developer
46
+ sig { returns(T.nilable(String)) }
47
+ attr_reader :role
48
+
49
+ sig { params(role: String).void }
50
+ attr_writer :role
51
+
52
+ # User status: active, invited, suspended, rejected
53
+ sig { returns(T.nilable(String)) }
54
+ attr_reader :status
55
+
56
+ sig { params(status: String).void }
57
+ attr_writer :status
58
+
59
+ # When the user record was last updated
60
+ sig { returns(T.nilable(Time)) }
61
+ attr_accessor :updated_at
62
+
63
+ # User response for v3 API
64
+ sig do
65
+ params(
66
+ id: String,
67
+ created_at: Time,
68
+ email: String,
69
+ invited_at: T.nilable(Time),
70
+ last_login_at: T.nilable(Time),
71
+ name: String,
72
+ role: String,
73
+ status: String,
74
+ updated_at: T.nilable(Time)
75
+ ).returns(T.attached_class)
76
+ end
77
+ def self.new(
78
+ # User unique identifier
79
+ id: nil,
80
+ # When the user was added to the organization
81
+ created_at: nil,
82
+ # User email address
83
+ email: nil,
84
+ # When the user was invited
85
+ invited_at: nil,
86
+ # When the user last logged in
87
+ last_login_at: nil,
88
+ # User full name
89
+ name: nil,
90
+ # User role in the organization: admin, billing, developer
91
+ role: nil,
92
+ # User status: active, invited, suspended, rejected
93
+ status: nil,
94
+ # When the user record was last updated
95
+ updated_at: nil
96
+ )
97
+ end
98
+
99
+ sig do
100
+ override.returns(
101
+ {
102
+ id: String,
103
+ created_at: Time,
104
+ email: String,
105
+ invited_at: T.nilable(Time),
106
+ last_login_at: T.nilable(Time),
107
+ name: String,
108
+ role: String,
109
+ status: String,
110
+ updated_at: T.nilable(Time)
111
+ }
112
+ )
113
+ end
114
+ def to_hash
115
+ end
116
+ end
117
+ end
118
+ end
@@ -0,0 +1,27 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ class UserRetrieveParams < 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::UserRetrieveParams, Sentdm::Internal::AnyHash)
12
+ end
13
+
14
+ sig do
15
+ params(request_options: Sentdm::RequestOptions::OrHash).returns(
16
+ T.attached_class
17
+ )
18
+ end
19
+ def self.new(request_options: {})
20
+ end
21
+
22
+ sig { override.returns({ request_options: Sentdm::RequestOptions }) }
23
+ def to_hash
24
+ end
25
+ end
26
+ end
27
+ end