zavudev 0.0.2

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 (596) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +10 -0
  4. data/README.md +273 -0
  5. data/SECURITY.md +27 -0
  6. data/lib/zavudev/client.rb +106 -0
  7. data/lib/zavudev/errors.rb +228 -0
  8. data/lib/zavudev/file_part.rb +58 -0
  9. data/lib/zavudev/internal/cursor.rb +86 -0
  10. data/lib/zavudev/internal/transport/base_client.rb +573 -0
  11. data/lib/zavudev/internal/transport/pooled_net_requester.rb +210 -0
  12. data/lib/zavudev/internal/type/array_of.rb +168 -0
  13. data/lib/zavudev/internal/type/base_model.rb +531 -0
  14. data/lib/zavudev/internal/type/base_page.rb +55 -0
  15. data/lib/zavudev/internal/type/boolean.rb +77 -0
  16. data/lib/zavudev/internal/type/converter.rb +327 -0
  17. data/lib/zavudev/internal/type/enum.rb +156 -0
  18. data/lib/zavudev/internal/type/file_input.rb +111 -0
  19. data/lib/zavudev/internal/type/hash_of.rb +188 -0
  20. data/lib/zavudev/internal/type/request_parameters.rb +42 -0
  21. data/lib/zavudev/internal/type/union.rb +237 -0
  22. data/lib/zavudev/internal/type/unknown.rb +81 -0
  23. data/lib/zavudev/internal/util.rb +951 -0
  24. data/lib/zavudev/internal.rb +20 -0
  25. data/lib/zavudev/models/address.rb +90 -0
  26. data/lib/zavudev/models/address_create_params.rb +68 -0
  27. data/lib/zavudev/models/address_create_response.rb +17 -0
  28. data/lib/zavudev/models/address_delete_params.rb +20 -0
  29. data/lib/zavudev/models/address_list_params.rb +26 -0
  30. data/lib/zavudev/models/address_retrieve_params.rb +20 -0
  31. data/lib/zavudev/models/address_retrieve_response.rb +17 -0
  32. data/lib/zavudev/models/address_status.rb +16 -0
  33. data/lib/zavudev/models/available_phone_number.rb +45 -0
  34. data/lib/zavudev/models/broadcast.rb +242 -0
  35. data/lib/zavudev/models/broadcast_cancel_params.rb +20 -0
  36. data/lib/zavudev/models/broadcast_cancel_response.rb +16 -0
  37. data/lib/zavudev/models/broadcast_channel.rb +22 -0
  38. data/lib/zavudev/models/broadcast_contact.rb +102 -0
  39. data/lib/zavudev/models/broadcast_contact_status.rb +20 -0
  40. data/lib/zavudev/models/broadcast_content.rb +58 -0
  41. data/lib/zavudev/models/broadcast_create_params.rb +101 -0
  42. data/lib/zavudev/models/broadcast_create_response.rb +16 -0
  43. data/lib/zavudev/models/broadcast_delete_params.rb +20 -0
  44. data/lib/zavudev/models/broadcast_list_params.rb +36 -0
  45. data/lib/zavudev/models/broadcast_message_type.rb +20 -0
  46. data/lib/zavudev/models/broadcast_progress.rb +118 -0
  47. data/lib/zavudev/models/broadcast_progress_params.rb +20 -0
  48. data/lib/zavudev/models/broadcast_reschedule_params.rb +29 -0
  49. data/lib/zavudev/models/broadcast_reschedule_response.rb +16 -0
  50. data/lib/zavudev/models/broadcast_retrieve_params.rb +20 -0
  51. data/lib/zavudev/models/broadcast_retrieve_response.rb +16 -0
  52. data/lib/zavudev/models/broadcast_send_params.rb +29 -0
  53. data/lib/zavudev/models/broadcast_send_response.rb +16 -0
  54. data/lib/zavudev/models/broadcast_status.rb +26 -0
  55. data/lib/zavudev/models/broadcast_update_params.rb +64 -0
  56. data/lib/zavudev/models/broadcast_update_response.rb +16 -0
  57. data/lib/zavudev/models/broadcasts/contact_add_params.rb +51 -0
  58. data/lib/zavudev/models/broadcasts/contact_add_response.rb +60 -0
  59. data/lib/zavudev/models/broadcasts/contact_list_params.rb +45 -0
  60. data/lib/zavudev/models/broadcasts/contact_remove_params.rb +28 -0
  61. data/lib/zavudev/models/channel.rb +22 -0
  62. data/lib/zavudev/models/contact.rb +291 -0
  63. data/lib/zavudev/models/contact_list_params.rb +32 -0
  64. data/lib/zavudev/models/contact_retrieve_by_phone_params.rb +20 -0
  65. data/lib/zavudev/models/contact_retrieve_params.rb +20 -0
  66. data/lib/zavudev/models/contact_update_params.rb +54 -0
  67. data/lib/zavudev/models/introspect_validate_phone_params.rb +20 -0
  68. data/lib/zavudev/models/introspect_validate_phone_response.rb +84 -0
  69. data/lib/zavudev/models/line_type.rb +19 -0
  70. data/lib/zavudev/models/message.rb +147 -0
  71. data/lib/zavudev/models/message_content.rb +208 -0
  72. data/lib/zavudev/models/message_list_params.rb +50 -0
  73. data/lib/zavudev/models/message_react_params.rb +36 -0
  74. data/lib/zavudev/models/message_response.rb +16 -0
  75. data/lib/zavudev/models/message_retrieve_params.rb +20 -0
  76. data/lib/zavudev/models/message_send_params.rb +124 -0
  77. data/lib/zavudev/models/message_status.rb +20 -0
  78. data/lib/zavudev/models/message_type.rb +27 -0
  79. data/lib/zavudev/models/owned_phone_number.rb +81 -0
  80. data/lib/zavudev/models/owned_phone_number_pricing.rb +40 -0
  81. data/lib/zavudev/models/phone_number_capabilities.rb +27 -0
  82. data/lib/zavudev/models/phone_number_list_params.rb +37 -0
  83. data/lib/zavudev/models/phone_number_pricing.rb +32 -0
  84. data/lib/zavudev/models/phone_number_purchase_params.rb +30 -0
  85. data/lib/zavudev/models/phone_number_purchase_response.rb +16 -0
  86. data/lib/zavudev/models/phone_number_release_params.rb +20 -0
  87. data/lib/zavudev/models/phone_number_requirements_params.rb +30 -0
  88. data/lib/zavudev/models/phone_number_requirements_response.rb +16 -0
  89. data/lib/zavudev/models/phone_number_retrieve_params.rb +20 -0
  90. data/lib/zavudev/models/phone_number_retrieve_response.rb +16 -0
  91. data/lib/zavudev/models/phone_number_search_available_params.rb +46 -0
  92. data/lib/zavudev/models/phone_number_search_available_response.rb +16 -0
  93. data/lib/zavudev/models/phone_number_status.rb +16 -0
  94. data/lib/zavudev/models/phone_number_type.rb +16 -0
  95. data/lib/zavudev/models/phone_number_update_params.rb +37 -0
  96. data/lib/zavudev/models/phone_number_update_response.rb +16 -0
  97. data/lib/zavudev/models/regulatory_document.rb +96 -0
  98. data/lib/zavudev/models/regulatory_document_create_params.rb +68 -0
  99. data/lib/zavudev/models/regulatory_document_create_response.rb +17 -0
  100. data/lib/zavudev/models/regulatory_document_delete_params.rb +20 -0
  101. data/lib/zavudev/models/regulatory_document_list_params.rb +26 -0
  102. data/lib/zavudev/models/regulatory_document_retrieve_params.rb +20 -0
  103. data/lib/zavudev/models/regulatory_document_retrieve_response.rb +17 -0
  104. data/lib/zavudev/models/regulatory_document_upload_url_params.rb +14 -0
  105. data/lib/zavudev/models/regulatory_document_upload_url_response.rb +17 -0
  106. data/lib/zavudev/models/requirement.rb +43 -0
  107. data/lib/zavudev/models/requirement_acceptance_criteria.rb +35 -0
  108. data/lib/zavudev/models/requirement_field_type.rb +18 -0
  109. data/lib/zavudev/models/requirement_type.rb +56 -0
  110. data/lib/zavudev/models/sender.rb +141 -0
  111. data/lib/zavudev/models/sender_create_params.rb +53 -0
  112. data/lib/zavudev/models/sender_delete_params.rb +20 -0
  113. data/lib/zavudev/models/sender_get_profile_params.rb +20 -0
  114. data/lib/zavudev/models/sender_list_params.rb +26 -0
  115. data/lib/zavudev/models/sender_regenerate_webhook_secret_params.rb +20 -0
  116. data/lib/zavudev/models/sender_retrieve_params.rb +20 -0
  117. data/lib/zavudev/models/sender_update_params.rb +69 -0
  118. data/lib/zavudev/models/sender_update_profile_params.rb +69 -0
  119. data/lib/zavudev/models/sender_update_profile_response.rb +24 -0
  120. data/lib/zavudev/models/sender_upload_profile_picture_params.rb +52 -0
  121. data/lib/zavudev/models/sender_upload_profile_picture_response.rb +24 -0
  122. data/lib/zavudev/models/sender_webhook.rb +46 -0
  123. data/lib/zavudev/models/senders/agent/agent_document.rb +73 -0
  124. data/lib/zavudev/models/senders/agent/agent_flow.rb +181 -0
  125. data/lib/zavudev/models/senders/agent/agent_knowledge_base.rb +64 -0
  126. data/lib/zavudev/models/senders/agent/agent_tool.rb +130 -0
  127. data/lib/zavudev/models/senders/agent/execution_list_params.rb +47 -0
  128. data/lib/zavudev/models/senders/agent/flow_create_params.rb +154 -0
  129. data/lib/zavudev/models/senders/agent/flow_create_response.rb +20 -0
  130. data/lib/zavudev/models/senders/agent/flow_delete_params.rb +30 -0
  131. data/lib/zavudev/models/senders/agent/flow_duplicate_params.rb +36 -0
  132. data/lib/zavudev/models/senders/agent/flow_duplicate_response.rb +20 -0
  133. data/lib/zavudev/models/senders/agent/flow_list_params.rb +42 -0
  134. data/lib/zavudev/models/senders/agent/flow_retrieve_params.rb +30 -0
  135. data/lib/zavudev/models/senders/agent/flow_retrieve_response.rb +20 -0
  136. data/lib/zavudev/models/senders/agent/flow_update_params.rb +160 -0
  137. data/lib/zavudev/models/senders/agent/flow_update_response.rb +20 -0
  138. data/lib/zavudev/models/senders/agent/knowledge_base_create_params.rb +36 -0
  139. data/lib/zavudev/models/senders/agent/knowledge_base_create_response.rb +24 -0
  140. data/lib/zavudev/models/senders/agent/knowledge_base_delete_params.rb +30 -0
  141. data/lib/zavudev/models/senders/agent/knowledge_base_list_params.rb +36 -0
  142. data/lib/zavudev/models/senders/agent/knowledge_base_retrieve_params.rb +30 -0
  143. data/lib/zavudev/models/senders/agent/knowledge_base_retrieve_response.rb +24 -0
  144. data/lib/zavudev/models/senders/agent/knowledge_base_update_params.rb +42 -0
  145. data/lib/zavudev/models/senders/agent/knowledge_base_update_response.rb +24 -0
  146. data/lib/zavudev/models/senders/agent/knowledge_bases/document_create_params.rb +44 -0
  147. data/lib/zavudev/models/senders/agent/knowledge_bases/document_create_response.rb +22 -0
  148. data/lib/zavudev/models/senders/agent/knowledge_bases/document_delete_params.rb +38 -0
  149. data/lib/zavudev/models/senders/agent/knowledge_bases/document_list_params.rb +44 -0
  150. data/lib/zavudev/models/senders/agent/tool_create_params.rb +118 -0
  151. data/lib/zavudev/models/senders/agent/tool_create_response.rb +20 -0
  152. data/lib/zavudev/models/senders/agent/tool_delete_params.rb +30 -0
  153. data/lib/zavudev/models/senders/agent/tool_list_params.rb +42 -0
  154. data/lib/zavudev/models/senders/agent/tool_retrieve_params.rb +30 -0
  155. data/lib/zavudev/models/senders/agent/tool_retrieve_response.rb +20 -0
  156. data/lib/zavudev/models/senders/agent/tool_test_params.rb +42 -0
  157. data/lib/zavudev/models/senders/agent/tool_test_response.rb +20 -0
  158. data/lib/zavudev/models/senders/agent/tool_update_params.rb +115 -0
  159. data/lib/zavudev/models/senders/agent/tool_update_response.rb +20 -0
  160. data/lib/zavudev/models/senders/agent.rb +164 -0
  161. data/lib/zavudev/models/senders/agent_create_params.rb +106 -0
  162. data/lib/zavudev/models/senders/agent_delete_params.rb +22 -0
  163. data/lib/zavudev/models/senders/agent_execution.rb +96 -0
  164. data/lib/zavudev/models/senders/agent_execution_status.rb +21 -0
  165. data/lib/zavudev/models/senders/agent_provider.rb +21 -0
  166. data/lib/zavudev/models/senders/agent_response.rb +19 -0
  167. data/lib/zavudev/models/senders/agent_retrieve_params.rb +22 -0
  168. data/lib/zavudev/models/senders/agent_stats.rb +54 -0
  169. data/lib/zavudev/models/senders/agent_stats_params.rb +22 -0
  170. data/lib/zavudev/models/senders/agent_update_params.rb +112 -0
  171. data/lib/zavudev/models/template.rb +259 -0
  172. data/lib/zavudev/models/template_create_params.rb +162 -0
  173. data/lib/zavudev/models/template_delete_params.rb +20 -0
  174. data/lib/zavudev/models/template_list_params.rb +26 -0
  175. data/lib/zavudev/models/template_retrieve_params.rb +20 -0
  176. data/lib/zavudev/models/template_submit_params.rb +37 -0
  177. data/lib/zavudev/models/webhook_event.rb +42 -0
  178. data/lib/zavudev/models/webhook_secret_response.rb +17 -0
  179. data/lib/zavudev/models/whatsapp_business_profile.rb +66 -0
  180. data/lib/zavudev/models/whatsapp_business_profile_response.rb +17 -0
  181. data/lib/zavudev/models/whatsapp_business_profile_vertical.rb +33 -0
  182. data/lib/zavudev/models/whatsapp_category.rb +17 -0
  183. data/lib/zavudev/models.rb +219 -0
  184. data/lib/zavudev/request_options.rb +77 -0
  185. data/lib/zavudev/resources/addresses.rb +106 -0
  186. data/lib/zavudev/resources/broadcasts/contacts.rb +97 -0
  187. data/lib/zavudev/resources/broadcasts.rb +252 -0
  188. data/lib/zavudev/resources/contacts.rb +104 -0
  189. data/lib/zavudev/resources/introspect.rb +35 -0
  190. data/lib/zavudev/resources/messages.rb +164 -0
  191. data/lib/zavudev/resources/phone_numbers.rb +187 -0
  192. data/lib/zavudev/resources/regulatory_documents.rb +126 -0
  193. data/lib/zavudev/resources/senders/agent/executions.rb +48 -0
  194. data/lib/zavudev/resources/senders/agent/flows.rb +191 -0
  195. data/lib/zavudev/resources/senders/agent/knowledge_bases/documents.rb +117 -0
  196. data/lib/zavudev/resources/senders/agent/knowledge_bases.rb +152 -0
  197. data/lib/zavudev/resources/senders/agent/tools.rb +198 -0
  198. data/lib/zavudev/resources/senders/agent.rb +179 -0
  199. data/lib/zavudev/resources/senders.rb +246 -0
  200. data/lib/zavudev/resources/templates.rb +141 -0
  201. data/lib/zavudev/version.rb +5 -0
  202. data/lib/zavudev.rb +230 -0
  203. data/manifest.yaml +17 -0
  204. data/rbi/zavudev/client.rbi +73 -0
  205. data/rbi/zavudev/errors.rbi +205 -0
  206. data/rbi/zavudev/file_part.rbi +37 -0
  207. data/rbi/zavudev/internal/cursor.rbi +22 -0
  208. data/rbi/zavudev/internal/transport/base_client.rbi +297 -0
  209. data/rbi/zavudev/internal/transport/pooled_net_requester.rbi +83 -0
  210. data/rbi/zavudev/internal/type/array_of.rbi +104 -0
  211. data/rbi/zavudev/internal/type/base_model.rbi +306 -0
  212. data/rbi/zavudev/internal/type/base_page.rbi +42 -0
  213. data/rbi/zavudev/internal/type/boolean.rbi +58 -0
  214. data/rbi/zavudev/internal/type/converter.rbi +216 -0
  215. data/rbi/zavudev/internal/type/enum.rbi +82 -0
  216. data/rbi/zavudev/internal/type/file_input.rbi +59 -0
  217. data/rbi/zavudev/internal/type/hash_of.rbi +104 -0
  218. data/rbi/zavudev/internal/type/request_parameters.rbi +29 -0
  219. data/rbi/zavudev/internal/type/union.rbi +128 -0
  220. data/rbi/zavudev/internal/type/unknown.rbi +58 -0
  221. data/rbi/zavudev/internal/util.rbi +504 -0
  222. data/rbi/zavudev/internal.rbi +16 -0
  223. data/rbi/zavudev/models/address.rbi +109 -0
  224. data/rbi/zavudev/models/address_create_params.rbi +104 -0
  225. data/rbi/zavudev/models/address_create_response.rbi +35 -0
  226. data/rbi/zavudev/models/address_delete_params.rbi +35 -0
  227. data/rbi/zavudev/models/address_list_params.rbi +49 -0
  228. data/rbi/zavudev/models/address_retrieve_params.rbi +35 -0
  229. data/rbi/zavudev/models/address_retrieve_response.rbi +35 -0
  230. data/rbi/zavudev/models/address_status.rbi +20 -0
  231. data/rbi/zavudev/models/available_phone_number.rbi +82 -0
  232. data/rbi/zavudev/models/broadcast.rbi +318 -0
  233. data/rbi/zavudev/models/broadcast_cancel_params.rbi +35 -0
  234. data/rbi/zavudev/models/broadcast_cancel_response.rbi +31 -0
  235. data/rbi/zavudev/models/broadcast_channel.rbi +28 -0
  236. data/rbi/zavudev/models/broadcast_contact.rbi +138 -0
  237. data/rbi/zavudev/models/broadcast_contact_status.rbi +30 -0
  238. data/rbi/zavudev/models/broadcast_content.rbi +96 -0
  239. data/rbi/zavudev/models/broadcast_create_params.rbi +148 -0
  240. data/rbi/zavudev/models/broadcast_create_response.rbi +31 -0
  241. data/rbi/zavudev/models/broadcast_delete_params.rbi +35 -0
  242. data/rbi/zavudev/models/broadcast_list_params.rbi +64 -0
  243. data/rbi/zavudev/models/broadcast_message_type.rbi +27 -0
  244. data/rbi/zavudev/models/broadcast_progress.rbi +141 -0
  245. data/rbi/zavudev/models/broadcast_progress_params.rbi +35 -0
  246. data/rbi/zavudev/models/broadcast_reschedule_params.rbi +49 -0
  247. data/rbi/zavudev/models/broadcast_reschedule_response.rbi +31 -0
  248. data/rbi/zavudev/models/broadcast_retrieve_params.rbi +35 -0
  249. data/rbi/zavudev/models/broadcast_retrieve_response.rbi +31 -0
  250. data/rbi/zavudev/models/broadcast_send_params.rbi +52 -0
  251. data/rbi/zavudev/models/broadcast_send_response.rbi +31 -0
  252. data/rbi/zavudev/models/broadcast_status.rbi +32 -0
  253. data/rbi/zavudev/models/broadcast_update_params.rbi +97 -0
  254. data/rbi/zavudev/models/broadcast_update_response.rbi +31 -0
  255. data/rbi/zavudev/models/broadcasts/contact_add_params.rbi +101 -0
  256. data/rbi/zavudev/models/broadcasts/contact_add_response.rbi +118 -0
  257. data/rbi/zavudev/models/broadcasts/contact_list_params.rbi +75 -0
  258. data/rbi/zavudev/models/broadcasts/contact_remove_params.rbi +48 -0
  259. data/rbi/zavudev/models/channel.rbi +26 -0
  260. data/rbi/zavudev/models/contact.rbi +424 -0
  261. data/rbi/zavudev/models/contact_list_params.rbi +62 -0
  262. data/rbi/zavudev/models/contact_retrieve_by_phone_params.rbi +38 -0
  263. data/rbi/zavudev/models/contact_retrieve_params.rbi +35 -0
  264. data/rbi/zavudev/models/contact_update_params.rbi +114 -0
  265. data/rbi/zavudev/models/introspect_validate_phone_params.rbi +38 -0
  266. data/rbi/zavudev/models/introspect_validate_phone_response.rbi +148 -0
  267. data/rbi/zavudev/models/line_type.rbi +23 -0
  268. data/rbi/zavudev/models/message.rbi +174 -0
  269. data/rbi/zavudev/models/message_content.rbi +337 -0
  270. data/rbi/zavudev/models/message_list_params.rbi +82 -0
  271. data/rbi/zavudev/models/message_react_params.rbi +58 -0
  272. data/rbi/zavudev/models/message_response.rbi +28 -0
  273. data/rbi/zavudev/models/message_retrieve_params.rbi +35 -0
  274. data/rbi/zavudev/models/message_send_params.rbi +181 -0
  275. data/rbi/zavudev/models/message_status.rbi +25 -0
  276. data/rbi/zavudev/models/message_type.rbi +31 -0
  277. data/rbi/zavudev/models/owned_phone_number.rbi +108 -0
  278. data/rbi/zavudev/models/owned_phone_number_pricing.rbi +73 -0
  279. data/rbi/zavudev/models/phone_number_capabilities.rbi +46 -0
  280. data/rbi/zavudev/models/phone_number_list_params.rbi +66 -0
  281. data/rbi/zavudev/models/phone_number_pricing.rbi +62 -0
  282. data/rbi/zavudev/models/phone_number_purchase_params.rbi +54 -0
  283. data/rbi/zavudev/models/phone_number_purchase_response.rbi +33 -0
  284. data/rbi/zavudev/models/phone_number_release_params.rbi +35 -0
  285. data/rbi/zavudev/models/phone_number_requirements_params.rbi +57 -0
  286. data/rbi/zavudev/models/phone_number_requirements_response.rbi +30 -0
  287. data/rbi/zavudev/models/phone_number_retrieve_params.rbi +35 -0
  288. data/rbi/zavudev/models/phone_number_retrieve_response.rbi +33 -0
  289. data/rbi/zavudev/models/phone_number_search_available_params.rbi +79 -0
  290. data/rbi/zavudev/models/phone_number_search_available_response.rbi +32 -0
  291. data/rbi/zavudev/models/phone_number_status.rbi +22 -0
  292. data/rbi/zavudev/models/phone_number_type.rbi +20 -0
  293. data/rbi/zavudev/models/phone_number_update_params.rbi +57 -0
  294. data/rbi/zavudev/models/phone_number_update_response.rbi +33 -0
  295. data/rbi/zavudev/models/regulatory_document.rbi +175 -0
  296. data/rbi/zavudev/models/regulatory_document_create_params.rbi +135 -0
  297. data/rbi/zavudev/models/regulatory_document_create_response.rbi +37 -0
  298. data/rbi/zavudev/models/regulatory_document_delete_params.rbi +38 -0
  299. data/rbi/zavudev/models/regulatory_document_list_params.rbi +52 -0
  300. data/rbi/zavudev/models/regulatory_document_retrieve_params.rbi +38 -0
  301. data/rbi/zavudev/models/regulatory_document_retrieve_response.rbi +37 -0
  302. data/rbi/zavudev/models/regulatory_document_upload_url_params.rbi +30 -0
  303. data/rbi/zavudev/models/regulatory_document_upload_url_response.rbi +30 -0
  304. data/rbi/zavudev/models/requirement.rbi +58 -0
  305. data/rbi/zavudev/models/requirement_acceptance_criteria.rbi +57 -0
  306. data/rbi/zavudev/models/requirement_field_type.rbi +25 -0
  307. data/rbi/zavudev/models/requirement_type.rbi +77 -0
  308. data/rbi/zavudev/models/sender.rbi +234 -0
  309. data/rbi/zavudev/models/sender_create_params.rbi +80 -0
  310. data/rbi/zavudev/models/sender_delete_params.rbi +35 -0
  311. data/rbi/zavudev/models/sender_get_profile_params.rbi +35 -0
  312. data/rbi/zavudev/models/sender_list_params.rbi +49 -0
  313. data/rbi/zavudev/models/sender_regenerate_webhook_secret_params.rbi +38 -0
  314. data/rbi/zavudev/models/sender_retrieve_params.rbi +35 -0
  315. data/rbi/zavudev/models/sender_update_params.rbi +102 -0
  316. data/rbi/zavudev/models/sender_update_profile_params.rbi +113 -0
  317. data/rbi/zavudev/models/sender_update_profile_response.rbi +46 -0
  318. data/rbi/zavudev/models/sender_upload_profile_picture_params.rbi +96 -0
  319. data/rbi/zavudev/models/sender_upload_profile_picture_response.rbi +46 -0
  320. data/rbi/zavudev/models/sender_webhook.rbi +67 -0
  321. data/rbi/zavudev/models/senders/agent/agent_document.rbi +92 -0
  322. data/rbi/zavudev/models/senders/agent/agent_flow.rbi +331 -0
  323. data/rbi/zavudev/models/senders/agent/agent_knowledge_base.rbi +86 -0
  324. data/rbi/zavudev/models/senders/agent/agent_tool.rbi +229 -0
  325. data/rbi/zavudev/models/senders/agent/execution_list_params.rbi +83 -0
  326. data/rbi/zavudev/models/senders/agent/flow_create_params.rbi +336 -0
  327. data/rbi/zavudev/models/senders/agent/flow_create_response.rbi +37 -0
  328. data/rbi/zavudev/models/senders/agent/flow_delete_params.rbi +50 -0
  329. data/rbi/zavudev/models/senders/agent/flow_duplicate_params.rbi +55 -0
  330. data/rbi/zavudev/models/senders/agent/flow_duplicate_response.rbi +37 -0
  331. data/rbi/zavudev/models/senders/agent/flow_list_params.rbi +75 -0
  332. data/rbi/zavudev/models/senders/agent/flow_retrieve_params.rbi +50 -0
  333. data/rbi/zavudev/models/senders/agent/flow_retrieve_response.rbi +37 -0
  334. data/rbi/zavudev/models/senders/agent/flow_update_params.rbi +363 -0
  335. data/rbi/zavudev/models/senders/agent/flow_update_response.rbi +37 -0
  336. data/rbi/zavudev/models/senders/agent/knowledge_base_create_params.rbi +58 -0
  337. data/rbi/zavudev/models/senders/agent/knowledge_base_create_response.rbi +47 -0
  338. data/rbi/zavudev/models/senders/agent/knowledge_base_delete_params.rbi +50 -0
  339. data/rbi/zavudev/models/senders/agent/knowledge_base_list_params.rbi +61 -0
  340. data/rbi/zavudev/models/senders/agent/knowledge_base_retrieve_params.rbi +50 -0
  341. data/rbi/zavudev/models/senders/agent/knowledge_base_retrieve_response.rbi +47 -0
  342. data/rbi/zavudev/models/senders/agent/knowledge_base_update_params.rbi +69 -0
  343. data/rbi/zavudev/models/senders/agent/knowledge_base_update_response.rbi +47 -0
  344. data/rbi/zavudev/models/senders/agent/knowledge_bases/document_create_params.rbi +68 -0
  345. data/rbi/zavudev/models/senders/agent/knowledge_bases/document_create_response.rbi +47 -0
  346. data/rbi/zavudev/models/senders/agent/knowledge_bases/document_delete_params.rbi +57 -0
  347. data/rbi/zavudev/models/senders/agent/knowledge_bases/document_list_params.rbi +74 -0
  348. data/rbi/zavudev/models/senders/agent/tool_create_params.rbi +229 -0
  349. data/rbi/zavudev/models/senders/agent/tool_create_response.rbi +37 -0
  350. data/rbi/zavudev/models/senders/agent/tool_delete_params.rbi +50 -0
  351. data/rbi/zavudev/models/senders/agent/tool_list_params.rbi +75 -0
  352. data/rbi/zavudev/models/senders/agent/tool_retrieve_params.rbi +50 -0
  353. data/rbi/zavudev/models/senders/agent/tool_retrieve_response.rbi +37 -0
  354. data/rbi/zavudev/models/senders/agent/tool_test_params.rbi +62 -0
  355. data/rbi/zavudev/models/senders/agent/tool_test_response.rbi +30 -0
  356. data/rbi/zavudev/models/senders/agent/tool_update_params.rbi +241 -0
  357. data/rbi/zavudev/models/senders/agent/tool_update_response.rbi +37 -0
  358. data/rbi/zavudev/models/senders/agent.rbi +221 -0
  359. data/rbi/zavudev/models/senders/agent_create_params.rbi +137 -0
  360. data/rbi/zavudev/models/senders/agent_delete_params.rbi +40 -0
  361. data/rbi/zavudev/models/senders/agent_execution.rbi +110 -0
  362. data/rbi/zavudev/models/senders/agent_execution_status.rbi +41 -0
  363. data/rbi/zavudev/models/senders/agent_provider.rbi +31 -0
  364. data/rbi/zavudev/models/senders/agent_response.rbi +36 -0
  365. data/rbi/zavudev/models/senders/agent_retrieve_params.rbi +40 -0
  366. data/rbi/zavudev/models/senders/agent_stats.rbi +69 -0
  367. data/rbi/zavudev/models/senders/agent_stats_params.rbi +40 -0
  368. data/rbi/zavudev/models/senders/agent_update_params.rbi +150 -0
  369. data/rbi/zavudev/models/template.rbi +395 -0
  370. data/rbi/zavudev/models/template_create_params.rbi +289 -0
  371. data/rbi/zavudev/models/template_delete_params.rbi +35 -0
  372. data/rbi/zavudev/models/template_list_params.rbi +49 -0
  373. data/rbi/zavudev/models/template_retrieve_params.rbi +35 -0
  374. data/rbi/zavudev/models/template_submit_params.rbi +60 -0
  375. data/rbi/zavudev/models/webhook_event.rbi +53 -0
  376. data/rbi/zavudev/models/webhook_secret_response.rbi +27 -0
  377. data/rbi/zavudev/models/whatsapp_business_profile.rbi +115 -0
  378. data/rbi/zavudev/models/whatsapp_business_profile_response.rbi +37 -0
  379. data/rbi/zavudev/models/whatsapp_business_profile_vertical.rbi +81 -0
  380. data/rbi/zavudev/models/whatsapp_category.rbi +24 -0
  381. data/rbi/zavudev/models.rbi +190 -0
  382. data/rbi/zavudev/request_options.rbi +57 -0
  383. data/rbi/zavudev/resources/addresses.rbi +73 -0
  384. data/rbi/zavudev/resources/broadcasts/contacts.rbi +67 -0
  385. data/rbi/zavudev/resources/broadcasts.rbi +180 -0
  386. data/rbi/zavudev/resources/contacts.rbi +67 -0
  387. data/rbi/zavudev/resources/introspect.rbi +22 -0
  388. data/rbi/zavudev/resources/messages.rbi +139 -0
  389. data/rbi/zavudev/resources/phone_numbers.rbi +130 -0
  390. data/rbi/zavudev/resources/regulatory_documents.rbi +77 -0
  391. data/rbi/zavudev/resources/senders/agent/executions.rbi +38 -0
  392. data/rbi/zavudev/resources/senders/agent/flows.rbi +147 -0
  393. data/rbi/zavudev/resources/senders/agent/knowledge_bases/documents.rbi +83 -0
  394. data/rbi/zavudev/resources/senders/agent/knowledge_bases.rbi +102 -0
  395. data/rbi/zavudev/resources/senders/agent/tools.rbi +143 -0
  396. data/rbi/zavudev/resources/senders/agent.rbi +131 -0
  397. data/rbi/zavudev/resources/senders.rbi +173 -0
  398. data/rbi/zavudev/resources/templates.rbi +96 -0
  399. data/rbi/zavudev/version.rbi +5 -0
  400. data/sig/zavudev/client.rbs +42 -0
  401. data/sig/zavudev/errors.rbs +117 -0
  402. data/sig/zavudev/file_part.rbs +21 -0
  403. data/sig/zavudev/internal/cursor.rbs +13 -0
  404. data/sig/zavudev/internal/transport/base_client.rbs +133 -0
  405. data/sig/zavudev/internal/transport/pooled_net_requester.rbs +48 -0
  406. data/sig/zavudev/internal/type/array_of.rbs +48 -0
  407. data/sig/zavudev/internal/type/base_model.rbs +102 -0
  408. data/sig/zavudev/internal/type/base_page.rbs +24 -0
  409. data/sig/zavudev/internal/type/boolean.rbs +26 -0
  410. data/sig/zavudev/internal/type/converter.rbs +79 -0
  411. data/sig/zavudev/internal/type/enum.rbs +32 -0
  412. data/sig/zavudev/internal/type/file_input.rbs +25 -0
  413. data/sig/zavudev/internal/type/hash_of.rbs +48 -0
  414. data/sig/zavudev/internal/type/request_parameters.rbs +17 -0
  415. data/sig/zavudev/internal/type/union.rbs +52 -0
  416. data/sig/zavudev/internal/type/unknown.rbs +26 -0
  417. data/sig/zavudev/internal/util.rbs +195 -0
  418. data/sig/zavudev/internal.rbs +9 -0
  419. data/sig/zavudev/models/address.rbs +82 -0
  420. data/sig/zavudev/models/address_create_params.rbs +76 -0
  421. data/sig/zavudev/models/address_create_response.rbs +13 -0
  422. data/sig/zavudev/models/address_delete_params.rbs +23 -0
  423. data/sig/zavudev/models/address_list_params.rbs +32 -0
  424. data/sig/zavudev/models/address_retrieve_params.rbs +23 -0
  425. data/sig/zavudev/models/address_retrieve_response.rbs +13 -0
  426. data/sig/zavudev/models/address_status.rbs +15 -0
  427. data/sig/zavudev/models/available_phone_number.rbs +51 -0
  428. data/sig/zavudev/models/broadcast.rbs +211 -0
  429. data/sig/zavudev/models/broadcast_cancel_params.rbs +23 -0
  430. data/sig/zavudev/models/broadcast_cancel_response.rbs +13 -0
  431. data/sig/zavudev/models/broadcast_channel.rbs +28 -0
  432. data/sig/zavudev/models/broadcast_contact.rbs +93 -0
  433. data/sig/zavudev/models/broadcast_contact_status.rbs +19 -0
  434. data/sig/zavudev/models/broadcast_content.rbs +59 -0
  435. data/sig/zavudev/models/broadcast_create_params.rbs +96 -0
  436. data/sig/zavudev/models/broadcast_create_response.rbs +13 -0
  437. data/sig/zavudev/models/broadcast_delete_params.rbs +23 -0
  438. data/sig/zavudev/models/broadcast_list_params.rbs +44 -0
  439. data/sig/zavudev/models/broadcast_message_type.rbs +19 -0
  440. data/sig/zavudev/models/broadcast_progress.rbs +89 -0
  441. data/sig/zavudev/models/broadcast_progress_params.rbs +23 -0
  442. data/sig/zavudev/models/broadcast_reschedule_params.rbs +28 -0
  443. data/sig/zavudev/models/broadcast_reschedule_response.rbs +13 -0
  444. data/sig/zavudev/models/broadcast_retrieve_params.rbs +23 -0
  445. data/sig/zavudev/models/broadcast_retrieve_response.rbs +13 -0
  446. data/sig/zavudev/models/broadcast_send_params.rbs +30 -0
  447. data/sig/zavudev/models/broadcast_send_response.rbs +13 -0
  448. data/sig/zavudev/models/broadcast_status.rbs +36 -0
  449. data/sig/zavudev/models/broadcast_update_params.rbs +68 -0
  450. data/sig/zavudev/models/broadcast_update_response.rbs +13 -0
  451. data/sig/zavudev/models/broadcasts/contact_add_params.rbs +56 -0
  452. data/sig/zavudev/models/broadcasts/contact_add_response.rbs +57 -0
  453. data/sig/zavudev/models/broadcasts/contact_list_params.rbs +51 -0
  454. data/sig/zavudev/models/broadcasts/contact_remove_params.rbs +30 -0
  455. data/sig/zavudev/models/channel.rbs +28 -0
  456. data/sig/zavudev/models/contact.rbs +275 -0
  457. data/sig/zavudev/models/contact_list_params.rbs +38 -0
  458. data/sig/zavudev/models/contact_retrieve_by_phone_params.rbs +23 -0
  459. data/sig/zavudev/models/contact_retrieve_params.rbs +23 -0
  460. data/sig/zavudev/models/contact_update_params.rbs +54 -0
  461. data/sig/zavudev/models/introspect_validate_phone_params.rbs +23 -0
  462. data/sig/zavudev/models/introspect_validate_phone_response.rbs +77 -0
  463. data/sig/zavudev/models/line_type.rbs +17 -0
  464. data/sig/zavudev/models/message.rbs +119 -0
  465. data/sig/zavudev/models/message_content.rbs +202 -0
  466. data/sig/zavudev/models/message_list_params.rbs +58 -0
  467. data/sig/zavudev/models/message_react_params.rbs +34 -0
  468. data/sig/zavudev/models/message_response.rbs +13 -0
  469. data/sig/zavudev/models/message_retrieve_params.rbs +23 -0
  470. data/sig/zavudev/models/message_send_params.rbs +112 -0
  471. data/sig/zavudev/models/message_status.rbs +26 -0
  472. data/sig/zavudev/models/message_type.rbs +36 -0
  473. data/sig/zavudev/models/owned_phone_number.rbs +73 -0
  474. data/sig/zavudev/models/owned_phone_number_pricing.rbs +43 -0
  475. data/sig/zavudev/models/phone_number_capabilities.rbs +23 -0
  476. data/sig/zavudev/models/phone_number_list_params.rbs +44 -0
  477. data/sig/zavudev/models/phone_number_pricing.rbs +32 -0
  478. data/sig/zavudev/models/phone_number_purchase_params.rbs +30 -0
  479. data/sig/zavudev/models/phone_number_purchase_response.rbs +14 -0
  480. data/sig/zavudev/models/phone_number_release_params.rbs +23 -0
  481. data/sig/zavudev/models/phone_number_requirements_params.rbs +32 -0
  482. data/sig/zavudev/models/phone_number_requirements_response.rbs +14 -0
  483. data/sig/zavudev/models/phone_number_retrieve_params.rbs +23 -0
  484. data/sig/zavudev/models/phone_number_retrieve_response.rbs +14 -0
  485. data/sig/zavudev/models/phone_number_search_available_params.rbs +49 -0
  486. data/sig/zavudev/models/phone_number_search_available_response.rbs +14 -0
  487. data/sig/zavudev/models/phone_number_status.rbs +15 -0
  488. data/sig/zavudev/models/phone_number_type.rbs +15 -0
  489. data/sig/zavudev/models/phone_number_update_params.rbs +32 -0
  490. data/sig/zavudev/models/phone_number_update_response.rbs +14 -0
  491. data/sig/zavudev/models/regulatory_document.rbs +104 -0
  492. data/sig/zavudev/models/regulatory_document_create_params.rbs +71 -0
  493. data/sig/zavudev/models/regulatory_document_create_response.rbs +14 -0
  494. data/sig/zavudev/models/regulatory_document_delete_params.rbs +23 -0
  495. data/sig/zavudev/models/regulatory_document_list_params.rbs +32 -0
  496. data/sig/zavudev/models/regulatory_document_retrieve_params.rbs +23 -0
  497. data/sig/zavudev/models/regulatory_document_retrieve_response.rbs +14 -0
  498. data/sig/zavudev/models/regulatory_document_upload_url_params.rbs +15 -0
  499. data/sig/zavudev/models/regulatory_document_upload_url_response.rbs +13 -0
  500. data/sig/zavudev/models/requirement.rbs +40 -0
  501. data/sig/zavudev/models/requirement_acceptance_criteria.rbs +35 -0
  502. data/sig/zavudev/models/requirement_field_type.rbs +16 -0
  503. data/sig/zavudev/models/requirement_type.rbs +49 -0
  504. data/sig/zavudev/models/sender.rbs +140 -0
  505. data/sig/zavudev/models/sender_create_params.rbs +54 -0
  506. data/sig/zavudev/models/sender_delete_params.rbs +23 -0
  507. data/sig/zavudev/models/sender_get_profile_params.rbs +23 -0
  508. data/sig/zavudev/models/sender_list_params.rbs +32 -0
  509. data/sig/zavudev/models/sender_regenerate_webhook_secret_params.rbs +23 -0
  510. data/sig/zavudev/models/sender_retrieve_params.rbs +23 -0
  511. data/sig/zavudev/models/sender_update_params.rbs +68 -0
  512. data/sig/zavudev/models/sender_update_profile_params.rbs +70 -0
  513. data/sig/zavudev/models/sender_update_profile_response.rbs +22 -0
  514. data/sig/zavudev/models/sender_upload_profile_picture_params.rbs +47 -0
  515. data/sig/zavudev/models/sender_upload_profile_picture_response.rbs +22 -0
  516. data/sig/zavudev/models/sender_webhook.rbs +37 -0
  517. data/sig/zavudev/models/senders/agent/agent_document.rbs +61 -0
  518. data/sig/zavudev/models/senders/agent/agent_flow.rbs +163 -0
  519. data/sig/zavudev/models/senders/agent/agent_knowledge_base.rbs +61 -0
  520. data/sig/zavudev/models/senders/agent/agent_tool.rbs +119 -0
  521. data/sig/zavudev/models/senders/agent/execution_list_params.rbs +53 -0
  522. data/sig/zavudev/models/senders/agent/flow_create_params.rbs +158 -0
  523. data/sig/zavudev/models/senders/agent/flow_create_response.rbs +17 -0
  524. data/sig/zavudev/models/senders/agent/flow_delete_params.rbs +32 -0
  525. data/sig/zavudev/models/senders/agent/flow_duplicate_params.rbs +36 -0
  526. data/sig/zavudev/models/senders/agent/flow_duplicate_response.rbs +18 -0
  527. data/sig/zavudev/models/senders/agent/flow_list_params.rbs +46 -0
  528. data/sig/zavudev/models/senders/agent/flow_retrieve_params.rbs +32 -0
  529. data/sig/zavudev/models/senders/agent/flow_retrieve_response.rbs +18 -0
  530. data/sig/zavudev/models/senders/agent/flow_update_params.rbs +173 -0
  531. data/sig/zavudev/models/senders/agent/flow_update_response.rbs +17 -0
  532. data/sig/zavudev/models/senders/agent/knowledge_base_create_params.rbs +38 -0
  533. data/sig/zavudev/models/senders/agent/knowledge_base_create_response.rbs +22 -0
  534. data/sig/zavudev/models/senders/agent/knowledge_base_delete_params.rbs +32 -0
  535. data/sig/zavudev/models/senders/agent/knowledge_base_list_params.rbs +40 -0
  536. data/sig/zavudev/models/senders/agent/knowledge_base_retrieve_params.rbs +32 -0
  537. data/sig/zavudev/models/senders/agent/knowledge_base_retrieve_response.rbs +22 -0
  538. data/sig/zavudev/models/senders/agent/knowledge_base_update_params.rbs +47 -0
  539. data/sig/zavudev/models/senders/agent/knowledge_base_update_response.rbs +22 -0
  540. data/sig/zavudev/models/senders/agent/knowledge_bases/document_create_params.rbs +42 -0
  541. data/sig/zavudev/models/senders/agent/knowledge_bases/document_create_response.rbs +22 -0
  542. data/sig/zavudev/models/senders/agent/knowledge_bases/document_delete_params.rbs +38 -0
  543. data/sig/zavudev/models/senders/agent/knowledge_bases/document_list_params.rbs +46 -0
  544. data/sig/zavudev/models/senders/agent/tool_create_params.rbs +117 -0
  545. data/sig/zavudev/models/senders/agent/tool_create_response.rbs +17 -0
  546. data/sig/zavudev/models/senders/agent/tool_delete_params.rbs +32 -0
  547. data/sig/zavudev/models/senders/agent/tool_list_params.rbs +46 -0
  548. data/sig/zavudev/models/senders/agent/tool_retrieve_params.rbs +32 -0
  549. data/sig/zavudev/models/senders/agent/tool_retrieve_response.rbs +18 -0
  550. data/sig/zavudev/models/senders/agent/tool_test_params.rbs +40 -0
  551. data/sig/zavudev/models/senders/agent/tool_test_response.rbs +17 -0
  552. data/sig/zavudev/models/senders/agent/tool_update_params.rbs +130 -0
  553. data/sig/zavudev/models/senders/agent/tool_update_response.rbs +17 -0
  554. data/sig/zavudev/models/senders/agent.rbs +142 -0
  555. data/sig/zavudev/models/senders/agent_create_params.rbs +97 -0
  556. data/sig/zavudev/models/senders/agent_delete_params.rbs +25 -0
  557. data/sig/zavudev/models/senders/agent_execution.rbs +79 -0
  558. data/sig/zavudev/models/senders/agent_execution_status.rbs +20 -0
  559. data/sig/zavudev/models/senders/agent_provider.rbs +19 -0
  560. data/sig/zavudev/models/senders/agent_response.rbs +15 -0
  561. data/sig/zavudev/models/senders/agent_retrieve_params.rbs +25 -0
  562. data/sig/zavudev/models/senders/agent_stats.rbs +47 -0
  563. data/sig/zavudev/models/senders/agent_stats_params.rbs +25 -0
  564. data/sig/zavudev/models/senders/agent_update_params.rbs +110 -0
  565. data/sig/zavudev/models/template.rbs +254 -0
  566. data/sig/zavudev/models/template_create_params.rbs +158 -0
  567. data/sig/zavudev/models/template_delete_params.rbs +23 -0
  568. data/sig/zavudev/models/template_list_params.rbs +32 -0
  569. data/sig/zavudev/models/template_retrieve_params.rbs +23 -0
  570. data/sig/zavudev/models/template_submit_params.rbs +40 -0
  571. data/sig/zavudev/models/webhook_event.rbs +28 -0
  572. data/sig/zavudev/models/webhook_secret_response.rbs +13 -0
  573. data/sig/zavudev/models/whatsapp_business_profile.rbs +66 -0
  574. data/sig/zavudev/models/whatsapp_business_profile_response.rbs +14 -0
  575. data/sig/zavudev/models/whatsapp_business_profile_vertical.rbs +50 -0
  576. data/sig/zavudev/models/whatsapp_category.rbs +15 -0
  577. data/sig/zavudev/models.rbs +179 -0
  578. data/sig/zavudev/request_options.rbs +34 -0
  579. data/sig/zavudev/resources/addresses.rbs +36 -0
  580. data/sig/zavudev/resources/broadcasts/contacts.rbs +29 -0
  581. data/sig/zavudev/resources/broadcasts.rbs +74 -0
  582. data/sig/zavudev/resources/contacts.rbs +31 -0
  583. data/sig/zavudev/resources/introspect.rbs +12 -0
  584. data/sig/zavudev/resources/messages.rbs +45 -0
  585. data/sig/zavudev/resources/phone_numbers.rbs +51 -0
  586. data/sig/zavudev/resources/regulatory_documents.rbs +36 -0
  587. data/sig/zavudev/resources/senders/agent/executions.rbs +19 -0
  588. data/sig/zavudev/resources/senders/agent/flows.rbs +61 -0
  589. data/sig/zavudev/resources/senders/agent/knowledge_bases/documents.rbs +36 -0
  590. data/sig/zavudev/resources/senders/agent/knowledge_bases.rbs +47 -0
  591. data/sig/zavudev/resources/senders/agent/tools.rbs +61 -0
  592. data/sig/zavudev/resources/senders/agent.rbs +65 -0
  593. data/sig/zavudev/resources/senders.rbs +73 -0
  594. data/sig/zavudev/resources/templates.rbs +42 -0
  595. data/sig/zavudev/version.rbs +3 -0
  596. metadata +667 -0
