sentdm 0.3.1 → 0.5.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 (292) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -0
  3. data/README.md +1 -27
  4. data/lib/sentdm/client.rb +5 -9
  5. data/lib/sentdm/internal/type/base_model.rb +5 -5
  6. data/lib/sentdm/models/api_meta.rb +1 -9
  7. data/lib/sentdm/models/{api_response_contact.rb → api_response_of_contact.rb} +4 -4
  8. data/lib/sentdm/models/base_dto.rb +30 -0
  9. data/lib/sentdm/models/billing_contact_info.rb +47 -0
  10. data/lib/sentdm/models/brands_brand_data.rb +274 -0
  11. data/lib/sentdm/models/contact_create_params.rb +13 -6
  12. data/lib/sentdm/models/contact_delete_params.rb +9 -2
  13. data/lib/sentdm/models/contact_list_params.rb +10 -2
  14. data/lib/sentdm/models/contact_list_response.rb +3 -3
  15. data/lib/sentdm/models/{contact.rb → contact_response.rb} +1 -1
  16. data/lib/sentdm/models/contact_retrieve_params.rb +7 -1
  17. data/lib/sentdm/models/contact_update_params.rb +13 -6
  18. data/lib/sentdm/models/me_retrieve_params.rb +7 -1
  19. data/lib/sentdm/models/me_retrieve_response.rb +152 -7
  20. data/lib/sentdm/models/message_retrieve_activities_params.rb +7 -1
  21. data/lib/sentdm/models/message_retrieve_activities_response.rb +19 -5
  22. data/lib/sentdm/models/message_retrieve_status_params.rb +7 -1
  23. data/lib/sentdm/models/message_retrieve_status_response.rb +8 -1
  24. data/lib/sentdm/models/message_send_params.rb +17 -10
  25. data/lib/sentdm/models/mutation_request_base.rb +20 -0
  26. data/lib/sentdm/models/{lookup_retrieve_phone_info_params.rb → number_lookup_params.rb} +9 -3
  27. data/lib/sentdm/models/{lookup_retrieve_phone_info_response.rb → number_lookup_response.rb} +21 -21
  28. data/lib/sentdm/models/payment_details.rb +44 -0
  29. data/lib/sentdm/models/{profile_complete_params.rb → profile_complete_setup_params.rb} +16 -9
  30. data/lib/sentdm/models/{profile_complete_response.rb → profile_complete_setup_response.rb} +1 -1
  31. data/lib/sentdm/models/profile_create_params.rb +111 -11
  32. data/lib/sentdm/models/profile_delete_params.rb +18 -18
  33. data/lib/sentdm/models/profile_detail.rb +483 -68
  34. data/lib/sentdm/models/profile_list_params.rb +7 -1
  35. data/lib/sentdm/models/profile_retrieve_params.rb +7 -1
  36. data/lib/sentdm/models/profile_update_params.rb +60 -22
  37. data/lib/sentdm/models/{brands/api_response_tcr_campaign_with_use_cases.rb → profiles/api_response_of_tcr_campaign_with_use_cases.rb} +6 -6
  38. data/lib/sentdm/models/profiles/campaign_create_params.rb +57 -0
  39. data/lib/sentdm/models/{brands → profiles}/campaign_data.rb +28 -7
  40. data/lib/sentdm/models/profiles/campaign_delete_params.rb +50 -0
  41. data/lib/sentdm/models/profiles/campaign_list_params.rb +28 -0
  42. data/lib/sentdm/models/{brands → profiles}/campaign_list_response.rb +5 -5
  43. data/lib/sentdm/models/profiles/campaign_update_params.rb +64 -0
  44. data/lib/sentdm/models/{brands → profiles}/messaging_use_case_us.rb +1 -1
  45. data/lib/sentdm/models/{brands → profiles}/tcr_campaign_with_use_cases.rb +15 -15
  46. data/lib/sentdm/models/template_create_params.rb +17 -10
  47. data/lib/sentdm/models/template_definition.rb +255 -15
  48. data/lib/sentdm/models/template_delete_params.rb +13 -6
  49. data/lib/sentdm/models/template_list_params.rb +18 -2
  50. data/lib/sentdm/models/template_retrieve_params.rb +7 -1
  51. data/lib/sentdm/models/template_update_params.rb +17 -10
  52. data/lib/sentdm/models/template_variable.rb +7 -1
  53. data/lib/sentdm/models/user_invite_params.rb +13 -6
  54. data/lib/sentdm/models/user_list_params.rb +7 -1
  55. data/lib/sentdm/models/user_remove_params.rb +17 -17
  56. data/lib/sentdm/models/user_retrieve_params.rb +7 -1
  57. data/lib/sentdm/models/user_update_role_params.rb +15 -16
  58. data/lib/sentdm/models/webhook_create_params.rb +13 -6
  59. data/lib/sentdm/models/webhook_delete_params.rb +7 -1
  60. data/lib/sentdm/models/webhook_list_event_types_params.rb +7 -1
  61. data/lib/sentdm/models/webhook_list_events_params.rb +7 -1
  62. data/lib/sentdm/models/webhook_list_params.rb +7 -1
  63. data/lib/sentdm/models/webhook_retrieve_params.rb +7 -1
  64. data/lib/sentdm/models/webhook_rotate_secret_params.rb +8 -2
  65. data/lib/sentdm/models/webhook_test_params.rb +13 -6
  66. data/lib/sentdm/models/webhook_toggle_status_params.rb +13 -6
  67. data/lib/sentdm/models/webhook_update_params.rb +13 -6
  68. data/lib/sentdm/models.rb +14 -38
  69. data/lib/sentdm/resources/contacts.rb +49 -26
  70. data/lib/sentdm/resources/me.rb +24 -5
  71. data/lib/sentdm/resources/messages.rb +24 -8
  72. data/lib/sentdm/resources/numbers.rb +44 -0
  73. data/lib/sentdm/resources/profiles/campaigns.rb +160 -0
  74. data/lib/sentdm/resources/profiles.rb +125 -36
  75. data/lib/sentdm/resources/templates.rb +47 -24
  76. data/lib/sentdm/resources/users.rb +40 -23
  77. data/lib/sentdm/resources/webhooks.rb +92 -34
  78. data/lib/sentdm/version.rb +1 -1
  79. data/lib/sentdm.rb +22 -35
  80. data/rbi/sentdm/client.rbi +4 -7
  81. data/rbi/sentdm/models/api_meta.rbi +4 -18
  82. data/rbi/sentdm/models/{api_response_brand_with_kyc.rbi → api_response_of_contact.rbi} +6 -6
  83. data/rbi/sentdm/models/base_dto.rbi +49 -0
  84. data/rbi/sentdm/models/billing_contact_info.rbi +65 -0
  85. data/rbi/sentdm/models/brands_brand_data.rbi +406 -0
  86. data/rbi/sentdm/models/contact_create_params.rbi +19 -10
  87. data/rbi/sentdm/models/contact_delete_params.rbi +10 -1
  88. data/rbi/sentdm/models/contact_list_params.rbi +11 -0
  89. data/rbi/sentdm/models/contact_list_response.rbi +4 -4
  90. data/rbi/sentdm/models/{contact.rbi → contact_response.rbi} +4 -2
  91. data/rbi/sentdm/models/contact_retrieve_params.rbi +13 -2
  92. data/rbi/sentdm/models/contact_update_params.rbi +19 -10
  93. data/rbi/sentdm/models/me_retrieve_params.rbi +16 -5
  94. data/rbi/sentdm/models/me_retrieve_response.rbi +316 -16
  95. data/rbi/sentdm/models/message_retrieve_activities_params.rbi +13 -2
  96. data/rbi/sentdm/models/message_retrieve_activities_response.rbi +18 -6
  97. data/rbi/sentdm/models/message_retrieve_status_params.rbi +13 -2
  98. data/rbi/sentdm/models/message_retrieve_status_response.rbi +6 -0
  99. data/rbi/sentdm/models/message_send_params.rbi +22 -13
  100. data/rbi/sentdm/models/mutation_request_base.rbi +32 -0
  101. data/rbi/sentdm/models/{lookup_retrieve_phone_info_params.rbi → number_lookup_params.rbi} +15 -7
  102. data/rbi/sentdm/models/{lookup_retrieve_phone_info_response.rbi → number_lookup_response.rbi} +16 -33
  103. data/rbi/sentdm/models/payment_details.rbi +59 -0
  104. data/rbi/sentdm/models/{profile_complete_params.rbi → profile_complete_setup_params.rbi} +21 -12
  105. data/rbi/sentdm/models/{profile_complete_response.rbi → profile_complete_setup_response.rbi} +1 -1
  106. data/rbi/sentdm/models/profile_create_params.rbi +189 -15
  107. data/rbi/sentdm/models/profile_delete_params.rbi +36 -24
  108. data/rbi/sentdm/models/profile_detail.rbi +725 -111
  109. data/rbi/sentdm/models/profile_list_params.rbi +16 -5
  110. data/rbi/sentdm/models/profile_retrieve_params.rbi +13 -2
  111. data/rbi/sentdm/models/profile_update_params.rbi +97 -30
  112. data/rbi/sentdm/models/{brands/api_response_tcr_campaign_with_use_cases.rbi → profiles/api_response_of_tcr_campaign_with_use_cases.rbi} +7 -7
  113. data/rbi/sentdm/models/{brands → profiles}/campaign_create_params.rbi +29 -20
  114. data/rbi/sentdm/models/{brands → profiles}/campaign_data.rbi +51 -16
  115. data/rbi/sentdm/models/{brands → profiles}/campaign_delete_params.rbi +23 -12
  116. data/rbi/sentdm/models/profiles/campaign_list_params.rbi +51 -0
  117. data/rbi/sentdm/models/{brands → profiles}/campaign_list_response.rbi +7 -5
  118. data/rbi/sentdm/models/{brands → profiles}/campaign_update_params.rbi +29 -20
  119. data/rbi/sentdm/models/{brands → profiles}/messaging_use_case_us.rbi +20 -16
  120. data/rbi/sentdm/models/{brands → profiles}/tcr_campaign_with_use_cases.rbi +35 -29
  121. data/rbi/sentdm/models/template_create_params.rbi +22 -13
  122. data/rbi/sentdm/models/template_definition.rbi +405 -74
  123. data/rbi/sentdm/models/template_delete_params.rbi +19 -10
  124. data/rbi/sentdm/models/template_list_params.rbi +19 -0
  125. data/rbi/sentdm/models/template_retrieve_params.rbi +13 -2
  126. data/rbi/sentdm/models/template_update_params.rbi +22 -13
  127. data/rbi/sentdm/models/template_variable.rbi +6 -0
  128. data/rbi/sentdm/models/user_invite_params.rbi +19 -10
  129. data/rbi/sentdm/models/user_list_params.rbi +16 -5
  130. data/rbi/sentdm/models/user_remove_params.rbi +35 -23
  131. data/rbi/sentdm/models/user_retrieve_params.rbi +13 -2
  132. data/rbi/sentdm/models/user_update_role_params.rbi +23 -25
  133. data/rbi/sentdm/models/webhook_create_params.rbi +19 -10
  134. data/rbi/sentdm/models/webhook_delete_params.rbi +13 -2
  135. data/rbi/sentdm/models/webhook_list_event_types_params.rbi +16 -5
  136. data/rbi/sentdm/models/webhook_list_events_params.rbi +16 -1
  137. data/rbi/sentdm/models/webhook_list_params.rbi +9 -0
  138. data/rbi/sentdm/models/webhook_retrieve_params.rbi +13 -2
  139. data/rbi/sentdm/models/webhook_rotate_secret_params.rbi +16 -2
  140. data/rbi/sentdm/models/webhook_test_params.rbi +19 -10
  141. data/rbi/sentdm/models/webhook_toggle_status_params.rbi +19 -10
  142. data/rbi/sentdm/models/webhook_update_params.rbi +19 -10
  143. data/rbi/sentdm/models.rbi +14 -38
  144. data/rbi/sentdm/resources/contacts.rbi +40 -15
  145. data/rbi/sentdm/resources/me.rbi +25 -7
  146. data/rbi/sentdm/resources/messages.rbi +17 -4
  147. data/rbi/sentdm/resources/numbers.rbi +32 -0
  148. data/rbi/sentdm/resources/profiles/campaigns.rbi +127 -0
  149. data/rbi/sentdm/resources/profiles.rbi +179 -39
  150. data/rbi/sentdm/resources/templates.rbi +47 -19
  151. data/rbi/sentdm/resources/users.rbi +47 -25
  152. data/rbi/sentdm/resources/webhooks.rbi +92 -20
  153. data/sig/sentdm/client.rbs +2 -4
  154. data/sig/sentdm/models/api_meta.rbs +2 -16
  155. data/sig/sentdm/models/{api_response_contact.rbs → api_response_of_contact.rbs} +6 -6
  156. data/sig/sentdm/models/base_dto.rbs +25 -0
  157. data/sig/sentdm/models/billing_contact_info.rbs +30 -0
  158. data/sig/sentdm/models/brands_brand_data.rbs +210 -0
  159. data/sig/sentdm/models/contact_create_params.rbs +16 -5
  160. data/sig/sentdm/models/contact_delete_params.rbs +12 -2
  161. data/sig/sentdm/models/contact_list_params.rbs +8 -1
  162. data/sig/sentdm/models/contact_list_response.rbs +7 -5
  163. data/sig/sentdm/models/{contact.rbs → contact_response.rbs} +2 -2
  164. data/sig/sentdm/models/contact_retrieve_params.rbs +12 -2
  165. data/sig/sentdm/models/contact_update_params.rbs +13 -6
  166. data/sig/sentdm/models/me_retrieve_params.rbs +14 -3
  167. data/sig/sentdm/models/me_retrieve_response.rbs +134 -7
  168. data/sig/sentdm/models/message_retrieve_activities_params.rbs +12 -2
  169. data/sig/sentdm/models/message_retrieve_activities_response.rbs +9 -4
  170. data/sig/sentdm/models/message_retrieve_status_params.rbs +12 -2
  171. data/sig/sentdm/models/message_retrieve_status_response.rbs +5 -0
  172. data/sig/sentdm/models/message_send_params.rbs +15 -8
  173. data/sig/sentdm/models/mutation_request_base.rbs +15 -0
  174. data/sig/sentdm/models/{lookup_retrieve_phone_info_params.rbs → number_lookup_params.rbs} +10 -3
  175. data/sig/sentdm/models/{lookup_retrieve_phone_info_response.rbs → number_lookup_response.rbs} +14 -16
  176. data/sig/sentdm/models/payment_details.rbs +30 -0
  177. data/sig/sentdm/models/{profile_complete_params.rbs → profile_complete_setup_params.rbs} +15 -8
  178. data/sig/sentdm/models/profile_complete_setup_response.rbs +5 -0
  179. data/sig/sentdm/models/profile_create_params.rbs +57 -7
  180. data/sig/sentdm/models/profile_delete_params.rbs +23 -13
  181. data/sig/sentdm/models/profile_detail.rbs +374 -68
  182. data/sig/sentdm/models/profile_list_params.rbs +14 -3
  183. data/sig/sentdm/models/profile_retrieve_params.rbs +8 -1
  184. data/sig/sentdm/models/profile_update_params.rbs +32 -17
  185. data/sig/sentdm/models/{brands/api_response_tcr_campaign_with_use_cases.rbs → profiles/api_response_of_tcr_campaign_with_use_cases.rbs} +7 -7
  186. data/sig/sentdm/models/profiles/campaign_create_params.rbs +54 -0
  187. data/sig/sentdm/models/{brands → profiles}/campaign_data.rbs +27 -5
  188. data/sig/sentdm/models/{brands → profiles}/campaign_delete_params.rbs +17 -10
  189. data/sig/sentdm/models/{brands → profiles}/campaign_list_params.rbs +12 -5
  190. data/sig/sentdm/models/{brands → profiles}/campaign_list_response.rbs +5 -5
  191. data/sig/sentdm/models/{brands → profiles}/campaign_update_params.rbs +22 -15
  192. data/sig/sentdm/models/{brands → profiles}/messaging_use_case_us.rbs +2 -2
  193. data/sig/sentdm/models/{brands → profiles}/tcr_campaign_with_use_cases.rbs +29 -29
  194. data/sig/sentdm/models/template_create_params.rbs +15 -8
  195. data/sig/sentdm/models/template_definition.rbs +233 -20
  196. data/sig/sentdm/models/template_delete_params.rbs +16 -5
  197. data/sig/sentdm/models/template_list_params.rbs +13 -1
  198. data/sig/sentdm/models/template_retrieve_params.rbs +12 -2
  199. data/sig/sentdm/models/template_update_params.rbs +15 -8
  200. data/sig/sentdm/models/template_variable.rbs +5 -0
  201. data/sig/sentdm/models/user_invite_params.rbs +13 -6
  202. data/sig/sentdm/models/user_list_params.rbs +14 -3
  203. data/sig/sentdm/models/user_remove_params.rbs +23 -13
  204. data/sig/sentdm/models/user_retrieve_params.rbs +8 -1
  205. data/sig/sentdm/models/user_update_role_params.rbs +17 -17
  206. data/sig/sentdm/models/webhook_create_params.rbs +13 -6
  207. data/sig/sentdm/models/webhook_delete_params.rbs +12 -2
  208. data/sig/sentdm/models/webhook_list_event_types_params.rbs +13 -3
  209. data/sig/sentdm/models/webhook_list_events_params.rbs +13 -1
  210. data/sig/sentdm/models/webhook_list_params.rbs +13 -1
  211. data/sig/sentdm/models/webhook_retrieve_params.rbs +12 -2
  212. data/sig/sentdm/models/webhook_rotate_secret_params.rbs +9 -2
  213. data/sig/sentdm/models/webhook_test_params.rbs +13 -6
  214. data/sig/sentdm/models/webhook_toggle_status_params.rbs +17 -5
  215. data/sig/sentdm/models/webhook_update_params.rbs +13 -6
  216. data/sig/sentdm/models.rbs +14 -32
  217. data/sig/sentdm/resources/contacts.rbs +10 -5
  218. data/sig/sentdm/resources/me.rbs +1 -0
  219. data/sig/sentdm/resources/messages.rbs +4 -1
  220. data/sig/sentdm/resources/{lookup.rbs → numbers.rbs} +4 -3
  221. data/sig/sentdm/resources/profiles/campaigns.rbs +42 -0
  222. data/sig/sentdm/resources/profiles.rbs +22 -9
  223. data/sig/sentdm/resources/templates.rbs +9 -3
  224. data/sig/sentdm/resources/users.rbs +10 -7
  225. data/sig/sentdm/resources/webhooks.rbs +18 -5
  226. metadata +67 -106
  227. data/lib/sentdm/models/api_response_brand_with_kyc.rb +0 -43
  228. data/lib/sentdm/models/brand_create_params.rb +0 -41
  229. data/lib/sentdm/models/brand_data.rb +0 -237
  230. data/lib/sentdm/models/brand_delete_params.rb +0 -34
  231. data/lib/sentdm/models/brand_list_params.rb +0 -14
  232. data/lib/sentdm/models/brand_list_response.rb +0 -43
  233. data/lib/sentdm/models/brand_update_params.rb +0 -48
  234. data/lib/sentdm/models/brand_with_kyc.rb +0 -335
  235. data/lib/sentdm/models/brands/base_dto.rb +0 -32
  236. data/lib/sentdm/models/brands/campaign_create_params.rb +0 -50
  237. data/lib/sentdm/models/brands/campaign_delete_params.rb +0 -43
  238. data/lib/sentdm/models/brands/campaign_list_params.rb +0 -22
  239. data/lib/sentdm/models/brands/campaign_update_params.rb +0 -57
  240. data/lib/sentdm/models/brands/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rb +0 -30
  241. data/lib/sentdm/models/mutation_request.rb +0 -20
  242. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rb +0 -34
  243. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rb +0 -40
  244. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rb +0 -38
  245. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rb +0 -81
  246. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rb +0 -34
  247. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rb +0 -39
  248. data/lib/sentdm/resources/brands/campaigns.rb +0 -145
  249. data/lib/sentdm/resources/brands.rb +0 -130
  250. data/lib/sentdm/resources/lookup.rb +0 -35
  251. data/rbi/sentdm/models/api_response_contact.rbi +0 -74
  252. data/rbi/sentdm/models/brand_create_params.rbi +0 -68
  253. data/rbi/sentdm/models/brand_data.rbi +0 -266
  254. data/rbi/sentdm/models/brand_delete_params.rbi +0 -68
  255. data/rbi/sentdm/models/brand_list_params.rbi +0 -27
  256. data/rbi/sentdm/models/brand_list_response.rbi +0 -71
  257. data/rbi/sentdm/models/brand_update_params.rbi +0 -74
  258. data/rbi/sentdm/models/brand_with_kyc.rbi +0 -398
  259. data/rbi/sentdm/models/brands/base_dto.rbi +0 -53
  260. data/rbi/sentdm/models/brands/campaign_list_params.rbi +0 -37
  261. data/rbi/sentdm/models/brands/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rbi +0 -52
  262. data/rbi/sentdm/models/mutation_request.rbi +0 -32
  263. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rbi +0 -56
  264. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rbi +0 -76
  265. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rbi +0 -79
  266. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rbi +0 -104
  267. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rbi +0 -60
  268. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rbi +0 -62
  269. data/rbi/sentdm/resources/brands/campaigns.rbi +0 -109
  270. data/rbi/sentdm/resources/brands.rbi +0 -95
  271. data/rbi/sentdm/resources/lookup.rbi +0 -24
  272. data/sig/sentdm/models/api_response_brand_with_kyc.rbs +0 -39
  273. data/sig/sentdm/models/brand_create_params.rbs +0 -36
  274. data/sig/sentdm/models/brand_data.rbs +0 -164
  275. data/sig/sentdm/models/brand_delete_params.rbs +0 -36
  276. data/sig/sentdm/models/brand_list_params.rbs +0 -14
  277. data/sig/sentdm/models/brand_list_response.rbs +0 -39
  278. data/sig/sentdm/models/brand_update_params.rbs +0 -45
  279. data/sig/sentdm/models/brand_with_kyc.rbs +0 -237
  280. data/sig/sentdm/models/brands/base_dto.rbs +0 -27
  281. data/sig/sentdm/models/brands/campaign_create_params.rbs +0 -47
  282. data/sig/sentdm/models/brands/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rbs +0 -27
  283. data/sig/sentdm/models/mutation_request.rbs +0 -15
  284. data/sig/sentdm/models/profile_complete_response.rbs +0 -5
  285. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rbs +0 -24
  286. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rbs +0 -30
  287. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rbs +0 -38
  288. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rbs +0 -75
  289. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rbs +0 -32
  290. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rbs +0 -32
  291. data/sig/sentdm/resources/brands/campaigns.rbs +0 -38
  292. data/sig/sentdm/resources/brands.rbs +0 -34
