sentdm 0.29.0 → 0.31.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 (298) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +24 -0
  3. data/README.md +55 -1
  4. data/lib/sentdm/internal/contacts_page.rb +115 -0
  5. data/lib/sentdm/internal/conversations_page.rb +115 -0
  6. data/lib/sentdm/internal/templates_page.rb +115 -0
  7. data/lib/sentdm/internal/type/base_model.rb +5 -5
  8. data/lib/sentdm/internal/webhook_events_page.rb +115 -0
  9. data/lib/sentdm/internal/webhooks_page.rb +115 -0
  10. data/lib/sentdm/models/api_meta.rb +34 -0
  11. data/lib/sentdm/models/api_response_of_contact.rb +46 -0
  12. data/lib/sentdm/models/api_response_of_contact_message_summary.rb +43 -0
  13. data/lib/sentdm/models/api_response_of_conversation_messages_list.rb +42 -0
  14. data/lib/sentdm/models/api_response_of_profile_detail.rb +43 -0
  15. data/lib/sentdm/models/api_response_of_user.rb +43 -0
  16. data/lib/sentdm/models/api_response_template.rb +43 -0
  17. data/lib/sentdm/models/api_response_webhook.rb +43 -0
  18. data/lib/sentdm/models/billing_contact_info.rb +47 -0
  19. data/lib/sentdm/models/brand_business_info.rb +114 -0
  20. data/lib/sentdm/models/brand_compliance_info.rb +59 -0
  21. data/lib/sentdm/models/brand_contact_info.rb +58 -0
  22. data/lib/sentdm/models/brands_brand_data.rb +34 -0
  23. data/lib/sentdm/models/contact_delete_params.rb +2 -16
  24. data/lib/sentdm/models/contact_list_params.rb +13 -13
  25. data/lib/sentdm/models/contact_message_summary.rb +76 -0
  26. data/lib/sentdm/models/contact_response.rb +140 -0
  27. data/lib/sentdm/models/conversation_list_messages_params.rb +5 -5
  28. data/lib/sentdm/models/conversation_list_params.rb +5 -5
  29. data/lib/sentdm/models/conversation_messages_list.rb +245 -0
  30. data/lib/sentdm/models/error_detail.rb +42 -0
  31. data/lib/sentdm/models/me_retrieve_response.rb +12 -242
  32. data/lib/sentdm/models/message_retrieve_activities_response.rb +9 -159
  33. data/lib/sentdm/models/message_retrieve_status_response.rb +6 -74
  34. data/lib/sentdm/models/message_send_response.rb +6 -74
  35. data/lib/sentdm/models/mutation_request.rb +20 -0
  36. data/lib/sentdm/models/number_lookup_response.rb +6 -74
  37. data/lib/sentdm/models/pagination_meta.rb +84 -0
  38. data/lib/sentdm/models/payment_details.rb +40 -0
  39. data/lib/sentdm/models/profile_complete_response.rb +6 -74
  40. data/lib/sentdm/models/profile_create_params.rb +9 -345
  41. data/lib/sentdm/models/profile_delete_params.rb +2 -16
  42. data/lib/sentdm/models/profile_detail.rb +650 -0
  43. data/lib/sentdm/models/profile_list_response.rb +12 -815
  44. data/lib/sentdm/models/profile_settings.rb +85 -0
  45. data/lib/sentdm/models/profile_update_params.rb +9 -345
  46. data/lib/sentdm/models/profiles/api_response_of_brand_campaign.rb +45 -0
  47. data/lib/sentdm/models/profiles/api_response_of_list_of_brand_campaign.rb +45 -0
  48. data/lib/sentdm/models/profiles/brand_campaign.rb +247 -0
  49. data/lib/sentdm/models/profiles/campaign_create_params.rb +3 -156
  50. data/lib/sentdm/models/profiles/campaign_data.rb +136 -0
  51. data/lib/sentdm/models/profiles/campaign_delete_params.rb +2 -17
  52. data/lib/sentdm/models/profiles/campaign_update_params.rb +3 -156
  53. data/lib/sentdm/models/profiles/campaign_use_case.rb +71 -0
  54. data/lib/sentdm/models/profiles/campaign_use_case_data.rb +29 -0
  55. data/lib/sentdm/models/template.rb +103 -0
  56. data/lib/sentdm/models/template_list_params.rb +17 -17
  57. data/lib/sentdm/models/user_list_response.rb +12 -249
  58. data/lib/sentdm/models/user_remove_params.rb +2 -16
  59. data/lib/sentdm/models/user_response.rb +94 -0
  60. data/lib/sentdm/models/webhook_event_type.rb +45 -0
  61. data/lib/sentdm/models/webhook_list_event_types_response.rb +12 -203
  62. data/lib/sentdm/models/webhook_list_events_params.rb +5 -5
  63. data/lib/sentdm/models/webhook_list_events_response.rb +87 -295
  64. data/lib/sentdm/models/webhook_list_params.rb +11 -11
  65. data/lib/sentdm/models/webhook_response.rb +121 -0
  66. data/lib/sentdm/models/webhook_rotate_secret_params.rb +2 -17
  67. data/lib/sentdm/models/webhook_rotate_secret_response.rb +6 -74
  68. data/lib/sentdm/models/webhook_test_response.rb +6 -74
  69. data/lib/sentdm/models.rb +52 -0
  70. data/lib/sentdm/resources/contacts.rb +16 -15
  71. data/lib/sentdm/resources/conversations.rb +10 -8
  72. data/lib/sentdm/resources/profiles/campaigns.rb +8 -8
  73. data/lib/sentdm/resources/profiles.rb +12 -12
  74. data/lib/sentdm/resources/templates.rb +16 -15
  75. data/lib/sentdm/resources/users.rb +6 -6
  76. data/lib/sentdm/resources/webhooks.rb +20 -18
  77. data/lib/sentdm/version.rb +1 -1
  78. data/lib/sentdm.rb +37 -25
  79. data/rbi/sentdm/internal/contacts_page.rbi +71 -0
  80. data/rbi/sentdm/internal/conversations_page.rbi +71 -0
  81. data/rbi/sentdm/internal/templates_page.rbi +71 -0
  82. data/rbi/sentdm/internal/webhook_events_page.rbi +71 -0
  83. data/rbi/sentdm/internal/webhooks_page.rbi +71 -0
  84. data/rbi/sentdm/models/api_meta.rbi +55 -0
  85. data/rbi/sentdm/models/api_response_of_contact.rbi +74 -0
  86. data/rbi/sentdm/models/api_response_of_contact_message_summary.rbi +79 -0
  87. data/rbi/sentdm/models/api_response_of_conversation_messages_list.rbi +79 -0
  88. data/rbi/sentdm/models/api_response_of_profile_detail.rbi +74 -0
  89. data/rbi/sentdm/models/api_response_of_user.rbi +74 -0
  90. data/rbi/sentdm/models/api_response_template.rbi +74 -0
  91. data/rbi/sentdm/models/api_response_webhook.rbi +74 -0
  92. data/rbi/sentdm/models/billing_contact_info.rbi +65 -0
  93. data/rbi/sentdm/models/brand_business_info.rbi +162 -0
  94. data/rbi/sentdm/models/brand_compliance_info.rbi +76 -0
  95. data/rbi/sentdm/models/brand_contact_info.rbi +78 -0
  96. data/rbi/sentdm/models/brands_brand_data.rbi +65 -0
  97. data/rbi/sentdm/models/contact_delete_params.rbi +2 -19
  98. data/rbi/sentdm/models/contact_list_params.rbi +19 -13
  99. data/rbi/sentdm/models/contact_message_summary.rbi +144 -0
  100. data/rbi/sentdm/models/contact_response.rbi +200 -0
  101. data/rbi/sentdm/models/conversation_list_messages_params.rbi +12 -6
  102. data/rbi/sentdm/models/conversation_list_params.rbi +16 -5
  103. data/rbi/sentdm/models/conversation_messages_list.rbi +419 -0
  104. data/rbi/sentdm/models/error_detail.rbi +66 -0
  105. data/rbi/sentdm/models/me_retrieve_response.rbi +16 -367
  106. data/rbi/sentdm/models/message_retrieve_activities_response.rbi +12 -325
  107. data/rbi/sentdm/models/message_retrieve_status_response.rbi +8 -148
  108. data/rbi/sentdm/models/message_send_response.rbi +8 -135
  109. data/rbi/sentdm/models/mutation_request.rbi +32 -0
  110. data/rbi/sentdm/models/number_lookup_response.rbi +8 -135
  111. data/rbi/sentdm/models/pagination_meta.rbi +135 -0
  112. data/rbi/sentdm/models/payment_details.rbi +56 -0
  113. data/rbi/sentdm/models/profile_complete_response.rbi +8 -137
  114. data/rbi/sentdm/models/profile_create_params.rbi +12 -546
  115. data/rbi/sentdm/models/profile_delete_params.rbi +2 -19
  116. data/rbi/sentdm/models/profile_detail.rbi +918 -0
  117. data/rbi/sentdm/models/profile_list_response.rbi +16 -1347
  118. data/rbi/sentdm/models/profile_settings.rbi +102 -0
  119. data/rbi/sentdm/models/profile_update_params.rbi +12 -546
  120. data/rbi/sentdm/models/profiles/api_response_of_brand_campaign.rbi +81 -0
  121. data/rbi/sentdm/models/profiles/api_response_of_list_of_brand_campaign.rbi +76 -0
  122. data/rbi/sentdm/models/profiles/brand_campaign.rbi +299 -0
  123. data/rbi/sentdm/models/profiles/campaign_create_params.rbi +4 -218
  124. data/rbi/sentdm/models/profiles/campaign_data.rbi +158 -0
  125. data/rbi/sentdm/models/profiles/campaign_delete_params.rbi +1 -14
  126. data/rbi/sentdm/models/profiles/campaign_update_params.rbi +4 -218
  127. data/rbi/sentdm/models/profiles/campaign_use_case.rbi +110 -0
  128. data/rbi/sentdm/models/profiles/campaign_use_case_data.rbi +51 -0
  129. data/rbi/sentdm/models/template.rbi +139 -0
  130. data/rbi/sentdm/models/template_list_params.rbi +22 -16
  131. data/rbi/sentdm/models/user_list_response.rbi +16 -444
  132. data/rbi/sentdm/models/user_remove_params.rbi +2 -19
  133. data/rbi/sentdm/models/user_response.rbi +131 -0
  134. data/rbi/sentdm/models/webhook_event_type.rbi +74 -0
  135. data/rbi/sentdm/models/webhook_list_event_types_response.rbi +16 -414
  136. data/rbi/sentdm/models/webhook_list_events_params.rbi +12 -6
  137. data/rbi/sentdm/models/webhook_list_events_response.rbi +113 -564
  138. data/rbi/sentdm/models/webhook_list_params.rbi +16 -10
  139. data/rbi/sentdm/models/webhook_response.rbi +153 -0
  140. data/rbi/sentdm/models/webhook_rotate_secret_params.rbi +1 -14
  141. data/rbi/sentdm/models/webhook_rotate_secret_response.rbi +8 -148
  142. data/rbi/sentdm/models/webhook_test_response.rbi +8 -135
  143. data/rbi/sentdm/models.rbi +54 -0
  144. data/rbi/sentdm/resources/contacts.rbi +10 -10
  145. data/rbi/sentdm/resources/conversations.rbi +14 -6
  146. data/rbi/sentdm/resources/profiles/campaigns.rbi +5 -5
  147. data/rbi/sentdm/resources/profiles.rbi +9 -13
  148. data/rbi/sentdm/resources/templates.rbi +10 -10
  149. data/rbi/sentdm/resources/users.rbi +3 -3
  150. data/rbi/sentdm/resources/webhooks.rbi +16 -12
  151. data/sig/sentdm/internal/contacts_page.rbs +41 -0
  152. data/sig/sentdm/internal/conversations_page.rbs +41 -0
  153. data/sig/sentdm/internal/templates_page.rbs +44 -0
  154. data/sig/sentdm/internal/webhook_events_page.rbs +41 -0
  155. data/sig/sentdm/internal/webhooks_page.rbs +41 -0
  156. data/sig/sentdm/models/api_meta.rbs +27 -0
  157. data/sig/sentdm/models/api_response_of_contact.rbs +39 -0
  158. data/sig/sentdm/models/api_response_of_contact_message_summary.rbs +39 -0
  159. data/sig/sentdm/models/api_response_of_conversation_messages_list.rbs +39 -0
  160. data/sig/sentdm/models/api_response_of_profile_detail.rbs +39 -0
  161. data/sig/sentdm/models/api_response_of_user.rbs +39 -0
  162. data/sig/sentdm/models/api_response_template.rbs +39 -0
  163. data/sig/sentdm/models/api_response_webhook.rbs +39 -0
  164. data/sig/sentdm/models/billing_contact_info.rbs +30 -0
  165. data/sig/sentdm/models/brand_business_info.rbs +89 -0
  166. data/sig/sentdm/models/brand_compliance_info.rbs +45 -0
  167. data/sig/sentdm/models/brand_contact_info.rbs +45 -0
  168. data/sig/sentdm/models/brands_brand_data.rbs +30 -0
  169. data/sig/sentdm/models/contact_delete_params.rbs +6 -10
  170. data/sig/sentdm/models/contact_list_params.rbs +11 -7
  171. data/sig/sentdm/models/contact_message_summary.rbs +84 -0
  172. data/sig/sentdm/models/contact_response.rbs +118 -0
  173. data/sig/sentdm/models/conversation_list_messages_params.rbs +8 -4
  174. data/sig/sentdm/models/conversation_list_params.rbs +8 -4
  175. data/sig/sentdm/models/conversation_messages_list.rbs +240 -0
  176. data/sig/sentdm/models/error_detail.rbs +39 -0
  177. data/sig/sentdm/models/me_retrieve_response.rbs +18 -176
  178. data/sig/sentdm/models/message_retrieve_activities_response.rbs +14 -142
  179. data/sig/sentdm/models/message_retrieve_status_response.rbs +9 -71
  180. data/sig/sentdm/models/message_send_response.rbs +9 -71
  181. data/sig/sentdm/models/mutation_request.rbs +15 -0
  182. data/sig/sentdm/models/number_lookup_response.rbs +9 -71
  183. data/sig/sentdm/models/pagination_meta.rbs +67 -0
  184. data/sig/sentdm/models/payment_details.rbs +30 -0
  185. data/sig/sentdm/models/profile_complete_response.rbs +9 -71
  186. data/sig/sentdm/models/profile_create_params.rbs +12 -263
  187. data/sig/sentdm/models/profile_delete_params.rbs +6 -10
  188. data/sig/sentdm/models/profile_detail.rbs +461 -0
  189. data/sig/sentdm/models/profile_list_response.rbs +20 -606
  190. data/sig/sentdm/models/profile_settings.rbs +50 -0
  191. data/sig/sentdm/models/profile_update_params.rbs +12 -263
  192. data/sig/sentdm/models/profiles/api_response_of_brand_campaign.rbs +41 -0
  193. data/sig/sentdm/models/profiles/api_response_of_list_of_brand_campaign.rbs +41 -0
  194. data/sig/sentdm/models/profiles/brand_campaign.rbs +194 -0
  195. data/sig/sentdm/models/profiles/campaign_create_params.rbs +4 -108
  196. data/sig/sentdm/models/profiles/campaign_data.rbs +87 -0
  197. data/sig/sentdm/models/profiles/campaign_delete_params.rbs +8 -15
  198. data/sig/sentdm/models/profiles/campaign_update_params.rbs +4 -108
  199. data/sig/sentdm/models/profiles/campaign_use_case.rbs +66 -0
  200. data/sig/sentdm/models/profiles/campaign_use_case_data.rbs +27 -0
  201. data/sig/sentdm/models/template.rbs +84 -0
  202. data/sig/sentdm/models/template_list_params.rbs +14 -10
  203. data/sig/sentdm/models/user_list_response.rbs +20 -224
  204. data/sig/sentdm/models/user_remove_params.rbs +6 -10
  205. data/sig/sentdm/models/user_response.rbs +79 -0
  206. data/sig/sentdm/models/webhook_event_type.rbs +51 -0
  207. data/sig/sentdm/models/webhook_list_event_types_response.rbs +20 -196
  208. data/sig/sentdm/models/webhook_list_events_params.rbs +8 -4
  209. data/sig/sentdm/models/webhook_list_events_response.rbs +63 -255
  210. data/sig/sentdm/models/webhook_list_params.rbs +11 -7
  211. data/sig/sentdm/models/webhook_response.rbs +110 -0
  212. data/sig/sentdm/models/webhook_rotate_secret_params.rbs +8 -17
  213. data/sig/sentdm/models/webhook_rotate_secret_response.rbs +9 -71
  214. data/sig/sentdm/models/webhook_test_response.rbs +9 -71
  215. data/sig/sentdm/models.rbs +52 -0
  216. data/sig/sentdm/resources/contacts.rbs +7 -7
  217. data/sig/sentdm/resources/conversations.rbs +6 -6
  218. data/sig/sentdm/resources/profiles/campaigns.rbs +5 -5
  219. data/sig/sentdm/resources/profiles.rbs +9 -9
  220. data/sig/sentdm/resources/templates.rbs +6 -6
  221. data/sig/sentdm/resources/users.rbs +3 -3
  222. data/sig/sentdm/resources/webhooks.rbs +10 -10
  223. metadata +113 -77
  224. data/lib/sentdm/models/contact_create_response.rb +0 -249
  225. data/lib/sentdm/models/contact_list_response.rb +0 -348
  226. data/lib/sentdm/models/contact_retrieve_message_summary_response.rb +0 -186
  227. data/lib/sentdm/models/contact_retrieve_response.rb +0 -249
  228. data/lib/sentdm/models/contact_update_response.rb +0 -249
  229. data/lib/sentdm/models/conversation_list_messages_response.rb +0 -436
  230. data/lib/sentdm/models/conversation_list_response.rb +0 -433
  231. data/lib/sentdm/models/profile_create_response.rb +0 -760
  232. data/lib/sentdm/models/profile_retrieve_response.rb +0 -762
  233. data/lib/sentdm/models/profile_update_response.rb +0 -760
  234. data/lib/sentdm/models/profiles/campaign_create_response.rb +0 -420
  235. data/lib/sentdm/models/profiles/campaign_list_response.rb +0 -421
  236. data/lib/sentdm/models/profiles/campaign_update_response.rb +0 -420
  237. data/lib/sentdm/models/template_create_response.rb +0 -209
  238. data/lib/sentdm/models/template_list_response.rb +0 -311
  239. data/lib/sentdm/models/template_retrieve_response.rb +0 -209
  240. data/lib/sentdm/models/template_update_response.rb +0 -209
  241. data/lib/sentdm/models/user_invite_response.rb +0 -201
  242. data/lib/sentdm/models/user_retrieve_response.rb +0 -201
  243. data/lib/sentdm/models/user_update_role_response.rb +0 -201
  244. data/lib/sentdm/models/webhook_create_response.rb +0 -229
  245. data/lib/sentdm/models/webhook_list_response.rb +0 -329
  246. data/lib/sentdm/models/webhook_retrieve_response.rb +0 -229
  247. data/lib/sentdm/models/webhook_toggle_status_response.rb +0 -229
  248. data/lib/sentdm/models/webhook_update_response.rb +0 -229
  249. data/rbi/sentdm/models/contact_create_response.rbi +0 -407
  250. data/rbi/sentdm/models/contact_list_response.rbi +0 -634
  251. data/rbi/sentdm/models/contact_retrieve_message_summary_response.rbi +0 -397
  252. data/rbi/sentdm/models/contact_retrieve_response.rbi +0 -409
  253. data/rbi/sentdm/models/contact_update_response.rbi +0 -407
  254. data/rbi/sentdm/models/conversation_list_messages_response.rbi +0 -843
  255. data/rbi/sentdm/models/conversation_list_response.rbi +0 -819
  256. data/rbi/sentdm/models/profile_create_response.rbi +0 -1226
  257. data/rbi/sentdm/models/profile_retrieve_response.rbi +0 -1230
  258. data/rbi/sentdm/models/profile_update_response.rbi +0 -1226
  259. data/rbi/sentdm/models/profiles/campaign_create_response.rbi +0 -674
  260. data/rbi/sentdm/models/profiles/campaign_list_response.rbi +0 -667
  261. data/rbi/sentdm/models/profiles/campaign_update_response.rbi +0 -674
  262. data/rbi/sentdm/models/template_create_response.rbi +0 -349
  263. data/rbi/sentdm/models/template_list_response.rbi +0 -576
  264. data/rbi/sentdm/models/template_retrieve_response.rbi +0 -355
  265. data/rbi/sentdm/models/template_update_response.rbi +0 -349
  266. data/rbi/sentdm/models/user_invite_response.rbi +0 -336
  267. data/rbi/sentdm/models/user_retrieve_response.rbi +0 -336
  268. data/rbi/sentdm/models/user_update_role_response.rbi +0 -341
  269. data/rbi/sentdm/models/webhook_create_response.rbi +0 -361
  270. data/rbi/sentdm/models/webhook_list_response.rbi +0 -587
  271. data/rbi/sentdm/models/webhook_retrieve_response.rbi +0 -363
  272. data/rbi/sentdm/models/webhook_toggle_status_response.rbi +0 -379
  273. data/rbi/sentdm/models/webhook_update_response.rbi +0 -361
  274. data/sig/sentdm/models/contact_create_response.rbs +0 -216
  275. data/sig/sentdm/models/contact_list_response.rbs +0 -310
  276. data/sig/sentdm/models/contact_retrieve_message_summary_response.rbs +0 -182
  277. data/sig/sentdm/models/contact_retrieve_response.rbs +0 -216
  278. data/sig/sentdm/models/contact_update_response.rbs +0 -216
  279. data/sig/sentdm/models/conversation_list_messages_response.rbs +0 -404
  280. data/sig/sentdm/models/conversation_list_response.rbs +0 -404
  281. data/sig/sentdm/models/profile_create_response.rbs +0 -559
  282. data/sig/sentdm/models/profile_retrieve_response.rbs +0 -559
  283. data/sig/sentdm/models/profile_update_response.rbs +0 -559
  284. data/sig/sentdm/models/profiles/campaign_create_response.rbs +0 -357
  285. data/sig/sentdm/models/profiles/campaign_list_response.rbs +0 -357
  286. data/sig/sentdm/models/profiles/campaign_update_response.rbs +0 -357
  287. data/sig/sentdm/models/template_create_response.rbs +0 -182
  288. data/sig/sentdm/models/template_list_response.rbs +0 -276
  289. data/sig/sentdm/models/template_retrieve_response.rbs +0 -182
  290. data/sig/sentdm/models/template_update_response.rbs +0 -182
  291. data/sig/sentdm/models/user_invite_response.rbs +0 -177
  292. data/sig/sentdm/models/user_retrieve_response.rbs +0 -177
  293. data/sig/sentdm/models/user_update_role_response.rbs +0 -177
  294. data/sig/sentdm/models/webhook_create_response.rbs +0 -208
  295. data/sig/sentdm/models/webhook_list_response.rbs +0 -302
  296. data/sig/sentdm/models/webhook_retrieve_response.rbs +0 -208
  297. data/sig/sentdm/models/webhook_toggle_status_response.rbs +0 -208
  298. data/sig/sentdm/models/webhook_update_response.rbs +0 -208
