sentdm 0.18.0 → 0.19.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 (291) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +13 -0
  3. data/README.md +1 -31
  4. data/lib/sentdm/internal/transport/base_client.rb +2 -0
  5. data/lib/sentdm/internal/type/base_model.rb +5 -5
  6. data/lib/sentdm/internal/type/enum.rb +0 -25
  7. data/lib/sentdm/models/contact_create_response.rb +236 -0
  8. data/lib/sentdm/models/contact_delete_params.rb +16 -2
  9. data/lib/sentdm/models/contact_list_response.rb +278 -12
  10. data/lib/sentdm/models/contact_retrieve_response.rb +236 -0
  11. data/lib/sentdm/models/contact_update_params.rb +4 -16
  12. data/lib/sentdm/models/contact_update_response.rb +236 -0
  13. data/lib/sentdm/models/me_retrieve_response.rb +204 -12
  14. data/lib/sentdm/models/message_retrieve_activities_response.rb +74 -6
  15. data/lib/sentdm/models/message_retrieve_status_response.rb +87 -7
  16. data/lib/sentdm/models/message_send_params.rb +2 -2
  17. data/lib/sentdm/models/message_send_response.rb +74 -6
  18. data/lib/sentdm/models/number_lookup_response.rb +74 -6
  19. data/lib/sentdm/models/profile_complete_response.rb +74 -6
  20. data/lib/sentdm/models/profile_create_params.rb +423 -9
  21. data/lib/sentdm/models/profile_create_response.rb +781 -0
  22. data/lib/sentdm/models/profile_delete_params.rb +16 -2
  23. data/lib/sentdm/models/profile_list_response.rb +753 -9
  24. data/lib/sentdm/models/profile_retrieve_response.rb +783 -0
  25. data/lib/sentdm/models/profile_update_params.rb +423 -9
  26. data/lib/sentdm/models/profile_update_response.rb +781 -0
  27. data/lib/sentdm/models/profiles/campaign_create_params.rb +165 -3
  28. data/lib/sentdm/models/profiles/campaign_create_response.rb +459 -0
  29. data/lib/sentdm/models/profiles/campaign_delete_params.rb +17 -2
  30. data/lib/sentdm/models/profiles/campaign_list_response.rb +420 -9
  31. data/lib/sentdm/models/profiles/campaign_update_params.rb +165 -3
  32. data/lib/sentdm/models/profiles/campaign_update_response.rb +459 -0
  33. data/lib/sentdm/models/template_create_params.rb +889 -3
  34. data/lib/sentdm/models/template_create_response.rb +197 -0
  35. data/lib/sentdm/models/template_list_response.rb +242 -12
  36. data/lib/sentdm/models/template_retrieve_response.rb +197 -0
  37. data/lib/sentdm/models/template_update_params.rb +889 -3
  38. data/lib/sentdm/models/template_update_response.rb +197 -0
  39. data/lib/sentdm/models/user_invite_response.rb +189 -0
  40. data/lib/sentdm/models/user_list_response.rb +154 -9
  41. data/lib/sentdm/models/user_remove_params.rb +16 -2
  42. data/lib/sentdm/models/user_retrieve_response.rb +189 -0
  43. data/lib/sentdm/models/user_update_role_response.rb +189 -0
  44. data/lib/sentdm/models/webhook_create_response.rb +204 -0
  45. data/lib/sentdm/models/webhook_list_event_types_response.rb +118 -9
  46. data/lib/sentdm/models/webhook_list_events_response.rb +153 -9
  47. data/lib/sentdm/models/webhook_list_response.rb +247 -12
  48. data/lib/sentdm/models/webhook_retrieve_response.rb +204 -0
  49. data/lib/sentdm/models/webhook_rotate_secret_params.rb +17 -2
  50. data/lib/sentdm/models/webhook_rotate_secret_response.rb +74 -6
  51. data/lib/sentdm/models/webhook_test_response.rb +74 -6
  52. data/lib/sentdm/models/webhook_toggle_status_response.rb +204 -0
  53. data/lib/sentdm/models/webhook_update_response.rb +204 -0
  54. data/lib/sentdm/models.rb +0 -77
  55. data/lib/sentdm/resources/contacts.rb +8 -10
  56. data/lib/sentdm/resources/profiles/campaigns.rb +6 -6
  57. data/lib/sentdm/resources/profiles.rb +12 -12
  58. data/lib/sentdm/resources/templates.rb +8 -8
  59. data/lib/sentdm/resources/users.rb +6 -6
  60. data/lib/sentdm/resources/webhooks.rb +8 -8
  61. data/lib/sentdm/version.rb +1 -1
  62. data/lib/sentdm.rb +18 -40
  63. data/rbi/sentdm/models/contact_create_response.rbi +390 -0
  64. data/rbi/sentdm/models/contact_delete_params.rbi +19 -2
  65. data/rbi/sentdm/models/contact_list_response.rbi +505 -16
  66. data/rbi/sentdm/models/contact_retrieve_response.rbi +392 -0
  67. data/rbi/sentdm/models/contact_update_params.rbi +4 -20
  68. data/rbi/sentdm/models/contact_update_response.rbi +390 -0
  69. data/rbi/sentdm/models/me_retrieve_response.rbi +335 -16
  70. data/rbi/sentdm/models/message_retrieve_activities_response.rbi +154 -8
  71. data/rbi/sentdm/models/message_retrieve_status_response.rbi +171 -11
  72. data/rbi/sentdm/models/message_send_params.rbi +4 -4
  73. data/rbi/sentdm/models/message_send_response.rbi +135 -8
  74. data/rbi/sentdm/models/number_lookup_response.rbi +135 -8
  75. data/rbi/sentdm/models/profile_complete_response.rbi +137 -8
  76. data/rbi/sentdm/models/profile_create_params.rbi +810 -12
  77. data/rbi/sentdm/models/profile_create_response.rbi +1439 -0
  78. data/rbi/sentdm/models/profile_delete_params.rbi +19 -2
  79. data/rbi/sentdm/models/profile_list_response.rbi +1400 -14
  80. data/rbi/sentdm/models/profile_retrieve_response.rbi +1443 -0
  81. data/rbi/sentdm/models/profile_update_params.rbi +810 -12
  82. data/rbi/sentdm/models/profile_update_response.rbi +1439 -0
  83. data/rbi/sentdm/models/profiles/campaign_create_params.rbi +289 -4
  84. data/rbi/sentdm/models/profiles/campaign_create_response.rbi +814 -0
  85. data/rbi/sentdm/models/profiles/campaign_delete_params.rbi +14 -1
  86. data/rbi/sentdm/models/profiles/campaign_list_response.rbi +733 -11
  87. data/rbi/sentdm/models/profiles/campaign_update_params.rbi +289 -4
  88. data/rbi/sentdm/models/profiles/campaign_update_response.rbi +814 -0
  89. data/rbi/sentdm/models/template_create_params.rbi +1701 -4
  90. data/rbi/sentdm/models/template_create_response.rbi +339 -0
  91. data/rbi/sentdm/models/template_list_response.rbi +454 -16
  92. data/rbi/sentdm/models/template_retrieve_response.rbi +345 -0
  93. data/rbi/sentdm/models/template_update_params.rbi +1701 -4
  94. data/rbi/sentdm/models/template_update_response.rbi +339 -0
  95. data/rbi/sentdm/models/user_invite_response.rbi +323 -0
  96. data/rbi/sentdm/models/user_list_response.rbi +271 -14
  97. data/rbi/sentdm/models/user_remove_params.rbi +19 -2
  98. data/rbi/sentdm/models/user_retrieve_response.rbi +323 -0
  99. data/rbi/sentdm/models/user_update_role_response.rbi +328 -0
  100. data/rbi/sentdm/models/webhook_create_response.rbi +348 -0
  101. data/rbi/sentdm/models/webhook_list_event_types_response.rbi +247 -12
  102. data/rbi/sentdm/models/webhook_list_events_response.rbi +314 -12
  103. data/rbi/sentdm/models/webhook_list_response.rbi +462 -16
  104. data/rbi/sentdm/models/webhook_retrieve_response.rbi +350 -0
  105. data/rbi/sentdm/models/webhook_rotate_secret_params.rbi +14 -1
  106. data/rbi/sentdm/models/webhook_rotate_secret_response.rbi +148 -8
  107. data/rbi/sentdm/models/webhook_test_response.rbi +135 -8
  108. data/rbi/sentdm/models/webhook_toggle_status_response.rbi +366 -0
  109. data/rbi/sentdm/models/webhook_update_response.rbi +348 -0
  110. data/rbi/sentdm/models.rbi +0 -77
  111. data/rbi/sentdm/resources/contacts.rbi +5 -12
  112. data/rbi/sentdm/resources/messages.rbi +2 -2
  113. data/rbi/sentdm/resources/profiles/campaigns.rbi +4 -4
  114. data/rbi/sentdm/resources/profiles.rbi +13 -9
  115. data/rbi/sentdm/resources/templates.rbi +6 -5
  116. data/rbi/sentdm/resources/users.rbi +3 -3
  117. data/rbi/sentdm/resources/webhooks.rbi +4 -4
  118. data/sig/sentdm/models/contact_create_response.rbs +209 -0
  119. data/sig/sentdm/models/contact_delete_params.rbs +10 -6
  120. data/sig/sentdm/models/contact_list_response.rbs +256 -20
  121. data/sig/sentdm/models/contact_retrieve_response.rbs +209 -0
  122. data/sig/sentdm/models/contact_update_params.rbs +0 -5
  123. data/sig/sentdm/models/contact_update_response.rbs +209 -0
  124. data/sig/sentdm/models/me_retrieve_response.rbs +176 -18
  125. data/sig/sentdm/models/message_retrieve_activities_response.rbs +71 -9
  126. data/sig/sentdm/models/message_retrieve_status_response.rbs +95 -13
  127. data/sig/sentdm/models/message_send_response.rbs +71 -9
  128. data/sig/sentdm/models/number_lookup_response.rbs +71 -9
  129. data/sig/sentdm/models/profile_complete_response.rbs +71 -9
  130. data/sig/sentdm/models/profile_create_params.rbs +363 -12
  131. data/sig/sentdm/models/profile_create_response.rbs +662 -0
  132. data/sig/sentdm/models/profile_delete_params.rbs +10 -6
  133. data/sig/sentdm/models/profile_list_response.rbs +645 -15
  134. data/sig/sentdm/models/profile_retrieve_response.rbs +662 -0
  135. data/sig/sentdm/models/profile_update_params.rbs +363 -12
  136. data/sig/sentdm/models/profile_update_response.rbs +662 -0
  137. data/sig/sentdm/models/profiles/campaign_create_params.rbs +138 -4
  138. data/sig/sentdm/models/profiles/campaign_create_response.rbs +424 -0
  139. data/sig/sentdm/models/profiles/campaign_delete_params.rbs +15 -8
  140. data/sig/sentdm/models/profiles/campaign_list_response.rbs +396 -13
  141. data/sig/sentdm/models/profiles/campaign_update_params.rbs +138 -4
  142. data/sig/sentdm/models/profiles/campaign_update_response.rbs +424 -0
  143. data/sig/sentdm/models/template_create_params.rbs +853 -6
  144. data/sig/sentdm/models/template_create_response.rbs +177 -0
  145. data/sig/sentdm/models/template_list_response.rbs +225 -19
  146. data/sig/sentdm/models/template_retrieve_response.rbs +177 -0
  147. data/sig/sentdm/models/template_update_params.rbs +851 -4
  148. data/sig/sentdm/models/template_update_response.rbs +177 -0
  149. data/sig/sentdm/models/user_invite_response.rbs +170 -0
  150. data/sig/sentdm/models/user_list_response.rbs +151 -15
  151. data/sig/sentdm/models/user_remove_params.rbs +10 -6
  152. data/sig/sentdm/models/user_retrieve_response.rbs +170 -0
  153. data/sig/sentdm/models/user_update_role_response.rbs +170 -0
  154. data/sig/sentdm/models/webhook_create_response.rbs +201 -0
  155. data/sig/sentdm/models/webhook_list_event_types_response.rbs +130 -15
  156. data/sig/sentdm/models/webhook_list_events_response.rbs +142 -14
  157. data/sig/sentdm/models/webhook_list_response.rbs +248 -20
  158. data/sig/sentdm/models/webhook_retrieve_response.rbs +201 -0
  159. data/sig/sentdm/models/webhook_rotate_secret_params.rbs +17 -8
  160. data/sig/sentdm/models/webhook_rotate_secret_response.rbs +71 -9
  161. data/sig/sentdm/models/webhook_test_response.rbs +71 -9
  162. data/sig/sentdm/models/webhook_toggle_status_response.rbs +201 -0
  163. data/sig/sentdm/models/webhook_update_response.rbs +201 -0
  164. data/sig/sentdm/models.rbs +0 -68
  165. data/sig/sentdm/resources/contacts.rbs +3 -4
  166. data/sig/sentdm/resources/profiles/campaigns.rbs +4 -4
  167. data/sig/sentdm/resources/profiles.rbs +9 -9
  168. data/sig/sentdm/resources/templates.rbs +5 -5
  169. data/sig/sentdm/resources/users.rbs +3 -3
  170. data/sig/sentdm/resources/webhooks.rbs +4 -4
  171. metadata +56 -122
  172. data/lib/sentdm/models/api_meta.rb +0 -34
  173. data/lib/sentdm/models/api_response_of_contact.rb +0 -46
  174. data/lib/sentdm/models/api_response_of_profile_detail.rb +0 -43
  175. data/lib/sentdm/models/api_response_of_user.rb +0 -43
  176. data/lib/sentdm/models/api_response_template.rb +0 -43
  177. data/lib/sentdm/models/api_response_webhook.rb +0 -43
  178. data/lib/sentdm/models/billing_contact_info.rb +0 -47
  179. data/lib/sentdm/models/brands_brand_data.rb +0 -38
  180. data/lib/sentdm/models/contact_response.rb +0 -136
  181. data/lib/sentdm/models/destination_country.rb +0 -21
  182. data/lib/sentdm/models/error_detail.rb +0 -42
  183. data/lib/sentdm/models/mutation_request.rb +0 -20
  184. data/lib/sentdm/models/pagination_meta.rb +0 -80
  185. data/lib/sentdm/models/payment_details.rb +0 -44
  186. data/lib/sentdm/models/profile_detail.rb +0 -605
  187. data/lib/sentdm/models/profile_settings.rb +0 -66
  188. data/lib/sentdm/models/profiles/api_response_of_tcr_campaign_with_use_cases.rb +0 -45
  189. data/lib/sentdm/models/profiles/base_dto.rb +0 -32
  190. data/lib/sentdm/models/profiles/campaign_data.rb +0 -123
  191. data/lib/sentdm/models/profiles/messaging_use_case_us.rb +0 -28
  192. data/lib/sentdm/models/profiles/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rb +0 -29
  193. data/lib/sentdm/models/profiles/tcr_campaign_with_use_cases.rb +0 -236
  194. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rb +0 -34
  195. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rb +0 -40
  196. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rb +0 -38
  197. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rb +0 -81
  198. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rb +0 -34
  199. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rb +0 -39
  200. data/lib/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_business_info.rb +0 -116
  201. data/lib/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_compliance_info.rb +0 -75
  202. data/lib/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_contact_info.rb +0 -58
  203. data/lib/sentdm/models/tcr_brand_relationship.rb +0 -18
  204. data/lib/sentdm/models/tcr_vertical.rb +0 -36
  205. data/lib/sentdm/models/template.rb +0 -90
  206. data/lib/sentdm/models/template_body_content.rb +0 -27
  207. data/lib/sentdm/models/template_definition.rb +0 -66
  208. data/lib/sentdm/models/template_variable.rb +0 -80
  209. data/lib/sentdm/models/user_response.rb +0 -82
  210. data/lib/sentdm/models/webhook_event_type.rb +0 -45
  211. data/lib/sentdm/models/webhook_response.rb +0 -95
  212. data/rbi/sentdm/models/api_meta.rbi +0 -55
  213. data/rbi/sentdm/models/api_response_of_contact.rbi +0 -74
  214. data/rbi/sentdm/models/api_response_of_profile_detail.rbi +0 -74
  215. data/rbi/sentdm/models/api_response_of_user.rbi +0 -74
  216. data/rbi/sentdm/models/api_response_template.rbi +0 -74
  217. data/rbi/sentdm/models/api_response_webhook.rbi +0 -74
  218. data/rbi/sentdm/models/billing_contact_info.rbi +0 -65
  219. data/rbi/sentdm/models/brands_brand_data.rbi +0 -104
  220. data/rbi/sentdm/models/contact_response.rbi +0 -195
  221. data/rbi/sentdm/models/destination_country.rbi +0 -32
  222. data/rbi/sentdm/models/error_detail.rbi +0 -66
  223. data/rbi/sentdm/models/mutation_request.rbi +0 -32
  224. data/rbi/sentdm/models/pagination_meta.rbi +0 -135
  225. data/rbi/sentdm/models/payment_details.rbi +0 -59
  226. data/rbi/sentdm/models/profile_detail.rbi +0 -874
  227. data/rbi/sentdm/models/profile_settings.rbi +0 -86
  228. data/rbi/sentdm/models/profiles/api_response_of_tcr_campaign_with_use_cases.rbi +0 -83
  229. data/rbi/sentdm/models/profiles/base_dto.rbi +0 -53
  230. data/rbi/sentdm/models/profiles/campaign_data.rbi +0 -148
  231. data/rbi/sentdm/models/profiles/messaging_use_case_us.rbi +0 -73
  232. data/rbi/sentdm/models/profiles/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rbi +0 -51
  233. data/rbi/sentdm/models/profiles/tcr_campaign_with_use_cases.rbi +0 -410
  234. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rbi +0 -56
  235. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rbi +0 -76
  236. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rbi +0 -72
  237. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rbi +0 -104
  238. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rbi +0 -57
  239. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rbi +0 -59
  240. data/rbi/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_business_info.rbi +0 -180
  241. data/rbi/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_compliance_info.rbi +0 -95
  242. data/rbi/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_contact_info.rbi +0 -81
  243. data/rbi/sentdm/models/tcr_brand_relationship.rbi +0 -30
  244. data/rbi/sentdm/models/tcr_vertical.rbi +0 -41
  245. data/rbi/sentdm/models/template.rbi +0 -129
  246. data/rbi/sentdm/models/template_body_content.rbi +0 -43
  247. data/rbi/sentdm/models/template_definition.rbi +0 -164
  248. data/rbi/sentdm/models/template_variable.rbi +0 -120
  249. data/rbi/sentdm/models/user_response.rbi +0 -118
  250. data/rbi/sentdm/models/webhook_event_type.rbi +0 -74
  251. data/rbi/sentdm/models/webhook_response.rbi +0 -140
  252. data/sig/sentdm/models/api_meta.rbs +0 -27
  253. data/sig/sentdm/models/api_response_of_contact.rbs +0 -39
  254. data/sig/sentdm/models/api_response_of_profile_detail.rbs +0 -39
  255. data/sig/sentdm/models/api_response_of_user.rbs +0 -39
  256. data/sig/sentdm/models/api_response_template.rbs +0 -39
  257. data/sig/sentdm/models/api_response_webhook.rbs +0 -39
  258. data/sig/sentdm/models/billing_contact_info.rbs +0 -30
  259. data/sig/sentdm/models/brands_brand_data.rbs +0 -30
  260. data/sig/sentdm/models/contact_response.rbs +0 -116
  261. data/sig/sentdm/models/destination_country.rbs +0 -19
  262. data/sig/sentdm/models/error_detail.rbs +0 -39
  263. data/sig/sentdm/models/mutation_request.rbs +0 -15
  264. data/sig/sentdm/models/pagination_meta.rbs +0 -67
  265. data/sig/sentdm/models/payment_details.rbs +0 -30
  266. data/sig/sentdm/models/profile_detail.rbs +0 -474
  267. data/sig/sentdm/models/profile_settings.rbs +0 -50
  268. data/sig/sentdm/models/profiles/api_response_of_tcr_campaign_with_use_cases.rbs +0 -41
  269. data/sig/sentdm/models/profiles/base_dto.rbs +0 -27
  270. data/sig/sentdm/models/profiles/campaign_data.rbs +0 -82
  271. data/sig/sentdm/models/profiles/messaging_use_case_us.rbs +0 -40
  272. data/sig/sentdm/models/profiles/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rbs +0 -27
  273. data/sig/sentdm/models/profiles/tcr_campaign_with_use_cases.rbs +0 -285
  274. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rbs +0 -24
  275. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rbs +0 -30
  276. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rbs +0 -32
  277. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rbs +0 -75
  278. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rbs +0 -30
  279. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rbs +0 -30
  280. data/sig/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_business_info.rbs +0 -89
  281. data/sig/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_compliance_info.rbs +0 -55
  282. data/sig/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_contact_info.rbs +0 -45
  283. data/sig/sentdm/models/tcr_brand_relationship.rbs +0 -22
  284. data/sig/sentdm/models/tcr_vertical.rbs +0 -58
  285. data/sig/sentdm/models/template.rbs +0 -79
  286. data/sig/sentdm/models/template_body_content.rbs +0 -30
  287. data/sig/sentdm/models/template_definition.rbs +0 -45
  288. data/sig/sentdm/models/template_variable.rbs +0 -84
  289. data/sig/sentdm/models/user_response.rbs +0 -72
  290. data/sig/sentdm/models/webhook_event_type.rbs +0 -51
  291. data/sig/sentdm/models/webhook_response.rbs +0 -103
