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
@@ -20,17 +20,23 @@ module Sentdm
20
20
  attr_writer :data
21
21
 
22
22
  # Error information
23
- sig { returns(T.nilable(Sentdm::ErrorDetail)) }
23
+ sig { returns(T.nilable(Sentdm::Models::WebhookTestResponse::Error)) }
24
24
  attr_reader :error
25
25
 
26
- sig { params(error: T.nilable(Sentdm::ErrorDetail::OrHash)).void }
26
+ sig do
27
+ params(
28
+ error: T.nilable(Sentdm::Models::WebhookTestResponse::Error::OrHash)
29
+ ).void
30
+ end
27
31
  attr_writer :error
28
32
 
29
33
  # Request and response metadata
30
- sig { returns(T.nilable(Sentdm::APIMeta)) }
34
+ sig { returns(T.nilable(Sentdm::Models::WebhookTestResponse::Meta)) }
31
35
  attr_reader :meta
32
36
 
33
- sig { params(meta: Sentdm::APIMeta::OrHash).void }
37
+ sig do
38
+ params(meta: Sentdm::Models::WebhookTestResponse::Meta::OrHash).void
39
+ end
34
40
  attr_writer :meta
35
41
 
36
42
  # Indicates whether the request was successful
@@ -44,8 +50,8 @@ module Sentdm
44
50
  sig do
45
51
  params(
46
52
  data: T.nilable(Sentdm::Models::WebhookTestResponse::Data::OrHash),
47
- error: T.nilable(Sentdm::ErrorDetail::OrHash),
48
- meta: Sentdm::APIMeta::OrHash,
53
+ error: T.nilable(Sentdm::Models::WebhookTestResponse::Error::OrHash),
54
+ meta: Sentdm::Models::WebhookTestResponse::Meta::OrHash,
49
55
  success: T::Boolean
50
56
  ).returns(T.attached_class)
51
57
  end
@@ -65,8 +71,8 @@ module Sentdm
65
71
  override.returns(
66
72
  {
67
73
  data: T.nilable(Sentdm::Models::WebhookTestResponse::Data),
68
- error: T.nilable(Sentdm::ErrorDetail),
69
- meta: Sentdm::APIMeta,
74
+ error: T.nilable(Sentdm::Models::WebhookTestResponse::Error),
75
+ meta: Sentdm::Models::WebhookTestResponse::Meta,
70
76
  success: T::Boolean
71
77
  }
72
78
  )
@@ -106,6 +112,127 @@ module Sentdm
106
112
  def to_hash
107
113
  end
108
114
  end
115
+
116
+ class Error < Sentdm::Internal::Type::BaseModel
117
+ OrHash =
118
+ T.type_alias do
119
+ T.any(
120
+ Sentdm::Models::WebhookTestResponse::Error,
121
+ Sentdm::Internal::AnyHash
122
+ )
123
+ end
124
+
125
+ # Machine-readable error code (e.g., "RESOURCE_001")
126
+ sig { returns(T.nilable(String)) }
127
+ attr_reader :code
128
+
129
+ sig { params(code: String).void }
130
+ attr_writer :code
131
+
132
+ # Additional validation error details (field-level errors)
133
+ sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) }
134
+ attr_accessor :details
135
+
136
+ # URL to documentation about this error
137
+ sig { returns(T.nilable(String)) }
138
+ attr_accessor :doc_url
139
+
140
+ # Human-readable error message
141
+ sig { returns(T.nilable(String)) }
142
+ attr_reader :message
143
+
144
+ sig { params(message: String).void }
145
+ attr_writer :message
146
+
147
+ # Error information
148
+ sig do
149
+ params(
150
+ code: String,
151
+ details: T.nilable(T::Hash[Symbol, T::Array[String]]),
152
+ doc_url: T.nilable(String),
153
+ message: String
154
+ ).returns(T.attached_class)
155
+ end
156
+ def self.new(
157
+ # Machine-readable error code (e.g., "RESOURCE_001")
158
+ code: nil,
159
+ # Additional validation error details (field-level errors)
160
+ details: nil,
161
+ # URL to documentation about this error
162
+ doc_url: nil,
163
+ # Human-readable error message
164
+ message: nil
165
+ )
166
+ end
167
+
168
+ sig do
169
+ override.returns(
170
+ {
171
+ code: String,
172
+ details: T.nilable(T::Hash[Symbol, T::Array[String]]),
173
+ doc_url: T.nilable(String),
174
+ message: String
175
+ }
176
+ )
177
+ end
178
+ def to_hash
179
+ end
180
+ end
181
+
182
+ class Meta < Sentdm::Internal::Type::BaseModel
183
+ OrHash =
184
+ T.type_alias do
185
+ T.any(
186
+ Sentdm::Models::WebhookTestResponse::Meta,
187
+ Sentdm::Internal::AnyHash
188
+ )
189
+ end
190
+
191
+ # Unique identifier for this request (for tracing and support)
192
+ sig { returns(T.nilable(String)) }
193
+ attr_reader :request_id
194
+
195
+ sig { params(request_id: String).void }
196
+ attr_writer :request_id
197
+
198
+ # Server timestamp when the response was generated
199
+ sig { returns(T.nilable(Time)) }
200
+ attr_reader :timestamp
201
+
202
+ sig { params(timestamp: Time).void }
203
+ attr_writer :timestamp
204
+
205
+ # API version used for this request
206
+ sig { returns(T.nilable(String)) }
207
+ attr_reader :version
208
+
209
+ sig { params(version: String).void }
210
+ attr_writer :version
211
+
212
+ # Request and response metadata
213
+ sig do
214
+ params(request_id: String, timestamp: Time, version: String).returns(
215
+ T.attached_class
216
+ )
217
+ end
218
+ def self.new(
219
+ # Unique identifier for this request (for tracing and support)
220
+ request_id: nil,
221
+ # Server timestamp when the response was generated
222
+ timestamp: nil,
223
+ # API version used for this request
224
+ version: nil
225
+ )
226
+ end
227
+
228
+ sig do
229
+ override.returns(
230
+ { request_id: String, timestamp: Time, version: String }
231
+ )
232
+ end
233
+ def to_hash
234
+ end
235
+ end
109
236
  end