@@ -13,14 +13,14 @@ module Sentdm
13
13
  # @!attribute error
14
14
  # Error information
15
15
  #
16
- # @return [Sentdm::Models::ProfileListResponse::Error, nil]
17
- optional :error, -> { Sentdm::Models::ProfileListResponse::Error }, nil?: true
16
+ # @return [Sentdm::Models::ErrorDetail, nil]
17
+ optional :error, -> { Sentdm::ErrorDetail }, nil?: true
18
18
 
19
19
  # @!attribute meta
20
20
  # Request and response metadata
21
21
  #
22
- # @return [Sentdm::Models::ProfileListResponse::Meta, nil]
23
- optional :meta, -> { Sentdm::Models::ProfileListResponse::Meta }
22
+ # @return [Sentdm::Models::APIMeta, nil]
23
+ optional :meta, -> { Sentdm::APIMeta }
24
24
 
25
25
  # @!attribute success
26
26
  # Indicates whether the request was successful
@@ -33,9 +33,9 @@ module Sentdm
33
33
  #
34
34
  # @param data [Sentdm::Models::ProfileListResponse::Data, nil] The profiles in the organization.
35
35
  #
36
- # @param error [Sentdm::Models::ProfileListResponse::Error, nil] Error information
36
+ # @param error [Sentdm::Models::ErrorDetail, nil] Error information
37
37
  #
