sentdm 0.29.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 (265) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +11 -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/me_retrieve_response.rb +12 -242
  25. data/lib/sentdm/models/message_retrieve_activities_response.rb +9 -159
  26. data/lib/sentdm/models/message_retrieve_status_response.rb +6 -74
  27. data/lib/sentdm/models/message_send_response.rb +6 -74
  28. data/lib/sentdm/models/mutation_request.rb +20 -0
  29. data/lib/sentdm/models/number_lookup_response.rb +6 -74
  30. data/lib/sentdm/models/pagination_meta.rb +84 -0
  31. data/lib/sentdm/models/payment_details.rb +40 -0
  32. data/lib/sentdm/models/profile_complete_response.rb +6 -74
  33. data/lib/sentdm/models/profile_create_params.rb +9 -345
  34. data/lib/sentdm/models/profile_delete_params.rb +2 -16
  35. data/lib/sentdm/models/profile_detail.rb +650 -0
  36. data/lib/sentdm/models/profile_list_response.rb +12 -815
  37. data/lib/sentdm/models/profile_settings.rb +85 -0
  38. data/lib/sentdm/models/profile_update_params.rb +9 -345
  39. data/lib/sentdm/models/profiles/api_response_of_brand_campaign.rb +45 -0
  40. data/lib/sentdm/models/profiles/api_response_of_list_of_brand_campaign.rb +45 -0
  41. data/lib/sentdm/models/profiles/brand_campaign.rb +247 -0
  42. data/lib/sentdm/models/profiles/campaign_create_params.rb +3 -156
  43. data/lib/sentdm/models/profiles/campaign_data.rb +136 -0
  44. data/lib/sentdm/models/profiles/campaign_delete_params.rb +2 -17
  45. data/lib/sentdm/models/profiles/campaign_update_params.rb +3 -156
  46. data/lib/sentdm/models/profiles/campaign_use_case.rb +71 -0
  47. data/lib/sentdm/models/profiles/campaign_use_case_data.rb +29 -0
  48. data/lib/sentdm/models/template.rb +102 -0
  49. data/lib/sentdm/models/template_list_response.rb +12 -258
  50. data/lib/sentdm/models/user_list_response.rb +12 -249
  51. data/lib/sentdm/models/user_remove_params.rb +2 -16
  52. data/lib/sentdm/models/user_response.rb +94 -0
  53. data/lib/sentdm/models/webhook_event_type.rb +45 -0
  54. data/lib/sentdm/models/webhook_list_event_types_response.rb +12 -203
  55. data/lib/sentdm/models/webhook_list_events_response.rb +9 -157
  56. data/lib/sentdm/models/webhook_list_response.rb +12 -276
  57. data/lib/sentdm/models/webhook_response.rb +120 -0
  58. data/lib/sentdm/models/webhook_rotate_secret_params.rb +2 -17
  59. data/lib/sentdm/models/webhook_rotate_secret_response.rb +6 -74
  60. data/lib/sentdm/models/webhook_test_response.rb +6 -74
  61. data/lib/sentdm/models.rb +52 -0
  62. data/lib/sentdm/resources/contacts.rb +8 -8
  63. data/lib/sentdm/resources/conversations.rb +4 -4
  64. data/lib/sentdm/resources/profiles/campaigns.rb +8 -8
  65. data/lib/sentdm/resources/profiles.rb +12 -12
  66. data/lib/sentdm/resources/templates.rb +6 -6
  67. data/lib/sentdm/resources/users.rb +6 -6
  68. data/lib/sentdm/resources/webhooks.rb +8 -8
  69. data/lib/sentdm/version.rb +1 -1
  70. data/lib/sentdm.rb +32 -22
  71. data/rbi/sentdm/models/api_meta.rbi +55 -0
  72. data/rbi/sentdm/models/api_response_of_contact.rbi +74 -0
  73. data/rbi/sentdm/models/api_response_of_contact_message_summary.rbi +79 -0
  74. data/rbi/sentdm/models/api_response_of_conversation_messages_list.rbi +79 -0
  75. data/rbi/sentdm/models/api_response_of_profile_detail.rbi +74 -0
  76. data/rbi/sentdm/models/api_response_of_user.rbi +74 -0
  77. data/rbi/sentdm/models/api_response_template.rbi +74 -0
  78. data/rbi/sentdm/models/api_response_webhook.rbi +74 -0
  79. data/rbi/sentdm/models/billing_contact_info.rbi +65 -0
  80. data/rbi/sentdm/models/brand_business_info.rbi +162 -0
  81. data/rbi/sentdm/models/brand_compliance_info.rbi +76 -0
  82. data/rbi/sentdm/models/brand_contact_info.rbi +78 -0
  83. data/rbi/sentdm/models/brands_brand_data.rbi +65 -0
  84. data/rbi/sentdm/models/contact_delete_params.rbi +2 -19
  85. data/rbi/sentdm/models/contact_list_response.rbi +16 -522
  86. data/rbi/sentdm/models/contact_message_summary.rbi +144 -0
  87. data/rbi/sentdm/models/contact_response.rbi +200 -0
  88. data/rbi/sentdm/models/conversation_messages_list.rbi +419 -0
  89. data/rbi/sentdm/models/error_detail.rbi +66 -0
  90. data/rbi/sentdm/models/me_retrieve_response.rbi +16 -367
  91. data/rbi/sentdm/models/message_retrieve_activities_response.rbi +12 -325
  92. data/rbi/sentdm/models/message_retrieve_status_response.rbi +8 -148
  93. data/rbi/sentdm/models/message_send_response.rbi +8 -135
  94. data/rbi/sentdm/models/mutation_request.rbi +32 -0
  95. data/rbi/sentdm/models/number_lookup_response.rbi +8 -135
  96. data/rbi/sentdm/models/pagination_meta.rbi +135 -0
  97. data/rbi/sentdm/models/payment_details.rbi +56 -0
  98. data/rbi/sentdm/models/profile_complete_response.rbi +8 -137
  99. data/rbi/sentdm/models/profile_create_params.rbi +12 -546
  100. data/rbi/sentdm/models/profile_delete_params.rbi +2 -19
  101. data/rbi/sentdm/models/profile_detail.rbi +918 -0
  102. data/rbi/sentdm/models/profile_list_response.rbi +16 -1347
  103. data/rbi/sentdm/models/profile_settings.rbi +102 -0
  104. data/rbi/sentdm/models/profile_update_params.rbi +12 -546
  105. data/rbi/sentdm/models/profiles/api_response_of_brand_campaign.rbi +81 -0
  106. data/rbi/sentdm/models/profiles/api_response_of_list_of_brand_campaign.rbi +76 -0
  107. data/rbi/sentdm/models/profiles/brand_campaign.rbi +299 -0
  108. data/rbi/sentdm/models/profiles/campaign_create_params.rbi +4 -218
  109. data/rbi/sentdm/models/profiles/campaign_data.rbi +158 -0
  110. data/rbi/sentdm/models/profiles/campaign_delete_params.rbi +1 -14
  111. data/rbi/sentdm/models/profiles/campaign_update_params.rbi +4 -218
  112. data/rbi/sentdm/models/profiles/campaign_use_case.rbi +110 -0
  113. data/rbi/sentdm/models/profiles/campaign_use_case_data.rbi +51 -0
  114. data/rbi/sentdm/models/template.rbi +139 -0
  115. data/rbi/sentdm/models/template_list_response.rbi +16 -464
  116. data/rbi/sentdm/models/user_list_response.rbi +16 -444
  117. data/rbi/sentdm/models/user_remove_params.rbi +2 -19
  118. data/rbi/sentdm/models/user_response.rbi +131 -0
  119. data/rbi/sentdm/models/webhook_event_type.rbi +74 -0
  120. data/rbi/sentdm/models/webhook_list_event_types_response.rbi +16 -414
  121. data/rbi/sentdm/models/webhook_list_events_response.rbi +12 -314
  122. data/rbi/sentdm/models/webhook_list_response.rbi +16 -475
  123. data/rbi/sentdm/models/webhook_response.rbi +153 -0
  124. data/rbi/sentdm/models/webhook_rotate_secret_params.rbi +1 -14
  125. data/rbi/sentdm/models/webhook_rotate_secret_response.rbi +8 -148
  126. data/rbi/sentdm/models/webhook_test_response.rbi +8 -135
  127. data/rbi/sentdm/models.rbi +54 -0
  128. data/rbi/sentdm/resources/contacts.rbi +4 -4
  129. data/rbi/sentdm/resources/conversations.rbi +2 -2
  130. data/rbi/sentdm/resources/profiles/campaigns.rbi +5 -5
  131. data/rbi/sentdm/resources/profiles.rbi +9 -13
  132. data/rbi/sentdm/resources/templates.rbi +3 -3
  133. data/rbi/sentdm/resources/users.rbi +3 -3
  134. data/rbi/sentdm/resources/webhooks.rbi +4 -4
  135. data/sig/sentdm/models/api_meta.rbs +27 -0
  136. data/sig/sentdm/models/api_response_of_contact.rbs +39 -0
  137. data/sig/sentdm/models/api_response_of_contact_message_summary.rbs +39 -0
  138. data/sig/sentdm/models/api_response_of_conversation_messages_list.rbs +39 -0
  139. data/sig/sentdm/models/api_response_of_profile_detail.rbs +39 -0
  140. data/sig/sentdm/models/api_response_of_user.rbs +39 -0
  141. data/sig/sentdm/models/api_response_template.rbs +39 -0
  142. data/sig/sentdm/models/api_response_webhook.rbs +39 -0
  143. data/sig/sentdm/models/billing_contact_info.rbs +30 -0
  144. data/sig/sentdm/models/brand_business_info.rbs +89 -0
  145. data/sig/sentdm/models/brand_compliance_info.rbs +45 -0
  146. data/sig/sentdm/models/brand_contact_info.rbs +45 -0
  147. data/sig/sentdm/models/brands_brand_data.rbs +30 -0
  148. data/sig/sentdm/models/contact_delete_params.rbs +6 -10
  149. data/sig/sentdm/models/contact_list_response.rbs +20 -263
  150. data/sig/sentdm/models/contact_message_summary.rbs +84 -0
  151. data/sig/sentdm/models/contact_response.rbs +118 -0
  152. data/sig/sentdm/models/conversation_messages_list.rbs +240 -0
  153. data/sig/sentdm/models/error_detail.rbs +39 -0
  154. data/sig/sentdm/models/me_retrieve_response.rbs +18 -176
  155. data/sig/sentdm/models/message_retrieve_activities_response.rbs +14 -142
  156. data/sig/sentdm/models/message_retrieve_status_response.rbs +9 -71
  157. data/sig/sentdm/models/message_send_response.rbs +9 -71
  158. data/sig/sentdm/models/mutation_request.rbs +15 -0
  159. data/sig/sentdm/models/number_lookup_response.rbs +9 -71
  160. data/sig/sentdm/models/pagination_meta.rbs +67 -0
  161. data/sig/sentdm/models/payment_details.rbs +30 -0
  162. data/sig/sentdm/models/profile_complete_response.rbs +9 -71
  163. data/sig/sentdm/models/profile_create_params.rbs +12 -263
  164. data/sig/sentdm/models/profile_delete_params.rbs +6 -10
  165. data/sig/sentdm/models/profile_detail.rbs +461 -0
  166. data/sig/sentdm/models/profile_list_response.rbs +20 -606
  167. data/sig/sentdm/models/profile_settings.rbs +50 -0
  168. data/sig/sentdm/models/profile_update_params.rbs +12 -263
  169. data/sig/sentdm/models/profiles/api_response_of_brand_campaign.rbs +41 -0
  170. data/sig/sentdm/models/profiles/api_response_of_list_of_brand_campaign.rbs +41 -0
  171. data/sig/sentdm/models/profiles/brand_campaign.rbs +194 -0
  172. data/sig/sentdm/models/profiles/campaign_create_params.rbs +4 -108
  173. data/sig/sentdm/models/profiles/campaign_data.rbs +87 -0
  174. data/sig/sentdm/models/profiles/campaign_delete_params.rbs +8 -15
  175. data/sig/sentdm/models/profiles/campaign_update_params.rbs +4 -108
  176. data/sig/sentdm/models/profiles/campaign_use_case.rbs +66 -0
  177. data/sig/sentdm/models/profiles/campaign_use_case_data.rbs +27 -0
  178. data/sig/sentdm/models/template.rbs +84 -0
  179. data/sig/sentdm/models/template_list_response.rbs +19 -230
  180. data/sig/sentdm/models/user_list_response.rbs +20 -224
  181. data/sig/sentdm/models/user_remove_params.rbs +6 -10
  182. data/sig/sentdm/models/user_response.rbs +79 -0
  183. data/sig/sentdm/models/webhook_event_type.rbs +51 -0
  184. data/sig/sentdm/models/webhook_list_event_types_response.rbs +20 -196
  185. data/sig/sentdm/models/webhook_list_events_response.rbs +14 -142
  186. data/sig/sentdm/models/webhook_list_response.rbs +20 -255
  187. data/sig/sentdm/models/webhook_response.rbs +110 -0
  188. data/sig/sentdm/models/webhook_rotate_secret_params.rbs +8 -17
  189. data/sig/sentdm/models/webhook_rotate_secret_response.rbs +9 -71
  190. data/sig/sentdm/models/webhook_test_response.rbs +9 -71
  191. data/sig/sentdm/models.rbs +52 -0
  192. data/sig/sentdm/resources/contacts.rbs +4 -4
  193. data/sig/sentdm/resources/conversations.rbs +2 -2
  194. data/sig/sentdm/resources/profiles/campaigns.rbs +5 -5
  195. data/sig/sentdm/resources/profiles.rbs +9 -9
  196. data/sig/sentdm/resources/templates.rbs +3 -3
  197. data/sig/sentdm/resources/users.rbs +3 -3
  198. data/sig/sentdm/resources/webhooks.rbs +4 -4
  199. metadata +98 -68
  200. data/lib/sentdm/models/contact_create_response.rb +0 -249
  201. data/lib/sentdm/models/contact_retrieve_message_summary_response.rb +0 -186
  202. data/lib/sentdm/models/contact_retrieve_response.rb +0 -249
  203. data/lib/sentdm/models/contact_update_response.rb +0 -249
  204. data/lib/sentdm/models/conversation_list_messages_response.rb +0 -436
  205. data/lib/sentdm/models/conversation_list_response.rb +0 -433
  206. data/lib/sentdm/models/profile_create_response.rb +0 -760
  207. data/lib/sentdm/models/profile_retrieve_response.rb +0 -762
  208. data/lib/sentdm/models/profile_update_response.rb +0 -760
  209. data/lib/sentdm/models/profiles/campaign_create_response.rb +0 -420
  210. data/lib/sentdm/models/profiles/campaign_list_response.rb +0 -421
  211. data/lib/sentdm/models/profiles/campaign_update_response.rb +0 -420
  212. data/lib/sentdm/models/template_create_response.rb +0 -209
  213. data/lib/sentdm/models/template_retrieve_response.rb +0 -209
  214. data/lib/sentdm/models/template_update_response.rb +0 -209
  215. data/lib/sentdm/models/user_invite_response.rb +0 -201
  216. data/lib/sentdm/models/user_retrieve_response.rb +0 -201
  217. data/lib/sentdm/models/user_update_role_response.rb +0 -201
  218. data/lib/sentdm/models/webhook_create_response.rb +0 -229
  219. data/lib/sentdm/models/webhook_retrieve_response.rb +0 -229
  220. data/lib/sentdm/models/webhook_toggle_status_response.rb +0 -229
  221. data/lib/sentdm/models/webhook_update_response.rb +0 -229
  222. data/rbi/sentdm/models/contact_create_response.rbi +0 -407
  223. data/rbi/sentdm/models/contact_retrieve_message_summary_response.rbi +0 -397
  224. data/rbi/sentdm/models/contact_retrieve_response.rbi +0 -409
  225. data/rbi/sentdm/models/contact_update_response.rbi +0 -407
  226. data/rbi/sentdm/models/conversation_list_messages_response.rbi +0 -843
  227. data/rbi/sentdm/models/conversation_list_response.rbi +0 -819
  228. data/rbi/sentdm/models/profile_create_response.rbi +0 -1226
  229. data/rbi/sentdm/models/profile_retrieve_response.rbi +0 -1230
  230. data/rbi/sentdm/models/profile_update_response.rbi +0 -1226
  231. data/rbi/sentdm/models/profiles/campaign_create_response.rbi +0 -674
  232. data/rbi/sentdm/models/profiles/campaign_list_response.rbi +0 -667
  233. data/rbi/sentdm/models/profiles/campaign_update_response.rbi +0 -674
  234. data/rbi/sentdm/models/template_create_response.rbi +0 -349
  235. data/rbi/sentdm/models/template_retrieve_response.rbi +0 -355
  236. data/rbi/sentdm/models/template_update_response.rbi +0 -349
  237. data/rbi/sentdm/models/user_invite_response.rbi +0 -336
  238. data/rbi/sentdm/models/user_retrieve_response.rbi +0 -336
  239. data/rbi/sentdm/models/user_update_role_response.rbi +0 -341
  240. data/rbi/sentdm/models/webhook_create_response.rbi +0 -361
  241. data/rbi/sentdm/models/webhook_retrieve_response.rbi +0 -363
  242. data/rbi/sentdm/models/webhook_toggle_status_response.rbi +0 -379
  243. data/rbi/sentdm/models/webhook_update_response.rbi +0 -361
  244. data/sig/sentdm/models/contact_create_response.rbs +0 -216
  245. data/sig/sentdm/models/contact_retrieve_message_summary_response.rbs +0 -182
  246. data/sig/sentdm/models/contact_retrieve_response.rbs +0 -216
  247. data/sig/sentdm/models/contact_update_response.rbs +0 -216
  248. data/sig/sentdm/models/conversation_list_messages_response.rbs +0 -404
  249. data/sig/sentdm/models/conversation_list_response.rbs +0 -404
  250. data/sig/sentdm/models/profile_create_response.rbs +0 -559
  251. data/sig/sentdm/models/profile_retrieve_response.rbs +0 -559
  252. data/sig/sentdm/models/profile_update_response.rbs +0 -559
  253. data/sig/sentdm/models/profiles/campaign_create_response.rbs +0 -357
  254. data/sig/sentdm/models/profiles/campaign_list_response.rbs +0 -357
  255. data/sig/sentdm/models/profiles/campaign_update_response.rbs +0 -357
  256. data/sig/sentdm/models/template_create_response.rbs +0 -182
  257. data/sig/sentdm/models/template_retrieve_response.rbs +0 -182
  258. data/sig/sentdm/models/template_update_response.rbs +0 -182
  259. data/sig/sentdm/models/user_invite_response.rbs +0 -177
  260. data/sig/sentdm/models/user_retrieve_response.rbs +0 -177
  261. data/sig/sentdm/models/user_update_role_response.rbs +0 -177
  262. data/sig/sentdm/models/webhook_create_response.rbs +0 -208
  263. data/sig/sentdm/models/webhook_retrieve_response.rbs +0 -208
  264. data/sig/sentdm/models/webhook_toggle_status_response.rbs +0 -208
  265. data/sig/sentdm/models/webhook_update_response.rbs +0 -208
