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