sentdm 0.29.0 → 0.31.0

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