zavudev 0.7.0 → 0.9.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 (385) 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 +47 -1
  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 +1 -1
  15. data/lib/zavudev/models/contact_create_params.rb +99 -0
  16. data/lib/zavudev/models/contact_dismiss_merge_suggestion_params.rb +20 -0
  17. data/lib/zavudev/models/contact_merge_params.rb +33 -0
  18. data/lib/zavudev/models/contacts/channel_add_params.rb +77 -0
  19. data/lib/zavudev/models/contacts/channel_add_response.rb +19 -0
  20. data/lib/zavudev/models/contacts/channel_remove_params.rb +28 -0
  21. data/lib/zavudev/models/contacts/channel_set_primary_params.rb +28 -0
  22. data/lib/zavudev/models/contacts/channel_set_primary_response.rb +19 -0
  23. data/lib/zavudev/models/contacts/channel_update_params.rb +53 -0
  24. data/lib/zavudev/models/contacts/channel_update_response.rb +19 -0
  25. data/lib/zavudev/models/data_export.rb +122 -0
  26. data/lib/zavudev/models/export_create_params.rb +54 -0
  27. data/lib/zavudev/models/export_create_response.rb +16 -0
  28. data/lib/zavudev/models/export_list_params.rb +49 -0
  29. data/lib/zavudev/models/export_retrieve_params.rb +20 -0
  30. data/lib/zavudev/models/export_retrieve_response.rb +16 -0
  31. data/lib/zavudev/models/invitation.rb +135 -0
  32. data/lib/zavudev/models/invitation_cancel_params.rb +20 -0
  33. data/lib/zavudev/models/invitation_cancel_response.rb +16 -0
  34. data/lib/zavudev/models/invitation_create_params.rb +68 -0
  35. data/lib/zavudev/models/invitation_create_response.rb +16 -0
  36. data/lib/zavudev/models/invitation_list_params.rb +50 -0
  37. data/lib/zavudev/models/invitation_retrieve_params.rb +20 -0
  38. data/lib/zavudev/models/invitation_retrieve_response.rb +16 -0
  39. data/lib/zavudev/models/message_content.rb +96 -3
  40. data/lib/zavudev/models/message_type.rb +1 -0
  41. data/lib/zavudev/models/number_10dlc/brand_create_params.rb +158 -0
  42. data/lib/zavudev/models/number_10dlc/brand_create_response.rb +18 -0
  43. data/lib/zavudev/models/number_10dlc/brand_delete_params.rb +22 -0
  44. data/lib/zavudev/models/number_10dlc/brand_list_params.rb +28 -0
  45. data/lib/zavudev/models/number_10dlc/brand_list_use_cases_params.rb +16 -0
  46. data/lib/zavudev/models/number_10dlc/brand_list_use_cases_response.rb +36 -0
  47. data/lib/zavudev/models/number_10dlc/brand_retrieve_params.rb +22 -0
  48. data/lib/zavudev/models/number_10dlc/brand_retrieve_response.rb +18 -0
  49. data/lib/zavudev/models/number_10dlc/brand_submit_params.rb +22 -0
  50. data/lib/zavudev/models/number_10dlc/brand_submit_response.rb +18 -0
  51. data/lib/zavudev/models/number_10dlc/brand_sync_status_params.rb +22 -0
  52. data/lib/zavudev/models/number_10dlc/brand_sync_status_response.rb +18 -0
  53. data/lib/zavudev/models/number_10dlc/brand_update_params.rb +159 -0
  54. data/lib/zavudev/models/number_10dlc/brand_update_response.rb +18 -0
  55. data/lib/zavudev/models/number_10dlc/campaign_create_params.rb +151 -0
  56. data/lib/zavudev/models/number_10dlc/campaign_create_response.rb +18 -0
  57. data/lib/zavudev/models/number_10dlc/campaign_delete_params.rb +22 -0
  58. data/lib/zavudev/models/number_10dlc/campaign_list_params.rb +38 -0
  59. data/lib/zavudev/models/number_10dlc/campaign_retrieve_params.rb +22 -0
  60. data/lib/zavudev/models/number_10dlc/campaign_retrieve_response.rb +18 -0
  61. data/lib/zavudev/models/number_10dlc/campaign_submit_params.rb +22 -0
  62. data/lib/zavudev/models/number_10dlc/campaign_submit_response.rb +18 -0
  63. data/lib/zavudev/models/number_10dlc/campaign_sync_status_params.rb +22 -0
  64. data/lib/zavudev/models/number_10dlc/campaign_sync_status_response.rb +18 -0
  65. data/lib/zavudev/models/number_10dlc/campaign_update_params.rb +64 -0
  66. data/lib/zavudev/models/number_10dlc/campaign_update_response.rb +18 -0
  67. data/lib/zavudev/models/number_10dlc/campaigns/phone_number_assign_params.rb +33 -0
  68. data/lib/zavudev/models/number_10dlc/campaigns/phone_number_assign_response.rb +20 -0
  69. data/lib/zavudev/models/number_10dlc/campaigns/phone_number_list_params.rb +24 -0
  70. data/lib/zavudev/models/number_10dlc/campaigns/phone_number_list_response.rb +27 -0
  71. data/lib/zavudev/models/number_10dlc/campaigns/phone_number_unassign_params.rb +30 -0
  72. data/lib/zavudev/models/number_10dlc/campaigns/ten_dlc_phone_number_assignment.rb +83 -0
  73. data/lib/zavudev/models/number_10dlc/ten_dlc_brand.rb +238 -0
  74. data/lib/zavudev/models/number_10dlc/ten_dlc_campaign.rb +243 -0
  75. data/lib/zavudev/models/plan_retrieve_params.rb +14 -0
  76. data/lib/zavudev/models/plan_retrieve_response.rb +155 -0
  77. data/lib/zavudev/models/senders/whats_app_sync_contacts.rb +51 -0
  78. data/lib/zavudev/models/senders/whats_app_sync_history.rb +60 -0
  79. data/lib/zavudev/models/senders/whats_app_sync_status.rb +60 -0
  80. data/lib/zavudev/models/senders/whatsapp_sync_retrieve_params.rb +22 -0
  81. data/lib/zavudev/models/senders/whatsapp_sync_retrieve_response.rb +19 -0
  82. data/lib/zavudev/models/senders/whatsapp_sync_start_contacts_sync_params.rb +22 -0
  83. data/lib/zavudev/models/senders/whatsapp_sync_start_contacts_sync_response.rb +27 -0
  84. data/lib/zavudev/models/senders/whatsapp_sync_start_history_sync_params.rb +22 -0
  85. data/lib/zavudev/models/senders/whatsapp_sync_start_history_sync_response.rb +27 -0
  86. data/lib/zavudev/models/sub_account.rb +91 -0
  87. data/lib/zavudev/models/sub_account_create_params.rb +49 -0
  88. data/lib/zavudev/models/sub_account_create_response.rb +16 -0
  89. data/lib/zavudev/models/sub_account_deactivate_params.rb +20 -0
  90. data/lib/zavudev/models/sub_account_deactivate_response.rb +24 -0
  91. data/lib/zavudev/models/sub_account_get_balance_params.rb +20 -0
  92. data/lib/zavudev/models/sub_account_get_balance_response.rb +48 -0
  93. data/lib/zavudev/models/sub_account_list_params.rb +26 -0
  94. data/lib/zavudev/models/sub_account_retrieve_params.rb +20 -0
  95. data/lib/zavudev/models/sub_account_retrieve_response.rb +16 -0
  96. data/lib/zavudev/models/sub_account_update_params.rb +60 -0
  97. data/lib/zavudev/models/sub_account_update_response.rb +16 -0
  98. data/lib/zavudev/models/sub_accounts/api_key_create_params.rb +50 -0
  99. data/lib/zavudev/models/sub_accounts/api_key_create_response.rb +59 -0
  100. data/lib/zavudev/models/sub_accounts/api_key_list_params.rb +22 -0
  101. data/lib/zavudev/models/sub_accounts/api_key_list_response.rb +98 -0
  102. data/lib/zavudev/models/sub_accounts/api_key_revoke_params.rb +28 -0
  103. data/lib/zavudev/models/template.rb +13 -1
  104. data/lib/zavudev/models/template_create_params.rb +15 -2
  105. data/lib/zavudev/models/url_list_verified_params.rb +49 -0
  106. data/lib/zavudev/models/url_retrieve_details_params.rb +20 -0
  107. data/lib/zavudev/models/url_retrieve_details_response.rb +16 -0
  108. data/lib/zavudev/models/url_submit_for_verification_params.rb +22 -0
  109. data/lib/zavudev/models/url_submit_for_verification_response.rb +16 -0
  110. data/lib/zavudev/models/usage_retrieve_params.rb +14 -0
  111. data/lib/zavudev/models/usage_retrieve_response.rb +77 -0
  112. data/lib/zavudev/models/verified_url.rb +90 -0
  113. data/lib/zavudev/models.rb +62 -0
  114. data/lib/zavudev/resources/balance.rb +33 -0
  115. data/lib/zavudev/resources/broadcasts.rb +40 -0
  116. data/lib/zavudev/resources/contacts/channels.rb +136 -0
  117. data/lib/zavudev/resources/contacts.rb +78 -0
  118. data/lib/zavudev/resources/exports.rb +89 -0
  119. data/lib/zavudev/resources/invitations.rb +118 -0
  120. data/lib/zavudev/resources/number_10dlc/brands.rb +251 -0
  121. data/lib/zavudev/resources/number_10dlc/campaigns/phone_numbers.rb +90 -0
  122. data/lib/zavudev/resources/number_10dlc/campaigns.rb +225 -0
  123. data/lib/zavudev/resources/number_10dlc.rb +22 -0
  124. data/lib/zavudev/resources/plan.rb +33 -0
  125. data/lib/zavudev/resources/senders/whatsapp_sync.rb +79 -0
  126. data/lib/zavudev/resources/senders.rb +4 -0
  127. data/lib/zavudev/resources/sub_accounts/api_keys.rb +94 -0
  128. data/lib/zavudev/resources/sub_accounts.rb +175 -0
  129. data/lib/zavudev/resources/urls.rb +89 -0
  130. data/lib/zavudev/resources/usage.rb +33 -0
  131. data/lib/zavudev/version.rb +1 -1
  132. data/lib/zavudev.rb +114 -0
  133. data/rbi/zavudev/client.rbi +24 -0
  134. data/rbi/zavudev/models/balance_retrieve_params.rbi +27 -0
  135. data/rbi/zavudev/models/balance_retrieve_response.rbi +73 -0
  136. data/rbi/zavudev/models/broadcast_contact.rbi +9 -0
  137. data/rbi/zavudev/models/broadcast_content.rbi +17 -2
  138. data/rbi/zavudev/models/broadcast_escalate_review_params.rbi +38 -0
  139. data/rbi/zavudev/models/broadcast_escalate_review_response.rbi +31 -0
  140. data/rbi/zavudev/models/broadcast_retry_review_params.rbi +35 -0
  141. data/rbi/zavudev/models/broadcast_retry_review_response.rbi +31 -0
  142. data/rbi/zavudev/models/broadcasts/contact_add_params.rbi +23 -3
  143. data/rbi/zavudev/models/contact_create_params.rbi +191 -0
  144. data/rbi/zavudev/models/contact_dismiss_merge_suggestion_params.rbi +38 -0
  145. data/rbi/zavudev/models/contact_merge_params.rbi +51 -0
  146. data/rbi/zavudev/models/contacts/channel_add_params.rbi +142 -0
  147. data/rbi/zavudev/models/contacts/channel_add_response.rbi +39 -0
  148. data/rbi/zavudev/models/contacts/channel_remove_params.rbi +48 -0
  149. data/rbi/zavudev/models/contacts/channel_set_primary_params.rbi +48 -0
  150. data/rbi/zavudev/models/contacts/channel_set_primary_response.rbi +39 -0
  151. data/rbi/zavudev/models/contacts/channel_update_params.rbi +80 -0
  152. data/rbi/zavudev/models/contacts/channel_update_response.rbi +39 -0
  153. data/rbi/zavudev/models/data_export.rbi +151 -0
  154. data/rbi/zavudev/models/export_create_params.rbi +106 -0
  155. data/rbi/zavudev/models/export_create_response.rbi +31 -0
  156. data/rbi/zavudev/models/export_list_params.rbi +89 -0
  157. data/rbi/zavudev/models/export_retrieve_params.rbi +35 -0
  158. data/rbi/zavudev/models/export_retrieve_response.rbi +31 -0
  159. data/rbi/zavudev/models/invitation.rbi +149 -0
  160. data/rbi/zavudev/models/invitation_cancel_params.rbi +35 -0
  161. data/rbi/zavudev/models/invitation_cancel_response.rbi +33 -0
  162. data/rbi/zavudev/models/invitation_create_params.rbi +103 -0
  163. data/rbi/zavudev/models/invitation_create_response.rbi +33 -0
  164. data/rbi/zavudev/models/invitation_list_params.rbi +99 -0
  165. data/rbi/zavudev/models/invitation_retrieve_params.rbi +35 -0
  166. data/rbi/zavudev/models/invitation_retrieve_response.rbi +33 -0
  167. data/rbi/zavudev/models/message_content.rbi +145 -2
  168. data/rbi/zavudev/models/message_type.rbi +1 -0
  169. data/rbi/zavudev/models/number_10dlc/brand_create_params.rbi +228 -0
  170. data/rbi/zavudev/models/number_10dlc/brand_create_response.rbi +35 -0
  171. data/rbi/zavudev/models/number_10dlc/brand_delete_params.rbi +40 -0
  172. data/rbi/zavudev/models/number_10dlc/brand_list_params.rbi +54 -0
  173. data/rbi/zavudev/models/number_10dlc/brand_list_use_cases_params.rbi +32 -0
  174. data/rbi/zavudev/models/number_10dlc/brand_list_use_cases_response.rbi +82 -0
  175. data/rbi/zavudev/models/number_10dlc/brand_retrieve_params.rbi +40 -0
  176. data/rbi/zavudev/models/number_10dlc/brand_retrieve_response.rbi +35 -0
  177. data/rbi/zavudev/models/number_10dlc/brand_submit_params.rbi +40 -0
  178. data/rbi/zavudev/models/number_10dlc/brand_submit_response.rbi +35 -0
  179. data/rbi/zavudev/models/number_10dlc/brand_sync_status_params.rbi +40 -0
  180. data/rbi/zavudev/models/number_10dlc/brand_sync_status_response.rbi +35 -0
  181. data/rbi/zavudev/models/number_10dlc/brand_update_params.rbi +261 -0
  182. data/rbi/zavudev/models/number_10dlc/brand_update_response.rbi +35 -0
  183. data/rbi/zavudev/models/number_10dlc/campaign_create_params.rbi +173 -0
  184. data/rbi/zavudev/models/number_10dlc/campaign_create_response.rbi +39 -0
  185. data/rbi/zavudev/models/number_10dlc/campaign_delete_params.rbi +40 -0
  186. data/rbi/zavudev/models/number_10dlc/campaign_list_params.rbi +69 -0
  187. data/rbi/zavudev/models/number_10dlc/campaign_retrieve_params.rbi +40 -0
  188. data/rbi/zavudev/models/number_10dlc/campaign_retrieve_response.rbi +39 -0
  189. data/rbi/zavudev/models/number_10dlc/campaign_submit_params.rbi +40 -0
  190. data/rbi/zavudev/models/number_10dlc/campaign_submit_response.rbi +39 -0
  191. data/rbi/zavudev/models/number_10dlc/campaign_sync_status_params.rbi +40 -0
  192. data/rbi/zavudev/models/number_10dlc/campaign_sync_status_response.rbi +39 -0
  193. data/rbi/zavudev/models/number_10dlc/campaign_update_params.rbi +109 -0
  194. data/rbi/zavudev/models/number_10dlc/campaign_update_response.rbi +39 -0
  195. data/rbi/zavudev/models/number_10dlc/campaigns/phone_number_assign_params.rbi +56 -0
  196. data/rbi/zavudev/models/number_10dlc/campaigns/phone_number_assign_response.rbi +54 -0
  197. data/rbi/zavudev/models/number_10dlc/campaigns/phone_number_list_params.rbi +42 -0
  198. data/rbi/zavudev/models/number_10dlc/campaigns/phone_number_list_response.rbi +57 -0
  199. data/rbi/zavudev/models/number_10dlc/campaigns/phone_number_unassign_params.rbi +50 -0
  200. data/rbi/zavudev/models/number_10dlc/campaigns/ten_dlc_phone_number_assignment.rbi +132 -0
  201. data/rbi/zavudev/models/number_10dlc/ten_dlc_brand.rbi +298 -0
  202. data/rbi/zavudev/models/number_10dlc/ten_dlc_campaign.rbi +269 -0
  203. data/rbi/zavudev/models/plan_retrieve_params.rbi +27 -0
  204. data/rbi/zavudev/models/plan_retrieve_response.rbi +306 -0
  205. data/rbi/zavudev/models/senders/whats_app_sync_contacts.rbi +104 -0
  206. data/rbi/zavudev/models/senders/whats_app_sync_history.rbi +117 -0
  207. data/rbi/zavudev/models/senders/whats_app_sync_status.rbi +126 -0
  208. data/rbi/zavudev/models/senders/whatsapp_sync_retrieve_params.rbi +40 -0
  209. data/rbi/zavudev/models/senders/whatsapp_sync_retrieve_response.rbi +39 -0
  210. data/rbi/zavudev/models/senders/whatsapp_sync_start_contacts_sync_params.rbi +40 -0
  211. data/rbi/zavudev/models/senders/whatsapp_sync_start_contacts_sync_response.rbi +50 -0
  212. data/rbi/zavudev/models/senders/whatsapp_sync_start_history_sync_params.rbi +40 -0
  213. data/rbi/zavudev/models/senders/whatsapp_sync_start_history_sync_response.rbi +50 -0
  214. data/rbi/zavudev/models/sub_account.rbi +111 -0
  215. data/rbi/zavudev/models/sub_account_create_params.rbi +76 -0
  216. data/rbi/zavudev/models/sub_account_create_response.rbi +33 -0
  217. data/rbi/zavudev/models/sub_account_deactivate_params.rbi +35 -0
  218. data/rbi/zavudev/models/sub_account_deactivate_response.rbi +36 -0
  219. data/rbi/zavudev/models/sub_account_get_balance_params.rbi +35 -0
  220. data/rbi/zavudev/models/sub_account_get_balance_response.rbi +73 -0
  221. data/rbi/zavudev/models/sub_account_list_params.rbi +49 -0
  222. data/rbi/zavudev/models/sub_account_retrieve_params.rbi +35 -0
  223. data/rbi/zavudev/models/sub_account_retrieve_response.rbi +33 -0
  224. data/rbi/zavudev/models/sub_account_update_params.rbi +113 -0
  225. data/rbi/zavudev/models/sub_account_update_response.rbi +33 -0
  226. data/rbi/zavudev/models/sub_accounts/api_key_create_params.rbi +117 -0
  227. data/rbi/zavudev/models/sub_accounts/api_key_create_response.rbi +136 -0
  228. data/rbi/zavudev/models/sub_accounts/api_key_list_params.rbi +40 -0
  229. data/rbi/zavudev/models/sub_accounts/api_key_list_response.rbi +177 -0
  230. data/rbi/zavudev/models/sub_accounts/api_key_revoke_params.rbi +48 -0
  231. data/rbi/zavudev/models/template.rbi +13 -0
  232. data/rbi/zavudev/models/template_create_params.rbi +21 -0
  233. data/rbi/zavudev/models/url_list_verified_params.rbi +97 -0
  234. data/rbi/zavudev/models/url_retrieve_details_params.rbi +35 -0
  235. data/rbi/zavudev/models/url_retrieve_details_response.rbi +31 -0
  236. data/rbi/zavudev/models/url_submit_for_verification_params.rbi +43 -0
  237. data/rbi/zavudev/models/url_submit_for_verification_response.rbi +31 -0
  238. data/rbi/zavudev/models/usage_retrieve_params.rbi +27 -0
  239. data/rbi/zavudev/models/usage_retrieve_response.rbi +150 -0
  240. data/rbi/zavudev/models/verified_url.rbi +133 -0
  241. data/rbi/zavudev/models.rbi +64 -0
  242. data/rbi/zavudev/resources/balance.rbi +22 -0
  243. data/rbi/zavudev/resources/broadcasts.rbi +22 -0
  244. data/rbi/zavudev/resources/contacts/channels.rbi +100 -0
  245. data/rbi/zavudev/resources/contacts.rbi +52 -0
  246. data/rbi/zavudev/resources/exports.rbi +62 -0
  247. data/rbi/zavudev/resources/invitations.rbi +83 -0
  248. data/rbi/zavudev/resources/number_10dlc/brands.rbi +198 -0
  249. data/rbi/zavudev/resources/number_10dlc/campaigns/phone_numbers.rbi +69 -0
  250. data/rbi/zavudev/resources/number_10dlc/campaigns.rbi +177 -0
  251. data/rbi/zavudev/resources/number_10dlc.rbi +18 -0
  252. data/rbi/zavudev/resources/plan.rbi +22 -0
  253. data/rbi/zavudev/resources/senders/whatsapp_sync.rbi +54 -0
  254. data/rbi/zavudev/resources/senders.rbi +3 -0
  255. data/rbi/zavudev/resources/sub_accounts/api_keys.rbi +69 -0
  256. data/rbi/zavudev/resources/sub_accounts.rbi +125 -0
  257. data/rbi/zavudev/resources/urls.rbi +60 -0
  258. data/rbi/zavudev/resources/usage.rbi +22 -0
  259. data/sig/zavudev/client.rbs +16 -0
  260. data/sig/zavudev/models/balance_retrieve_params.rbs +15 -0
  261. data/sig/zavudev/models/balance_retrieve_response.rbs +42 -0
  262. data/sig/zavudev/models/broadcast_contact.rbs +9 -0
  263. data/sig/zavudev/models/broadcast_content.rbs +9 -0
  264. data/sig/zavudev/models/broadcast_escalate_review_params.rbs +23 -0
  265. data/sig/zavudev/models/broadcast_escalate_review_response.rbs +13 -0
  266. data/sig/zavudev/models/broadcast_retry_review_params.rbs +23 -0
  267. data/sig/zavudev/models/broadcast_retry_review_response.rbs +13 -0
  268. data/sig/zavudev/models/broadcasts/contact_add_params.rbs +13 -1
  269. data/sig/zavudev/models/contact_create_params.rbs +97 -0
  270. data/sig/zavudev/models/contact_dismiss_merge_suggestion_params.rbs +23 -0
  271. data/sig/zavudev/models/contact_merge_params.rbs +28 -0
  272. data/sig/zavudev/models/contacts/channel_add_params.rbs +73 -0
  273. data/sig/zavudev/models/contacts/channel_add_response.rbs +15 -0
  274. data/sig/zavudev/models/contacts/channel_remove_params.rbs +30 -0
  275. data/sig/zavudev/models/contacts/channel_set_primary_params.rbs +30 -0
  276. data/sig/zavudev/models/contacts/channel_set_primary_response.rbs +15 -0
  277. data/sig/zavudev/models/contacts/channel_update_params.rbs +52 -0
  278. data/sig/zavudev/models/contacts/channel_update_response.rbs +15 -0
  279. data/sig/zavudev/models/data_export.rbs +102 -0
  280. data/sig/zavudev/models/export_create_params.rbs +59 -0
  281. data/sig/zavudev/models/export_create_response.rbs +13 -0
  282. data/sig/zavudev/models/export_list_params.rbs +57 -0
  283. data/sig/zavudev/models/export_retrieve_params.rbs +23 -0
  284. data/sig/zavudev/models/export_retrieve_response.rbs +13 -0
  285. data/sig/zavudev/models/invitation.rbs +104 -0
  286. data/sig/zavudev/models/invitation_cancel_params.rbs +23 -0
  287. data/sig/zavudev/models/invitation_cancel_response.rbs +13 -0
  288. data/sig/zavudev/models/invitation_create_params.rbs +63 -0
  289. data/sig/zavudev/models/invitation_create_response.rbs +13 -0
  290. data/sig/zavudev/models/invitation_list_params.rbs +58 -0
  291. data/sig/zavudev/models/invitation_retrieve_params.rbs +23 -0
  292. data/sig/zavudev/models/invitation_retrieve_response.rbs +13 -0
  293. data/sig/zavudev/models/message_content.rbs +66 -0
  294. data/sig/zavudev/models/message_type.rbs +2 -0
  295. data/sig/zavudev/models/number_10dlc/brand_create_params.rbs +141 -0
  296. data/sig/zavudev/models/number_10dlc/brand_create_response.rbs +15 -0
  297. data/sig/zavudev/models/number_10dlc/brand_delete_params.rbs +25 -0
  298. data/sig/zavudev/models/number_10dlc/brand_list_params.rbs +34 -0
  299. data/sig/zavudev/models/number_10dlc/brand_list_use_cases_params.rbs +17 -0
  300. data/sig/zavudev/models/number_10dlc/brand_list_use_cases_response.rbs +38 -0
  301. data/sig/zavudev/models/number_10dlc/brand_retrieve_params.rbs +25 -0
  302. data/sig/zavudev/models/number_10dlc/brand_retrieve_response.rbs +16 -0
  303. data/sig/zavudev/models/number_10dlc/brand_submit_params.rbs +25 -0
  304. data/sig/zavudev/models/number_10dlc/brand_submit_response.rbs +15 -0
  305. data/sig/zavudev/models/number_10dlc/brand_sync_status_params.rbs +25 -0
  306. data/sig/zavudev/models/number_10dlc/brand_sync_status_response.rbs +16 -0
  307. data/sig/zavudev/models/number_10dlc/brand_update_params.rbs +168 -0
  308. data/sig/zavudev/models/number_10dlc/brand_update_response.rbs +15 -0
  309. data/sig/zavudev/models/number_10dlc/campaign_create_params.rbs +128 -0
  310. data/sig/zavudev/models/number_10dlc/campaign_create_response.rbs +16 -0
  311. data/sig/zavudev/models/number_10dlc/campaign_delete_params.rbs +25 -0
  312. data/sig/zavudev/models/number_10dlc/campaign_list_params.rbs +40 -0
  313. data/sig/zavudev/models/number_10dlc/campaign_retrieve_params.rbs +25 -0
  314. data/sig/zavudev/models/number_10dlc/campaign_retrieve_response.rbs +16 -0
  315. data/sig/zavudev/models/number_10dlc/campaign_submit_params.rbs +25 -0
  316. data/sig/zavudev/models/number_10dlc/campaign_submit_response.rbs +16 -0
  317. data/sig/zavudev/models/number_10dlc/campaign_sync_status_params.rbs +25 -0
  318. data/sig/zavudev/models/number_10dlc/campaign_sync_status_response.rbs +16 -0
  319. data/sig/zavudev/models/number_10dlc/campaign_update_params.rbs +77 -0
  320. data/sig/zavudev/models/number_10dlc/campaign_update_response.rbs +16 -0
  321. data/sig/zavudev/models/number_10dlc/campaigns/phone_number_assign_params.rbs +32 -0
  322. data/sig/zavudev/models/number_10dlc/campaigns/phone_number_assign_response.rbs +24 -0
  323. data/sig/zavudev/models/number_10dlc/campaigns/phone_number_list_params.rbs +27 -0
  324. data/sig/zavudev/models/number_10dlc/campaigns/phone_number_list_response.rbs +29 -0
  325. data/sig/zavudev/models/number_10dlc/campaigns/phone_number_unassign_params.rbs +32 -0
  326. data/sig/zavudev/models/number_10dlc/campaigns/ten_dlc_phone_number_assignment.rbs +71 -0
  327. data/sig/zavudev/models/number_10dlc/ten_dlc_brand.rbs +179 -0
  328. data/sig/zavudev/models/number_10dlc/ten_dlc_campaign.rbs +175 -0
  329. data/sig/zavudev/models/plan_retrieve_params.rbs +15 -0
  330. data/sig/zavudev/models/plan_retrieve_response.rbs +158 -0
  331. data/sig/zavudev/models/senders/whats_app_sync_contacts.rbs +45 -0
  332. data/sig/zavudev/models/senders/whats_app_sync_history.rbs +52 -0
  333. data/sig/zavudev/models/senders/whats_app_sync_status.rbs +56 -0
  334. data/sig/zavudev/models/senders/whatsapp_sync_retrieve_params.rbs +25 -0
  335. data/sig/zavudev/models/senders/whatsapp_sync_retrieve_response.rbs +16 -0
  336. data/sig/zavudev/models/senders/whatsapp_sync_start_contacts_sync_params.rbs +25 -0
  337. data/sig/zavudev/models/senders/whatsapp_sync_start_contacts_sync_response.rbs +24 -0
  338. data/sig/zavudev/models/senders/whatsapp_sync_start_history_sync_params.rbs +25 -0
  339. data/sig/zavudev/models/senders/whatsapp_sync_start_history_sync_response.rbs +24 -0
  340. data/sig/zavudev/models/sub_account.rbs +73 -0
  341. data/sig/zavudev/models/sub_account_create_params.rbs +47 -0
  342. data/sig/zavudev/models/sub_account_create_response.rbs +13 -0
  343. data/sig/zavudev/models/sub_account_deactivate_params.rbs +20 -0
  344. data/sig/zavudev/models/sub_account_deactivate_response.rbs +16 -0
  345. data/sig/zavudev/models/sub_account_get_balance_params.rbs +20 -0
  346. data/sig/zavudev/models/sub_account_get_balance_response.rbs +42 -0
  347. data/sig/zavudev/models/sub_account_list_params.rbs +32 -0
  348. data/sig/zavudev/models/sub_account_retrieve_params.rbs +20 -0
  349. data/sig/zavudev/models/sub_account_retrieve_response.rbs +13 -0
  350. data/sig/zavudev/models/sub_account_update_params.rbs +72 -0
  351. data/sig/zavudev/models/sub_account_update_response.rbs +13 -0
  352. data/sig/zavudev/models/sub_accounts/api_key_create_params.rbs +60 -0
  353. data/sig/zavudev/models/sub_accounts/api_key_create_response.rbs +63 -0
  354. data/sig/zavudev/models/sub_accounts/api_key_list_params.rbs +22 -0
  355. data/sig/zavudev/models/sub_accounts/api_key_list_response.rbs +94 -0
  356. data/sig/zavudev/models/sub_accounts/api_key_revoke_params.rbs +30 -0
  357. data/sig/zavudev/models/template.rbs +7 -0
  358. data/sig/zavudev/models/template_create_params.rbs +7 -0
  359. data/sig/zavudev/models/url_list_verified_params.rbs +57 -0
  360. data/sig/zavudev/models/url_retrieve_details_params.rbs +23 -0
  361. data/sig/zavudev/models/url_retrieve_details_response.rbs +13 -0
  362. data/sig/zavudev/models/url_submit_for_verification_params.rbs +20 -0
  363. data/sig/zavudev/models/url_submit_for_verification_response.rbs +13 -0
  364. data/sig/zavudev/models/usage_retrieve_params.rbs +15 -0
  365. data/sig/zavudev/models/usage_retrieve_response.rbs +69 -0
  366. data/sig/zavudev/models/verified_url.rbs +80 -0
  367. data/sig/zavudev/models.rbs +62 -0
  368. data/sig/zavudev/resources/balance.rbs +11 -0
  369. data/sig/zavudev/resources/broadcasts.rbs +10 -0
  370. data/sig/zavudev/resources/contacts/channels.rbs +40 -0
  371. data/sig/zavudev/resources/contacts.rbs +20 -0
  372. data/sig/zavudev/resources/exports.rbs +26 -0
  373. data/sig/zavudev/resources/invitations.rbs +34 -0
  374. data/sig/zavudev/resources/number_10dlc/brands.rbs +82 -0
  375. data/sig/zavudev/resources/number_10dlc/campaigns/phone_numbers.rbs +28 -0
  376. data/sig/zavudev/resources/number_10dlc/campaigns.rbs +73 -0
  377. data/sig/zavudev/resources/number_10dlc.rbs +11 -0
  378. data/sig/zavudev/resources/plan.rbs +11 -0
  379. data/sig/zavudev/resources/senders/whatsapp_sync.rbs +24 -0
  380. data/sig/zavudev/resources/senders.rbs +2 -0
  381. data/sig/zavudev/resources/sub_accounts/api_keys.rbs +28 -0
  382. data/sig/zavudev/resources/sub_accounts.rbs +48 -0
  383. data/sig/zavudev/resources/urls.rbs +24 -0
  384. data/sig/zavudev/resources/usage.rbs +11 -0
  385. metadata +344 -2