@@ -20,21 +20,17 @@ module Sentdm
20
20
  attr_writer :data
21
21
 
22
22
  # Error information
23
- sig { returns(T.nilable(Sentdm::Models::UserListResponse::Error)) }
23
+ sig { returns(T.nilable(Sentdm::ErrorDetail)) }
24
24
  attr_reader :error
25
25
 
26
- sig do
27
- params(
28
- error: T.nilable(Sentdm::Models::UserListResponse::Error::OrHash)
29
- ).void
30
- end
26
+ sig { params(error: T.nilable(Sentdm::ErrorDetail::OrHash)).void }
31
27
  attr_writer :error
32
28
 
33
29
  # Request and response metadata
34
- sig { returns(T.nilable(Sentdm::Models::UserListResponse::Meta)) }
30
+ sig { returns(T.nilable(Sentdm::APIMeta)) }
35
31
  attr_reader :meta
36
32
 
37
- sig { params(meta: Sentdm::Models::UserListResponse::Meta::OrHash).void }
33
+ sig { params(meta: Sentdm::APIMeta::OrHash).void }
38
34
  attr_writer :meta
39
35
 
40
36
  # Indicates whether the request was successful
@@ -48,8 +44,8 @@ module Sentdm
48
44
  sig do
49
45
  params(
50
46
  data: T.nilable(Sentdm::Models::UserListResponse::Data::OrHash),
51
- error: T.nilable(Sentdm::Models::UserListResponse::Error::OrHash),
52
- meta: Sentdm::Models::UserListResponse::Meta::OrHash,
47
+ error: T.nilable(Sentdm::ErrorDetail::OrHash),
48
+ meta: Sentdm::APIMeta::OrHash,
53
49
  success: T::Boolean
54
50
  ).returns(T.attached_class)