38
- # @param meta [Sentdm::Models::ProfileListResponse::Meta] Request and response metadata
38
+ # @param meta [Sentdm::Models::APIMeta] Request and response metadata
39
39
  #
40
40
  # @param success [Boolean] Indicates whether the request was successful
41
41
 
@@ -44,824 +44,21 @@ module Sentdm
44
44
  # @!attribute pagination
45
45
  # Pagination metadata for list responses
46
46
  #
47
- # @return [Sentdm::Models::ProfileListResponse::Data::Pagination, nil]
48
- optional :pagination, -> { Sentdm::Models::ProfileListResponse::Data::Pagination }
47
+ # @return [Sentdm::Models::PaginationMeta, nil]
48
+ optional :pagination, -> { Sentdm::PaginationMeta }
49
49
 
50
50
  # @!attribute profiles
51
51
  # The profiles on this page.
52
52
  #
53
- # @return [Array<Sentdm::Models::ProfileListResponse::Data::Profile>, nil]
54
- optional :profiles,
55
- -> { Sentdm::Internal::Type::ArrayOf[Sentdm::Models::ProfileListResponse::Data::Profile] }
53
+ # @return [Array<Sentdm::Models::ProfileDetail>, nil]
54
+ optional :profiles, -> { Sentdm::Internal::Type::ArrayOf[Sentdm::ProfileDetail] }
56
55
 