110
237
  end
111
238
  end
@@ -0,0 +1,379 @@
1
+ # typed: strong
2
+
3
+ module Sentdm
4
+ module Models
5
+ class WebhookToggleStatusResponse < Sentdm::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Sentdm::Models::WebhookToggleStatusResponse,
10
+ Sentdm::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # The response data (null if error)
15
+ sig do
16
+ returns(T.nilable(Sentdm::Models::WebhookToggleStatusResponse::Data))
17
+ end
18
+ attr_reader :data
19
+
20
+ sig do
21
+ params(
22
+ data:
23
+ T.nilable(Sentdm::Models::WebhookToggleStatusResponse::Data::OrHash)
24
+ ).void
25
+ end
26
+ attr_writer :data
27
+
28
+ # Error information
29
+ sig do
30
+ returns(T.nilable(Sentdm::Models::WebhookToggleStatusResponse::Error))
31
+ end
32
+ attr_reader :error
33
+
34
+ sig do
35
+ params(
36
+ error:
37
+ T.nilable(
38
+ Sentdm::Models::WebhookToggleStatusResponse::Error::OrHash
39
+ )
40
+ ).void
41
+ end
42
+ attr_writer :error
43
+
44
+ # Request and response metadata
45
+ sig do
46
+ returns(T.nilable(Sentdm::Models::WebhookToggleStatusResponse::Meta))
47
+ end
48
+ attr_reader :meta
49
+
50
+ sig do
51
+ params(
52
+ meta: Sentdm::Models::WebhookToggleStatusResponse::Meta::OrHash
53
+ ).void
54
+ end
55
+ attr_writer :meta
56
+
57
+ # Indicates whether the request was successful
58
+ sig { returns(T.nilable(T::Boolean)) }
59
+ attr_reader :success
60
+
61
+ sig { params(success: T::Boolean).void }
62
+ attr_writer :success
63
+
64
+ # Standard API response envelope for all v3 endpoints
65
+ sig do
66
+ params(
67
+ data:
68
+ T.nilable(
69
+ Sentdm::Models::WebhookToggleStatusResponse::Data::OrHash
70
+ ),
71
+ error:
72
+ T.nilable(
73
+ Sentdm::Models::WebhookToggleStatusResponse::Error::OrHash
74
+ ),
75
+ meta: Sentdm::Models::WebhookToggleStatusResponse::Meta::OrHash,
76
+ success: T::Boolean
77
+ ).returns(T.attached_class)
78
+ end
79
+ def self.new(
80
+ # The response data (null if error)
81
+ data: nil,
82
+ # Error information
83
+ error: nil,
84
+ # Request and response metadata
85
+ meta: nil,
86
+ # Indicates whether the request was successful
87
+ success: nil
88
+ )
89
+ end
90
+
91
+ sig do
92
+ override.returns(
93
+ {
94
+ data: T.nilable(Sentdm::Models::WebhookToggleStatusResponse::Data),
95
+ error:
96
+ T.nilable(Sentdm::Models::WebhookToggleStatusResponse::Error),
97
+ meta: Sentdm::Models::WebhookToggleStatusResponse::Meta,
98
+ success: T::Boolean
99
+ }
100
+ )
101
+ end
102
+ def to_hash
103
+ end
104
+
105
+ class Data < Sentdm::Internal::Type::BaseModel
106
+ OrHash =
107
+ T.type_alias do
108
+ T.any(
109
+ Sentdm::Models::WebhookToggleStatusResponse::Data,
110
+ Sentdm::Internal::AnyHash
111
+ )
112
+ end
113
+
114
+ sig { returns(T.nilable(String)) }
115
+ attr_reader :id
116
+
117
+ sig { params(id: String).void }
118
+ attr_writer :id
119
+
120
+ sig { returns(T.nilable(Integer)) }
121
+ attr_reader :consecutive_failures
122
+
123
+ sig { params(consecutive_failures: Integer).void }
124
+ attr_writer :consecutive_failures
125
+
126
+ sig { returns(T.nilable(Time)) }
127
+ attr_reader :created_at
128
+
129
+ sig { params(created_at: Time).void }
130
+ attr_writer :created_at
131
+
132
+ # Which customer owns this — the key's own, or the profile named in x-profile-id.
133
+ # Says whose resource this is, which the resource's own id does not.
134
+ sig { returns(T.nilable(String)) }
135
+ attr_reader :customer_id
136
+
137
+ sig { params(customer_id: String).void }
138
+ attr_writer :customer_id
139
+
140
+ sig { returns(T.nilable(String)) }
141
+ attr_reader :display_name
142
+
143
+ sig { params(display_name: String).void }
144
+ attr_writer :display_name
145
+
146
+ sig { returns(T.nilable(String)) }
147
+ attr_reader :endpoint_url
148
+
149
+ sig { params(endpoint_url: String).void }
150
+ attr_writer :endpoint_url
151
+
152
+ sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) }
153
+ attr_accessor :event_filters
154
+
155
+ sig { returns(T.nilable(T::Array[String])) }
156
+ attr_reader :event_types
157
+
158
+ sig { params(event_types: T::Array[String]).void }
159
+ attr_writer :event_types
160
+
161
+ sig { returns(T.nilable(T::Boolean)) }
162
+ attr_reader :is_active
163
+
164
+ sig { params(is_active: T::Boolean).void }
165
+ attr_writer :is_active
166
+
167
+ sig { returns(T.nilable(Time)) }
168
+ attr_accessor :last_delivery_attempt_at
169
+
170
+ sig { returns(T.nilable(Time)) }
171
+ attr_accessor :last_successful_delivery_at
172
+
173
+ sig { returns(T.nilable(Integer)) }
174
+ attr_reader :retry_count
175
+
176
+ sig { params(retry_count: Integer).void }
177
+ attr_writer :retry_count
178
+
179
+ sig { returns(T.nilable(String)) }
180
+ attr_accessor :signing_secret
181
+
182
+ sig { returns(T.nilable(Integer)) }
183
+ attr_reader :timeout_seconds
184
+
185
+ sig { params(timeout_seconds: Integer).void }
186
+ attr_writer :timeout_seconds
187
+
188
+ sig { returns(T.nilable(Time)) }
189
+ attr_accessor :updated_at
190
+
191
+ # The response data (null if error)
192
+ sig do
193
+ params(
194
+ id: String,
195
+ consecutive_failures: Integer,
196
+ created_at: Time,
197
+ customer_id: String,
198
+ display_name: String,
199
+ endpoint_url: String,
200
+ event_filters: T.nilable(T::Hash[Symbol, T::Array[String]]),
201
+ event_types: T::Array[String],
202
+ is_active: T::Boolean,
203
+ last_delivery_attempt_at: T.nilable(Time),
204
+ last_successful_delivery_at: T.nilable(Time),
205
+ retry_count: Integer,
206
+ signing_secret: T.nilable(String),
207
+ timeout_seconds: Integer,
208
+ updated_at: T.nilable(Time)
209
+ ).returns(T.attached_class)
210
+ end
211
+ def self.new(
212
+ id: nil,
213
+ consecutive_failures: nil,
214
+ created_at: nil,
215
+ # Which customer owns this — the key's own, or the profile named in x-profile-id.
216
+ # Says whose resource this is, which the resource's own id does not.
217
+ customer_id: nil,
218
+ display_name: nil,
219
+ endpoint_url: nil,
220
+ event_filters: nil,
221
+ event_types: nil,
222
+ is_active: nil,
223
+ last_delivery_attempt_at: nil,
224
+ last_successful_delivery_at: nil,
225
+ retry_count: nil,
226
+ signing_secret: nil,
227
+ timeout_seconds: nil,
228
+ updated_at: nil
229
+ )
230
+ end
231
+
232
+ sig do
233
+ override.returns(
234
+ {
235
+ id: String,
236
+ consecutive_failures: Integer,
237
+ created_at: Time,
238
+ customer_id: String,
239
+ display_name: String,
240
+ endpoint_url: String,
241
+ event_filters: T.nilable(T::Hash[Symbol, T::Array[String]]),
242
+ event_types: T::Array[String],
243
+ is_active: T::Boolean,
244
+ last_delivery_attempt_at: T.nilable(Time),
245
+ last_successful_delivery_at: T.nilable(Time),
246
+ retry_count: Integer,
247
+ signing_secret: T.nilable(String),
248
+ timeout_seconds: Integer,
249
+ updated_at: T.nilable(Time)
250
+ }
251
+ )
252
+ end
253
+ def to_hash
254
+ end
255
+ end
256
+
257
+ class Error < Sentdm::Internal::Type::BaseModel
258
+ OrHash =
259
+ T.type_alias do
260
+ T.any(
261
+ Sentdm::Models::WebhookToggleStatusResponse::Error,
262
+ Sentdm::Internal::AnyHash
263
+ )
264
+ end
265
+
266
+ # Machine-readable error code (e.g., "RESOURCE_001")
267
+ sig { returns(T.nilable(String)) }
268
+ attr_reader :code
269
+
270
+ sig { params(code: String).void }
271
+ attr_writer :code
272
+
273
+ # Additional validation error details (field-level errors)
274
+ sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) }
275
+ attr_accessor :details
276
+
277
+ # URL to documentation about this error
278
+ sig { returns(T.nilable(String)) }
279
+ attr_accessor :doc_url
280
+
281
+ # Human-readable error message
282
+ sig { returns(T.nilable(String)) }
283
+ attr_reader :message
284
+
285
+ sig { params(message: String).void }
286
+ attr_writer :message
287
+
288
+ # Error information
289
+ sig do
290
+ params(
291
+ code: String,
292
+ details: T.nilable(T::Hash[Symbol, T::Array[String]]),
293
+ doc_url: T.nilable(String),
294
+ message: String
295
+ ).returns(T.attached_class)
296
+ end
297
+ def self.new(
298
+ # Machine-readable error code (e.g., "RESOURCE_001")
299
+ code: nil,
300
+ # Additional validation error details (field-level errors)
301
+ details: nil,
302
+ # URL to documentation about this error
303
+ doc_url: nil,
304
+ # Human-readable error message
305
+ message: nil
306
+ )
307
+ end
308
+
309
+ sig do
310
+ override.returns(
311
+ {
312
+ code: String,
313
+ details: T.nilable(T::Hash[Symbol, T::Array[String]]),
314
+ doc_url: T.nilable(String),
315
+ message: String
316
+ }
317
+ )
318
+ end
319
+ def to_hash
320
+ end
321
+ end
322
+
323
+ class Meta < Sentdm::Internal::Type::BaseModel
324
+ OrHash =
325
+ T.type_alias do
326
+ T.any(
327
+ Sentdm::Models::WebhookToggleStatusResponse::Meta,
328
+ Sentdm::Internal::AnyHash
329
+ )
330
+ end
331
+
332
+ # Unique identifier for this request (for tracing and support)
333
+ sig { returns(T.nilable(String)) }
334
+ attr_reader :request_id
335
+
336
+ sig { params(request_id: String).void }
337
+ attr_writer :request_id
338
+
339
+ # Server timestamp when the response was generated
340
+ sig { returns(T.nilable(Time)) }
341
+ attr_reader :timestamp
342
+
343
+ sig { params(timestamp: Time).void }
344
+ attr_writer :timestamp
345
+
346
+ # API version used for this request
347
+ sig { returns(T.nilable(String)) }
348
+ attr_reader :version
349
+
350
+ sig { params(version: String).void }
351
+ attr_writer :version
352
+
353
+ # Request and response metadata
354
+ sig do
355
+ params(request_id: String, timestamp: Time, version: String).returns(
356
+ T.attached_class
357
+ )
358
+ end
359
+ def self.new(
360
+ # Unique identifier for this request (for tracing and support)
361
+ request_id: nil,
362
+ # Server timestamp when the response was generated
363
+ timestamp: nil,
364
+ # API version used for this request
365
+ version: nil
366
+ )
367
+ end
368
+
369
+ sig do
370
+ override.returns(
371
+ { request_id: String, timestamp: Time, version: String }
372
+ )
373
+ end
374
+ def to_hash
375
+ end
376
+ end
377
+ end
378
+ end
379
+ end