55
51
  end
@@ -69,8 +65,8 @@ module Sentdm
69
65
  override.returns(
70
66
  {
71
67
  data: T.nilable(Sentdm::Models::UserListResponse::Data),
72
- error: T.nilable(Sentdm::Models::UserListResponse::Error),
73
- meta: Sentdm::Models::UserListResponse::Meta,
68
+ error: T.nilable(Sentdm::ErrorDetail),
69
+ meta: Sentdm::APIMeta,
74
70
  success: T::Boolean
75
71
  }
76
72
  )
@@ -88,42 +84,24 @@ module Sentdm
88
84
  end
89
85
 
90
86
  # Pagination metadata for list responses
91
- sig do
92
- returns(T.nilable(Sentdm::Models::UserListResponse::Data::Pagination))
93
- end
87
+ sig { returns(T.nilable(Sentdm::PaginationMeta)) }
94
88
  attr_reader :pagination
95
89
 
96
- sig do
97
- params(
98
- pagination:
99
- Sentdm::Models::UserListResponse::Data::Pagination::OrHash
100
- ).void
101
- end
90
+ sig { params(pagination: Sentdm::PaginationMeta::OrHash).void }
102
91
  attr_writer :pagination
103
92
 
104
93
  # The users on this page.
105
- sig do
106
- returns(
107
- T.nilable(T::Array[Sentdm::Models::UserListResponse::Data::User])
108
- )
109
- end
94
+ sig { returns(T.nilable(T::Array[Sentdm::UserResponse])) }
110
95
  attr_reader :users