57
56
  # @!method initialize(pagination: nil, profiles: nil)
58
57
  # The profiles in the organization.
59
58
  #
60
- # @param pagination [Sentdm::Models::ProfileListResponse::Data::Pagination] Pagination metadata for list responses
59
+ # @param pagination [Sentdm::Models::PaginationMeta] Pagination metadata for list responses
61
60
  #
62
- # @param profiles [Array<Sentdm::Models::ProfileListResponse::Data::Profile>] The profiles on this page.
63
-
64
- # @see Sentdm::Models::ProfileListResponse::Data#pagination
65
- class Pagination < Sentdm::Internal::Type::BaseModel
66
- # @!attribute cursors
67
- # @deprecated
68
- #
69
- # Cursor-based pagination. Never populated — see Cursors.
70
- #
71
- # @return [Sentdm::Models::ProfileListResponse::Data::Pagination::Cursors, nil]
72
- optional :cursors, -> { Sentdm::Models::ProfileListResponse::Data::Pagination::Cursors }, nil?: true
73
-
74
- # @!attribute has_more
75
- # Whether there are more pages after this one
76
- #
77
- # @return [Boolean, nil]
78
- optional :has_more, Sentdm::Internal::Type::Boolean
79
-
80
- # @!attribute page
81
- # Current page number (1-indexed)
82
- #
83
- # @return [Integer, nil]
84
- optional :page, Integer
85
-
86
- # @!attribute page_size
87
- # Number of items per page
88
- #
89
- # @return [Integer, nil]
90
- optional :page_size, Integer
91
-
92
- # @!attribute total_count
93
- # Total number of items across all pages
94
- #
95
- # @return [Integer, nil]
96
- optional :total_count, Integer
97
-
98
- # @!attribute total_pages
99
- # Total number of pages
100
- #
101
- # @return [Integer, nil]
102
- optional :total_pages, Integer
103
-
104
- # @!method initialize(cursors: nil, has_more: nil, page: nil, page_size: nil, total_count: nil, total_pages: nil)
105
- # Pagination metadata for list responses
106
- #
107
- # @param cursors [Sentdm::Models::ProfileListResponse::Data::Pagination::Cursors, nil] Cursor-based pagination. Never populated — see Cursors.
108
- #
109
- # @param has_more [Boolean] Whether there are more pages after this one
110
- #
111
- # @param page [Integer] Current page number (1-indexed)
112
- #
113
- # @param page_size [Integer] Number of items per page
114
- #
115
- # @param total_count [Integer] Total number of items across all pages
116
- #
117
- # @param total_pages [Integer] Total number of pages
118
-
119
- # @deprecated
120
- #
121
- # @see Sentdm::Models::ProfileListResponse::Data::Pagination#cursors
122
- class Cursors < Sentdm::Internal::Type::BaseModel
123
- # @!attribute after
124
- # Cursor to fetch the next page.
125
- #
126
- # @return [String, nil]
127
- optional :after, String, nil?: true
128
-
129
- # @!attribute before
130
- # Cursor to fetch the previous page.
131
- #
132
- # @return [String, nil]
133
- optional :before, String, nil?: true
134
-
135
- # @!method initialize(after: nil, before: nil)
136
- # Cursor-based pagination. Never populated — see Cursors.
137
- #
138
- # @param after [String, nil] Cursor to fetch the next page.
139
- #
140
- # @param before [String, nil] Cursor to fetch the previous page.
141
- end
142
- end
143
-
144
- class Profile < Sentdm::Internal::Type::BaseModel
145
- # @!attribute id
146
- # Profile unique identifier
147
- #
148
- # @return [String, nil]
149
- optional :id, String
150
-
151
- # @!attribute allow_contact_sharing
152
- # @deprecated
153
- #
154
- # Always false. A profile no longer shares contacts with sibling profiles — it
155
- # sees only what it owns. Retained so existing v3 clients reading
156
- # allow_contact_sharing keep deserializing; it carries no information.
157
- #
158
- # @return [Boolean, nil]
159
- optional :allow_contact_sharing, Sentdm::Internal::Type::Boolean, nil?: true
160
-
161
- # @!attribute allow_number_change_during_onboarding
162
- # Whether number changes are allowed during onboarding
163
- #
164
- # @return [Boolean, nil]
165
- optional :allow_number_change_during_onboarding, Sentdm::Internal::Type::Boolean, nil?: true
166
-
167
- # @!attribute allow_template_sharing
168
- # @deprecated
169
- #
170
- # Always false. A profile no longer shares templates with sibling profiles.
171
- # Retained so existing v3 clients reading allow_template_sharing keep
172
- # deserializing; it carries no information.
173
- #
174
- # @return [Boolean, nil]
175
- optional :allow_template_sharing, Sentdm::Internal::Type::Boolean, nil?: true
176
-
177
- # @!attribute billing_contact
178
- # Billing contact info returned in profile responses
179
- #
180
- # @return [Sentdm::Models::ProfileListResponse::Data::Profile::BillingContact, nil]
181
- optional :billing_contact,
182
- -> { Sentdm::Models::ProfileListResponse::Data::Profile::BillingContact },
183
- nil?: true
184
-
185
- # @!attribute billing_model
186
- # Billing model: profile, organization, or profile_and_organization
187
- #
188
- # @return [String, nil]
189
- optional :billing_model, String
190
-
191
- # @!attribute brand
192
- # Brand response with nested contact, business, and compliance sections — mirrors
193
- # the request structure.
194
- #
195
- # @return [Sentdm::Models::ProfileListResponse::Data::Profile::Brand, nil]
196
- optional :brand, -> { Sentdm::Models::ProfileListResponse::Data::Profile::Brand }, nil?: true
197
-
198
- # @!attribute created_at
199
- # When the profile was created
200
- #
201
- # @return [Time, nil]
202
- optional :created_at, Time
203
-
204
- # @!attribute description
205
- # Profile description
206
- #
207
- # @return [String, nil]
208
- optional :description, String, nil?: true
209
-
210
- # @!attribute email
211
- # Profile email (inherited from organization)
212
- #
213
- # @return [String, nil]
214
- optional :email, String, nil?: true
215
-
216
- # @!attribute icon
217
- # Profile icon URL
218
- #
219
- # @return [String, nil]
220
- optional :icon, String, nil?: true
221
-
222
- # @!attribute inherit_contacts
223
- # @deprecated
224
- #
225
- # Always false. A profile no longer inherits its organization's contacts. Retained
226
- # so existing v3 clients reading inherit_contacts keep deserializing; it carries
227
- # no information.
228
- #
229
- # @return [Boolean, nil]
230
- optional :inherit_contacts, Sentdm::Internal::Type::Boolean, nil?: true
231
-
232
- # @!attribute inherit_tcr_brand
233
- # Whether this profile inherits TCR brand from the organization
234
- #
235
- # @return [Boolean, nil]
236
- optional :inherit_tcr_brand, Sentdm::Internal::Type::Boolean
237
-
238
- # @!attribute inherit_tcr_campaign
239
- # Whether this profile inherits TCR campaign from the organization
240
- #
241
- # @return [Boolean, nil]
242
- optional :inherit_tcr_campaign, Sentdm::Internal::Type::Boolean
243
-
244
- # @!attribute inherit_templates
245
- # @deprecated
246
- #
247
- # Always false. A profile no longer inherits its organization's templates.
248
- # Retained so existing v3 clients reading inherit_templates keep deserializing; it
249
- # carries no information.
250
- #
251
- # @return [Boolean, nil]
252
- optional :inherit_templates, Sentdm::Internal::Type::Boolean, nil?: true
253
-
254
- # @!attribute name
255
- # Profile name
256
- #
257
- # @return [String, nil]
258
- optional :name, String
259
-
260
- # @!attribute organization_id
261
- # Parent organization ID
262
- #
263
- # @return [String, nil]
264
- optional :organization_id, String, nil?: true
265
-
266
- # @!attribute sending_phone_number
267
- # Direct SMS phone number
268
- #
269
- # @return [String, nil]
270
- optional :sending_phone_number, String, nil?: true
271
-
272
- # @!attribute sending_phone_number_profile_id
273
- # @deprecated
274
- #
275
- # Deprecated. Always null. Sender borrowing is gone: a profile no longer points at
276
- # another profile for its SMS sender, and every profile owns the sender it sends
277
- # from.
278
- #
279
- # Kept on the wire, and never populated, because those are two different promises.
280
- # Removing the key changes the response's shape — a generated client loses the
281
- # property and stops compiling on the next regenerate, for a value that is now
282
- # null for every profile in existence. Keeping it null costs a key and breaks
283
- # nobody, and null is the honest answer rather than a placeholder: there is no
284
- # borrowing left to report.
285
- #
286
- # Nothing could populate it. Migration 260813161500 dropped the column and copied
287
- # each borrower its own channel-provider row; its Down() says outright that the
288
- # borrower-to-lender pairing is not recoverable. The only surviving trace is a
289
- # notes string on the copied row.
290
- #
291
- # @return [String, nil]
292
- optional :sending_phone_number_profile_id, String, nil?: true
293
-
294
- # @!attribute sending_whatsapp_number_profile_id
295
- # @deprecated
296
- #
297
- # @return [String, nil]
298
- optional :sending_whatsapp_number_profile_id, String, nil?: true
299
-
300
- # @!attribute short_name
301
- # Profile short name/abbreviation. 3–11 characters: letters, numbers, and spaces
302
- # only, with at least one letter.
303
- #
304
- # @return [String, nil]
305
- optional :short_name, String, nil?: true
306
-
307
- # @!attribute status
308
- # Profile setup status: incomplete, pending_review, approved, rejected
309
- #
310
- # @return [String, nil]
311
- optional :status, String
312
-
313
- # @!attribute updated_at
314
- # When the profile was last updated
315
- #
316
- # @return [Time, nil]
317
- optional :updated_at, Time, nil?: true
318
-
319
- # @!attribute waba_id
320
- # WhatsApp Business Account ID associated with this profile. Present whether the
321
- # WABA is inherited from the organization or configured directly.
322
- #
323
- # @return [String, nil]
324
- optional :waba_id, String, nil?: true
325
-
326
- # @!attribute whatsapp_phone_number
327
- # Direct WhatsApp phone number
328
- #
329
- # @return [String, nil]
330
- optional :whatsapp_phone_number, String, nil?: true
331
-
332
- # @!method initialize(id: nil, allow_contact_sharing: nil, allow_number_change_during_onboarding: nil, allow_template_sharing: nil, billing_contact: nil, billing_model: nil, brand: nil, created_at: nil, description: nil, email: nil, icon: nil, inherit_contacts: nil, inherit_tcr_brand: nil, inherit_tcr_campaign: nil, inherit_templates: nil, name: nil, organization_id: nil, sending_phone_number: nil, sending_phone_number_profile_id: nil, sending_whatsapp_number_profile_id: nil, short_name: nil, status: nil, updated_at: nil, waba_id: nil, whatsapp_phone_number: nil)
333
- # Some parameter documentations has been truncated, see
334
- # {Sentdm::Models::ProfileListResponse::Data::Profile} for more details.
335
- #
336
- # Detailed profile response for v3 API
337
- #
338
- # @param id [String] Profile unique identifier
339
- #
340
- # @param allow_contact_sharing [Boolean, nil] Always false. A profile no longer shares contacts with sibling profiles — it see
341
- #
342
- # @param allow_number_change_during_onboarding [Boolean, nil] Whether number changes are allowed during onboarding
343
- #
344
- # @param allow_template_sharing [Boolean, nil] Always false. A profile no longer shares templates with sibling profiles. Retain
345
- #
346
- # @param billing_contact [Sentdm::Models::ProfileListResponse::Data::Profile::BillingContact, nil] Billing contact info returned in profile responses
347
- #
348
- # @param billing_model [String] Billing model: profile, organization, or profile_and_organization
349
- #
350
- # @param brand [Sentdm::Models::ProfileListResponse::Data::Profile::Brand, nil] Brand response with nested contact, business, and compliance sections — mirrors
351
- #
352
- # @param created_at [Time] When the profile was created
353
- #
354
- # @param description [String, nil] Profile description
355
- #
356
- # @param email [String, nil] Profile email (inherited from organization)
357
- #
358
- # @param icon [String, nil] Profile icon URL
359
- #
360
- # @param inherit_contacts [Boolean, nil] Always false. A profile no longer inherits its organization's contacts. Retained
361
- #
362
- # @param inherit_tcr_brand [Boolean] Whether this profile inherits TCR brand from the organization
363
- #
364
- # @param inherit_tcr_campaign [Boolean] Whether this profile inherits TCR campaign from the organization
365
- #
366
- # @param inherit_templates [Boolean, nil] Always false. A profile no longer inherits its organization's templates. Retaine
367
- #
368
- # @param name [String] Profile name
369
- #
370
- # @param organization_id [String, nil] Parent organization ID
371
- #
372
- # @param sending_phone_number [String, nil] Direct SMS phone number
373
- #
374
- # @param sending_phone_number_profile_id [String, nil] Deprecated. Always null. Sender borrowing is gone: a profile no longer points at
375
- #
376
- # @param sending_whatsapp_number_profile_id [String, nil]
377
- #
378
- # @param short_name [String, nil] Profile short name/abbreviation. 3–11 characters: letters, numbers, and spaces o
379
- #
380
- # @param status [String] Profile setup status: incomplete, pending_review, approved, rejected
381
- #
382
- # @param updated_at [Time, nil] When the profile was last updated
383
- #
384
- # @param waba_id [String, nil] WhatsApp Business Account ID associated with this profile.
385
- #
386
- # @param whatsapp_phone_number [String, nil] Direct WhatsApp phone number
387
-
388
- # @see Sentdm::Models::ProfileListResponse::Data::Profile#billing_contact
389
- class BillingContact < Sentdm::Internal::Type::BaseModel
390
- # @!attribute address
391
- #
392
- # @return [String, nil]
393
- optional :address, String, nil?: true
394
-
395
- # @!attribute email
396
- #
397
- # @return [String, nil]
398
- optional :email, String, nil?: true
399
-
400
- # @!attribute name
401
- #
402
- # @return [String, nil]
403
- optional :name, String, nil?: true
404
-
405
- # @!attribute phone
406
- #
407
- # @return [String, nil]
408
- optional :phone, String, nil?: true
409
-
410
- # @!method initialize(address: nil, email: nil, name: nil, phone: nil)
411
- # Billing contact info returned in profile responses
412
- #
413
- # @param address [String, nil]
414
- # @param email [String, nil]
415
- # @param name [String, nil]
416
- # @param phone [String, nil]
417
- end
418
-
419
- # @see Sentdm::Models::ProfileListResponse::Data::Profile#brand
420
- class Brand < Sentdm::Internal::Type::BaseModel
421
- # @!attribute id
422
- # Unique identifier for the brand
423
- #
424
- # @return [String, nil]
425
- optional :id, String
426
-
427
- # @!attribute business
428
- # Business details and address information
429
- #
430
- # @return [Sentdm::Models::ProfileListResponse::Data::Profile::Brand::Business, nil]
431
- optional :business, -> { Sentdm::Models::ProfileListResponse::Data::Profile::Brand::Business }, nil?: true
432
-
433
- # @!attribute compliance
434
- # Compliance and TCR-related information
435
- #
436
- # @return [Sentdm::Models::ProfileListResponse::Data::Profile::Brand::Compliance, nil]
437
- optional :compliance,
438
- -> { Sentdm::Models::ProfileListResponse::Data::Profile::Brand::Compliance },
439
- nil?: true
440
-
441
- # @!attribute contact
442
- # Contact information for the brand
443
- #
444
- # @return [Sentdm::Models::ProfileListResponse::Data::Profile::Brand::Contact, nil]
445
- optional :contact, -> { Sentdm::Models::ProfileListResponse::Data::Profile::Brand::Contact }, nil?: true
446
-
447
- # @!attribute created_at
448
- # When the brand was created
449
- #
450
- # @return [Time, nil]
451
- optional :created_at, Time
452
-
453
- # @!attribute csp_id
454
- # @deprecated
455
- #
456
- # Deprecated and scheduled for removal. Identifies the Campaign Service Provider
457
- # that registered the brand, which is Sent, so the value is the same for every
458
- # brand and every account. Nothing on your side can act on it and there is no
459
- # replacement. Stop reading it.
460
- #
461
- # @return [String, nil]
462
- optional :csp_id, String, nil?: true
463
-
464
- # @!attribute identity_status
465
- #
466
- # @return [Symbol, Sentdm::Models::ProfileListResponse::Data::Profile::Brand::IdentityStatus, nil]
467
- optional :identity_status,
468
- enum: -> { Sentdm::Models::ProfileListResponse::Data::Profile::Brand::IdentityStatus },
469
- nil?: true
470
-
471
- # @!attribute is_inherited
472
- # Whether this brand is inherited from the parent organization
473
- #
474
- # @return [Boolean, nil]
475
- optional :is_inherited, Sentdm::Internal::Type::Boolean
476
-
477
- # @!attribute status
478
- #
479
- # @return [Symbol, Sentdm::Models::ProfileListResponse::Data::Profile::Brand::Status, nil]
480
- optional :status,
481
- enum: -> { Sentdm::Models::ProfileListResponse::Data::Profile::Brand::Status },
482
- nil?: true
483
-
484
- # @!attribute submitted_at
485
- # When the brand was submitted to TCR
486
- #
487
- # @return [Time, nil]
488
- optional :submitted_at, Time, nil?: true
489
-
490
- # @!attribute submitted_to_tcr
491
- # Whether this brand has been submitted to TCR
492
- #
493
- # @return [Boolean, nil]
494
- optional :submitted_to_tcr, Sentdm::Internal::Type::Boolean
495
-
496
- # @!attribute tcr_brand_id
497
- # TCR brand ID (populated after TCR submission)
498
- #
499
- # @return [String, nil]
500
- optional :tcr_brand_id, String, nil?: true
501
-
502
- # @!attribute universal_ein
503
- # Universal EIN from TCR
504
- #
505
- # @return [String, nil]
506
- optional :universal_ein, String, nil?: true
507
-
508
- # @!attribute updated_at
509
- # When the brand was last updated
510
- #
511
- # @return [Time, nil]
512
- optional :updated_at, Time, nil?: true
513
-
514
- # @!method initialize(id: nil, business: nil, compliance: nil, contact: nil, created_at: nil, csp_id: nil, identity_status: nil, is_inherited: nil, status: nil, submitted_at: nil, submitted_to_tcr: nil, tcr_brand_id: nil, universal_ein: nil, updated_at: nil)
515
- # Some parameter documentations has been truncated, see
516
- # {Sentdm::Models::ProfileListResponse::Data::Profile::Brand} for more details.
517
- #
518
- # Brand response with nested contact, business, and compliance sections — mirrors
519
- # the request structure.
520
- #
521
- # @param id [String] Unique identifier for the brand
522
- #
523
- # @param business [Sentdm::Models::ProfileListResponse::Data::Profile::Brand::Business, nil] Business details and address information
524
- #
525
- # @param compliance [Sentdm::Models::ProfileListResponse::Data::Profile::Brand::Compliance, nil] Compliance and TCR-related information
526
- #
527
- # @param contact [Sentdm::Models::ProfileListResponse::Data::Profile::Brand::Contact, nil] Contact information for the brand
528
- #
529
- # @param created_at [Time] When the brand was created
530
- #
531
- # @param csp_id [String, nil] Deprecated and scheduled for removal. Identifies the Campaign Service Provider t
532
- #
533
- # @param identity_status [Symbol, Sentdm::Models::ProfileListResponse::Data::Profile::Brand::IdentityStatus, nil]
534
- #
535
- # @param is_inherited [Boolean] Whether this brand is inherited from the parent organization
536
- #
537
- # @param status [Symbol, Sentdm::Models::ProfileListResponse::Data::Profile::Brand::Status, nil]
538
- #
539
- # @param submitted_at [Time, nil] When the brand was submitted to TCR
540
- #
541
- # @param submitted_to_tcr [Boolean] Whether this brand has been submitted to TCR
542
- #
543
- # @param tcr_brand_id [String, nil] TCR brand ID (populated after TCR submission)
544
- #
545
- # @param universal_ein [String, nil] Universal EIN from TCR
546
- #
547
- # @param updated_at [Time, nil] When the brand was last updated
548
-
549
- # @see Sentdm::Models::ProfileListResponse::Data::Profile::Brand#business
550
- class Business < Sentdm::Internal::Type::BaseModel
551
- # @!attribute city
552
- # City
553
- #
554
- # @return [String, nil]
555
- optional :city, String, nil?: true
556
-
557
- # @!attribute country
558
- # Country code (e.g., US, CA)
559
- #
560
- # @return [String, nil]
561
- optional :country, String, nil?: true
562
-
563
- # @!attribute country_of_registration
564
- # Country where the business is registered
565
- #
566
- # @return [String, nil]
567
- optional :country_of_registration, String, nil?: true
568
-
569
- # @!attribute entity_type
570
- # Business entity type
571
- #
572
- # @return [String, nil]
573
- optional :entity_type, String, nil?: true
574
-
575
- # @!attribute legal_name
576
- # Legal business name
577
- #
578
- # @return [String, nil]
579
- optional :legal_name, String, nil?: true
580
-
581
- # @!attribute postal_code
582
- # Postal/ZIP code
583
- #
584
- # @return [String, nil]
585
- optional :postal_code, String, nil?: true
586
-
587
- # @!attribute state
588
- # State/province code
589
- #
590
- # @return [String, nil]
591
- optional :state, String, nil?: true
592
-
593
- # @!attribute street
594
- # Street address
595
- #
596
- # @return [String, nil]
597
- optional :street, String, nil?: true
598
-
599
- # @!attribute tax_id
600
- # Tax ID/EIN number
601
- #
602
- # @return [String, nil]
603
- optional :tax_id, String, nil?: true
604
-
605
- # @!attribute tax_id_type
606
- # Type of tax ID (e.g., us_ein, ca_bn)
607
- #
608
- # @return [String, nil]
609
- optional :tax_id_type, String, nil?: true
610
-
611
- # @!attribute url
612
- # Business website URL
613
- #
614
- # @return [String, nil]
615
- optional :url, String, nil?: true
616
-
617
- # @!method initialize(city: nil, country: nil, country_of_registration: nil, entity_type: nil, legal_name: nil, postal_code: nil, state: nil, street: nil, tax_id: nil, tax_id_type: nil, url: nil)
618
- # Business details and address information
619
- #
620
- # @param city [String, nil] City
621
- #
622
- # @param country [String, nil] Country code (e.g., US, CA)
623
- #
624
- # @param country_of_registration [String, nil] Country where the business is registered
625
- #
626
- # @param entity_type [String, nil] Business entity type
627
- #
628
- # @param legal_name [String, nil] Legal business name
629
- #
630
- # @param postal_code [String, nil] Postal/ZIP code
631
- #
632
- # @param state [String, nil] State/province code
633
- #
634
- # @param street [String, nil] Street address
635
- #
636
- # @param tax_id [String, nil] Tax ID/EIN number
637
- #
638
- # @param tax_id_type [String, nil] Type of tax ID (e.g., us_ein, ca_bn)
639
- #
640
- # @param url [String, nil] Business website URL
641
- end
642
-
643
- # @see Sentdm::Models::ProfileListResponse::Data::Profile::Brand#compliance
644
- class Compliance < Sentdm::Internal::Type::BaseModel
645
- # @!attribute brand_relationship
646
- #
647
- # @return [Symbol, Sentdm::Models::TcrBrandRelationship, nil]
648
- optional :brand_relationship, enum: -> { Sentdm::TcrBrandRelationship }, nil?: true
649
-
650
- # @!attribute destination_countries
651
- # List of destination countries for messaging
652
- #
653
- # @return [Array<Sentdm::Models::DestinationCountry>, nil]
654
- optional :destination_countries, -> { Sentdm::Internal::Type::ArrayOf[Sentdm::DestinationCountry] }
655
-
656
- # @!attribute is_tcr_application
657
- # Whether this is a TCR (Campaign Registry) application
658
- #
659
- # @return [Boolean, nil]
660
- optional :is_tcr_application, Sentdm::Internal::Type::Boolean
661
-
662
- # @!attribute notes
663
- # Additional notes about the business or use case
664
- #
665
- # @return [String, nil]
666
- optional :notes, String, nil?: true
667
-
668
- # @!attribute phone_number_prefix
669
- # Phone number prefix for messaging (e.g., "+1")
670
- #
671
- # @return [String, nil]
672
- optional :phone_number_prefix, String, nil?: true
673
-
674
- # @!attribute primary_use_case
675
- # @deprecated
676
- #
677
- # Always null. The brand's free-text primary use case is no longer stored: it
678
- # reached neither TCR nor any decision, and its column is dropped with no
679
- # backfill, because the values were prose and the typed equivalent is the
680
- # campaign's MessagingUseCaseUS.
681
- #
682
- # Retained so existing v3 clients reading primary_use_case keep deserializing.
683
- # Unlike the profile sharing flags, which can answer false truthfully, there is no
684
- # value to report here — the field is present and empty rather than present and
685
- # wrong.
686
- #
687
- # @return [String, nil]
688
- optional :primary_use_case, String, nil?: true
689
-
690
- # @!attribute vertical
691
- #
692
- # @return [Symbol, Sentdm::Models::TcrVertical, nil]
693
- optional :vertical, enum: -> { Sentdm::TcrVertical }, nil?: true
694
-
695
- # @!method initialize(brand_relationship: nil, destination_countries: nil, is_tcr_application: nil, notes: nil, phone_number_prefix: nil, primary_use_case: nil, vertical: nil)
696
- # Some parameter documentations has been truncated, see
697
- # {Sentdm::Models::ProfileListResponse::Data::Profile::Brand::Compliance} for more
698
- # details.
699
- #
700
- # Compliance and TCR-related information
701
- #
702
- # @param brand_relationship [Symbol, Sentdm::Models::TcrBrandRelationship, nil]
703
- #
704
- # @param destination_countries [Array<Sentdm::Models::DestinationCountry>] List of destination countries for messaging
705
- #
706
- # @param is_tcr_application [Boolean] Whether this is a TCR (Campaign Registry) application
707
- #
708
- # @param notes [String, nil] Additional notes about the business or use case
709
- #
710
- # @param phone_number_prefix [String, nil] Phone number prefix for messaging (e.g., "+1")
711
- #
712
- # @param primary_use_case [String, nil] Always null. The brand's free-text primary use case is no longer stored: it reac
713
- #
714
- # @param vertical [Symbol, Sentdm::Models::TcrVertical, nil]
715
- end
716
-
717
- # @see Sentdm::Models::ProfileListResponse::Data::Profile::Brand#contact
718
- class Contact < Sentdm::Internal::Type::BaseModel
719
- # @!attribute business_name
720
- # Business/brand name
721
- #
722
- # @return [String, nil]
723
- optional :business_name, String, nil?: true
724
-
725
- # @!attribute email
726
- # Contact email address
727
- #
728
- # @return [String, nil]
729
- optional :email, String, nil?: true
730
-
731
- # @!attribute name
732
- # Primary contact name
733
- #
734
- # @return [String, nil]
735
- optional :name, String
736
-
737
- # @!attribute phone
738
- # Contact phone number in E.164 format
739
- #
740
- # @return [String, nil]
741
- optional :phone, String, nil?: true
742
-
743
- # @!attribute phone_country_code
744
- # Contact phone country code (e.g., "1" for US)
745
- #
746
- # @return [String, nil]
747
- optional :phone_country_code, String, nil?: true
748
-
749
- # @!attribute role
750
- # Contact's role in the business
751
- #
752
- # @return [String, nil]
753
- optional :role, String, nil?: true
754
-
755
- # @!method initialize(business_name: nil, email: nil, name: nil, phone: nil, phone_country_code: nil, role: nil)
756
- # Contact information for the brand
757
- #
758
- # @param business_name [String, nil] Business/brand name
759
- #
760
- # @param email [String, nil] Contact email address
761
- #
762
- # @param name [String] Primary contact name
763
- #
764
- # @param phone [String, nil] Contact phone number in E.164 format
765
- #
766
- # @param phone_country_code [String, nil] Contact phone country code (e.g., "1" for US)
767
- #
768
- # @param role [String, nil] Contact's role in the business
769
- end
770
-
771
- # @see Sentdm::Models::ProfileListResponse::Data::Profile::Brand#identity_status
772
- module IdentityStatus
773
- extend Sentdm::Internal::Type::Enum
774
-
775
- SELF_DECLARED = :SELF_DECLARED
776
- UNVERIFIED = :UNVERIFIED
777
- VERIFIED = :VERIFIED
778
- VETTED_VERIFIED = :VETTED_VERIFIED
779
-
780
- # @!method self.values
781
- # @return [Array<Symbol>]
782
- end
783
-
784
- # @see Sentdm::Models::ProfileListResponse::Data::Profile::Brand#status
785
- module Status
786
- extend Sentdm::Internal::Type::Enum
787
-
788
- ACTIVE = :ACTIVE
789
- INACTIVE = :INACTIVE
790
- SUSPENDED = :SUSPENDED
791
-
792
- # @!method self.values
793
- # @return [Array<Symbol>]
794
- end
795
- end
796
- end
797
- end
798
-
799
- # @see Sentdm::Models::ProfileListResponse#error
800
- class Error < Sentdm::Internal::Type::BaseModel
801
- # @!attribute code
802
- # Machine-readable error code (e.g., "RESOURCE_001")
803
- #
804
- # @return [String, nil]
805
- optional :code, String
806
-
807
- # @!attribute details
808
- # Additional validation error details (field-level errors)
809
- #
810
- # @return [Hash{Symbol=>Array<String>}, nil]
811
- optional :details, Sentdm::Internal::Type::HashOf[Sentdm::Internal::Type::ArrayOf[String]], nil?: true
812
-
813
- # @!attribute doc_url
814
- # URL to documentation about this error
815
- #
816
- # @return [String, nil]
817
- optional :doc_url, String, nil?: true
818
-
819
- # @!attribute message
820
- # Human-readable error message
821
- #
822
- # @return [String, nil]
823
- optional :message, String
824
-
825
- # @!method initialize(code: nil, details: nil, doc_url: nil, message: nil)
826
- # Error information
827
- #
828
- # @param code [String] Machine-readable error code (e.g., "RESOURCE_001")
829
- #
830
- # @param details [Hash{Symbol=>Array<String>}, nil] Additional validation error details (field-level errors)
831
- #
832
- # @param doc_url [String, nil] URL to documentation about this error
833
- #
834
- # @param message [String] Human-readable error message
835
- end
836
-
837
- # @see Sentdm::Models::ProfileListResponse#meta
838
- class Meta < Sentdm::Internal::Type::BaseModel
839
- # @!attribute request_id
840
- # Unique identifier for this request (for tracing and support)
841
- #
842
- # @return [String, nil]
843
- optional :request_id, String
844
-
845
- # @!attribute timestamp
846
- # Server timestamp when the response was generated
847
- #
848
- # @return [Time, nil]
849
- optional :timestamp, Time
850
-
851
- # @!attribute version
852
- # API version used for this request
853
- #
854
- # @return [String, nil]
855
- optional :version, String
856
-
857
- # @!method initialize(request_id: nil, timestamp: nil, version: nil)
858
- # Request and response metadata
859
- #
860
- # @param request_id [String] Unique identifier for this request (for tracing and support)
861
- #
862
- # @param timestamp [Time] Server timestamp when the response was generated
863
- #
864
- # @param version [String] API version used for this request
61
+ # @param profiles [Array<Sentdm::Models::ProfileDetail>] The profiles on this page.
865
62
  end
866
63
  end
867
64
  end