@@ -1,874 +0,0 @@
1
- # typed: strong
2
-
3
- module Sentdm
4
- module Models
5
- class ProfileDetail < Sentdm::Internal::Type::BaseModel
6
- OrHash =
7
- T.type_alias { T.any(Sentdm::ProfileDetail, Sentdm::Internal::AnyHash) }
8
-
9
- # Profile 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
- # Whether contacts are shared across profiles in the organization
17
- sig { returns(T.nilable(T::Boolean)) }
18
- attr_reader :allow_contact_sharing
19
-
20
- sig { params(allow_contact_sharing: T::Boolean).void }
21
- attr_writer :allow_contact_sharing
22
-
23
- # Whether number changes are allowed during onboarding
24
- sig { returns(T.nilable(T::Boolean)) }
25
- attr_accessor :allow_number_change_during_onboarding
26
-
27
- # Whether templates are shared across profiles in the organization
28
- sig { returns(T.nilable(T::Boolean)) }
29
- attr_reader :allow_template_sharing
30
-
31
- sig { params(allow_template_sharing: T::Boolean).void }
32
- attr_writer :allow_template_sharing
33
-
34
- # Billing contact info returned in profile responses
35
- sig { returns(T.nilable(Sentdm::ProfileDetail::BillingContact)) }
36
- attr_reader :billing_contact
37
-
38
- sig do
39
- params(
40
- billing_contact:
41
- T.nilable(Sentdm::ProfileDetail::BillingContact::OrHash)
42
- ).void
43
- end
44
- attr_writer :billing_contact
45
-
46
- # Billing model: profile, organization, or profile_and_organization
47
- sig { returns(T.nilable(String)) }
48
- attr_reader :billing_model
49
-
50
- sig { params(billing_model: String).void }
51
- attr_writer :billing_model
52
-
53
- # Brand response with nested contact, business, and compliance sections — mirrors
54
- # the request structure.
55
- sig { returns(T.nilable(Sentdm::ProfileDetail::Brand)) }
56
- attr_reader :brand
57
-
58
- sig do
59
- params(brand: T.nilable(Sentdm::ProfileDetail::Brand::OrHash)).void
60
- end
61
- attr_writer :brand
62
-
63
- # When the profile was created
64
- sig { returns(T.nilable(Time)) }
65
- attr_reader :created_at
66
-
67
- sig { params(created_at: Time).void }
68
- attr_writer :created_at
69
-
70
- # Profile description
71
- sig { returns(T.nilable(String)) }
72
- attr_accessor :description
73
-
74
- # Profile email (inherited from organization)
75
- sig { returns(T.nilable(String)) }
76
- attr_accessor :email
77
-
78
- # Profile icon URL
79
- sig { returns(T.nilable(String)) }
80
- attr_accessor :icon
81
-
82
- # Whether this profile inherits contacts from the organization
83
- sig { returns(T.nilable(T::Boolean)) }
84
- attr_reader :inherit_contacts
85
-
86
- sig { params(inherit_contacts: T::Boolean).void }
87
- attr_writer :inherit_contacts
88
-
89
- # Whether this profile inherits TCR brand from the organization
90
- sig { returns(T.nilable(T::Boolean)) }
91
- attr_reader :inherit_tcr_brand
92
-
93
- sig { params(inherit_tcr_brand: T::Boolean).void }
94
- attr_writer :inherit_tcr_brand
95
-
96
- # Whether this profile inherits TCR campaign from the organization
97
- sig { returns(T.nilable(T::Boolean)) }
98
- attr_reader :inherit_tcr_campaign
99
-
100
- sig { params(inherit_tcr_campaign: T::Boolean).void }
101
- attr_writer :inherit_tcr_campaign
102
-
103
- # Whether this profile inherits templates from the organization
104
- sig { returns(T.nilable(T::Boolean)) }
105
- attr_reader :inherit_templates
106
-
107
- sig { params(inherit_templates: T::Boolean).void }
108
- attr_writer :inherit_templates
109
-
110
- # Profile name
111
- sig { returns(T.nilable(String)) }
112
- attr_reader :name
113
-
114
- sig { params(name: String).void }
115
- attr_writer :name
116
-
117
- # Parent organization ID
118
- sig { returns(T.nilable(String)) }
119
- attr_accessor :organization_id
120
-
121
- # Direct SMS phone number
122
- sig { returns(T.nilable(String)) }
123
- attr_accessor :sending_phone_number
124
-
125
- # Reference to another profile for SMS/Telnyx configuration
126
- sig { returns(T.nilable(String)) }
127
- attr_accessor :sending_phone_number_profile_id
128
-
129
- # Reference to another profile for WhatsApp configuration
130
- sig { returns(T.nilable(String)) }
131
- attr_accessor :sending_whatsapp_number_profile_id
132
-
133
- # Profile short name/abbreviation. 3–11 characters: letters, numbers, and spaces
134
- # only, with at least one letter.
135
- sig { returns(T.nilable(String)) }
136
- attr_accessor :short_name
137
-
138
- # Profile setup status: incomplete, pending_review, approved, rejected
139
- sig { returns(T.nilable(String)) }
140
- attr_reader :status
141
-
142
- sig { params(status: String).void }
143
- attr_writer :status
144
-
145
- # When the profile was last updated
146
- sig { returns(T.nilable(Time)) }
147
- attr_accessor :updated_at
148
-
149
- # WhatsApp Business Account ID associated with this profile. Present whether the
150
- # WABA is inherited from the organization or configured directly.
151
- sig { returns(T.nilable(String)) }
152
- attr_accessor :waba_id
153
-
154
- # Direct WhatsApp phone number
155
- sig { returns(T.nilable(String)) }
156
- attr_accessor :whatsapp_phone_number
157
-
158
- # Detailed profile response for v3 API
159
- sig do
160
- params(
161
- id: String,
162
- allow_contact_sharing: T::Boolean,
163
- allow_number_change_during_onboarding: T.nilable(T::Boolean),
164
- allow_template_sharing: T::Boolean,
165
- billing_contact:
166
- T.nilable(Sentdm::ProfileDetail::BillingContact::OrHash),
167
- billing_model: String,
168
- brand: T.nilable(Sentdm::ProfileDetail::Brand::OrHash),
169
- created_at: Time,
170
- description: T.nilable(String),
171
- email: T.nilable(String),
172
- icon: T.nilable(String),
173
- inherit_contacts: T::Boolean,
174
- inherit_tcr_brand: T::Boolean,
175
- inherit_tcr_campaign: T::Boolean,
176
- inherit_templates: T::Boolean,
177
- name: String,
178
- organization_id: T.nilable(String),
179
- sending_phone_number: T.nilable(String),
180
- sending_phone_number_profile_id: T.nilable(String),
181
- sending_whatsapp_number_profile_id: T.nilable(String),
182
- short_name: T.nilable(String),
183
- status: String,
184
- updated_at: T.nilable(Time),
185
- waba_id: T.nilable(String),
186
- whatsapp_phone_number: T.nilable(String)
187
- ).returns(T.attached_class)
188
- end
189
- def self.new(
190
- # Profile unique identifier
191
- id: nil,
192
- # Whether contacts are shared across profiles in the organization
193
- allow_contact_sharing: nil,
194
- # Whether number changes are allowed during onboarding
195
- allow_number_change_during_onboarding: nil,
196
- # Whether templates are shared across profiles in the organization
197
- allow_template_sharing: nil,
198
- # Billing contact info returned in profile responses
199
- billing_contact: nil,
200
- # Billing model: profile, organization, or profile_and_organization
201
- billing_model: nil,
202
- # Brand response with nested contact, business, and compliance sections — mirrors
203
- # the request structure.
204
- brand: nil,
205
- # When the profile was created
206
- created_at: nil,
207
- # Profile description
208
- description: nil,
209
- # Profile email (inherited from organization)
210
- email: nil,
211
- # Profile icon URL
212
- icon: nil,
213
- # Whether this profile inherits contacts from the organization
214
- inherit_contacts: nil,
215
- # Whether this profile inherits TCR brand from the organization
216
- inherit_tcr_brand: nil,
217
- # Whether this profile inherits TCR campaign from the organization
218
- inherit_tcr_campaign: nil,
219
- # Whether this profile inherits templates from the organization
220
- inherit_templates: nil,
221
- # Profile name
222
- name: nil,
223
- # Parent organization ID
224
- organization_id: nil,
225
- # Direct SMS phone number
226
- sending_phone_number: nil,
227
- # Reference to another profile for SMS/Telnyx configuration
228
- sending_phone_number_profile_id: nil,
229
- # Reference to another profile for WhatsApp configuration
230
- sending_whatsapp_number_profile_id: nil,
231
- # Profile short name/abbreviation. 3–11 characters: letters, numbers, and spaces
232
- # only, with at least one letter.
233
- short_name: nil,
234
- # Profile setup status: incomplete, pending_review, approved, rejected
235
- status: nil,
236
- # When the profile was last updated
237
- updated_at: nil,
238
- # WhatsApp Business Account ID associated with this profile. Present whether the
239
- # WABA is inherited from the organization or configured directly.
240
- waba_id: nil,
241
- # Direct WhatsApp phone number
242
- whatsapp_phone_number: nil
243
- )
244
- end
245
-
246
- sig do
247
- override.returns(
248
- {
249
- id: String,
250
- allow_contact_sharing: T::Boolean,
251
- allow_number_change_during_onboarding: T.nilable(T::Boolean),
252
- allow_template_sharing: T::Boolean,
253
- billing_contact: T.nilable(Sentdm::ProfileDetail::BillingContact),
254
- billing_model: String,
255
- brand: T.nilable(Sentdm::ProfileDetail::Brand),
256
- created_at: Time,
257
- description: T.nilable(String),
258
- email: T.nilable(String),
259
- icon: T.nilable(String),
260
- inherit_contacts: T::Boolean,
261
- inherit_tcr_brand: T::Boolean,
262
- inherit_tcr_campaign: T::Boolean,
263
- inherit_templates: T::Boolean,
264
- name: String,
265
- organization_id: T.nilable(String),
266
- sending_phone_number: T.nilable(String),
267
- sending_phone_number_profile_id: T.nilable(String),
268
- sending_whatsapp_number_profile_id: T.nilable(String),
269
- short_name: T.nilable(String),
270
- status: String,
271
- updated_at: T.nilable(Time),
272
- waba_id: T.nilable(String),
273
- whatsapp_phone_number: T.nilable(String)
274
- }
275
- )
276
- end
277
- def to_hash
278
- end
279
-
280
- class BillingContact < Sentdm::Internal::Type::BaseModel
281
- OrHash =
282
- T.type_alias do
283
- T.any(
284
- Sentdm::ProfileDetail::BillingContact,
285
- Sentdm::Internal::AnyHash
286
- )
287
- end
288
-
289
- sig { returns(T.nilable(String)) }
290
- attr_accessor :address
291
-
292
- sig { returns(T.nilable(String)) }
293
- attr_accessor :email
294
-
295
- sig { returns(T.nilable(String)) }
296
- attr_accessor :name
297
-
298
- sig { returns(T.nilable(String)) }
299
- attr_accessor :phone
300
-
301
- # Billing contact info returned in profile responses
302
- sig do
303
- params(
304
- address: T.nilable(String),
305
- email: T.nilable(String),
306
- name: T.nilable(String),
307
- phone: T.nilable(String)
308
- ).returns(T.attached_class)
309
- end
310
- def self.new(address: nil, email: nil, name: nil, phone: nil)
311
- end
312
-
313
- sig do
314
- override.returns(
315
- {
316
- address: T.nilable(String),
317
- email: T.nilable(String),
318
- name: T.nilable(String),
319
- phone: T.nilable(String)
320
- }
321
- )
322
- end
323
- def to_hash
324
- end
325
- end
326
-
327
- class Brand < Sentdm::Internal::Type::BaseModel
328
- OrHash =
329
- T.type_alias do
330
- T.any(Sentdm::ProfileDetail::Brand, Sentdm::Internal::AnyHash)
331
- end
332
-
333
- # Unique identifier for the brand
334
- sig { returns(T.nilable(String)) }
335
- attr_reader :id
336
-
337
- sig { params(id: String).void }
338
- attr_writer :id
339
-
340
- # Business details and address information
341
- sig { returns(T.nilable(Sentdm::ProfileDetail::Brand::Business)) }
342
- attr_reader :business
343
-
344
- sig do
345
- params(
346
- business: T.nilable(Sentdm::ProfileDetail::Brand::Business::OrHash)
347
- ).void
348
- end
349
- attr_writer :business
350
-
351
- # Compliance and TCR-related information
352
- sig { returns(T.nilable(Sentdm::ProfileDetail::Brand::Compliance)) }
353
- attr_reader :compliance
354
-
355
- sig do
356
- params(
357
- compliance:
358
- T.nilable(Sentdm::ProfileDetail::Brand::Compliance::OrHash)
359
- ).void
360
- end
361
- attr_writer :compliance
362
-
363
- # Contact information for the brand
364
- sig { returns(T.nilable(Sentdm::ProfileDetail::Brand::Contact)) }
365
- attr_reader :contact
366
-
367
- sig do
368
- params(
369
- contact: T.nilable(Sentdm::ProfileDetail::Brand::Contact::OrHash)
370
- ).void
371
- end
372
- attr_writer :contact
373
-
374
- # When the brand was created
375
- sig { returns(T.nilable(Time)) }
376
- attr_reader :created_at
377
-
378
- sig { params(created_at: Time).void }
379
- attr_writer :created_at
380
-
381
- # CSP (Campaign Service Provider) ID
382
- sig { returns(T.nilable(String)) }
383
- attr_accessor :csp_id
384
-
385
- sig do
386
- returns(
387
- T.nilable(
388
- Sentdm::ProfileDetail::Brand::IdentityStatus::TaggedSymbol
389
- )
390
- )
391
- end
392
- attr_accessor :identity_status
393
-
394
- # Whether this brand is inherited from the parent organization
395
- sig { returns(T.nilable(T::Boolean)) }
396
- attr_reader :is_inherited
397
-
398
- sig { params(is_inherited: T::Boolean).void }
399
- attr_writer :is_inherited
400
-
401
- sig do
402
- returns(T.nilable(Sentdm::ProfileDetail::Brand::Status::TaggedSymbol))
403
- end
404
- attr_accessor :status
405
-
406
- # When the brand was submitted to TCR
407
- sig { returns(T.nilable(Time)) }
408
- attr_accessor :submitted_at
409
-
410
- # Whether this brand has been submitted to TCR
411
- sig { returns(T.nilable(T::Boolean)) }
412
- attr_reader :submitted_to_tcr
413
-
414
- sig { params(submitted_to_tcr: T::Boolean).void }
415
- attr_writer :submitted_to_tcr
416
-
417
- # TCR brand ID (populated after TCR submission)
418
- sig { returns(T.nilable(String)) }
419
- attr_accessor :tcr_brand_id
420
-
421
- # Universal EIN from TCR
422
- sig { returns(T.nilable(String)) }
423
- attr_accessor :universal_ein
424
-
425
- # When the brand was last updated
426
- sig { returns(T.nilable(Time)) }
427
- attr_accessor :updated_at
428
-
429
- # Brand response with nested contact, business, and compliance sections — mirrors
430
- # the request structure.
431
- sig do
432
- params(
433
- id: String,
434
- business: T.nilable(Sentdm::ProfileDetail::Brand::Business::OrHash),
435
- compliance:
436
- T.nilable(Sentdm::ProfileDetail::Brand::Compliance::OrHash),
437
- contact: T.nilable(Sentdm::ProfileDetail::Brand::Contact::OrHash),
438
- created_at: Time,
439
- csp_id: T.nilable(String),
440
- identity_status:
441
- T.nilable(Sentdm::ProfileDetail::Brand::IdentityStatus::OrSymbol),
442
- is_inherited: T::Boolean,
443
- status: T.nilable(Sentdm::ProfileDetail::Brand::Status::OrSymbol),
444
- submitted_at: T.nilable(Time),
445
- submitted_to_tcr: T::Boolean,
446
- tcr_brand_id: T.nilable(String),
447
- universal_ein: T.nilable(String),
448
- updated_at: T.nilable(Time)
449
- ).returns(T.attached_class)
450
- end
451
- def self.new(
452
- # Unique identifier for the brand
453
- id: nil,
454
- # Business details and address information
455
- business: nil,
456
- # Compliance and TCR-related information
457
- compliance: nil,
458
- # Contact information for the brand
459
- contact: nil,
460
- # When the brand was created
461
- created_at: nil,
462
- # CSP (Campaign Service Provider) ID
463
- csp_id: nil,
464
- identity_status: nil,
465
- # Whether this brand is inherited from the parent organization
466
- is_inherited: nil,
467
- status: nil,
468
- # When the brand was submitted to TCR
469
- submitted_at: nil,
470
- # Whether this brand has been submitted to TCR
471
- submitted_to_tcr: nil,
472
- # TCR brand ID (populated after TCR submission)
473
- tcr_brand_id: nil,
474
- # Universal EIN from TCR
475
- universal_ein: nil,
476
- # When the brand was last updated
477
- updated_at: nil
478
- )
479
- end
480
-
481
- sig do
482
- override.returns(
483
- {
484
- id: String,
485
- business: T.nilable(Sentdm::ProfileDetail::Brand::Business),
486
- compliance: T.nilable(Sentdm::ProfileDetail::Brand::Compliance),
487
- contact: T.nilable(Sentdm::ProfileDetail::Brand::Contact),
488
- created_at: Time,
489
- csp_id: T.nilable(String),
490
- identity_status:
491
- T.nilable(
492
- Sentdm::ProfileDetail::Brand::IdentityStatus::TaggedSymbol
493
- ),
494
- is_inherited: T::Boolean,
495
- status:
496
- T.nilable(Sentdm::ProfileDetail::Brand::Status::TaggedSymbol),
497
- submitted_at: T.nilable(Time),
498
- submitted_to_tcr: T::Boolean,
499
- tcr_brand_id: T.nilable(String),
500
- universal_ein: T.nilable(String),
501
- updated_at: T.nilable(Time)
502
- }
503
- )
504
- end
505
- def to_hash
506
- end
507
-
508
- class Business < Sentdm::Internal::Type::BaseModel
509
- OrHash =
510
- T.type_alias do
511
- T.any(
512
- Sentdm::ProfileDetail::Brand::Business,
513
- Sentdm::Internal::AnyHash
514
- )
515
- end
516
-
517
- # City
518
- sig { returns(T.nilable(String)) }
519
- attr_accessor :city
520
-
521
- # Country code (e.g., US, CA)
522
- sig { returns(T.nilable(String)) }
523
- attr_accessor :country
524
-
525
- # Country where the business is registered
526
- sig { returns(T.nilable(String)) }
527
- attr_accessor :country_of_registration
528
-
529
- # Business entity type
530
- sig { returns(T.nilable(String)) }
531
- attr_accessor :entity_type
532
-
533
- # Legal business name
534
- sig { returns(T.nilable(String)) }
535
- attr_accessor :legal_name
536
-
537
- # Postal/ZIP code
538
- sig { returns(T.nilable(String)) }
539
- attr_accessor :postal_code
540
-
541
- # State/province code
542
- sig { returns(T.nilable(String)) }
543
- attr_accessor :state
544
-
545
- # Street address
546
- sig { returns(T.nilable(String)) }
547
- attr_accessor :street
548
-
549
- # Tax ID/EIN number
550
- sig { returns(T.nilable(String)) }
551
- attr_accessor :tax_id
552
-
553
- # Type of tax ID (e.g., us_ein, ca_bn)
554
- sig { returns(T.nilable(String)) }
555
- attr_accessor :tax_id_type
556
-
557
- # Business website URL
558
- sig { returns(T.nilable(String)) }
559
- attr_accessor :url
560
-
561
- # Business details and address information
562
- sig do
563
- params(
564
- city: T.nilable(String),
565
- country: T.nilable(String),
566
- country_of_registration: T.nilable(String),
567
- entity_type: T.nilable(String),
568
- legal_name: T.nilable(String),
569
- postal_code: T.nilable(String),
570
- state: T.nilable(String),
571
- street: T.nilable(String),
572
- tax_id: T.nilable(String),
573
- tax_id_type: T.nilable(String),
574
- url: T.nilable(String)
575
- ).returns(T.attached_class)
576
- end
577
- def self.new(
578
- # City
579
- city: nil,
580
- # Country code (e.g., US, CA)
581
- country: nil,
582
- # Country where the business is registered
583
- country_of_registration: nil,
584
- # Business entity type
585
- entity_type: nil,
586
- # Legal business name
587
- legal_name: nil,
588
- # Postal/ZIP code
589
- postal_code: nil,
590
- # State/province code
591
- state: nil,
592
- # Street address
593
- street: nil,
594
- # Tax ID/EIN number
595
- tax_id: nil,
596
- # Type of tax ID (e.g., us_ein, ca_bn)
597
- tax_id_type: nil,
598
- # Business website URL
599
- url: nil
600
- )
601
- end
602
-
603
- sig do
604
- override.returns(
605
- {
606
- city: T.nilable(String),
607
- country: T.nilable(String),
608
- country_of_registration: T.nilable(String),
609
- entity_type: T.nilable(String),
610
- legal_name: T.nilable(String),
611
- postal_code: T.nilable(String),
612
- state: T.nilable(String),
613
- street: T.nilable(String),
614
- tax_id: T.nilable(String),
615
- tax_id_type: T.nilable(String),
616
- url: T.nilable(String)
617
- }
618
- )
619
- end
620
- def to_hash
621
- end
622
- end
623
-
624
- class Compliance < Sentdm::Internal::Type::BaseModel
625
- OrHash =
626
- T.type_alias do
627
- T.any(
628
- Sentdm::ProfileDetail::Brand::Compliance,
629
- Sentdm::Internal::AnyHash
630
- )
631
- end
632
-
633
- sig { returns(T.nilable(Sentdm::TcrBrandRelationship::TaggedSymbol)) }
634
- attr_accessor :brand_relationship
635
-
636
- # List of destination countries for messaging
637
- sig { returns(T.nilable(T::Array[Sentdm::DestinationCountry])) }
638
- attr_reader :destination_countries
639
-
640
- sig do
641
- params(
642
- destination_countries:
643
- T::Array[Sentdm::DestinationCountry::OrHash]
644
- ).void
645
- end
646
- attr_writer :destination_countries
647
-
648
- # Expected daily messaging volume
649
- sig { returns(T.nilable(String)) }
650
- attr_accessor :expected_messaging_volume
651
-
652
- # Whether this is a TCR (Campaign Registry) application
653
- sig { returns(T.nilable(T::Boolean)) }
654
- attr_reader :is_tcr_application
655
-
656
- sig { params(is_tcr_application: T::Boolean).void }
657
- attr_writer :is_tcr_application
658
-
659
- # Additional notes about the business or use case
660
- sig { returns(T.nilable(String)) }
661
- attr_accessor :notes
662
-
663
- # Phone number prefix for messaging (e.g., "+1")
664
- sig { returns(T.nilable(String)) }
665
- attr_accessor :phone_number_prefix
666
-
667
- # Primary messaging use case description
668
- sig { returns(T.nilable(String)) }
669
- attr_accessor :primary_use_case
670
-
671
- sig { returns(T.nilable(Sentdm::TcrVertical::TaggedSymbol)) }
672
- attr_accessor :vertical
673
-
674
- # Compliance and TCR-related information
675
- sig do
676
- params(
677
- brand_relationship:
678
- T.nilable(Sentdm::TcrBrandRelationship::OrSymbol),
679
- destination_countries:
680
- T::Array[Sentdm::DestinationCountry::OrHash],
681
- expected_messaging_volume: T.nilable(String),
682
- is_tcr_application: T::Boolean,
683
- notes: T.nilable(String),
684
- phone_number_prefix: T.nilable(String),
685
- primary_use_case: T.nilable(String),
686
- vertical: T.nilable(Sentdm::TcrVertical::OrSymbol)
687
- ).returns(T.attached_class)
688
- end
689
- def self.new(
690
- brand_relationship: nil,
691
- # List of destination countries for messaging
692
- destination_countries: nil,
693
- # Expected daily messaging volume
694
- expected_messaging_volume: nil,
695
- # Whether this is a TCR (Campaign Registry) application
696
- is_tcr_application: nil,
697
- # Additional notes about the business or use case
698
- notes: nil,
699
- # Phone number prefix for messaging (e.g., "+1")
700
- phone_number_prefix: nil,
701
- # Primary messaging use case description
702
- primary_use_case: nil,
703
- vertical: nil
704
- )
705
- end
706
-
707
- sig do
708
- override.returns(
709
- {
710
- brand_relationship:
711
- T.nilable(Sentdm::TcrBrandRelationship::TaggedSymbol),
712
- destination_countries: T::Array[Sentdm::DestinationCountry],
713
- expected_messaging_volume: T.nilable(String),
714
- is_tcr_application: T::Boolean,
715
- notes: T.nilable(String),
716
- phone_number_prefix: T.nilable(String),
717
- primary_use_case: T.nilable(String),
718
- vertical: T.nilable(Sentdm::TcrVertical::TaggedSymbol)
719
- }
720
- )
721
- end
722
- def to_hash
723
- end
724
- end
725
-
726
- class Contact < Sentdm::Internal::Type::BaseModel
727
- OrHash =
728
- T.type_alias do
729
- T.any(
730
- Sentdm::ProfileDetail::Brand::Contact,
731
- Sentdm::Internal::AnyHash
732
- )
733
- end
734
-
735
- # Business/brand name
736
- sig { returns(T.nilable(String)) }
737
- attr_accessor :business_name
738
-
739
- # Contact email address
740
- sig { returns(T.nilable(String)) }
741
- attr_accessor :email
742
-
743
- # Primary contact name
744
- sig { returns(T.nilable(String)) }
745
- attr_reader :name
746
-
747
- sig { params(name: String).void }
748
- attr_writer :name
749
-
750
- # Contact phone number in E.164 format
751
- sig { returns(T.nilable(String)) }
752
- attr_accessor :phone
753
-
754
- # Contact phone country code (e.g., "1" for US)
755
- sig { returns(T.nilable(String)) }
756
- attr_accessor :phone_country_code
757
-
758
- # Contact's role in the business
759
- sig { returns(T.nilable(String)) }
760
- attr_accessor :role
761
-
762
- # Contact information for the brand
763
- sig do
764
- params(
765
- business_name: T.nilable(String),
766
- email: T.nilable(String),
767
- name: String,
768
- phone: T.nilable(String),
769
- phone_country_code: T.nilable(String),
770
- role: T.nilable(String)
771
- ).returns(T.attached_class)
772
- end
773
- def self.new(
774
- # Business/brand name
775
- business_name: nil,
776
- # Contact email address
777
- email: nil,
778
- # Primary contact name
779
- name: nil,
780
- # Contact phone number in E.164 format
781
- phone: nil,
782
- # Contact phone country code (e.g., "1" for US)
783
- phone_country_code: nil,
784
- # Contact's role in the business
785
- role: nil
786
- )
787
- end
788
-
789
- sig do
790
- override.returns(
791
- {
792
- business_name: T.nilable(String),
793
- email: T.nilable(String),
794
- name: String,
795
- phone: T.nilable(String),
796
- phone_country_code: T.nilable(String),
797
- role: T.nilable(String)
798
- }
799
- )
800
- end
801
- def to_hash
802
- end
803
- end
804
-
805
- module IdentityStatus
806
- extend Sentdm::Internal::Type::Enum
807
-
808
- TaggedSymbol =
809
- T.type_alias do
810
- T.all(Symbol, Sentdm::ProfileDetail::Brand::IdentityStatus)
811
- end
812
- OrSymbol = T.type_alias { T.any(Symbol, String) }
813
-
814
- SELF_DECLARED =
815
- T.let(
816
- :SELF_DECLARED,
817
- Sentdm::ProfileDetail::Brand::IdentityStatus::TaggedSymbol
818
- )
819
- UNVERIFIED =
820
- T.let(
821
- :UNVERIFIED,
822
- Sentdm::ProfileDetail::Brand::IdentityStatus::TaggedSymbol
823
- )
824
- VERIFIED =
825
- T.let(
826
- :VERIFIED,
827
- Sentdm::ProfileDetail::Brand::IdentityStatus::TaggedSymbol
828
- )
829
- VETTED_VERIFIED =
830
- T.let(
831
- :VETTED_VERIFIED,
832
- Sentdm::ProfileDetail::Brand::IdentityStatus::TaggedSymbol
833
- )
834
-
835
- sig do
836
- override.returns(
837
- T::Array[
838
- Sentdm::ProfileDetail::Brand::IdentityStatus::TaggedSymbol
839
- ]
840
- )
841
- end
842
- def self.values
843
- end
844
- end
845
-
846
- module Status
847
- extend Sentdm::Internal::Type::Enum
848
-
849
- TaggedSymbol =
850
- T.type_alias { T.all(Symbol, Sentdm::ProfileDetail::Brand::Status) }
851
- OrSymbol = T.type_alias { T.any(Symbol, String) }
852
-
853
- ACTIVE =
854
- T.let(:ACTIVE, Sentdm::ProfileDetail::Brand::Status::TaggedSymbol)
855
- INACTIVE =
856
- T.let(:INACTIVE, Sentdm::ProfileDetail::Brand::Status::TaggedSymbol)
857
- SUSPENDED =
858
- T.let(
859
- :SUSPENDED,
860
- Sentdm::ProfileDetail::Brand::Status::TaggedSymbol
861
- )
862
-
863
- sig do
864
- override.returns(
865
- T::Array[Sentdm::ProfileDetail::Brand::Status::TaggedSymbol]
866
- )
867
- end
868
- def self.values
869
- end
870
- end
871
- end
872
- end
873
- end
874
- end