111
96
 
112
- sig do
113
- params(
114
- users:
115
- T::Array[Sentdm::Models::UserListResponse::Data::User::OrHash]
116
- ).void
117
- end
97
+ sig { params(users: T::Array[Sentdm::UserResponse::OrHash]).void }
118
98
  attr_writer :users
119
99
 
120
100
  # The users in the organization.
121
101
  sig do
122
102
  params(
123
- pagination:
124
- Sentdm::Models::UserListResponse::Data::Pagination::OrHash,
125
- users:
126
- T::Array[Sentdm::Models::UserListResponse::Data::User::OrHash]
103
+ pagination: Sentdm::PaginationMeta::OrHash,
104
+ users: T::Array[Sentdm::UserResponse::OrHash]
127
105
  ).returns(T.attached_class)
128
106
  end
129
107
  def self.new(
@@ -137,420 +115,14 @@ module Sentdm
137
115
  sig do
138
116
  override.returns(
139
117
  {
140
- pagination: Sentdm::Models::UserListResponse::Data::Pagination,
141
- users: T::Array[Sentdm::Models::UserListResponse::Data::User]
142
- }
143
- )
144
- end
145
- def to_hash
146
- end
147
-
148
- class Pagination < Sentdm::Internal::Type::BaseModel
149
- OrHash =
150
- T.type_alias do
151
- T.any(
152
- Sentdm::Models::UserListResponse::Data::Pagination,
153
- Sentdm::Internal::AnyHash
154
- )
155
- end
156
-
157
- # Cursor-based pagination. Never populated — see Cursors.
158
- sig do
159
- returns(
160
- T.nilable(
161
- Sentdm::Models::UserListResponse::Data::Pagination::Cursors
162
- )
163
- )
164
- end
165
- attr_reader :cursors
166
-
167
- sig do
168
- params(
169
- cursors:
170
- T.nilable(
171
- Sentdm::Models::UserListResponse::Data::Pagination::Cursors::OrHash
172
- )
173
- ).void
174
- end
175
- attr_writer :cursors
176
-
177
- # Whether there are more pages after this one
178
- sig { returns(T.nilable(T::Boolean)) }
179
- attr_reader :has_more
180
-
181
- sig { params(has_more: T::Boolean).void }
182
- attr_writer :has_more
183
-
184
- # Current page number (1-indexed)
185
- sig { returns(T.nilable(Integer)) }
186
- attr_reader :page
187
-
188
- sig { params(page: Integer).void }
189
- attr_writer :page
190
-
191
- # Number of items per page
192
- sig { returns(T.nilable(Integer)) }
193
- attr_reader :page_size
194
-
195
- sig { params(page_size: Integer).void }
196
- attr_writer :page_size
197
-
198
- # Total number of items across all pages
199
- sig { returns(T.nilable(Integer)) }
200
- attr_reader :total_count
201
-
202
- sig { params(total_count: Integer).void }
203
- attr_writer :total_count
204
-
205
- # Total number of pages
206
- sig { returns(T.nilable(Integer)) }
207
- attr_reader :total_pages
208
-
209
- sig { params(total_pages: Integer).void }
210
- attr_writer :total_pages
211
-
212
- # Pagination metadata for list responses
213
- sig do
214
- params(
215
- cursors:
216
- T.nilable(
217
- Sentdm::Models::UserListResponse::Data::Pagination::Cursors::OrHash
218
- ),
219
- has_more: T::Boolean,
220
- page: Integer,
221
- page_size: Integer,
222
- total_count: Integer,
223
- total_pages: Integer
224
- ).returns(T.attached_class)
225
- end
226
- def self.new(
227
- # Cursor-based pagination. Never populated — see Cursors.
228
- cursors: nil,
229
- # Whether there are more pages after this one
230
- has_more: nil,
231
- # Current page number (1-indexed)
232
- page: nil,
233
- # Number of items per page
234
- page_size: nil,
235
- # Total number of items across all pages
236
- total_count: nil,
237
- # Total number of pages
238
- total_pages: nil
239
- )
240
- end
241
-
242
- sig do
243
- override.returns(
244
- {
245
- cursors:
246
- T.nilable(
247
- Sentdm::Models::UserListResponse::Data::Pagination::Cursors
248
- ),
249
- has_more: T::Boolean,
250
- page: Integer,
251
- page_size: Integer,
252
- total_count: Integer,
253
- total_pages: Integer
254
- }
255
- )
256
- end
257
- def to_hash
258
- end
259
-
260
- class Cursors < Sentdm::Internal::Type::BaseModel
261
- OrHash =
262
- T.type_alias do
263
- T.any(
264
- Sentdm::Models::UserListResponse::Data::Pagination::Cursors,
265
- Sentdm::Internal::AnyHash
266
- )
267
- end
268
-
269
- # Cursor to fetch the next page.
270
- sig { returns(T.nilable(String)) }
271
- attr_accessor :after
272
-
273
- # Cursor to fetch the previous page.
274
- sig { returns(T.nilable(String)) }
275
- attr_accessor :before
276
-
277
- # Cursor-based pagination. Never populated — see Cursors.
278
- sig do
279
- params(
280
- after: T.nilable(String),
281
- before: T.nilable(String)
282
- ).returns(T.attached_class)
283
- end
284
- def self.new(
285
- # Cursor to fetch the next page.
286
- after: nil,
287
- # Cursor to fetch the previous page.
288
- before: nil
289
- )
290
- end
291
-
292
- sig do
293
- override.returns(
294
- { after: T.nilable(String), before: T.nilable(String) }
295
- )
296
- end
297
- def to_hash
298
- end
299
- end
300
- end
301
-
302
- class User < Sentdm::Internal::Type::BaseModel
303
- OrHash =
304
- T.type_alias do
305
- T.any(
306
- Sentdm::Models::UserListResponse::Data::User,
307
- Sentdm::Internal::AnyHash
308
- )
309
- end
310
-
311
- # User unique identifier
312
- sig { returns(T.nilable(String)) }
313
- attr_reader :id
314
-
315
- sig { params(id: String).void }
316
- attr_writer :id
317
-
318
- # When the user was added to the organization
319
- sig { returns(T.nilable(Time)) }
320
- attr_reader :created_at
321
-
322
- sig { params(created_at: Time).void }
323
- attr_writer :created_at
324
-
325
- # Which customer owns this — the key's own, or the profile named in x-profile-id.
326
- # Says whose resource this is, which the resource's own id does not.
327
- sig { returns(T.nilable(String)) }
328
- attr_reader :customer_id
329
-
330
- sig { params(customer_id: String).void }
331
- attr_writer :customer_id
332
-
333
- # User email address
334
- sig { returns(T.nilable(String)) }
335
- attr_reader :email
336
-
337
- sig { params(email: String).void }
338
- attr_writer :email
339
-
340
- # When the user was invited
341
- sig { returns(T.nilable(Time)) }
342
- attr_accessor :invited_at
343
-
344
- # When the user last logged in
345
- sig { returns(T.nilable(Time)) }
346
- attr_accessor :last_login_at
347
-
348
- # User full name
349
- sig { returns(T.nilable(String)) }
350
- attr_reader :name
351
-
352
- sig { params(name: String).void }
353
- attr_writer :name
354
-
355
- # User role in the organization: admin, billing, developer
356
- sig { returns(T.nilable(String)) }
357
- attr_reader :role
358
-
359
- sig { params(role: String).void }
360
- attr_writer :role
361
-
362
- # User status: active, invited, suspended, rejected
363
- sig { returns(T.nilable(String)) }
364
- attr_reader :status
365
-
366
- sig { params(status: String).void }
367
- attr_writer :status
368
-
369
- # When the user record was last updated
370
- sig { returns(T.nilable(Time)) }
371
- attr_accessor :updated_at
372
-
373
- # User response for v3 API
374
- sig do
375
- params(
376
- id: String,
377
- created_at: Time,
378
- customer_id: String,
379
- email: String,
380
- invited_at: T.nilable(Time),
381
- last_login_at: T.nilable(Time),
382
- name: String,
383
- role: String,
384
- status: String,
385
- updated_at: T.nilable(Time)
386
- ).returns(T.attached_class)
387
- end
388
- def self.new(
389
- # User unique identifier
390
- id: nil,
391
- # When the user was added to the organization
392
- created_at: nil,
393
- # Which customer owns this — the key's own, or the profile named in x-profile-id.
394
- # Says whose resource this is, which the resource's own id does not.
395
- customer_id: nil,
396
- # User email address
397
- email: nil,
398
- # When the user was invited
399
- invited_at: nil,
400
- # When the user last logged in
401
- last_login_at: nil,
402
- # User full name
403
- name: nil,
404
- # User role in the organization: admin, billing, developer
405
- role: nil,
406
- # User status: active, invited, suspended, rejected
407
- status: nil,
408
- # When the user record was last updated
409
- updated_at: nil
410
- )
411
- end
412
-
413
- sig do
414
- override.returns(
415
- {
416
- id: String,
417
- created_at: Time,
418
- customer_id: String,
419
- email: String,
420
- invited_at: T.nilable(Time),
421
- last_login_at: T.nilable(Time),
422
- name: String,
423
- role: String,
424
- status: String,
425
- updated_at: T.nilable(Time)
426
- }
427
- )
428
- end
429
- def to_hash
430
- end
431
- end
432
- end
433
-
434
- class Error < Sentdm::Internal::Type::BaseModel
435
- OrHash =
436
- T.type_alias do
437
- T.any(
438
- Sentdm::Models::UserListResponse::Error,
439
- Sentdm::Internal::AnyHash
440
- )
441
- end
442
-
443
- # Machine-readable error code (e.g., "RESOURCE_001")
444
- sig { returns(T.nilable(String)) }
445
- attr_reader :code
446
-
447
- sig { params(code: String).void }
448
- attr_writer :code
449
-
450
- # Additional validation error details (field-level errors)
451
- sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) }
452
- attr_accessor :details
453
-
454
- # URL to documentation about this error
455
- sig { returns(T.nilable(String)) }
456
- attr_accessor :doc_url
457
-
458
- # Human-readable error message
459
- sig { returns(T.nilable(String)) }
460
- attr_reader :message
461
-
462
- sig { params(message: String).void }
463
- attr_writer :message
464
-
465
- # Error information
466
- sig do
467
- params(
468
- code: String,
469
- details: T.nilable(T::Hash[Symbol, T::Array[String]]),
470
- doc_url: T.nilable(String),
471
- message: String
472
- ).returns(T.attached_class)
473
- end
474
- def self.new(
475
- # Machine-readable error code (e.g., "RESOURCE_001")
476
- code: nil,
477
- # Additional validation error details (field-level errors)
478
- details: nil,
479
- # URL to documentation about this error
480
- doc_url: nil,
481
- # Human-readable error message
482
- message: nil
483
- )
484
- end
485
-
486
- sig do
487
- override.returns(
488
- {
489
- code: String,
490
- details: T.nilable(T::Hash[Symbol, T::Array[String]]),
491
- doc_url: T.nilable(String),
492
- message: String
118
+ pagination: Sentdm::PaginationMeta,
119
+ users: T::Array[Sentdm::UserResponse]
493
120
  }
494
121
  )
