zavudev 0.6.0 → 0.8.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 (426) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +27 -0
  3. data/README.md +1 -1
  4. data/lib/zavudev/client.rb +32 -0
  5. data/lib/zavudev/models/balance_retrieve_params.rb +14 -0
  6. data/lib/zavudev/models/balance_retrieve_response.rb +48 -0
  7. data/lib/zavudev/models/broadcast_contact.rb +10 -1
  8. data/lib/zavudev/models/broadcast_content.rb +18 -3
  9. data/lib/zavudev/models/broadcast_escalate_review_params.rb +20 -0
  10. data/lib/zavudev/models/broadcast_escalate_review_response.rb +16 -0
  11. data/lib/zavudev/models/broadcast_retry_review_params.rb +20 -0
  12. data/lib/zavudev/models/broadcast_retry_review_response.rb +16 -0
  13. data/lib/zavudev/models/broadcasts/contact_add_params.rb +18 -3
  14. data/lib/zavudev/models/contact.rb +4 -154
  15. data/lib/zavudev/models/contact_channel.rb +155 -0
  16. data/lib/zavudev/models/contact_create_params.rb +99 -0
  17. data/lib/zavudev/models/contact_dismiss_merge_suggestion_params.rb +20 -0
  18. data/lib/zavudev/models/contact_merge_params.rb +33 -0
  19. data/lib/zavudev/models/contacts/channel_add_params.rb +77 -0
  20. data/lib/zavudev/models/contacts/channel_add_response.rb +19 -0
  21. data/lib/zavudev/models/contacts/channel_remove_params.rb +28 -0
  22. data/lib/zavudev/models/contacts/channel_set_primary_params.rb +28 -0
  23. data/lib/zavudev/models/contacts/channel_set_primary_response.rb +19 -0
  24. data/lib/zavudev/models/contacts/channel_update_params.rb +53 -0
  25. data/lib/zavudev/models/contacts/channel_update_response.rb +19 -0
  26. data/lib/zavudev/models/data_export.rb +122 -0
  27. data/lib/zavudev/models/export_create_params.rb +54 -0
  28. data/lib/zavudev/models/export_create_response.rb +16 -0
  29. data/lib/zavudev/models/export_list_params.rb +49 -0
  30. data/lib/zavudev/models/export_retrieve_params.rb +20 -0
  31. data/lib/zavudev/models/export_retrieve_response.rb +16 -0
  32. data/lib/zavudev/models/invitation.rb +135 -0
  33. data/lib/zavudev/models/invitation_cancel_params.rb +20 -0
  34. data/lib/zavudev/models/invitation_cancel_response.rb +16 -0
  35. data/lib/zavudev/models/invitation_create_params.rb +68 -0
  36. data/lib/zavudev/models/invitation_create_response.rb +16 -0
  37. data/lib/zavudev/models/invitation_list_params.rb +50 -0
  38. data/lib/zavudev/models/invitation_retrieve_params.rb +20 -0
  39. data/lib/zavudev/models/invitation_retrieve_response.rb +16 -0
  40. data/lib/zavudev/models/message_content.rb +96 -3
  41. data/lib/zavudev/models/message_type.rb +1 -0
  42. data/lib/zavudev/models/number_10dlc/brand_create_params.rb +158 -0
  43. data/lib/zavudev/models/number_10dlc/brand_create_response.rb +18 -0
  44. data/lib/zavudev/models/number_10dlc/brand_delete_params.rb +22 -0
  45. data/lib/zavudev/models/number_10dlc/brand_list_params.rb +28 -0
  46. data/lib/zavudev/models/number_10dlc/brand_list_use_cases_params.rb +16 -0
  47. data/lib/zavudev/models/number_10dlc/brand_list_use_cases_response.rb +36 -0
  48. data/lib/zavudev/models/number_10dlc/brand_retrieve_params.rb +22 -0
  49. data/lib/zavudev/models/number_10dlc/brand_retrieve_response.rb +18 -0
  50. data/lib/zavudev/models/number_10dlc/brand_submit_params.rb +22 -0
  51. data/lib/zavudev/models/number_10dlc/brand_submit_response.rb +18 -0
  52. data/lib/zavudev/models/number_10dlc/brand_sync_status_params.rb +22 -0
  53. data/lib/zavudev/models/number_10dlc/brand_sync_status_response.rb +18 -0
  54. data/lib/zavudev/models/number_10dlc/brand_update_params.rb +159 -0
  55. data/lib/zavudev/models/number_10dlc/brand_update_response.rb +18 -0
  56. data/lib/zavudev/models/number_10dlc/campaign_create_params.rb +151 -0
  57. data/lib/zavudev/models/number_10dlc/campaign_create_response.rb +18 -0
  58. data/lib/zavudev/models/number_10dlc/campaign_delete_params.rb +22 -0
  59. data/lib/zavudev/models/number_10dlc/campaign_list_params.rb +38 -0
  60. data/lib/zavudev/models/number_10dlc/campaign_retrieve_params.rb +22 -0
  61. data/lib/zavudev/models/number_10dlc/campaign_retrieve_response.rb +18 -0
  62. data/lib/zavudev/models/number_10dlc/campaign_submit_params.rb +22 -0
  63. data/lib/zavudev/models/number_10dlc/campaign_submit_response.rb +18 -0
  64. data/lib/zavudev/models/number_10dlc/campaign_sync_status_params.rb +22 -0
  65. data/lib/zavudev/models/number_10dlc/campaign_sync_status_response.rb +18 -0
  66. data/lib/zavudev/models/number_10dlc/campaign_update_params.rb +64 -0
  67. data/lib/zavudev/models/number_10dlc/campaign_update_response.rb +18 -0
  68. data/lib/zavudev/models/number_10dlc/campaigns/phone_number_assign_params.rb +33 -0
  69. data/lib/zavudev/models/number_10dlc/campaigns/phone_number_assign_response.rb +20 -0
  70. data/lib/zavudev/models/number_10dlc/campaigns/phone_number_list_params.rb +24 -0
  71. data/lib/zavudev/models/number_10dlc/campaigns/phone_number_list_response.rb +27 -0
  72. data/lib/zavudev/models/number_10dlc/campaigns/phone_number_unassign_params.rb +30 -0
  73. data/lib/zavudev/models/number_10dlc/campaigns/ten_dlc_phone_number_assignment.rb +83 -0
  74. data/lib/zavudev/models/number_10dlc/ten_dlc_brand.rb +238 -0
  75. data/lib/zavudev/models/number_10dlc/ten_dlc_campaign.rb +243 -0
  76. data/lib/zavudev/models/plan_retrieve_params.rb +14 -0
  77. data/lib/zavudev/models/plan_retrieve_response.rb +155 -0
  78. data/lib/zavudev/models/senders/agent/agent_flow.rb +6 -101
  79. data/lib/zavudev/models/senders/agent/agent_tool.rb +3 -53
  80. data/lib/zavudev/models/senders/agent/flow_create_params.rb +6 -100
  81. data/lib/zavudev/models/senders/agent/flow_step.rb +61 -0
  82. data/lib/zavudev/models/senders/agent/flow_trigger.rb +51 -0
  83. data/lib/zavudev/models/senders/agent/flow_update_params.rb +6 -100
  84. data/lib/zavudev/models/senders/agent/tool_create_params.rb +3 -52
  85. data/lib/zavudev/models/senders/agent/tool_parameters.rb +58 -0
  86. data/lib/zavudev/models/senders/agent/tool_update_params.rb +3 -52
  87. data/lib/zavudev/models/senders/whats_app_sync_contacts.rb +51 -0
  88. data/lib/zavudev/models/senders/whats_app_sync_history.rb +60 -0
  89. data/lib/zavudev/models/senders/whats_app_sync_status.rb +60 -0
  90. data/lib/zavudev/models/senders/whatsapp_sync_retrieve_params.rb +22 -0
  91. data/lib/zavudev/models/senders/whatsapp_sync_retrieve_response.rb +19 -0
  92. data/lib/zavudev/models/senders/whatsapp_sync_start_contacts_sync_params.rb +22 -0
  93. data/lib/zavudev/models/senders/whatsapp_sync_start_contacts_sync_response.rb +27 -0
  94. data/lib/zavudev/models/senders/whatsapp_sync_start_history_sync_params.rb +22 -0
  95. data/lib/zavudev/models/senders/whatsapp_sync_start_history_sync_response.rb +27 -0
  96. data/lib/zavudev/models/sub_account.rb +91 -0
  97. data/lib/zavudev/models/sub_account_create_params.rb +49 -0
  98. data/lib/zavudev/models/sub_account_create_response.rb +16 -0
  99. data/lib/zavudev/models/sub_account_deactivate_params.rb +20 -0
  100. data/lib/zavudev/models/sub_account_deactivate_response.rb +24 -0
  101. data/lib/zavudev/models/sub_account_get_balance_params.rb +20 -0
  102. data/lib/zavudev/models/sub_account_get_balance_response.rb +48 -0
  103. data/lib/zavudev/models/sub_account_list_params.rb +26 -0
  104. data/lib/zavudev/models/sub_account_retrieve_params.rb +20 -0
  105. data/lib/zavudev/models/sub_account_retrieve_response.rb +16 -0
  106. data/lib/zavudev/models/sub_account_update_params.rb +60 -0
  107. data/lib/zavudev/models/sub_account_update_response.rb +16 -0
  108. data/lib/zavudev/models/sub_accounts/api_key_create_params.rb +50 -0
  109. data/lib/zavudev/models/sub_accounts/api_key_create_response.rb +59 -0
  110. data/lib/zavudev/models/sub_accounts/api_key_list_params.rb +22 -0
  111. data/lib/zavudev/models/sub_accounts/api_key_list_response.rb +98 -0
  112. data/lib/zavudev/models/sub_accounts/api_key_revoke_params.rb +28 -0
  113. data/lib/zavudev/models/template.rb +13 -1
  114. data/lib/zavudev/models/template_create_params.rb +53 -3
  115. data/lib/zavudev/models/url_list_verified_params.rb +49 -0
  116. data/lib/zavudev/models/url_retrieve_details_params.rb +20 -0
  117. data/lib/zavudev/models/url_retrieve_details_response.rb +16 -0
  118. data/lib/zavudev/models/url_submit_for_verification_params.rb +22 -0
  119. data/lib/zavudev/models/url_submit_for_verification_response.rb +16 -0
  120. data/lib/zavudev/models/usage_retrieve_params.rb +14 -0
  121. data/lib/zavudev/models/usage_retrieve_response.rb +77 -0
  122. data/lib/zavudev/models/verified_url.rb +90 -0
  123. data/lib/zavudev/models.rb +64 -0
  124. data/lib/zavudev/resources/balance.rb +33 -0
  125. data/lib/zavudev/resources/broadcasts.rb +40 -0
  126. data/lib/zavudev/resources/contacts/channels.rb +136 -0
  127. data/lib/zavudev/resources/contacts.rb +78 -0
  128. data/lib/zavudev/resources/exports.rb +89 -0
  129. data/lib/zavudev/resources/invitations.rb +118 -0
  130. data/lib/zavudev/resources/number_10dlc/brands.rb +251 -0
  131. data/lib/zavudev/resources/number_10dlc/campaigns/phone_numbers.rb +90 -0
  132. data/lib/zavudev/resources/number_10dlc/campaigns.rb +225 -0
  133. data/lib/zavudev/resources/number_10dlc.rb +22 -0
  134. data/lib/zavudev/resources/plan.rb +33 -0
  135. data/lib/zavudev/resources/senders/agent/flows.rb +4 -4
  136. data/lib/zavudev/resources/senders/agent/tools.rb +2 -2
  137. data/lib/zavudev/resources/senders/whatsapp_sync.rb +79 -0
  138. data/lib/zavudev/resources/senders.rb +4 -0
  139. data/lib/zavudev/resources/sub_accounts/api_keys.rb +91 -0
  140. data/lib/zavudev/resources/sub_accounts.rb +169 -0
  141. data/lib/zavudev/resources/templates.rb +7 -1
  142. data/lib/zavudev/resources/urls.rb +89 -0
  143. data/lib/zavudev/resources/usage.rb +33 -0
  144. data/lib/zavudev/version.rb +1 -1
  145. data/lib/zavudev.rb +118 -0
  146. data/rbi/zavudev/client.rbi +24 -0
  147. data/rbi/zavudev/models/balance_retrieve_params.rbi +27 -0
  148. data/rbi/zavudev/models/balance_retrieve_response.rbi +73 -0
  149. data/rbi/zavudev/models/broadcast_contact.rbi +9 -0
  150. data/rbi/zavudev/models/broadcast_content.rbi +17 -2
  151. data/rbi/zavudev/models/broadcast_escalate_review_params.rbi +38 -0
  152. data/rbi/zavudev/models/broadcast_escalate_review_response.rbi +31 -0
  153. data/rbi/zavudev/models/broadcast_retry_review_params.rbi +35 -0
  154. data/rbi/zavudev/models/broadcast_retry_review_response.rbi +31 -0
  155. data/rbi/zavudev/models/broadcasts/contact_add_params.rbi +23 -3
  156. data/rbi/zavudev/models/contact.rbi +4 -235
  157. data/rbi/zavudev/models/contact_channel.rbi +231 -0
  158. data/rbi/zavudev/models/contact_create_params.rbi +191 -0
  159. data/rbi/zavudev/models/contact_dismiss_merge_suggestion_params.rbi +38 -0
  160. data/rbi/zavudev/models/contact_merge_params.rbi +51 -0
  161. data/rbi/zavudev/models/contacts/channel_add_params.rbi +142 -0
  162. data/rbi/zavudev/models/contacts/channel_add_response.rbi +39 -0
  163. data/rbi/zavudev/models/contacts/channel_remove_params.rbi +48 -0
  164. data/rbi/zavudev/models/contacts/channel_set_primary_params.rbi +48 -0
  165. data/rbi/zavudev/models/contacts/channel_set_primary_response.rbi +39 -0
  166. data/rbi/zavudev/models/contacts/channel_update_params.rbi +80 -0
  167. data/rbi/zavudev/models/contacts/channel_update_response.rbi +39 -0
  168. data/rbi/zavudev/models/data_export.rbi +151 -0
  169. data/rbi/zavudev/models/export_create_params.rbi +106 -0
  170. data/rbi/zavudev/models/export_create_response.rbi +31 -0
  171. data/rbi/zavudev/models/export_list_params.rbi +89 -0
  172. data/rbi/zavudev/models/export_retrieve_params.rbi +35 -0
  173. data/rbi/zavudev/models/export_retrieve_response.rbi +31 -0
  174. data/rbi/zavudev/models/invitation.rbi +149 -0
  175. data/rbi/zavudev/models/invitation_cancel_params.rbi +35 -0
  176. data/rbi/zavudev/models/invitation_cancel_response.rbi +33 -0
  177. data/rbi/zavudev/models/invitation_create_params.rbi +103 -0
  178. data/rbi/zavudev/models/invitation_create_response.rbi +33 -0
  179. data/rbi/zavudev/models/invitation_list_params.rbi +99 -0
  180. data/rbi/zavudev/models/invitation_retrieve_params.rbi +35 -0
  181. data/rbi/zavudev/models/invitation_retrieve_response.rbi +33 -0
  182. data/rbi/zavudev/models/message_content.rbi +145 -2
  183. data/rbi/zavudev/models/message_type.rbi +1 -0
  184. data/rbi/zavudev/models/number_10dlc/brand_create_params.rbi +228 -0
  185. data/rbi/zavudev/models/number_10dlc/brand_create_response.rbi +35 -0
  186. data/rbi/zavudev/models/number_10dlc/brand_delete_params.rbi +40 -0
  187. data/rbi/zavudev/models/number_10dlc/brand_list_params.rbi +54 -0
  188. data/rbi/zavudev/models/number_10dlc/brand_list_use_cases_params.rbi +32 -0
  189. data/rbi/zavudev/models/number_10dlc/brand_list_use_cases_response.rbi +82 -0
  190. data/rbi/zavudev/models/number_10dlc/brand_retrieve_params.rbi +40 -0
  191. data/rbi/zavudev/models/number_10dlc/brand_retrieve_response.rbi +35 -0
  192. data/rbi/zavudev/models/number_10dlc/brand_submit_params.rbi +40 -0
  193. data/rbi/zavudev/models/number_10dlc/brand_submit_response.rbi +35 -0
  194. data/rbi/zavudev/models/number_10dlc/brand_sync_status_params.rbi +40 -0
  195. data/rbi/zavudev/models/number_10dlc/brand_sync_status_response.rbi +35 -0
  196. data/rbi/zavudev/models/number_10dlc/brand_update_params.rbi +261 -0
  197. data/rbi/zavudev/models/number_10dlc/brand_update_response.rbi +35 -0
  198. data/rbi/zavudev/models/number_10dlc/campaign_create_params.rbi +173 -0
  199. data/rbi/zavudev/models/number_10dlc/campaign_create_response.rbi +39 -0
  200. data/rbi/zavudev/models/number_10dlc/campaign_delete_params.rbi +40 -0
  201. data/rbi/zavudev/models/number_10dlc/campaign_list_params.rbi +69 -0
  202. data/rbi/zavudev/models/number_10dlc/campaign_retrieve_params.rbi +40 -0
  203. data/rbi/zavudev/models/number_10dlc/campaign_retrieve_response.rbi +39 -0
  204. data/rbi/zavudev/models/number_10dlc/campaign_submit_params.rbi +40 -0
  205. data/rbi/zavudev/models/number_10dlc/campaign_submit_response.rbi +39 -0
  206. data/rbi/zavudev/models/number_10dlc/campaign_sync_status_params.rbi +40 -0
  207. data/rbi/zavudev/models/number_10dlc/campaign_sync_status_response.rbi +39 -0
  208. data/rbi/zavudev/models/number_10dlc/campaign_update_params.rbi +109 -0
  209. data/rbi/zavudev/models/number_10dlc/campaign_update_response.rbi +39 -0
  210. data/rbi/zavudev/models/number_10dlc/campaigns/phone_number_assign_params.rbi +56 -0
  211. data/rbi/zavudev/models/number_10dlc/campaigns/phone_number_assign_response.rbi +54 -0
  212. data/rbi/zavudev/models/number_10dlc/campaigns/phone_number_list_params.rbi +42 -0
  213. data/rbi/zavudev/models/number_10dlc/campaigns/phone_number_list_response.rbi +57 -0
  214. data/rbi/zavudev/models/number_10dlc/campaigns/phone_number_unassign_params.rbi +50 -0
  215. data/rbi/zavudev/models/number_10dlc/campaigns/ten_dlc_phone_number_assignment.rbi +132 -0
  216. data/rbi/zavudev/models/number_10dlc/ten_dlc_brand.rbi +298 -0
  217. data/rbi/zavudev/models/number_10dlc/ten_dlc_campaign.rbi +269 -0
  218. data/rbi/zavudev/models/plan_retrieve_params.rbi +27 -0
  219. data/rbi/zavudev/models/plan_retrieve_response.rbi +306 -0
  220. data/rbi/zavudev/models/senders/agent/agent_flow.rbi +7 -233
  221. data/rbi/zavudev/models/senders/agent/agent_tool.rbi +4 -130
  222. data/rbi/zavudev/models/senders/agent/flow_create_params.rbi +7 -245
  223. data/rbi/zavudev/models/senders/agent/flow_step.rbi +115 -0
  224. data/rbi/zavudev/models/senders/agent/flow_trigger.rbi +108 -0
  225. data/rbi/zavudev/models/senders/agent/flow_update_params.rbi +8 -255
  226. data/rbi/zavudev/models/senders/agent/tool_create_params.rbi +4 -132
  227. data/rbi/zavudev/models/senders/agent/tool_parameters.rbi +124 -0
  228. data/rbi/zavudev/models/senders/agent/tool_update_params.rbi +4 -136
  229. data/rbi/zavudev/models/senders/whats_app_sync_contacts.rbi +104 -0
  230. data/rbi/zavudev/models/senders/whats_app_sync_history.rbi +117 -0
  231. data/rbi/zavudev/models/senders/whats_app_sync_status.rbi +126 -0
  232. data/rbi/zavudev/models/senders/whatsapp_sync_retrieve_params.rbi +40 -0
  233. data/rbi/zavudev/models/senders/whatsapp_sync_retrieve_response.rbi +39 -0
  234. data/rbi/zavudev/models/senders/whatsapp_sync_start_contacts_sync_params.rbi +40 -0
  235. data/rbi/zavudev/models/senders/whatsapp_sync_start_contacts_sync_response.rbi +50 -0
  236. data/rbi/zavudev/models/senders/whatsapp_sync_start_history_sync_params.rbi +40 -0
  237. data/rbi/zavudev/models/senders/whatsapp_sync_start_history_sync_response.rbi +50 -0
  238. data/rbi/zavudev/models/sub_account.rbi +111 -0
  239. data/rbi/zavudev/models/sub_account_create_params.rbi +76 -0
  240. data/rbi/zavudev/models/sub_account_create_response.rbi +33 -0
  241. data/rbi/zavudev/models/sub_account_deactivate_params.rbi +35 -0
  242. data/rbi/zavudev/models/sub_account_deactivate_response.rbi +36 -0
  243. data/rbi/zavudev/models/sub_account_get_balance_params.rbi +35 -0
  244. data/rbi/zavudev/models/sub_account_get_balance_response.rbi +73 -0
  245. data/rbi/zavudev/models/sub_account_list_params.rbi +49 -0
  246. data/rbi/zavudev/models/sub_account_retrieve_params.rbi +35 -0
  247. data/rbi/zavudev/models/sub_account_retrieve_response.rbi +33 -0
  248. data/rbi/zavudev/models/sub_account_update_params.rbi +113 -0
  249. data/rbi/zavudev/models/sub_account_update_response.rbi +33 -0
  250. data/rbi/zavudev/models/sub_accounts/api_key_create_params.rbi +117 -0
  251. data/rbi/zavudev/models/sub_accounts/api_key_create_response.rbi +136 -0
  252. data/rbi/zavudev/models/sub_accounts/api_key_list_params.rbi +40 -0
  253. data/rbi/zavudev/models/sub_accounts/api_key_list_response.rbi +177 -0
  254. data/rbi/zavudev/models/sub_accounts/api_key_revoke_params.rbi +48 -0
  255. data/rbi/zavudev/models/template.rbi +13 -0
  256. data/rbi/zavudev/models/template_create_params.rbi +91 -0
  257. data/rbi/zavudev/models/url_list_verified_params.rbi +97 -0
  258. data/rbi/zavudev/models/url_retrieve_details_params.rbi +35 -0
  259. data/rbi/zavudev/models/url_retrieve_details_response.rbi +31 -0
  260. data/rbi/zavudev/models/url_submit_for_verification_params.rbi +43 -0
  261. data/rbi/zavudev/models/url_submit_for_verification_response.rbi +31 -0
  262. data/rbi/zavudev/models/usage_retrieve_params.rbi +27 -0
  263. data/rbi/zavudev/models/usage_retrieve_response.rbi +150 -0
  264. data/rbi/zavudev/models/verified_url.rbi +133 -0
  265. data/rbi/zavudev/models.rbi +66 -0
  266. data/rbi/zavudev/resources/balance.rbi +22 -0
  267. data/rbi/zavudev/resources/broadcasts.rbi +22 -0
  268. data/rbi/zavudev/resources/contacts/channels.rbi +100 -0
  269. data/rbi/zavudev/resources/contacts.rbi +52 -0
  270. data/rbi/zavudev/resources/exports.rbi +62 -0
  271. data/rbi/zavudev/resources/invitations.rbi +83 -0
  272. data/rbi/zavudev/resources/number_10dlc/brands.rbi +198 -0
  273. data/rbi/zavudev/resources/number_10dlc/campaigns/phone_numbers.rbi +69 -0
  274. data/rbi/zavudev/resources/number_10dlc/campaigns.rbi +177 -0
  275. data/rbi/zavudev/resources/number_10dlc.rbi +18 -0
  276. data/rbi/zavudev/resources/plan.rbi +22 -0
  277. data/rbi/zavudev/resources/senders/agent/flows.rbi +4 -12
  278. data/rbi/zavudev/resources/senders/agent/tools.rbi +2 -4
  279. data/rbi/zavudev/resources/senders/whatsapp_sync.rbi +54 -0
  280. data/rbi/zavudev/resources/senders.rbi +3 -0
  281. data/rbi/zavudev/resources/sub_accounts/api_keys.rbi +66 -0
  282. data/rbi/zavudev/resources/sub_accounts.rbi +119 -0
  283. data/rbi/zavudev/resources/templates.rbi +9 -0
  284. data/rbi/zavudev/resources/urls.rbi +60 -0
  285. data/rbi/zavudev/resources/usage.rbi +22 -0
  286. data/sig/zavudev/client.rbs +16 -0
  287. data/sig/zavudev/models/balance_retrieve_params.rbs +15 -0
  288. data/sig/zavudev/models/balance_retrieve_response.rbs +42 -0
  289. data/sig/zavudev/models/broadcast_contact.rbs +9 -0
  290. data/sig/zavudev/models/broadcast_content.rbs +9 -0
  291. data/sig/zavudev/models/broadcast_escalate_review_params.rbs +23 -0
  292. data/sig/zavudev/models/broadcast_escalate_review_response.rbs +13 -0
  293. data/sig/zavudev/models/broadcast_retry_review_params.rbs +23 -0
  294. data/sig/zavudev/models/broadcast_retry_review_response.rbs +13 -0
  295. data/sig/zavudev/models/broadcasts/contact_add_params.rbs +13 -1
  296. data/sig/zavudev/models/contact.rbs +6 -153
  297. data/sig/zavudev/models/contact_channel.rbs +150 -0
  298. data/sig/zavudev/models/contact_create_params.rbs +97 -0
  299. data/sig/zavudev/models/contact_dismiss_merge_suggestion_params.rbs +23 -0
  300. data/sig/zavudev/models/contact_merge_params.rbs +28 -0
  301. data/sig/zavudev/models/contacts/channel_add_params.rbs +73 -0
  302. data/sig/zavudev/models/contacts/channel_add_response.rbs +15 -0
  303. data/sig/zavudev/models/contacts/channel_remove_params.rbs +30 -0
  304. data/sig/zavudev/models/contacts/channel_set_primary_params.rbs +30 -0
  305. data/sig/zavudev/models/contacts/channel_set_primary_response.rbs +15 -0
  306. data/sig/zavudev/models/contacts/channel_update_params.rbs +52 -0
  307. data/sig/zavudev/models/contacts/channel_update_response.rbs +15 -0
  308. data/sig/zavudev/models/data_export.rbs +102 -0
  309. data/sig/zavudev/models/export_create_params.rbs +59 -0
  310. data/sig/zavudev/models/export_create_response.rbs +13 -0
  311. data/sig/zavudev/models/export_list_params.rbs +57 -0
  312. data/sig/zavudev/models/export_retrieve_params.rbs +23 -0
  313. data/sig/zavudev/models/export_retrieve_response.rbs +13 -0
  314. data/sig/zavudev/models/invitation.rbs +104 -0
  315. data/sig/zavudev/models/invitation_cancel_params.rbs +23 -0
  316. data/sig/zavudev/models/invitation_cancel_response.rbs +13 -0
  317. data/sig/zavudev/models/invitation_create_params.rbs +63 -0
  318. data/sig/zavudev/models/invitation_create_response.rbs +13 -0
  319. data/sig/zavudev/models/invitation_list_params.rbs +58 -0
  320. data/sig/zavudev/models/invitation_retrieve_params.rbs +23 -0
  321. data/sig/zavudev/models/invitation_retrieve_response.rbs +13 -0
  322. data/sig/zavudev/models/message_content.rbs +66 -0
  323. data/sig/zavudev/models/message_type.rbs +2 -0
  324. data/sig/zavudev/models/number_10dlc/brand_create_params.rbs +141 -0
  325. data/sig/zavudev/models/number_10dlc/brand_create_response.rbs +15 -0
  326. data/sig/zavudev/models/number_10dlc/brand_delete_params.rbs +25 -0
  327. data/sig/zavudev/models/number_10dlc/brand_list_params.rbs +34 -0
  328. data/sig/zavudev/models/number_10dlc/brand_list_use_cases_params.rbs +17 -0
  329. data/sig/zavudev/models/number_10dlc/brand_list_use_cases_response.rbs +38 -0
  330. data/sig/zavudev/models/number_10dlc/brand_retrieve_params.rbs +25 -0
  331. data/sig/zavudev/models/number_10dlc/brand_retrieve_response.rbs +16 -0
  332. data/sig/zavudev/models/number_10dlc/brand_submit_params.rbs +25 -0
  333. data/sig/zavudev/models/number_10dlc/brand_submit_response.rbs +15 -0
  334. data/sig/zavudev/models/number_10dlc/brand_sync_status_params.rbs +25 -0
  335. data/sig/zavudev/models/number_10dlc/brand_sync_status_response.rbs +16 -0
  336. data/sig/zavudev/models/number_10dlc/brand_update_params.rbs +168 -0
  337. data/sig/zavudev/models/number_10dlc/brand_update_response.rbs +15 -0
  338. data/sig/zavudev/models/number_10dlc/campaign_create_params.rbs +128 -0
  339. data/sig/zavudev/models/number_10dlc/campaign_create_response.rbs +16 -0
  340. data/sig/zavudev/models/number_10dlc/campaign_delete_params.rbs +25 -0
  341. data/sig/zavudev/models/number_10dlc/campaign_list_params.rbs +40 -0
  342. data/sig/zavudev/models/number_10dlc/campaign_retrieve_params.rbs +25 -0
  343. data/sig/zavudev/models/number_10dlc/campaign_retrieve_response.rbs +16 -0
  344. data/sig/zavudev/models/number_10dlc/campaign_submit_params.rbs +25 -0
  345. data/sig/zavudev/models/number_10dlc/campaign_submit_response.rbs +16 -0
  346. data/sig/zavudev/models/number_10dlc/campaign_sync_status_params.rbs +25 -0
  347. data/sig/zavudev/models/number_10dlc/campaign_sync_status_response.rbs +16 -0
  348. data/sig/zavudev/models/number_10dlc/campaign_update_params.rbs +77 -0
  349. data/sig/zavudev/models/number_10dlc/campaign_update_response.rbs +16 -0
  350. data/sig/zavudev/models/number_10dlc/campaigns/phone_number_assign_params.rbs +32 -0
  351. data/sig/zavudev/models/number_10dlc/campaigns/phone_number_assign_response.rbs +24 -0
  352. data/sig/zavudev/models/number_10dlc/campaigns/phone_number_list_params.rbs +27 -0
  353. data/sig/zavudev/models/number_10dlc/campaigns/phone_number_list_response.rbs +29 -0
  354. data/sig/zavudev/models/number_10dlc/campaigns/phone_number_unassign_params.rbs +32 -0
  355. data/sig/zavudev/models/number_10dlc/campaigns/ten_dlc_phone_number_assignment.rbs +71 -0
  356. data/sig/zavudev/models/number_10dlc/ten_dlc_brand.rbs +179 -0
  357. data/sig/zavudev/models/number_10dlc/ten_dlc_campaign.rbs +175 -0
  358. data/sig/zavudev/models/plan_retrieve_params.rbs +15 -0
  359. data/sig/zavudev/models/plan_retrieve_response.rbs +158 -0
  360. data/sig/zavudev/models/senders/agent/agent_flow.rbs +8 -100
  361. data/sig/zavudev/models/senders/agent/agent_tool.rbs +4 -57
  362. data/sig/zavudev/models/senders/agent/flow_create_params.rbs +8 -100
  363. data/sig/zavudev/models/senders/agent/flow_step.rbs +55 -0
  364. data/sig/zavudev/models/senders/agent/flow_trigger.rbs +51 -0
  365. data/sig/zavudev/models/senders/agent/flow_update_params.rbs +12 -104
  366. data/sig/zavudev/models/senders/agent/tool_create_params.rbs +4 -57
  367. data/sig/zavudev/models/senders/agent/tool_parameters.rbs +60 -0
  368. data/sig/zavudev/models/senders/agent/tool_update_params.rbs +6 -59
  369. data/sig/zavudev/models/senders/whats_app_sync_contacts.rbs +45 -0
  370. data/sig/zavudev/models/senders/whats_app_sync_history.rbs +52 -0
  371. data/sig/zavudev/models/senders/whats_app_sync_status.rbs +56 -0
  372. data/sig/zavudev/models/senders/whatsapp_sync_retrieve_params.rbs +25 -0
  373. data/sig/zavudev/models/senders/whatsapp_sync_retrieve_response.rbs +16 -0
  374. data/sig/zavudev/models/senders/whatsapp_sync_start_contacts_sync_params.rbs +25 -0
  375. data/sig/zavudev/models/senders/whatsapp_sync_start_contacts_sync_response.rbs +24 -0
  376. data/sig/zavudev/models/senders/whatsapp_sync_start_history_sync_params.rbs +25 -0
  377. data/sig/zavudev/models/senders/whatsapp_sync_start_history_sync_response.rbs +24 -0
  378. data/sig/zavudev/models/sub_account.rbs +73 -0
  379. data/sig/zavudev/models/sub_account_create_params.rbs +47 -0
  380. data/sig/zavudev/models/sub_account_create_response.rbs +13 -0
  381. data/sig/zavudev/models/sub_account_deactivate_params.rbs +20 -0
  382. data/sig/zavudev/models/sub_account_deactivate_response.rbs +16 -0
  383. data/sig/zavudev/models/sub_account_get_balance_params.rbs +20 -0
  384. data/sig/zavudev/models/sub_account_get_balance_response.rbs +42 -0
  385. data/sig/zavudev/models/sub_account_list_params.rbs +32 -0
  386. data/sig/zavudev/models/sub_account_retrieve_params.rbs +20 -0
  387. data/sig/zavudev/models/sub_account_retrieve_response.rbs +13 -0
  388. data/sig/zavudev/models/sub_account_update_params.rbs +72 -0
  389. data/sig/zavudev/models/sub_account_update_response.rbs +13 -0
  390. data/sig/zavudev/models/sub_accounts/api_key_create_params.rbs +60 -0
  391. data/sig/zavudev/models/sub_accounts/api_key_create_response.rbs +63 -0
  392. data/sig/zavudev/models/sub_accounts/api_key_list_params.rbs +22 -0
  393. data/sig/zavudev/models/sub_accounts/api_key_list_response.rbs +94 -0
  394. data/sig/zavudev/models/sub_accounts/api_key_revoke_params.rbs +30 -0
  395. data/sig/zavudev/models/template.rbs +7 -0
  396. data/sig/zavudev/models/template_create_params.rbs +43 -0
  397. data/sig/zavudev/models/url_list_verified_params.rbs +57 -0
  398. data/sig/zavudev/models/url_retrieve_details_params.rbs +23 -0
  399. data/sig/zavudev/models/url_retrieve_details_response.rbs +13 -0
  400. data/sig/zavudev/models/url_submit_for_verification_params.rbs +20 -0
  401. data/sig/zavudev/models/url_submit_for_verification_response.rbs +13 -0
  402. data/sig/zavudev/models/usage_retrieve_params.rbs +15 -0
  403. data/sig/zavudev/models/usage_retrieve_response.rbs +69 -0
  404. data/sig/zavudev/models/verified_url.rbs +80 -0
  405. data/sig/zavudev/models.rbs +64 -0
  406. data/sig/zavudev/resources/balance.rbs +11 -0
  407. data/sig/zavudev/resources/broadcasts.rbs +10 -0
  408. data/sig/zavudev/resources/contacts/channels.rbs +40 -0
  409. data/sig/zavudev/resources/contacts.rbs +20 -0
  410. data/sig/zavudev/resources/exports.rbs +26 -0
  411. data/sig/zavudev/resources/invitations.rbs +34 -0
  412. data/sig/zavudev/resources/number_10dlc/brands.rbs +82 -0
  413. data/sig/zavudev/resources/number_10dlc/campaigns/phone_numbers.rbs +28 -0
  414. data/sig/zavudev/resources/number_10dlc/campaigns.rbs +73 -0
  415. data/sig/zavudev/resources/number_10dlc.rbs +11 -0
  416. data/sig/zavudev/resources/plan.rbs +11 -0
  417. data/sig/zavudev/resources/senders/agent/flows.rbs +4 -4
  418. data/sig/zavudev/resources/senders/agent/tools.rbs +2 -2
  419. data/sig/zavudev/resources/senders/whatsapp_sync.rbs +24 -0
  420. data/sig/zavudev/resources/senders.rbs +2 -0
  421. data/sig/zavudev/resources/sub_accounts/api_keys.rbs +28 -0
  422. data/sig/zavudev/resources/sub_accounts.rbs +48 -0
  423. data/sig/zavudev/resources/templates.rbs +3 -0
  424. data/sig/zavudev/resources/urls.rbs +24 -0
  425. data/sig/zavudev/resources/usage.rbs +11 -0
  426. metadata +356 -2