@@ -0,0 +1,89 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Resources
5
+ class Exports
6
+ # Create a new data export job. The export will be processed asynchronously and
7
+ # the download URL will be available when status is 'completed'. Export links
8
+ # expire after 24 hours.
9
+ #
10
+ # @overload create(data_types:, date_from: nil, date_to: nil, request_options: {})
11
+ #
12
+ # @param data_types [Array<Symbol, Zavudev::Models::ExportCreateParams::DataType>] List of data types to include in the export.
13
+ #
14
+ # @param date_from [Time] Start date for data to export (inclusive).
15
+ #
16
+ # @param date_to [Time] End date for data to export (inclusive).
17
+ #
18
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
19
+ #
20
+ # @return [Zavudev::Models::ExportCreateResponse]
21
+ #
22
+ # @see Zavudev::Models::ExportCreateParams
23
+ def create(params)
24
+ parsed, options = Zavudev::ExportCreateParams.dump_request(params)
25
+ @client.request(
26
+ method: :post,
27
+ path: "v1/exports",
28
+ body: parsed,
29
+ model: Zavudev::Models::ExportCreateResponse,
30
+ options: options
31
+ )
32
+ end
33
+
34
+ # Get details of a specific data export, including download URL when completed.
35
+ #
36
+ # @overload retrieve(export_id, request_options: {})
37
+ #
38
+ # @param export_id [String]
39
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
40
+ #
41
+ # @return [Zavudev::Models::ExportRetrieveResponse]
42
+ #
43
+ # @see Zavudev::Models::ExportRetrieveParams
44
+ def retrieve(export_id, params = {})
45
+ @client.request(
46
+ method: :get,
47
+ path: ["v1/exports/%1$s", export_id],
48
+ model: Zavudev::Models::ExportRetrieveResponse,
49
+ options: params[:request_options]
50
+ )
51
+ end
52
+
53
+ # List data exports for this project.
54
+ #
55
+ # @overload list(cursor: nil, limit: nil, status: nil, request_options: {})
56
+ #
57
+ # @param cursor [String]
58
+ #
59
+ # @param limit [Integer]
60
+ #
61
+ # @param status [Symbol, Zavudev::Models::ExportListParams::Status] Status of a data export job.
62
+ #
63
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
64
+ #
65
+ # @return [Zavudev::Internal::Cursor<Zavudev::Models::DataExport>]
66
+ #
67
+ # @see Zavudev::Models::ExportListParams
68
+ def list(params = {})
69
+ parsed, options = Zavudev::ExportListParams.dump_request(params)
70
+ query = Zavudev::Internal::Util.encode_query_params(parsed)
71
+ @client.request(
72
+ method: :get,
73
+ path: "v1/exports",
74
+ query: query,
75
+ page: Zavudev::Internal::Cursor,
76
+ model: Zavudev::DataExport,
77
+ options: options
78
+ )
79
+ end
80
+
81
+ # @api private
82
+ #
83
+ # @param client [Zavudev::Client]
84
+ def initialize(client:)
85
+ @client = client
86
+ end
87
+ end
88
+ end
89
+ end
@@ -0,0 +1,118 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Resources
5
+ class Invitations
6
+ # Some parameter documentations has been truncated, see
7
+ # {Zavudev::Models::InvitationCreateParams} for more details.
8
+ #
9
+ # Create a partner invitation link for a client to connect their WhatsApp Business
10
+ # account. The client will complete Meta's embedded signup flow and the resulting
11
+ # sender will be created in your project.
12
+ #
13
+ # @overload create(allowed_phone_countries: nil, client_email: nil, client_name: nil, client_phone: nil, expires_in_days: nil, phone_number_id: nil, request_options: {})
14
+ #
15
+ # @param allowed_phone_countries [Array<String>] ISO country codes for allowed phone numbers.
16
+ #
17
+ # @param client_email [String] Email of the client being invited.
18
+ #
19
+ # @param client_name [String] Name of the client being invited.
20
+ #
21
+ # @param client_phone [String] Phone number of the client in E.164 format.
22
+ #
23
+ # @param expires_in_days [Integer] Number of days until the invitation expires.
24
+ #
25
+ # @param phone_number_id [String] ID of a Zavu phone number to pre-assign for WhatsApp registration. If provided,
26
+ #
27
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
28
+ #
29
+ # @return [Zavudev::Models::InvitationCreateResponse]
30
+ #
31
+ # @see Zavudev::Models::InvitationCreateParams
32
+ def create(params = {})
33
+ parsed, options = Zavudev::InvitationCreateParams.dump_request(params)
34
+ @client.request(
35
+ method: :post,
36
+ path: "v1/invitations",
37
+ body: parsed,
38
+ model: Zavudev::Models::InvitationCreateResponse,
39
+ options: options
40
+ )
41
+ end
42
+
43
+ # Get invitation
44
+ #
45
+ # @overload retrieve(invitation_id, request_options: {})
46
+ #
47
+ # @param invitation_id [String]
48
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
49
+ #
50
+ # @return [Zavudev::Models::InvitationRetrieveResponse]
51
+ #
52
+ # @see Zavudev::Models::InvitationRetrieveParams
53
+ def retrieve(invitation_id, params = {})
54
+ @client.request(
55
+ method: :get,
56
+ path: ["v1/invitations/%1$s", invitation_id],
57
+ model: Zavudev::Models::InvitationRetrieveResponse,
58
+ options: params[:request_options]
59
+ )
60
+ end
61
+
62
+ # List partner invitations for this project.
63
+ #
64
+ # @overload list(cursor: nil, limit: nil, status: nil, request_options: {})
65
+ #
66
+ # @param cursor [String]
67
+ #
68
+ # @param limit [Integer]
69
+ #
70
+ # @param status [Symbol, Zavudev::Models::InvitationListParams::Status] Current status of the partner invitation.
71
+ #
72
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
73
+ #
74
+ # @return [Zavudev::Internal::Cursor<Zavudev::Models::Invitation>]
75
+ #
76
+ # @see Zavudev::Models::InvitationListParams
77
+ def list(params = {})
78
+ parsed, options = Zavudev::InvitationListParams.dump_request(params)
79
+ query = Zavudev::Internal::Util.encode_query_params(parsed)
80
+ @client.request(
81
+ method: :get,
82
+ path: "v1/invitations",
83
+ query: query,
84
+ page: Zavudev::Internal::Cursor,
85
+ model: Zavudev::Invitation,
86
+ options: options
87
+ )
88
+ end
89
+
90
+ # Cancel an active invitation. The client will no longer be able to use the
91
+ # invitation link.
92
+ #
93
+ # @overload cancel(invitation_id, request_options: {})
94
+ #
95
+ # @param invitation_id [String]
96
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
97
+ #
98
+ # @return [Zavudev::Models::InvitationCancelResponse]
99
+ #
100
+ # @see Zavudev::Models::InvitationCancelParams
101
+ def cancel(invitation_id, params = {})
102
+ @client.request(
103
+ method: :post,
104
+ path: ["v1/invitations/%1$s/cancel", invitation_id],
105
+ model: Zavudev::Models::InvitationCancelResponse,
106
+ options: params[:request_options]
107
+ )
108
+ end
109
+
110
+ # @api private
111
+ #
112
+ # @param client [Zavudev::Client]
113
+ def initialize(client:)
114
+ @client = client
115
+ end
116
+ end
117
+ end
118
+ end
@@ -0,0 +1,251 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Resources
5
+ class Number10dlc
6
+ class Brands
7
+ # Create a 10DLC brand registration. The brand starts in draft status. Submit it
8
+ # for review using the submit endpoint.
9
+ #
10
+ # @overload create(city:, country:, display_name:, email:, entity_type:, phone:, postal_code:, state:, street:, vertical:, company_name: nil, ein: nil, first_name: nil, last_name: nil, stock_exchange: nil, stock_symbol: nil, website: nil, request_options: {})
11
+ #
12
+ # @param city [String]
13
+ #
14
+ # @param country [String] Two-letter ISO country code.
15
+ #
16
+ # @param display_name [String] Display name of the brand.
17
+ #
18
+ # @param email [String]
19
+ #
20
+ # @param entity_type [Symbol, Zavudev::Models::Number10dlc::BrandCreateParams::EntityType] Business entity type for 10DLC brand registration.
21
+ #
22
+ # @param phone [String] Contact phone in E.164 format.
23
+ #
24
+ # @param postal_code [String]
25
+ #
26
+ # @param state [String]
27
+ #
28
+ # @param street [String]
29
+ #
30
+ # @param vertical [String] Industry vertical.
31
+ #
32
+ # @param company_name [String] Legal company name.
33
+ #
34
+ # @param ein [String] Employer Identification Number (format: XX-XXXXXXX).
35
+ #
36
+ # @param first_name [String]
37
+ #
38
+ # @param last_name [String]
39
+ #
40
+ # @param stock_exchange [String]
41
+ #
42
+ # @param stock_symbol [String]
43
+ #
44
+ # @param website [String]
45
+ #
46
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
47
+ #
48
+ # @return [Zavudev::Models::Number10dlc::BrandCreateResponse]
49
+ #
50
+ # @see Zavudev::Models::Number10dlc::BrandCreateParams
51
+ def create(params)
52
+ parsed, options = Zavudev::Number10dlc::BrandCreateParams.dump_request(params)
53
+ @client.request(
54
+ method: :post,
55
+ path: "v1/10dlc/brands",
56
+ body: parsed,
57
+ model: Zavudev::Models::Number10dlc::BrandCreateResponse,
58
+ options: options
59
+ )
60
+ end
61
+
62
+ # Get 10DLC brand
63
+ #
64
+ # @overload retrieve(brand_id, request_options: {})
65
+ #
66
+ # @param brand_id [String] 10DLC brand ID.
67
+ #
68
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
69
+ #
70
+ # @return [Zavudev::Models::Number10dlc::BrandRetrieveResponse]
71
+ #
72
+ # @see Zavudev::Models::Number10dlc::BrandRetrieveParams
73
+ def retrieve(brand_id, params = {})
74
+ @client.request(
75
+ method: :get,
76
+ path: ["v1/10dlc/brands/%1$s", brand_id],
77
+ model: Zavudev::Models::Number10dlc::BrandRetrieveResponse,
78
+ options: params[:request_options]
79
+ )
80
+ end
81
+
82
+ # Update a 10DLC brand in draft status. Cannot update after submission.
83
+ #
84
+ # @overload update(brand_id, city: nil, company_name: nil, country: nil, display_name: nil, ein: nil, email: nil, entity_type: nil, first_name: nil, last_name: nil, phone: nil, postal_code: nil, state: nil, stock_exchange: nil, stock_symbol: nil, street: nil, vertical: nil, website: nil, request_options: {})
85
+ #
86
+ # @param brand_id [String] 10DLC brand ID.
87
+ #
88
+ # @param city [String]
89
+ #
90
+ # @param company_name [String]
91
+ #
92
+ # @param country [String]
93
+ #
94
+ # @param display_name [String]
95
+ #
96
+ # @param ein [String]
97
+ #
98
+ # @param email [String]
99
+ #
100
+ # @param entity_type [Symbol, Zavudev::Models::Number10dlc::BrandUpdateParams::EntityType] Business entity type for 10DLC brand registration.
101
+ #
102
+ # @param first_name [String]
103
+ #
104
+ # @param last_name [String]
105
+ #
106
+ # @param phone [String]
107
+ #
108
+ # @param postal_code [String]
109
+ #
110
+ # @param state [String]
111
+ #
112
+ # @param stock_exchange [String]
113
+ #
114
+ # @param stock_symbol [String]
115
+ #
116
+ # @param street [String]
117
+ #
118
+ # @param vertical [String]
119
+ #
120
+ # @param website [String]
121
+ #
122
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
123
+ #
124
+ # @return [Zavudev::Models::Number10dlc::BrandUpdateResponse]
125
+ #
126
+ # @see Zavudev::Models::Number10dlc::BrandUpdateParams
127
+ def update(brand_id, params = {})
128
+ parsed, options = Zavudev::Number10dlc::BrandUpdateParams.dump_request(params)
129
+ @client.request(
130
+ method: :patch,
131
+ path: ["v1/10dlc/brands/%1$s", brand_id],
132
+ body: parsed,
133
+ model: Zavudev::Models::Number10dlc::BrandUpdateResponse,
134
+ options: options
135
+ )
136
+ end
137
+
138
+ # List 10DLC brand registrations for this project.
139
+ #
140
+ # @overload list(cursor: nil, limit: nil, request_options: {})
141
+ #
142
+ # @param cursor [String]
143
+ # @param limit [Integer]
144
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
145
+ #
146
+ # @return [Zavudev::Internal::Cursor<Zavudev::Models::Number10dlc::TenDlcBrand>]
147
+ #
148
+ # @see Zavudev::Models::Number10dlc::BrandListParams
149
+ def list(params = {})
150
+ parsed, options = Zavudev::Number10dlc::BrandListParams.dump_request(params)
151
+ query = Zavudev::Internal::Util.encode_query_params(parsed)
152
+ @client.request(
153
+ method: :get,
154
+ path: "v1/10dlc/brands",
155
+ query: query,
156
+ page: Zavudev::Internal::Cursor,
157
+ model: Zavudev::Number10dlc::TenDlcBrand,
158
+ options: options
159
+ )
160
+ end
161
+
162
+ # Delete 10DLC brand
163
+ #
164
+ # @overload delete(brand_id, request_options: {})
165
+ #
166
+ # @param brand_id [String] 10DLC brand ID.
167
+ #
168
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
169
+ #
170
+ # @return [nil]
171
+ #
172
+ # @see Zavudev::Models::Number10dlc::BrandDeleteParams
173
+ def delete(brand_id, params = {})
174
+ @client.request(
175
+ method: :delete,
176
+ path: ["v1/10dlc/brands/%1$s", brand_id],
177
+ model: NilClass,
178
+ options: params[:request_options]
179
+ )
180
+ end
181
+
182
+ # List available use cases for 10DLC campaign registration.
183
+ #
184
+ # @overload list_use_cases(request_options: {})
185
+ #
186
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
187
+ #
188
+ # @return [Zavudev::Models::Number10dlc::BrandListUseCasesResponse]
189
+ #
190
+ # @see Zavudev::Models::Number10dlc::BrandListUseCasesParams
191
+ def list_use_cases(params = {})
192
+ @client.request(
193
+ method: :get,
194
+ path: "v1/10dlc/brands/use-cases",
195
+ model: Zavudev::Models::Number10dlc::BrandListUseCasesResponse,
196
+ options: params[:request_options]
197
+ )
198
+ end
199
+
200
+ # Submit a draft brand to The Campaign Registry (TCR) for vetting. The brand must
201
+ # be in draft status. A $35 registration fee is charged from your balance.
202
+ #
203
+ # @overload submit(brand_id, request_options: {})
204
+ #
205
+ # @param brand_id [String] 10DLC brand ID.
206
+ #
207
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
208
+ #
209
+ # @return [Zavudev::Models::Number10dlc::BrandSubmitResponse]
210
+ #
211
+ # @see Zavudev::Models::Number10dlc::BrandSubmitParams
212
+ def submit(brand_id, params = {})
213
+ @client.request(
214
+ method: :post,
215
+ path: ["v1/10dlc/brands/%1$s/submit", brand_id],
216
+ model: Zavudev::Models::Number10dlc::BrandSubmitResponse,
217
+ options: params[:request_options]
218
+ )
219
+ end
220
+
221
+ # Sync the brand status with the registration provider. Use this to check for
222
+ # approval updates after submission.
223
+ #
224
+ # @overload sync_status(brand_id, request_options: {})
225
+ #
226
+ # @param brand_id [String] 10DLC brand ID.
227
+ #
228
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
229
+ #
230
+ # @return [Zavudev::Models::Number10dlc::BrandSyncStatusResponse]
231
+ #
232
+ # @see Zavudev::Models::Number10dlc::BrandSyncStatusParams
233
+ def sync_status(brand_id, params = {})
234
+ @client.request(
235
+ method: :post,
236
+ path: ["v1/10dlc/brands/%1$s/sync", brand_id],
237
+ model: Zavudev::Models::Number10dlc::BrandSyncStatusResponse,
238
+ options: params[:request_options]
239
+ )
240
+ end
241
+
242
+ # @api private
243
+ #
244
+ # @param client [Zavudev::Client]
245
+ def initialize(client:)
246
+ @client = client
247
+ end
248
+ end
249
+ end
250
+ end
251
+ end
@@ -0,0 +1,90 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Zavudev
4
+ module Resources
5
+ class Number10dlc
6
+ class Campaigns
7
+ class PhoneNumbers
8
+ # List phone numbers assigned to a 10DLC campaign.
9
+ #
10
+ # @overload list(campaign_id, request_options: {})
11
+ #
12
+ # @param campaign_id [String] 10DLC campaign ID.
13
+ #
14
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
15
+ #
16
+ # @return [Zavudev::Models::Number10dlc::Campaigns::PhoneNumberListResponse]
17
+ #
18
+ # @see Zavudev::Models::Number10dlc::Campaigns::PhoneNumberListParams
19
+ def list(campaign_id, params = {})
20
+ @client.request(
21
+ method: :get,
22
+ path: ["v1/10dlc/campaigns/%1$s/phone-numbers", campaign_id],
23
+ model: Zavudev::Models::Number10dlc::Campaigns::PhoneNumberListResponse,
24
+ options: params[:request_options]
25
+ )
26
+ end
27
+
28
+ # Assign a US phone number to an approved 10DLC campaign. The campaign must be in
29
+ # approved status.
30
+ #
31
+ # @overload assign(campaign_id, phone_number_id:, request_options: {})
32
+ #
33
+ # @param campaign_id [String] 10DLC campaign ID.
34
+ #
35
+ # @param phone_number_id [String] ID of the phone number to assign.
36
+ #
37
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
38
+ #
39
+ # @return [Zavudev::Models::Number10dlc::Campaigns::PhoneNumberAssignResponse]
40
+ #
41
+ # @see Zavudev::Models::Number10dlc::Campaigns::PhoneNumberAssignParams
42
+ def assign(campaign_id, params)
43
+ parsed, options = Zavudev::Number10dlc::Campaigns::PhoneNumberAssignParams.dump_request(params)
44
+ @client.request(
45
+ method: :post,
46
+ path: ["v1/10dlc/campaigns/%1$s/phone-numbers", campaign_id],
47
+ body: parsed,
48
+ model: Zavudev::Models::Number10dlc::Campaigns::PhoneNumberAssignResponse,
49
+ options: options
50
+ )
51
+ end
52
+
53
+ # Remove a phone number assignment from a 10DLC campaign.
54
+ #
55
+ # @overload unassign(assignment_id, campaign_id:, request_options: {})
56
+ #
57
+ # @param assignment_id [String] Phone number assignment ID.
58
+ #
59
+ # @param campaign_id [String] 10DLC campaign ID.
60
+ #
61
+ # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
62
+ #
63
+ # @return [nil]
64
+ #
65
+ # @see Zavudev::Models::Number10dlc::Campaigns::PhoneNumberUnassignParams
66
+ def unassign(assignment_id, params)
67
+ parsed, options = Zavudev::Number10dlc::Campaigns::PhoneNumberUnassignParams.dump_request(params)
68
+ campaign_id =
69
+ parsed.delete(:campaign_id) do
70
+ raise ArgumentError.new("missing required path argument #{_1}")
71
+ end
72
+ @client.request(
73
+ method: :delete,
74
+ path: ["v1/10dlc/campaigns/%1$s/phone-numbers/%2$s", campaign_id, assignment_id],
75
+ model: NilClass,
76
+ options: options
77
+ )
78
+ end
79
+
80
+ # @api private
81
+ #
82
+ # @param client [Zavudev::Client]
83
+ def initialize(client:)
84
+ @client = client
85
+ end
86
+ end
87
+ end
88
+ end
89
+ end
90
+ end