495
122
  end
496
123
  def to_hash
497
124
  end
498
125
  end
499
-
500
- class Meta < Sentdm::Internal::Type::BaseModel
501
- OrHash =
502
- T.type_alias do
503
- T.any(
504
- Sentdm::Models::UserListResponse::Meta,
505
- Sentdm::Internal::AnyHash
506
- )
507
- end
508
-
509
- # Unique identifier for this request (for tracing and support)
510
- sig { returns(T.nilable(String)) }
511
- attr_reader :request_id
512
-
513
- sig { params(request_id: String).void }
514
- attr_writer :request_id
515
-
516
- # Server timestamp when the response was generated
517
- sig { returns(T.nilable(Time)) }
518
- attr_reader :timestamp
519
-
520
- sig { params(timestamp: Time).void }
521
- attr_writer :timestamp
522
-
523
- # API version used for this request
524
- sig { returns(T.nilable(String)) }
525
- attr_reader :version
526
-
527
- sig { params(version: String).void }
528
- attr_writer :version
529
-
530
- # Request and response metadata
531
- sig do
532
- params(request_id: String, timestamp: Time, version: String).returns(
533
- T.attached_class
534
- )
535
- end
536
- def self.new(
537
- # Unique identifier for this request (for tracing and support)
538
- request_id: nil,
539
- # Server timestamp when the response was generated
540
- timestamp: nil,
541
- # API version used for this request
542
- version: nil
543
- )
544
- end
545
-
546
- sig do
547
- override.returns(
548
- { request_id: String, timestamp: Time, version: String }
549
- )
550
- end
551
- def to_hash
552
- end
553
- end
554
126
  end