@@ -0,0 +1,259 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ # @see Zavudev::Resources::Templates#create
6
+ class Template < Zavudev::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ #
9
+ # @return [String]
10
+ required :id, String
11
+
12
+ # @!attribute body
13
+ # Template body with variables: {{1}}, {{2}}, etc.
14
+ #
15
+ # @return [String]
16
+ required :body, String
17
+
18
+ # @!attribute category
19
+ # WhatsApp template category.
20
+ #
21
+ # @return [Symbol, Zavudev::Models::WhatsappCategory]
22
+ required :category, enum: -> { Zavudev::WhatsappCategory }
23
+
24
+ # @!attribute language
25
+ # Language code.
26
+ #
27
+ # @return [String]
28
+ required :language, String
29
+
30
+ # @!attribute name
31
+ # Template name (must match WhatsApp template name).
32
+ #
33
+ # @return [String]
34
+ required :name, String
35
+
36
+ # @!attribute add_security_recommendation
37
+ # Add 'Do not share this code' disclaimer. Only for AUTHENTICATION templates.
38
+ #
39
+ # @return [Boolean, nil]
40
+ optional :add_security_recommendation,
41
+ Zavudev::Internal::Type::Boolean,
42
+ api_name: :addSecurityRecommendation
43
+
44
+ # @!attribute buttons
45
+ # Template buttons.
46
+ #
47
+ # @return [Array<Zavudev::Models::Template::Button>, nil]
48
+ optional :buttons, -> { Zavudev::Internal::Type::ArrayOf[Zavudev::Template::Button] }
49
+
50
+ # @!attribute code_expiration_minutes
51
+ # Code expiration time in minutes. Only for AUTHENTICATION templates.
52
+ #
53
+ # @return [Integer, nil]
54
+ optional :code_expiration_minutes, Integer, api_name: :codeExpirationMinutes
55
+
56
+ # @!attribute created_at
57
+ #
58
+ # @return [Time, nil]
59
+ optional :created_at, Time, api_name: :createdAt
60
+
61
+ # @!attribute footer
62
+ # Footer text for the template.
63
+ #
64
+ # @return [String, nil]
65
+ optional :footer, String
66
+
67
+ # @!attribute header_content
68
+ # Header content (text or media URL).
69
+ #
70
+ # @return [String, nil]
71
+ optional :header_content, String, api_name: :headerContent
72
+
73
+ # @!attribute header_type
74
+ # Type of header (text, image, video, document).
75
+ #
76
+ # @return [String, nil]
77
+ optional :header_type, String, api_name: :headerType
78
+
79
+ # @!attribute status
80
+ #
81
+ # @return [Symbol, Zavudev::Models::Template::Status, nil]
82
+ optional :status, enum: -> { Zavudev::Template::Status }
83
+
84
+ # @!attribute updated_at
85
+ #
86
+ # @return [Time, nil]
87
+ optional :updated_at, Time, api_name: :updatedAt
88
+
89
+ # @!attribute variables
90
+ # List of variable names for documentation.
91
+ #
92
+ # @return [Array<String>, nil]
93
+ optional :variables, Zavudev::Internal::Type::ArrayOf[String]
94
+
95
+ # @!attribute whatsapp
96
+ # WhatsApp-specific template information.
97
+ #
98
+ # @return [Zavudev::Models::Template::Whatsapp, nil]
99
+ optional :whatsapp, -> { Zavudev::Template::Whatsapp }
100
+
101
+ # @!method initialize(id:, body:, category:, language:, name:, add_security_recommendation: nil, buttons: nil, code_expiration_minutes: nil, created_at: nil, footer: nil, header_content: nil, header_type: nil, status: nil, updated_at: nil, variables: nil, whatsapp: nil)
102
+ # @param id [String]
103
+ #
104
+ # @param body [String] Template body with variables: {{1}}, {{2}}, etc.
105
+ #
106
+ # @param category [Symbol, Zavudev::Models::WhatsappCategory] WhatsApp template category.
107
+ #
108
+ # @param language [String] Language code.
109
+ #
110
+ # @param name [String] Template name (must match WhatsApp template name).
111
+ #
112
+ # @param add_security_recommendation [Boolean] Add 'Do not share this code' disclaimer. Only for AUTHENTICATION templates.
113
+ #
114
+ # @param buttons [Array<Zavudev::Models::Template::Button>] Template buttons.
115
+ #
116
+ # @param code_expiration_minutes [Integer] Code expiration time in minutes. Only for AUTHENTICATION templates.
117
+ #
118
+ # @param created_at [Time]
119
+ #
120
+ # @param footer [String] Footer text for the template.
121
+ #
122
+ # @param header_content [String] Header content (text or media URL).
123
+ #
124
+ # @param header_type [String] Type of header (text, image, video, document).
125
+ #
126
+ # @param status [Symbol, Zavudev::Models::Template::Status]
127
+ #
128
+ # @param updated_at [Time]
129
+ #
130
+ # @param variables [Array<String>] List of variable names for documentation.
131
+ #
132
+ # @param whatsapp [Zavudev::Models::Template::Whatsapp] WhatsApp-specific template information.
133
+
134
+ class Button < Zavudev::Internal::Type::BaseModel
135
+ # @!attribute otp_type
136
+ # OTP button type. Required when type is 'otp'.
137
+ #
138
+ # @return [Symbol, Zavudev::Models::Template::Button::OtpType, nil]
139
+ optional :otp_type, enum: -> { Zavudev::Template::Button::OtpType }, api_name: :otpType
140
+
141
+ # @!attribute package_name
142
+ # Android package name. Required for ONE_TAP buttons.
143
+ #
144
+ # @return [String, nil]
145
+ optional :package_name, String, api_name: :packageName
146
+
147
+ # @!attribute phone_number
148
+ #
149
+ # @return [String, nil]
150
+ optional :phone_number, String, api_name: :phoneNumber
151
+
152
+ # @!attribute signature_hash
153
+ # Android app signature hash. Required for ONE_TAP buttons.
154
+ #
155
+ # @return [String, nil]
156
+ optional :signature_hash, String, api_name: :signatureHash
157
+
158
+ # @!attribute text
159
+ #
160
+ # @return [String, nil]
161
+ optional :text, String
162
+
163
+ # @!attribute type
164
+ #
165
+ # @return [Symbol, Zavudev::Models::Template::Button::Type, nil]
166
+ optional :type, enum: -> { Zavudev::Template::Button::Type }
167
+
168
+ # @!attribute url
169
+ #
170
+ # @return [String, nil]
171
+ optional :url, String
172
+
173
+ # @!method initialize(otp_type: nil, package_name: nil, phone_number: nil, signature_hash: nil, text: nil, type: nil, url: nil)
174
+ # @param otp_type [Symbol, Zavudev::Models::Template::Button::OtpType] OTP button type. Required when type is 'otp'.
175
+ #
176
+ # @param package_name [String] Android package name. Required for ONE_TAP buttons.
177
+ #
178
+ # @param phone_number [String]
179
+ #
180
+ # @param signature_hash [String] Android app signature hash. Required for ONE_TAP buttons.
181
+ #
182
+ # @param text [String]
183
+ #
184
+ # @param type [Symbol, Zavudev::Models::Template::Button::Type]
185
+ #
186
+ # @param url [String]
187
+
188
+ # OTP button type. Required when type is 'otp'.
189
+ #
190
+ # @see Zavudev::Models::Template::Button#otp_type
191
+ module OtpType
192
+ extend Zavudev::Internal::Type::Enum
193
+
194
+ COPY_CODE = :COPY_CODE
195
+ ONE_TAP = :ONE_TAP
196
+
197
+ # @!method self.values
198
+ # @return [Array<Symbol>]
199
+ end
200
+
201
+ # @see Zavudev::Models::Template::Button#type
202
+ module Type
203
+ extend Zavudev::Internal::Type::Enum
204
+
205
+ QUICK_REPLY = :quick_reply
206
+ URL = :url
207
+ PHONE = :phone
208
+ OTP = :otp
209
+
210
+ # @!method self.values
211
+ # @return [Array<Symbol>]
212
+ end
213
+ end
214
+
215
+ # @see Zavudev::Models::Template#status
216
+ module Status
217
+ extend Zavudev::Internal::Type::Enum
218
+
219
+ DRAFT = :draft
220
+ PENDING = :pending
221
+ APPROVED = :approved
222
+ REJECTED = :rejected
223
+
224
+ # @!method self.values
225
+ # @return [Array<Symbol>]
226
+ end
227
+
228
+ # @see Zavudev::Models::Template#whatsapp
229
+ class Whatsapp < Zavudev::Internal::Type::BaseModel
230
+ # @!attribute namespace
231
+ # WhatsApp Business Account namespace.
232
+ #
233
+ # @return [String, nil]
234
+ optional :namespace, String
235
+
236
+ # @!attribute status
237
+ # WhatsApp approval status.
238
+ #
239
+ # @return [String, nil]
240
+ optional :status, String
241
+
242
+ # @!attribute template_name
243
+ # WhatsApp template name.
244
+ #
245
+ # @return [String, nil]
246
+ optional :template_name, String, api_name: :templateName
247
+
248
+ # @!method initialize(namespace: nil, status: nil, template_name: nil)
249
+ # WhatsApp-specific template information.
250
+ #
251
+ # @param namespace [String] WhatsApp Business Account namespace.
252
+ #
253
+ # @param status [String] WhatsApp approval status.
254
+ #
255
+ # @param template_name [String] WhatsApp template name.
256
+ end
257
+ end
258
+ end
259
+ end
@@ -0,0 +1,162 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ # @see Zavudev::Resources::Templates#create
6
+ class TemplateCreateParams < Zavudev::Internal::Type::BaseModel
7
+ extend Zavudev::Internal::Type::RequestParameters::Converter
8
+ include Zavudev::Internal::Type::RequestParameters
9
+
10
+ # @!attribute body
11
+ #
12
+ # @return [String]
13
+ required :body, String
14
+
15
+ # @!attribute language
16
+ #
17
+ # @return [String]
18
+ required :language, String
19
+
20
+ # @!attribute name
21
+ #
22
+ # @return [String]
23
+ required :name, String
24
+
25
+ # @!attribute add_security_recommendation
26
+ # Add 'Do not share this code' disclaimer. Only for AUTHENTICATION templates.
27
+ #
28
+ # @return [Boolean, nil]
29
+ optional :add_security_recommendation,
30
+ Zavudev::Internal::Type::Boolean,
31
+ api_name: :addSecurityRecommendation
32
+
33
+ # @!attribute buttons
34
+ # Template buttons (max 3).
35
+ #
36
+ # @return [Array<Zavudev::Models::TemplateCreateParams::Button>, nil]
37
+ optional :buttons, -> { Zavudev::Internal::Type::ArrayOf[Zavudev::TemplateCreateParams::Button] }
38
+
39
+ # @!attribute code_expiration_minutes
40
+ # Code expiration time in minutes. Only for AUTHENTICATION templates.
41
+ #
42
+ # @return [Integer, nil]
43
+ optional :code_expiration_minutes, Integer, api_name: :codeExpirationMinutes
44
+
45
+ # @!attribute variables
46
+ #
47
+ # @return [Array<String>, nil]
48
+ optional :variables, Zavudev::Internal::Type::ArrayOf[String]
49
+
50
+ # @!attribute whatsapp_category
51
+ # WhatsApp template category.
52
+ #
53
+ # @return [Symbol, Zavudev::Models::WhatsappCategory, nil]
54
+ optional :whatsapp_category, enum: -> { Zavudev::WhatsappCategory }, api_name: :whatsappCategory
55
+
56
+ # @!method initialize(body:, language:, name:, add_security_recommendation: nil, buttons: nil, code_expiration_minutes: nil, variables: nil, whatsapp_category: nil, request_options: {})
57
+ # @param body [String]
58
+ #
59
+ # @param language [String]
60
+ #
61
+ # @param name [String]
62
+ #
63
+ # @param add_security_recommendation [Boolean] Add 'Do not share this code' disclaimer. Only for AUTHENTICATION templates.
64
+ #
65
+ # @param buttons [Array<Zavudev::Models::TemplateCreateParams::Button>] Template buttons (max 3).
66
+ #
67
+ # @param code_expiration_minutes [Integer] Code expiration time in minutes. Only for AUTHENTICATION templates.
68
+ #
69
+ # @param variables [Array<String>]
70
+ #
71
+ # @param whatsapp_category [Symbol, Zavudev::Models::WhatsappCategory] WhatsApp template category.
72
+ #
73
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}]
74
+
75
+ class Button < Zavudev::Internal::Type::BaseModel
76
+ # @!attribute text
77
+ #
78
+ # @return [String]
79
+ required :text, String
80
+
81
+ # @!attribute type
82
+ #
83
+ # @return [Symbol, Zavudev::Models::TemplateCreateParams::Button::Type]
84
+ required :type, enum: -> { Zavudev::TemplateCreateParams::Button::Type }
85
+
86
+ # @!attribute otp_type
87
+ # Required when type is 'otp'. COPY_CODE shows copy button, ONE_TAP enables
88
+ # Android autofill.
89
+ #
90
+ # @return [Symbol, Zavudev::Models::TemplateCreateParams::Button::OtpType, nil]
91
+ optional :otp_type, enum: -> { Zavudev::TemplateCreateParams::Button::OtpType }, api_name: :otpType
92
+
93
+ # @!attribute package_name
94
+ # Android package name. Required for ONE_TAP buttons.
95
+ #
96
+ # @return [String, nil]
97
+ optional :package_name, String, api_name: :packageName
98
+
99
+ # @!attribute phone_number
100
+ #
101
+ # @return [String, nil]
102
+ optional :phone_number, String, api_name: :phoneNumber
103
+
104
+ # @!attribute signature_hash
105
+ # Android app signature hash. Required for ONE_TAP buttons.
106
+ #
107
+ # @return [String, nil]
108
+ optional :signature_hash, String, api_name: :signatureHash
109
+
110
+ # @!attribute url
111
+ #
112
+ # @return [String, nil]
113
+ optional :url, String
114
+
115
+ # @!method initialize(text:, type:, otp_type: nil, package_name: nil, phone_number: nil, signature_hash: nil, url: nil)
116
+ # Some parameter documentations has been truncated, see
117
+ # {Zavudev::Models::TemplateCreateParams::Button} for more details.
118
+ #
119
+ # @param text [String]
120
+ #
121
+ # @param type [Symbol, Zavudev::Models::TemplateCreateParams::Button::Type]
122
+ #
123
+ # @param otp_type [Symbol, Zavudev::Models::TemplateCreateParams::Button::OtpType] Required when type is 'otp'. COPY_CODE shows copy button, ONE_TAP enables Androi
124
+ #
125
+ # @param package_name [String] Android package name. Required for ONE_TAP buttons.
126
+ #
127
+ # @param phone_number [String]
128
+ #
129
+ # @param signature_hash [String] Android app signature hash. Required for ONE_TAP buttons.
130
+ #
131
+ # @param url [String]
132
+
133
+ # @see Zavudev::Models::TemplateCreateParams::Button#type
134
+ module Type
135
+ extend Zavudev::Internal::Type::Enum
136
+
137
+ QUICK_REPLY = :quick_reply
138
+ URL = :url
139
+ PHONE = :phone
140
+ OTP = :otp
141
+
142
+ # @!method self.values
143
+ # @return [Array<Symbol>]
144
+ end
145
+
146
+ # Required when type is 'otp'. COPY_CODE shows copy button, ONE_TAP enables
147
+ # Android autofill.
148
+ #
149
+ # @see Zavudev::Models::TemplateCreateParams::Button#otp_type
150
+ module OtpType
151
+ extend Zavudev::Internal::Type::Enum
152
+
153
+ COPY_CODE = :COPY_CODE
154
+ ONE_TAP = :ONE_TAP
155
+
156
+ # @!method self.values
157
+ # @return [Array<Symbol>]
158
+ end
159
+ end
160
+ end
161
+ end
162
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ # @see Zavudev::Resources::Templates#delete
6
+ class TemplateDeleteParams < Zavudev::Internal::Type::BaseModel
7
+ extend Zavudev::Internal::Type::RequestParameters::Converter
8
+ include Zavudev::Internal::Type::RequestParameters
9
+
10
+ # @!attribute template_id
11
+ #
12
+ # @return [String]
13
+ required :template_id, String
14
+
15
+ # @!method initialize(template_id:, request_options: {})
16
+ # @param template_id [String]
17
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}]
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ # @see Zavudev::Resources::Templates#list
6
+ class TemplateListParams < Zavudev::Internal::Type::BaseModel
7
+ extend Zavudev::Internal::Type::RequestParameters::Converter
8
+ include Zavudev::Internal::Type::RequestParameters
9
+
10
+ # @!attribute cursor
11
+ #
12
+ # @return [String, nil]
13
+ optional :cursor, String
14
+
15
+ # @!attribute limit
16
+ #
17
+ # @return [Integer, nil]
18
+ optional :limit, Integer
19
+
20
+ # @!method initialize(cursor: nil, limit: nil, request_options: {})
21
+ # @param cursor [String]
22
+ # @param limit [Integer]
23
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}]
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ # @see Zavudev::Resources::Templates#retrieve
6
+ class TemplateRetrieveParams < Zavudev::Internal::Type::BaseModel
7
+ extend Zavudev::Internal::Type::RequestParameters::Converter
8
+ include Zavudev::Internal::Type::RequestParameters
9
+
10
+ # @!attribute template_id
11
+ #
12
+ # @return [String]
13
+ required :template_id, String
14
+
15
+ # @!method initialize(template_id:, request_options: {})
16
+ # @param template_id [String]
17
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}]
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ # @see Zavudev::Resources::Templates#submit
6
+ class TemplateSubmitParams < Zavudev::Internal::Type::BaseModel
7
+ extend Zavudev::Internal::Type::RequestParameters::Converter
8
+ include Zavudev::Internal::Type::RequestParameters
9
+
10
+ # @!attribute template_id
11
+ #
12
+ # @return [String]
13
+ required :template_id, String
14
+
15
+ # @!attribute sender_id
16
+ # The sender ID with the WhatsApp Business Account to submit the template to.
17
+ #
18
+ # @return [String]
19
+ required :sender_id, String, api_name: :senderId
20
+
21
+ # @!attribute category
22
+ # Template category. If not provided, uses the category set on the template.
23
+ #
24
+ # @return [Symbol, Zavudev::Models::WhatsappCategory, nil]
25
+ optional :category, enum: -> { Zavudev::WhatsappCategory }
26
+
27
+ # @!method initialize(template_id:, sender_id:, category: nil, request_options: {})
28
+ # @param template_id [String]
29
+ #
30
+ # @param sender_id [String] The sender ID with the WhatsApp Business Account to submit the template to.
31
+ #
32
+ # @param category [Symbol, Zavudev::Models::WhatsappCategory] Template category. If not provided, uses the category set on the template.
33
+ #
34
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}]
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ # Type of event that triggers the webhook.
6
+ #
7
+ # **Message lifecycle events:**
8
+ #
9
+ # - `message.queued`: Message created and queued for sending. `data.status` =
10
+ # `queued`
11
+ # - `message.sent`: Message accepted by the provider. `data.status` = `sent`
12
+ # - `message.delivered`: Message delivered to recipient. `data.status` =
13
+ # `delivered`
14
+ # - `message.failed`: Message failed to send. `data.status` = `failed`
15
+ #
16
+ # **Inbound events:**
17
+ #
18
+ # - `message.inbound`: New message received from a contact. Reactions are
19
+ # delivered as `message.inbound` with `messageType='reaction'`
20
+ # - `message.unsupported`: Received a message type that is not supported
21
+ #
22
+ # **Other events:**
23
+ #
24
+ # - `conversation.new`: New conversation started with a contact
25
+ # - `template.status_changed`: WhatsApp template approval status changed
26
+ module WebhookEvent
27
+ extend Zavudev::Internal::Type::Enum
28
+
29
+ MESSAGE_QUEUED = :"message.queued"
30
+ MESSAGE_SENT = :"message.sent"
31
+ MESSAGE_DELIVERED = :"message.delivered"
32
+ MESSAGE_FAILED = :"message.failed"
33
+ MESSAGE_INBOUND = :"message.inbound"
34
+ MESSAGE_UNSUPPORTED = :"message.unsupported"
35
+ CONVERSATION_NEW = :"conversation.new"
36
+ TEMPLATE_STATUS_CHANGED = :"template.status_changed"
37
+
38
+ # @!method self.values
39
+ # @return [Array<Symbol>]
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ # @see Zavudev::Resources::Senders#regenerate_webhook_secret
6
+ class WebhookSecretResponse < Zavudev::Internal::Type::BaseModel
7
+ # @!attribute secret
8
+ # The new webhook secret.
9
+ #
10
+ # @return [String]
11
+ required :secret, String
12
+
13
+ # @!method initialize(secret:)
14
+ # @param secret [String] The new webhook secret.
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,66 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ class WhatsappBusinessProfile < Zavudev::Internal::Type::BaseModel
6
+ # @!attribute about
7
+ # Short description of the business (max 139 characters).
8
+ #
9
+ # @return [String, nil]
10
+ optional :about, String
11
+
12
+ # @!attribute address
13
+ # Physical address of the business (max 256 characters).
14
+ #
15
+ # @return [String, nil]
16
+ optional :address, String
17
+
18
+ # @!attribute description
19
+ # Extended description of the business (max 512 characters).
20
+ #
21
+ # @return [String, nil]
22
+ optional :description, String
23
+
24
+ # @!attribute email
25
+ # Business email address.
26
+ #
27
+ # @return [String, nil]
28
+ optional :email, String
29
+
30
+ # @!attribute profile_picture_url
31
+ # URL of the business profile picture.
32
+ #
33
+ # @return [String, nil]
34
+ optional :profile_picture_url, String, api_name: :profilePictureUrl
35
+
36
+ # @!attribute vertical
37
+ # Business category for WhatsApp Business profile.
38
+ #
39
+ # @return [Symbol, Zavudev::Models::WhatsappBusinessProfileVertical, nil]
40
+ optional :vertical, enum: -> { Zavudev::WhatsappBusinessProfileVertical }
41
+
42
+ # @!attribute websites
43
+ # Business website URLs (maximum 2).
44
+ #
45
+ # @return [Array<String>, nil]
46
+ optional :websites, Zavudev::Internal::Type::ArrayOf[String]
47
+
48
+ # @!method initialize(about: nil, address: nil, description: nil, email: nil, profile_picture_url: nil, vertical: nil, websites: nil)
49
+ # WhatsApp Business profile information.
50
+ #
51
+ # @param about [String] Short description of the business (max 139 characters).
52
+ #
53
+ # @param address [String] Physical address of the business (max 256 characters).
54
+ #
55
+ # @param description [String] Extended description of the business (max 512 characters).
56
+ #
57
+ # @param email [String] Business email address.
58
+ #
59
+ # @param profile_picture_url [String] URL of the business profile picture.
60
+ #
61
+ # @param vertical [Symbol, Zavudev::Models::WhatsappBusinessProfileVertical] Business category for WhatsApp Business profile.
62
+ #
63
+ # @param websites [Array<String>] Business website URLs (maximum 2).
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Models
5
+ # @see Zavudev::Resources::Senders#get_profile
6
+ class WhatsappBusinessProfileResponse < Zavudev::Internal::Type::BaseModel
7
+ # @!attribute profile
8
+ # WhatsApp Business profile information.
9
+ #
10
+ # @return [Zavudev::Models::WhatsappBusinessProfile]
11
+ required :profile, -> { Zavudev::WhatsappBusinessProfile }
12
+
13
+ # @!method initialize(profile:)
14
+ # @param profile [Zavudev::Models::WhatsappBusinessProfile] WhatsApp Business profile information.
15
+ end
16
+ end
17
+ end