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