@@ -13,10 +13,6 @@ module Sentdm
13
13
  sig { params(request_id: String).void }
14
14
  attr_writer :request_id
15
15
 
16
- # Response time in milliseconds (optional)
17
- sig { returns(T.nilable(Integer)) }
18
- attr_accessor :response_time_ms
19
-
20
16
  # Server timestamp when the response was generated
21
17
  sig { returns(T.nilable(Time)) }
22
18
  attr_reader :timestamp
@@ -33,18 +29,13 @@ module Sentdm
33
29
 
34
30
  # Request and response metadata
35
31
  sig do
36
- params(
37
- request_id: String,
38
- response_time_ms: T.nilable(Integer),
39
- timestamp: Time,
40
- version: String
41
- ).returns(T.attached_class)
32
+ params(request_id: String, timestamp: Time, version: String).returns(
33
+ T.attached_class
34
+ )
42
35
  end
43
36
  def self.new(
44
37
  # Unique identifier for this request (for tracing and support)
45
38
  request_id: nil,
46
- # Response time in milliseconds (optional)
47
- response_time_ms: nil,
48
39
  # Server timestamp when the response was generated
49
40
  timestamp: nil,
50
41
  # API version used for this request
@@ -54,12 +45,7 @@ module Sentdm
54
45
 
55
46
  sig do
56
47
  override.returns(
57
- {
58
- request_id: String,
59
- response_time_ms: T.nilable(Integer),
60
- timestamp: Time,
61
- version: String
62
- }
48
+ { request_id: String, timestamp: Time, version: String }
63
49
  )
64
50
  end
65
51
  def to_hash
@@ -2,17 +2,17 @@
2
2
 
3
3
  module Sentdm
4
4
  module Models
5
- class APIResponseBrandWithKYC < Sentdm::Internal::Type::BaseModel
5
+ class APIResponseOfContact < Sentdm::Internal::Type::BaseModel
6
6
  OrHash =
7
7
  T.type_alias do
8
- T.any(Sentdm::APIResponseBrandWithKYC, Sentdm::Internal::AnyHash)
8
+ T.any(Sentdm::APIResponseOfContact, Sentdm::Internal::AnyHash)
9
9
  end
10
10
 
11
11
  # The response data (null if error)
12
- sig { returns(T.nilable(Sentdm::BrandWithKYC)) }
12
+ sig { returns(T.nilable(Sentdm::ContactResponse)) }
13
13
  attr_reader :data
14
14
 
15
- sig { params(data: T.nilable(Sentdm::BrandWithKYC::OrHash)).void }
15
+ sig { params(data: T.nilable(Sentdm::ContactResponse::OrHash)).void }
16
16
  attr_writer :data
17
17
 
18
18
  # Error details (null if successful)
@@ -39,7 +39,7 @@ module Sentdm
39
39
  # Standard API response envelope for all v3 endpoints
40
40
  sig do
41
41
  params(
42
- data: T.nilable(Sentdm::BrandWithKYC::OrHash),
42
+ data: T.nilable(Sentdm::ContactResponse::OrHash),
43
43
  error: T.nilable(Sentdm::APIError::OrHash),
44
44
  meta: Sentdm::APIMeta::OrHash,
45
45
  success: T::Boolean
@@ -60,7 +60,7 @@ module Sentdm
60
60
  sig do
61
61
  override.returns(
62
62
  {
63
- data: T.nilable(Sentdm::BrandWithKYC),
63
+ data: T.nilable(Sentdm::ContactResponse),
64
64
  error: T.nilable(Sentdm::APIError),
65
65
  meta: Sentdm::APIMeta,
66
66
  success: T::Boolean
@@ -0,0 +1,49 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ class BaseDto < Sentdm::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias { T.any(Sentdm::BaseDto, Sentdm::Internal::AnyHash) }
8
+
9
+ # 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
+ sig { returns(T.nilable(Time)) }
17
+ attr_reader :created_at
18
+
19
+ sig { params(created_at: Time).void }
20
+ attr_writer :created_at
21
+
22
+ sig { returns(T.nilable(Time)) }
23
+ attr_accessor :updated_at
24
+
25
+ sig do
26
+ params(
27
+ id: String,
28
+ created_at: Time,
29
+ updated_at: T.nilable(Time)
30
+ ).returns(T.attached_class)
31
+ end
32
+ def self.new(
33
+ # Unique identifier
34
+ id: nil,
35
+ created_at: nil,
36
+ updated_at: nil
37
+ )
38
+ end
39
+
40
+ sig do
41
+ override.returns(
42
+ { id: String, created_at: Time, updated_at: T.nilable(Time) }
43
+ )
44
+ end
45
+ def to_hash
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,65 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ class BillingContactInfo < Sentdm::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Sentdm::BillingContactInfo, Sentdm::Internal::AnyHash)
9
+ end
10
+
11
+ # Email address where invoices will be sent (required)
12
+ sig { returns(String) }
13
+ attr_accessor :email
14
+
15
+ # Full name of the billing contact or company (required)
16
+ sig { returns(String) }
17
+ attr_accessor :name
18
+
19
+ # Billing address (optional). Free-form text including street, city, state, postal
20
+ # code, and country.
21
+ sig { returns(T.nilable(String)) }
22
+ attr_accessor :address
23
+
24
+ # Phone number for the billing contact (optional)
25
+ sig { returns(T.nilable(String)) }
26
+ attr_accessor :phone
27
+
28
+ # Billing contact information for a profile. Required when billing_model is
29
+ # "profile" or "profile_and_organization".
30
+ sig do
31
+ params(
32
+ email: String,
33
+ name: String,
34
+ address: T.nilable(String),
35
+ phone: T.nilable(String)
36
+ ).returns(T.attached_class)
37
+ end
38
+ def self.new(
39
+ # Email address where invoices will be sent (required)
40
+ email:,
41
+ # Full name of the billing contact or company (required)
42
+ name:,
43
+ # Billing address (optional). Free-form text including street, city, state, postal
44
+ # code, and country.
45
+ address: nil,
46
+ # Phone number for the billing contact (optional)
47
+ phone: nil
48
+ )
49
+ end
50
+
51
+ sig do
52
+ override.returns(
53
+ {
54
+ email: String,
55
+ name: String,
56
+ address: T.nilable(String),
57
+ phone: T.nilable(String)
58
+ }
59
+ )
60
+ end
61
+ def to_hash
62
+ end
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,406 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ class BrandsBrandData < Sentdm::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Sentdm::BrandsBrandData, Sentdm::Internal::AnyHash)
9
+ end
10
+
11
+ # Compliance and TCR-related information
12
+ sig { returns(Sentdm::BrandsBrandData::Compliance) }
13
+ attr_reader :compliance
14
+
15
+ sig do
16
+ params(compliance: Sentdm::BrandsBrandData::Compliance::OrHash).void
17
+ end
18
+ attr_writer :compliance
19
+
20
+ # Contact information for the brand
21
+ sig { returns(Sentdm::BrandsBrandData::Contact) }
22
+ attr_reader :contact
23
+
24
+ sig { params(contact: Sentdm::BrandsBrandData::Contact::OrHash).void }
25
+ attr_writer :contact
26
+
27
+ # Business details and address information
28
+ sig { returns(T.nilable(Sentdm::BrandsBrandData::Business)) }
29
+ attr_reader :business
30
+
31
+ sig do
32
+ params(
33
+ business: T.nilable(Sentdm::BrandsBrandData::Business::OrHash)
34
+ ).void
35
+ end
36
+ attr_writer :business
37
+
38
+ # Brand and KYC data grouped into contact, business, and compliance sections
39
+ sig do
40
+ params(
41
+ compliance: Sentdm::BrandsBrandData::Compliance::OrHash,
42
+ contact: Sentdm::BrandsBrandData::Contact::OrHash,
43
+ business: T.nilable(Sentdm::BrandsBrandData::Business::OrHash)
44
+ ).returns(T.attached_class)
45
+ end
46
+ def self.new(
47
+ # Compliance and TCR-related information
48
+ compliance:,
49
+ # Contact information for the brand
50
+ contact:,
51
+ # Business details and address information
52
+ business: nil
53
+ )
54
+ end
55
+
56
+ sig do
57
+ override.returns(
58
+ {
59
+ compliance: Sentdm::BrandsBrandData::Compliance,
60
+ contact: Sentdm::BrandsBrandData::Contact,
61
+ business: T.nilable(Sentdm::BrandsBrandData::Business)
62
+ }
63
+ )
64
+ end
65
+ def to_hash
66
+ end
67
+
68
+ class Compliance < Sentdm::Internal::Type::BaseModel
69
+ OrHash =
70
+ T.type_alias do
71
+ T.any(
72
+ Sentdm::BrandsBrandData::Compliance,
73
+ Sentdm::Internal::AnyHash
74
+ )
75
+ end
76
+
77
+ # Brand relationship level with TCR (required for TCR)
78
+ sig { returns(Sentdm::TcrBrandRelationship::OrSymbol) }
79
+ attr_accessor :brand_relationship
80
+
81
+ # Business vertical/industry category (required for TCR)
82
+ sig { returns(Sentdm::TcrVertical::OrSymbol) }
83
+ attr_accessor :vertical
84
+
85
+ # List of destination countries for messaging
86
+ sig { returns(T.nilable(T::Array[Sentdm::DestinationCountry])) }
87
+ attr_accessor :destination_countries
88
+
89
+ # Expected daily messaging volume
90
+ sig { returns(T.nilable(String)) }
91
+ attr_accessor :expected_messaging_volume
92
+
93
+ # Whether this is a TCR (Campaign Registry) application
94
+ sig { returns(T.nilable(T::Boolean)) }
95
+ attr_accessor :is_tcr_application
96
+
97
+ # Additional notes about the business or use case
98
+ sig { returns(T.nilable(String)) }
99
+ attr_accessor :notes
100
+
101
+ # Phone number prefix for messaging (e.g., "+1")
102
+ sig { returns(T.nilable(String)) }
103
+ attr_accessor :phone_number_prefix
104
+
105
+ # Primary messaging use case description
106
+ sig { returns(T.nilable(String)) }
107
+ attr_accessor :primary_use_case
108
+
109
+ # Compliance and TCR-related information
110
+ sig do
111
+ params(
112
+ brand_relationship: Sentdm::TcrBrandRelationship::OrSymbol,
113
+ vertical: Sentdm::TcrVertical::OrSymbol,
114
+ destination_countries:
115
+ T.nilable(T::Array[Sentdm::DestinationCountry::OrHash]),
116
+ expected_messaging_volume: T.nilable(String),
117
+ is_tcr_application: T.nilable(T::Boolean),
118
+ notes: T.nilable(String),
119
+ phone_number_prefix: T.nilable(String),
120
+ primary_use_case: T.nilable(String)
121
+ ).returns(T.attached_class)
122
+ end
123
+ def self.new(
124
+ # Brand relationship level with TCR (required for TCR)
125
+ brand_relationship:,
126
+ # Business vertical/industry category (required for TCR)
127
+ vertical:,
128
+ # List of destination countries for messaging
129
+ destination_countries: nil,
130
+ # Expected daily messaging volume
131
+ expected_messaging_volume: nil,
132
+ # Whether this is a TCR (Campaign Registry) application
133
+ is_tcr_application: nil,
134
+ # Additional notes about the business or use case
135
+ notes: nil,
136
+ # Phone number prefix for messaging (e.g., "+1")
137
+ phone_number_prefix: nil,
138
+ # Primary messaging use case description
139
+ primary_use_case: nil
140
+ )
141
+ end
142
+
143
+ sig do
144
+ override.returns(
145
+ {
146
+ brand_relationship: Sentdm::TcrBrandRelationship::OrSymbol,
147
+ vertical: Sentdm::TcrVertical::OrSymbol,
148
+ destination_countries:
149
+ T.nilable(T::Array[Sentdm::DestinationCountry]),
150
+ expected_messaging_volume: T.nilable(String),
151
+ is_tcr_application: T.nilable(T::Boolean),
152
+ notes: T.nilable(String),
153
+ phone_number_prefix: T.nilable(String),
154
+ primary_use_case: T.nilable(String)
155
+ }
156
+ )
157
+ end
158
+ def to_hash
159
+ end
160
+ end
161
+
162
+ class Contact < Sentdm::Internal::Type::BaseModel
163
+ OrHash =
164
+ T.type_alias do
165
+ T.any(Sentdm::BrandsBrandData::Contact, Sentdm::Internal::AnyHash)
166
+ end
167
+
168
+ # Primary contact name (required)
169
+ sig { returns(String) }
170
+ attr_accessor :name
171
+
172
+ # Business/brand name
173
+ sig { returns(T.nilable(String)) }
174
+ attr_accessor :business_name
175
+
176
+ # Contact email address
177
+ sig { returns(T.nilable(String)) }
178
+ attr_accessor :email
179
+
180
+ # Contact phone number in E.164 format
181
+ sig { returns(T.nilable(String)) }
182
+ attr_accessor :phone
183
+
184
+ # Contact phone country code (e.g., "1" for US)
185
+ sig { returns(T.nilable(String)) }
186
+ attr_accessor :phone_country_code
187
+
188
+ # Contact's role in the business
189
+ sig { returns(T.nilable(String)) }
190
+ attr_accessor :role
191
+
192
+ # Contact information for the brand
193
+ sig do
194
+ params(
195
+ name: String,
196
+ business_name: T.nilable(String),
197
+ email: T.nilable(String),
198
+ phone: T.nilable(String),
199
+ phone_country_code: T.nilable(String),
200
+ role: T.nilable(String)
201
+ ).returns(T.attached_class)
202
+ end
203
+ def self.new(
204
+ # Primary contact name (required)
205
+ name:,
206
+ # Business/brand name
207
+ business_name: nil,
208
+ # Contact email address
209
+ email: nil,
210
+ # Contact phone number in E.164 format
211
+ phone: nil,
212
+ # Contact phone country code (e.g., "1" for US)
213
+ phone_country_code: nil,
214
+ # Contact's role in the business
215
+ role: nil
216
+ )
217
+ end
218
+
219
+ sig do
220
+ override.returns(
221
+ {
222
+ name: String,
223
+ business_name: T.nilable(String),
224
+ email: T.nilable(String),
225
+ phone: T.nilable(String),
226
+ phone_country_code: T.nilable(String),
227
+ role: T.nilable(String)
228
+ }
229
+ )
230
+ end
231
+ def to_hash
232
+ end
233
+ end
234
+
235
+ class Business < Sentdm::Internal::Type::BaseModel
236
+ OrHash =
237
+ T.type_alias do
238
+ T.any(Sentdm::BrandsBrandData::Business, Sentdm::Internal::AnyHash)
239
+ end
240
+
241
+ # City
242
+ sig { returns(T.nilable(String)) }
243
+ attr_accessor :city
244
+
245
+ # Country code (e.g., US, CA)
246
+ sig { returns(T.nilable(String)) }
247
+ attr_accessor :country
248
+
249
+ # Country where the business is registered
250
+ sig { returns(T.nilable(String)) }
251
+ attr_accessor :country_of_registration
252
+
253
+ # Business entity type
254
+ sig do
255
+ returns(
256
+ T.nilable(Sentdm::BrandsBrandData::Business::EntityType::OrSymbol)
257
+ )
258
+ end
259
+ attr_accessor :entity_type
260
+
261
+ # Legal business name
262
+ sig { returns(T.nilable(String)) }
263
+ attr_accessor :legal_name
264
+
265
+ # Postal/ZIP code
266
+ sig { returns(T.nilable(String)) }
267
+ attr_accessor :postal_code
268
+
269
+ # State/province code
270
+ sig { returns(T.nilable(String)) }
271
+ attr_accessor :state
272
+
273
+ # Street address
274
+ sig { returns(T.nilable(String)) }
275
+ attr_accessor :street
276
+
277
+ # Tax ID/EIN number
278
+ sig { returns(T.nilable(String)) }
279
+ attr_accessor :tax_id
280
+
281
+ # Type of tax ID (e.g., us_ein, ca_bn)
282
+ sig { returns(T.nilable(String)) }
283
+ attr_accessor :tax_id_type
284
+
285
+ # Business website URL
286
+ sig { returns(T.nilable(String)) }
287
+ attr_accessor :url
288
+
289
+ # Business details and address information
290
+ sig do
291
+ params(
292
+ city: T.nilable(String),
293
+ country: T.nilable(String),
294
+ country_of_registration: T.nilable(String),
295
+ entity_type:
296
+ T.nilable(
297
+ Sentdm::BrandsBrandData::Business::EntityType::OrSymbol
298
+ ),
299
+ legal_name: T.nilable(String),
300
+ postal_code: T.nilable(String),
301
+ state: T.nilable(String),
302
+ street: T.nilable(String),
303
+ tax_id: T.nilable(String),
304
+ tax_id_type: T.nilable(String),
305
+ url: T.nilable(String)
306
+ ).returns(T.attached_class)
307
+ end
308
+ def self.new(
309
+ # City
310
+ city: nil,
311
+ # Country code (e.g., US, CA)
312
+ country: nil,
313
+ # Country where the business is registered
314
+ country_of_registration: nil,
315
+ # Business entity type
316
+ entity_type: nil,
317
+ # Legal business name
318
+ legal_name: nil,
319
+ # Postal/ZIP code
320
+ postal_code: nil,
321
+ # State/province code
322
+ state: nil,
323
+ # Street address
324
+ street: nil,
325
+ # Tax ID/EIN number
326
+ tax_id: nil,
327
+ # Type of tax ID (e.g., us_ein, ca_bn)
328
+ tax_id_type: nil,
329
+ # Business website URL
330
+ url: nil
331
+ )
332
+ end
333
+
334
+ sig do
335
+ override.returns(
336
+ {
337
+ city: T.nilable(String),
338
+ country: T.nilable(String),
339
+ country_of_registration: T.nilable(String),
340
+ entity_type:
341
+ T.nilable(
342
+ Sentdm::BrandsBrandData::Business::EntityType::OrSymbol
343
+ ),
344
+ legal_name: T.nilable(String),
345
+ postal_code: T.nilable(String),
346
+ state: T.nilable(String),
347
+ street: T.nilable(String),
348
+ tax_id: T.nilable(String),
349
+ tax_id_type: T.nilable(String),
350
+ url: T.nilable(String)
351
+ }
352
+ )
353
+ end
354
+ def to_hash
355
+ end
356
+
357
+ # Business entity type
358
+ module EntityType
359
+ extend Sentdm::Internal::Type::Enum
360
+
361
+ TaggedSymbol =
362
+ T.type_alias do
363
+ T.all(Symbol, Sentdm::BrandsBrandData::Business::EntityType)
364
+ end
365
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
366
+
367
+ PRIVATE_PROFIT =
368
+ T.let(
369
+ :PRIVATE_PROFIT,
370
+ Sentdm::BrandsBrandData::Business::EntityType::TaggedSymbol
371
+ )
372
+ PUBLIC_PROFIT =
373
+ T.let(
374
+ :PUBLIC_PROFIT,
375
+ Sentdm::BrandsBrandData::Business::EntityType::TaggedSymbol
376
+ )
377
+ NON_PROFIT =
378
+ T.let(
379
+ :NON_PROFIT,
380
+ Sentdm::BrandsBrandData::Business::EntityType::TaggedSymbol
381
+ )
382
+ SOLE_PROPRIETOR =
383
+ T.let(
384
+ :SOLE_PROPRIETOR,
385
+ Sentdm::BrandsBrandData::Business::EntityType::TaggedSymbol
386
+ )
387
+ GOVERNMENT =
388
+ T.let(
389
+ :GOVERNMENT,
390
+ Sentdm::BrandsBrandData::Business::EntityType::TaggedSymbol
391
+ )
392
+
393
+ sig do
394
+ override.returns(
395
+ T::Array[
396
+ Sentdm::BrandsBrandData::Business::EntityType::TaggedSymbol
397
+ ]
398
+ )
399
+ end
400
+ def self.values
401
+ end
402
+ end
403
+ end
404
+ end
405
+ end
406
+ end
@@ -18,13 +18,13 @@ module Sentdm
18
18
  sig { params(phone_number: String).void }
19
19
  attr_writer :phone_number
20
20
 
21
- # Test mode flag - when true, the operation is simulated without side effects
22
- # Useful for testing integrations without actual execution
21
+ # Sandbox flag - when true, the operation is simulated without side effects Useful
22
+ # for testing integrations without actual execution
23
23
  sig { returns(T.nilable(T::Boolean)) }
24
- attr_reader :test_mode
24
+ attr_reader :sandbox
25
25
 
26
- sig { params(test_mode: T::Boolean).void }
27
- attr_writer :test_mode
26
+ sig { params(sandbox: T::Boolean).void }
27
+ attr_writer :sandbox
28
28
 
29
29
  sig { returns(T.nilable(String)) }
30
30
  attr_reader :idempotency_key
@@ -32,21 +32,29 @@ module Sentdm
32
32
  sig { params(idempotency_key: String).void }
33
33
  attr_writer :idempotency_key
34
34
 
35
+ sig { returns(T.nilable(String)) }
36
+ attr_reader :x_profile_id
37
+
38
+ sig { params(x_profile_id: String).void }
39
+ attr_writer :x_profile_id
40
+
35
41
  sig do
36
42
  params(
37
43
  phone_number: String,
38
- test_mode: T::Boolean,
44
+ sandbox: T::Boolean,
39
45
  idempotency_key: String,
46
+ x_profile_id: String,
40
47
  request_options: Sentdm::RequestOptions::OrHash
41
48
  ).returns(T.attached_class)
42
49
  end
43
50
  def self.new(
44
51
  # Phone number of the contact to create
45
52
  phone_number: nil,
46
- # Test mode flag - when true, the operation is simulated without side effects
47
- # Useful for testing integrations without actual execution
48
- test_mode: nil,
53
+ # Sandbox flag - when true, the operation is simulated without side effects Useful
54
+ # for testing integrations without actual execution
55
+ sandbox: nil,
49
56
  idempotency_key: nil,
57
+ x_profile_id: nil,
50
58
  request_options: {}
51
59
  )
52
60
  end
@@ -55,8 +63,9 @@ module Sentdm
55
63
  override.returns(
56
64
  {
57
65
  phone_number: String,
58
- test_mode: T::Boolean,
66
+ sandbox: T::Boolean,
59
67
  idempotency_key: String,
68
+ x_profile_id: String,
60
69
  request_options: Sentdm::RequestOptions
61
70
  }
62
71
  )