555
127
  end
556
128
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Sentdm
4
4
  module Models
5
- class UserRemoveParams < Sentdm::Internal::Type::BaseModel
5
+ class UserRemoveParams < Sentdm::Models::MutationRequest
6
6
  extend Sentdm::Internal::Type::RequestParameters::Converter
7
7
  include Sentdm::Internal::Type::RequestParameters
8
8
 
@@ -14,14 +14,6 @@ module Sentdm
14
14
  sig { returns(String) }
15
15
  attr_accessor :user_id
16
16
 
17
- # Sandbox flag - when true, the operation is simulated without side effects Useful
18
- # for testing integrations without actual execution
19
- sig { returns(T.nilable(T::Boolean)) }
20
- attr_reader :sandbox
21
-
22
- sig { params(sandbox: T::Boolean).void }
23
- attr_writer :sandbox
24
-
25
17
  sig { returns(T.nilable(String)) }
26
18
  attr_reader :x_profile_id
27
19
 
@@ -31,26 +23,17 @@ module Sentdm
31
23
  sig do
32
24
  params(
33
25
  user_id: String,
34
- sandbox: T::Boolean,
35
26
  x_profile_id: String,
36
27
  request_options: Sentdm::RequestOptions::OrHash
37
28
  ).returns(T.attached_class)