@@ -0,0 +1,155 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ class ContactChannel < Zavudev::Internal::Type::BaseModel
6
+ # @!attribute id
7
+ #
8
+ # @return [String]
9
+ required :id, String
10
+
11
+ # @!attribute channel
12
+ # Channel type.
13
+ #
14
+ # @return [Symbol, Zavudev::Models::ContactChannel::Channel]
15
+ required :channel, enum: -> { Zavudev::ContactChannel::Channel }
16
+
17
+ # @!attribute created_at
18
+ #
19
+ # @return [Time]
20
+ required :created_at, Time, api_name: :createdAt
21
+
22
+ # @!attribute identifier
23
+ # Channel identifier (phone number or email address).
24
+ #
25
+ # @return [String]
26
+ required :identifier, String
27
+
28
+ # @!attribute is_primary
29
+ # Whether this is the primary channel for its type.
30
+ #
31
+ # @return [Boolean]
32
+ required :is_primary, Zavudev::Internal::Type::Boolean, api_name: :isPrimary
33
+
34
+ # @!attribute verified
35
+ # Whether this channel has been verified.
36
+ #
37
+ # @return [Boolean]
38
+ required :verified, Zavudev::Internal::Type::Boolean
39
+
40
+ # @!attribute country_code
41
+ # ISO country code for phone numbers.
42
+ #
43
+ # @return [String, nil]
44
+ optional :country_code, String, api_name: :countryCode
45
+
46
+ # @!attribute label
47
+ # Optional label for the channel.
48
+ #
49
+ # @return [String, nil]
50
+ optional :label, String
51
+
52
+ # @!attribute last_inbound_at
53
+ # Last time a message was received on this channel.
54
+ #
55
+ # @return [Time, nil]
56
+ optional :last_inbound_at, Time, api_name: :lastInboundAt
57
+
58
+ # @!attribute metadata
59
+ #
60
+ # @return [Hash{Symbol=>String}, nil]
61
+ optional :metadata, Zavudev::Internal::Type::HashOf[String]
62
+
63
+ # @!attribute metrics
64
+ # Delivery metrics for this channel.
65
+ #
66
+ # @return [Zavudev::Models::ContactChannel::Metrics, nil]
67
+ optional :metrics, -> { Zavudev::ContactChannel::Metrics }
68
+
69
+ # @!attribute updated_at
70
+ #
71
+ # @return [Time, nil]
72
+ optional :updated_at, Time, api_name: :updatedAt
73
+
74
+ # @!method initialize(id:, channel:, created_at:, identifier:, is_primary:, verified:, country_code: nil, label: nil, last_inbound_at: nil, metadata: nil, metrics: nil, updated_at: nil)
75
+ # A communication channel for a contact.
76
+ #
77
+ # @param id [String]
78
+ #
79
+ # @param channel [Symbol, Zavudev::Models::ContactChannel::Channel] Channel type.
80
+ #
81
+ # @param created_at [Time]
82
+ #
83
+ # @param identifier [String] Channel identifier (phone number or email address).
84
+ #
85
+ # @param is_primary [Boolean] Whether this is the primary channel for its type.
86
+ #
87
+ # @param verified [Boolean] Whether this channel has been verified.
88
+ #
89
+ # @param country_code [String] ISO country code for phone numbers.
90
+ #
91
+ # @param label [String] Optional label for the channel.
92
+ #
93
+ # @param last_inbound_at [Time] Last time a message was received on this channel.
94
+ #
95
+ # @param metadata [Hash{Symbol=>String}]
96
+ #
97
+ # @param metrics [Zavudev::Models::ContactChannel::Metrics] Delivery metrics for this channel.
98
+ #
99
+ # @param updated_at [Time]
100
+
101
+ # Channel type.
102
+ #
103
+ # @see Zavudev::Models::ContactChannel#channel
104
+ module Channel
105
+ extend Zavudev::Internal::Type::Enum
106
+
107
+ SMS = :sms
108
+ WHATSAPP = :whatsapp
109
+ EMAIL = :email
110
+ TELEGRAM = :telegram
111
+ VOICE = :voice
112
+
113
+ # @!method self.values
114
+ # @return [Array<Symbol>]
115
+ end
116
+
117
+ # @see Zavudev::Models::ContactChannel#metrics
118
+ class Metrics < Zavudev::Internal::Type::BaseModel
119
+ # @!attribute avg_delivery_time_ms
120
+ #
121
+ # @return [Float, nil]
122
+ optional :avg_delivery_time_ms, Float, api_name: :avgDeliveryTimeMs
123
+
124
+ # @!attribute failure_count
125
+ #
126
+ # @return [Integer, nil]
127
+ optional :failure_count, Integer, api_name: :failureCount
128
+
129
+ # @!attribute last_success_at
130
+ #
131
+ # @return [Time, nil]
132
+ optional :last_success_at, Time, api_name: :lastSuccessAt
133
+
134
+ # @!attribute success_count
135
+ #
136
+ # @return [Integer, nil]
137
+ optional :success_count, Integer, api_name: :successCount
138
+
139
+ # @!attribute total_attempts
140
+ #
141
+ # @return [Integer, nil]
142
+ optional :total_attempts, Integer, api_name: :totalAttempts
143
+
144
+ # @!method initialize(avg_delivery_time_ms: nil, failure_count: nil, last_success_at: nil, success_count: nil, total_attempts: nil)
145
+ # Delivery metrics for this channel.
146
+ #
147
+ # @param avg_delivery_time_ms [Float]
148
+ # @param failure_count [Integer]
149
+ # @param last_success_at [Time]
150
+ # @param success_count [Integer]
151
+ # @param total_attempts [Integer]
152
+ end
153
+ end
154
+ end
155
+ end
@@ -0,0 +1,99 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ # @see Zavudev::Resources::Contacts#create
6
+ class ContactCreateParams < Zavudev::Internal::Type::BaseModel
7
+ extend Zavudev::Internal::Type::RequestParameters::Converter
8
+ include Zavudev::Internal::Type::RequestParameters
9
+
10
+ # @!attribute channels
11
+ # Communication channels for the contact.
12
+ #
13
+ # @return [Array<Zavudev::Models::ContactCreateParams::Channel>]
14
+ required :channels, -> { Zavudev::Internal::Type::ArrayOf[Zavudev::ContactCreateParams::Channel] }
15
+
16
+ # @!attribute display_name
17
+ # Display name for the contact.
18
+ #
19
+ # @return [String, nil]
20
+ optional :display_name, String, api_name: :displayName
21
+
22
+ # @!attribute metadata
23
+ # Arbitrary metadata to associate with the contact.
24
+ #
25
+ # @return [Hash{Symbol=>String}, nil]
26
+ optional :metadata, Zavudev::Internal::Type::HashOf[String]
27
+
28
+ # @!method initialize(channels:, display_name: nil, metadata: nil, request_options: {})
29
+ # @param channels [Array<Zavudev::Models::ContactCreateParams::Channel>] Communication channels for the contact.
30
+ #
31
+ # @param display_name [String] Display name for the contact.
32
+ #
33
+ # @param metadata [Hash{Symbol=>String}] Arbitrary metadata to associate with the contact.
34
+ #
35
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}]
36
+
37
+ class Channel < Zavudev::Internal::Type::BaseModel
38
+ # @!attribute channel
39
+ # Channel type.
40
+ #
41
+ # @return [Symbol, Zavudev::Models::ContactCreateParams::Channel::Channel]
42
+ required :channel, enum: -> { Zavudev::ContactCreateParams::Channel::Channel }
43
+
44
+ # @!attribute identifier
45
+ # Channel identifier (phone number in E.164 format or email address).
46
+ #
47
+ # @return [String]
48
+ required :identifier, String
49
+
50
+ # @!attribute country_code
51
+ # ISO country code for phone numbers.
52
+ #
53
+ # @return [String, nil]
54
+ optional :country_code, String, api_name: :countryCode
55
+
56
+ # @!attribute is_primary
57
+ # Whether this should be the primary channel for its type.
58
+ #
59
+ # @return [Boolean, nil]
60
+ optional :is_primary, Zavudev::Internal::Type::Boolean, api_name: :isPrimary
61
+
62
+ # @!attribute label
63
+ # Optional label for the channel.
64
+ #
65
+ # @return [String, nil]
66
+ optional :label, String
67
+
68
+ # @!method initialize(channel:, identifier:, country_code: nil, is_primary: nil, label: nil)
69
+ # Input for creating a contact channel.
70
+ #
71
+ # @param channel [Symbol, Zavudev::Models::ContactCreateParams::Channel::Channel] Channel type.
72
+ #
73
+ # @param identifier [String] Channel identifier (phone number in E.164 format or email address).
74
+ #
75
+ # @param country_code [String] ISO country code for phone numbers.
76
+ #
77
+ # @param is_primary [Boolean] Whether this should be the primary channel for its type.
78
+ #
79
+ # @param label [String] Optional label for the channel.
80
+
81
+ # Channel type.
82
+ #
83
+ # @see Zavudev::Models::ContactCreateParams::Channel#channel
84
+ module Channel
85
+ extend Zavudev::Internal::Type::Enum
86
+
87
+ SMS = :sms
88
+ WHATSAPP = :whatsapp
89
+ EMAIL = :email
90
+ TELEGRAM = :telegram
91
+ VOICE = :voice
92
+
93
+ # @!method self.values
94
+ # @return [Array<Symbol>]
95
+ end
96
+ end
97
+ end
98
+ end
99
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ # @see Zavudev::Resources::Contacts#dismiss_merge_suggestion
6
+ class ContactDismissMergeSuggestionParams < Zavudev::Internal::Type::BaseModel
7
+ extend Zavudev::Internal::Type::RequestParameters::Converter
8
+ include Zavudev::Internal::Type::RequestParameters
9
+
10
+ # @!attribute contact_id
11
+ #
12
+ # @return [String]
13
+ required :contact_id, String
14
+
15
+ # @!method initialize(contact_id:, request_options: {})
16
+ # @param contact_id [String]
17
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}]
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,33 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ # @see Zavudev::Resources::Contacts#merge
6
+ class ContactMergeParams < Zavudev::Internal::Type::BaseModel
7
+ extend Zavudev::Internal::Type::RequestParameters::Converter
8
+ include Zavudev::Internal::Type::RequestParameters
9
+
10
+ # @!attribute contact_id
11
+ #
12
+ # @return [String]
13
+ required :contact_id, String
14
+
15
+ # @!attribute source_contact_id
16
+ # ID of the contact to merge into the target contact. The source contact will be
17
+ # marked as merged.
18
+ #
19
+ # @return [String]
20
+ required :source_contact_id, String, api_name: :sourceContactId
21
+
22
+ # @!method initialize(contact_id:, source_contact_id:, request_options: {})
23
+ # Some parameter documentations has been truncated, see
24
+ # {Zavudev::Models::ContactMergeParams} for more details.
25
+ #
26
+ # @param contact_id [String]
27
+ #
28
+ # @param source_contact_id [String] ID of the contact to merge into the target contact. The source contact will be m
29
+ #
30
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}]
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,77 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ module Contacts
6
+ # @see Zavudev::Resources::Contacts::Channels#add
7
+ class ChannelAddParams < Zavudev::Internal::Type::BaseModel
8
+ extend Zavudev::Internal::Type::RequestParameters::Converter
9
+ include Zavudev::Internal::Type::RequestParameters
10
+
11
+ # @!attribute contact_id
12
+ #
13
+ # @return [String]
14
+ required :contact_id, String
15
+
16
+ # @!attribute channel
17
+ # Channel type.
18
+ #
19
+ # @return [Symbol, Zavudev::Models::Contacts::ChannelAddParams::Channel]
20
+ required :channel, enum: -> { Zavudev::Contacts::ChannelAddParams::Channel }
21
+
22
+ # @!attribute identifier
23
+ # Channel identifier (phone number in E.164 format or email address).
24
+ #
25
+ # @return [String]
26
+ required :identifier, String
27
+
28
+ # @!attribute country_code
29
+ # ISO country code for phone numbers.
30
+ #
31
+ # @return [String, nil]
32
+ optional :country_code, String, api_name: :countryCode
33
+
34
+ # @!attribute is_primary
35
+ # Whether this should be the primary channel for its type.
36
+ #
37
+ # @return [Boolean, nil]
38
+ optional :is_primary, Zavudev::Internal::Type::Boolean, api_name: :isPrimary
39
+
40
+ # @!attribute label
41
+ # Optional label for the channel.
42
+ #
43
+ # @return [String, nil]
44
+ optional :label, String
45
+
46
+ # @!method initialize(contact_id:, channel:, identifier:, country_code: nil, is_primary: nil, label: nil, request_options: {})
47
+ # @param contact_id [String]
48
+ #
49
+ # @param channel [Symbol, Zavudev::Models::Contacts::ChannelAddParams::Channel] Channel type.
50
+ #
51
+ # @param identifier [String] Channel identifier (phone number in E.164 format or email address).
52
+ #
53
+ # @param country_code [String] ISO country code for phone numbers.
54
+ #
55
+ # @param is_primary [Boolean] Whether this should be the primary channel for its type.
56
+ #
57
+ # @param label [String] Optional label for the channel.
58
+ #
59
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}]
60
+
61
+ # Channel type.
62
+ module Channel
63
+ extend Zavudev::Internal::Type::Enum
64
+
65
+ SMS = :sms
66
+ WHATSAPP = :whatsapp
67
+ EMAIL = :email
68
+ TELEGRAM = :telegram
69
+ VOICE = :voice
70
+
71
+ # @!method self.values
72
+ # @return [Array<Symbol>]
73
+ end
74
+ end
75
+ end
76
+ end
77
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ module Contacts
6
+ # @see Zavudev::Resources::Contacts::Channels#add
7
+ class ChannelAddResponse < Zavudev::Internal::Type::BaseModel
8
+ # @!attribute channel
9
+ # A communication channel for a contact.
10
+ #
11
+ # @return [Zavudev::Models::ContactChannel]
12
+ required :channel, -> { Zavudev::ContactChannel }
13
+
14
+ # @!method initialize(channel:)
15
+ # @param channel [Zavudev::Models::ContactChannel] A communication channel for a contact.
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ module Contacts
6
+ # @see Zavudev::Resources::Contacts::Channels#remove
7
+ class ChannelRemoveParams < Zavudev::Internal::Type::BaseModel
8
+ extend Zavudev::Internal::Type::RequestParameters::Converter
9
+ include Zavudev::Internal::Type::RequestParameters
10
+
11
+ # @!attribute contact_id
12
+ #
13
+ # @return [String]
14
+ required :contact_id, String
15
+
16
+ # @!attribute channel_id
17
+ #
18
+ # @return [String]
19
+ required :channel_id, String
20
+
21
+ # @!method initialize(contact_id:, channel_id:, request_options: {})
22
+ # @param contact_id [String]
23
+ # @param channel_id [String]
24
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}]
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ module Contacts
6
+ # @see Zavudev::Resources::Contacts::Channels#set_primary
7
+ class ChannelSetPrimaryParams < Zavudev::Internal::Type::BaseModel
8
+ extend Zavudev::Internal::Type::RequestParameters::Converter
9
+ include Zavudev::Internal::Type::RequestParameters
10
+
11
+ # @!attribute contact_id
12
+ #
13
+ # @return [String]
14
+ required :contact_id, String
15
+
16
+ # @!attribute channel_id
17
+ #
18
+ # @return [String]
19
+ required :channel_id, String
20
+
21
+ # @!method initialize(contact_id:, channel_id:, request_options: {})
22
+ # @param contact_id [String]
23
+ # @param channel_id [String]
24
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}]
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ module Contacts
6
+ # @see Zavudev::Resources::Contacts::Channels#set_primary
7
+ class ChannelSetPrimaryResponse < Zavudev::Internal::Type::BaseModel
8
+ # @!attribute channel
9
+ # A communication channel for a contact.
10
+ #
11
+ # @return [Zavudev::Models::ContactChannel]
12
+ required :channel, -> { Zavudev::ContactChannel }
13
+
14
+ # @!method initialize(channel:)
15
+ # @param channel [Zavudev::Models::ContactChannel] A communication channel for a contact.
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,53 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ module Contacts
6
+ # @see Zavudev::Resources::Contacts::Channels#update
7
+ class ChannelUpdateParams < Zavudev::Internal::Type::BaseModel
8
+ extend Zavudev::Internal::Type::RequestParameters::Converter
9
+ include Zavudev::Internal::Type::RequestParameters
10
+
11
+ # @!attribute contact_id
12
+ #
13
+ # @return [String]
14
+ required :contact_id, String
15
+
16
+ # @!attribute channel_id
17
+ #
18
+ # @return [String]
19
+ required :channel_id, String
20
+
21
+ # @!attribute label
22
+ # Optional label for the channel. Set to null to clear.
23
+ #
24
+ # @return [String, nil]
25
+ optional :label, String, nil?: true
26
+
27
+ # @!attribute metadata
28
+ #
29
+ # @return [Hash{Symbol=>String}, nil]
30
+ optional :metadata, Zavudev::Internal::Type::HashOf[String]
31
+
32
+ # @!attribute verified
33
+ # Whether the channel is verified.
34
+ #
35
+ # @return [Boolean, nil]
36
+ optional :verified, Zavudev::Internal::Type::Boolean
37
+
38
+ # @!method initialize(contact_id:, channel_id:, label: nil, metadata: nil, verified: nil, request_options: {})
39
+ # @param contact_id [String]
40
+ #
41
+ # @param channel_id [String]
42
+ #
43
+ # @param label [String, nil] Optional label for the channel. Set to null to clear.
44
+ #
45
+ # @param metadata [Hash{Symbol=>String}]
46
+ #
47
+ # @param verified [Boolean] Whether the channel is verified.
48
+ #
49
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}]
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ module Contacts
6
+ # @see Zavudev::Resources::Contacts::Channels#update
7
+ class ChannelUpdateResponse < Zavudev::Internal::Type::BaseModel
8
+ # @!attribute channel
9
+ # A communication channel for a contact.
10
+ #
11
+ # @return [Zavudev::Models::ContactChannel]
12
+ required :channel, -> { Zavudev::ContactChannel }
13
+
14
+ # @!method initialize(channel:)
15
+ # @param channel [Zavudev::Models::ContactChannel] A communication channel for a contact.
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,122 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ # @see Zavudev::Resources::Exports#list
6
+ class DataExport < Zavudev::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ #
9
+ # @return [String]
10
+ required :id, String
11
+
12
+ # @!attribute created_at
13
+ #
14
+ # @return [Time]
15
+ required :created_at, Time, api_name: :createdAt
16
+
17
+ # @!attribute data_types
18
+ #
19
+ # @return [Array<Symbol, Zavudev::Models::DataExport::DataType>]
20
+ required :data_types,
21
+ -> { Zavudev::Internal::Type::ArrayOf[enum: Zavudev::DataExport::DataType] },
22
+ api_name: :dataTypes
23
+
24
+ # @!attribute expires_at
25
+ # When the export download link expires (24 hours after creation).
26
+ #
27
+ # @return [Time]
28
+ required :expires_at, Time, api_name: :expiresAt
29
+
30
+ # @!attribute status
31
+ # Status of a data export job.
32
+ #
33
+ # @return [Symbol, Zavudev::Models::DataExport::Status]
34
+ required :status, enum: -> { Zavudev::DataExport::Status }
35
+
36
+ # @!attribute completed_at
37
+ #
38
+ # @return [Time, nil]
39
+ optional :completed_at, Time, api_name: :completedAt, nil?: true
40
+
41
+ # @!attribute date_from
42
+ #
43
+ # @return [Time, nil]
44
+ optional :date_from, Time, api_name: :dateFrom, nil?: true
45
+
46
+ # @!attribute date_to
47
+ #
48
+ # @return [Time, nil]
49
+ optional :date_to, Time, api_name: :dateTo, nil?: true
50
+
51
+ # @!attribute download_url
52
+ # URL to download the export file. Only available when status is 'completed'.
53
+ #
54
+ # @return [String, nil]
55
+ optional :download_url, String, api_name: :downloadUrl, nil?: true
56
+
57
+ # @!attribute error_message
58
+ # Error message if the export failed.
59
+ #
60
+ # @return [String, nil]
61
+ optional :error_message, String, api_name: :errorMessage, nil?: true
62
+
63
+ # @!attribute file_size
64
+ # Size of the export file in bytes.
65
+ #
66
+ # @return [Integer, nil]
67
+ optional :file_size, Integer, api_name: :fileSize, nil?: true
68
+
69
+ # @!method initialize(id:, created_at:, data_types:, expires_at:, status:, completed_at: nil, date_from: nil, date_to: nil, download_url: nil, error_message: nil, file_size: nil)
70
+ # @param id [String]
71
+ #
72
+ # @param created_at [Time]
73
+ #
74
+ # @param data_types [Array<Symbol, Zavudev::Models::DataExport::DataType>]
75
+ #
76
+ # @param expires_at [Time] When the export download link expires (24 hours after creation).
77
+ #
78
+ # @param status [Symbol, Zavudev::Models::DataExport::Status] Status of a data export job.
79
+ #
80
+ # @param completed_at [Time, nil]
81
+ #
82
+ # @param date_from [Time, nil]
83
+ #
84
+ # @param date_to [Time, nil]
85
+ #
86
+ # @param download_url [String, nil] URL to download the export file. Only available when status is 'completed'.
87
+ #
88
+ # @param error_message [String, nil] Error message if the export failed.
89
+ #
90
+ # @param file_size [Integer, nil] Size of the export file in bytes.
91
+
92
+ # Types of data that can be exported.
93
+ module DataType
94
+ extend Zavudev::Internal::Type::Enum
95
+
96
+ MESSAGES = :messages
97
+ CONVERSATIONS = :conversations
98
+ WEBHOOK_DELIVERIES = :webhookDeliveries
99
+ AGENT_EXECUTIONS = :agentExecutions
100
+ ACTIVITIES = :activities
101
+
102
+ # @!method self.values
103
+ # @return [Array<Symbol>]
104
+ end
105
+
106
+ # Status of a data export job.
107
+ #
108
+ # @see Zavudev::Models::DataExport#status
109
+ module Status
110
+ extend Zavudev::Internal::Type::Enum
111
+
112
+ PENDING = :pending
113
+ PROCESSING = :processing
114
+ COMPLETED = :completed
115
+ FAILED = :failed
116
+
117
+ # @!method self.values
118
+ # @return [Array<Symbol>]
119
+ end
120
+ end
121
+ end
122
+ end