38
29
  end
39
- def self.new(
40
- user_id:,
41
- # Sandbox flag - when true, the operation is simulated without side effects Useful
42
- # for testing integrations without actual execution
43
- sandbox: nil,
44
- x_profile_id: nil,
45
- request_options: {}
46
- )
30
+ def self.new(user_id:, x_profile_id: nil, request_options: {})
47
31
  end
48
32
 
49
33
  sig do
50
34
  override.returns(
51
35
  {
52
36
  user_id: String,
53
- sandbox: T::Boolean,
54
37
  x_profile_id: String,
55
38
  request_options: Sentdm::RequestOptions
56
39
  }
@@ -0,0 +1,131 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ class UserResponse < Sentdm::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias { T.any(Sentdm::UserResponse, Sentdm::Internal::AnyHash) }
8
+
9
+ # User unique identifier
10
+ sig { returns(T.nilable(String)) }
11
+ attr_reader :id
12
+
13
+ sig { params(id: String).void }
14
+ attr_writer :id
15
+
16
+ # When the user was added to the organization
17
+ sig { returns(T.nilable(Time)) }
18
+ attr_reader :created_at
19
+
20
+ sig { params(created_at: Time).void }
21
+ attr_writer :created_at
22
+
23
+ # Which customer owns this — the key's own, or the profile named in x-profile-id.
24
+ # Says whose resource this is, which the resource's own id does not.
25
+ sig { returns(T.nilable(String)) }
26
+ attr_reader :customer_id
27
+
28
+ sig { params(customer_id: String).void }
29
+ attr_writer :customer_id
30
+
31
+ # User email address
32
+ sig { returns(T.nilable(String)) }
33
+ attr_reader :email
34
+
35
+ sig { params(email: String).void }
36
+ attr_writer :email
37
+
38
+ # When the user was invited
39
+ sig { returns(T.nilable(Time)) }
40
+ attr_accessor :invited_at
41
+
42
+ # When the user last logged in
43
+ sig { returns(T.nilable(Time)) }
44
+ attr_accessor :last_login_at
45
+
46
+ # User full name
47
+ sig { returns(T.nilable(String)) }
48
+ attr_reader :name
49
+
50
+ sig { params(name: String).void }
51
+ attr_writer :name
52
+
53
+ # User role in the organization: admin, billing, developer
54
+ sig { returns(T.nilable(String)) }
55
+ attr_reader :role
56
+
57
+ sig { params(role: String).void }
58
+ attr_writer :role
59
+
60
+ # User status: active, invited, suspended, rejected
61
+ sig { returns(T.nilable(String)) }
62
+ attr_reader :status
63
+
64
+ sig { params(status: String).void }
65
+ attr_writer :status
66
+
67
+ # When the user record was last updated
68
+ sig { returns(T.nilable(Time)) }
69
+ attr_accessor :updated_at
70
+
71
+ # User response for v3 API
72
+ sig do
73
+ params(
74
+ id: String,
75
+ created_at: Time,
76
+ customer_id: String,
77
+ email: String,
78
+ invited_at: T.nilable(Time),
79
+ last_login_at: T.nilable(Time),
80
+ name: String,
81
+ role: String,
82
+ status: String,
83
+ updated_at: T.nilable(Time)
84
+ ).returns(T.attached_class)
85
+ end
86
+ def self.new(
87
+ # User unique identifier
88
+ id: nil,
89
+ # When the user was added to the organization
90
+ created_at: nil,
91
+ # Which customer owns this — the key's own, or the profile named in x-profile-id.
92
+ # Says whose resource this is, which the resource's own id does not.
93
+ customer_id: nil,
94
+ # User email address
95
+ email: nil,
96
+ # When the user was invited
97
+ invited_at: nil,
98
+ # When the user last logged in
99
+ last_login_at: nil,
100
+ # User full name
101
+ name: nil,
102
+ # User role in the organization: admin, billing, developer
103
+ role: nil,
104
+ # User status: active, invited, suspended, rejected
105
+ status: nil,
106
+ # When the user record was last updated
107
+ updated_at: nil
108
+ )
109
+ end
110
+
111
+ sig do
112
+ override.returns(
113
+ {
114
+ id: String,
115
+ created_at: Time,
116
+ customer_id: String,
117
+ email: String,
118
+ invited_at: T.nilable(Time),
119
+ last_login_at: T.nilable(Time),
120
+ name: String,
121
+ role: String,
122
+ status: String,
123
+ updated_at: T.nilable(Time)
124
+ }
125
+ )
126
+ end
127
+ def to_hash
128
+ end
129
+ end
130
+ end
131
+ end