late-sdk 0.0.43 → 0.0.44

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 (273) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +124 -0
  3. data/docs/AddWhatsAppBroadcastRecipients200Response.md +24 -0
  4. data/docs/AddWhatsAppBroadcastRecipientsRequest.md +18 -0
  5. data/docs/AddWhatsAppBroadcastRecipientsRequestRecipientsInner.md +22 -0
  6. data/docs/BulkDeleteWhatsAppContacts200Response.md +20 -0
  7. data/docs/BulkDeleteWhatsAppContactsRequest.md +18 -0
  8. data/docs/BulkUpdateWhatsAppContacts200Response.md +24 -0
  9. data/docs/BulkUpdateWhatsAppContactsRequest.md +24 -0
  10. data/docs/CancelWhatsAppBroadcastSchedule200Response.md +22 -0
  11. data/docs/CancelWhatsAppBroadcastSchedule200ResponseBroadcast.md +20 -0
  12. data/docs/CreateWhatsAppBroadcast200Response.md +20 -0
  13. data/docs/CreateWhatsAppBroadcast200ResponseBroadcast.md +30 -0
  14. data/docs/CreateWhatsAppBroadcastRequest.md +26 -0
  15. data/docs/CreateWhatsAppBroadcastRequestRecipientsInner.md +22 -0
  16. data/docs/CreateWhatsAppContact200Response.md +20 -0
  17. data/docs/CreateWhatsAppContact200ResponseContact.md +34 -0
  18. data/docs/CreateWhatsAppContactRequest.md +36 -0
  19. data/docs/CreateWhatsAppTemplate200Response.md +20 -0
  20. data/docs/CreateWhatsAppTemplate200ResponseTemplate.md +26 -0
  21. data/docs/CreateWhatsAppTemplateRequest.md +26 -0
  22. data/docs/DeleteWhatsAppGroupRequest.md +20 -0
  23. data/docs/GetPreverifiedWhatsAppNumbers200Response.md +20 -0
  24. data/docs/GetPreverifiedWhatsAppNumbers200ResponseNumbersInner.md +26 -0
  25. data/docs/GetWhatsAppBroadcast200Response.md +20 -0
  26. data/docs/GetWhatsAppBroadcast200ResponseBroadcast.md +46 -0
  27. data/docs/GetWhatsAppBroadcastRecipients200Response.md +24 -0
  28. data/docs/GetWhatsAppBroadcastRecipients200ResponseRecipientsInner.md +34 -0
  29. data/docs/GetWhatsAppBroadcastRecipients200ResponseSummary.md +28 -0
  30. data/docs/GetWhatsAppBroadcasts200Response.md +22 -0
  31. data/docs/GetWhatsAppBroadcasts200ResponseBroadcastsInner.md +44 -0
  32. data/docs/GetWhatsAppBroadcasts200ResponseBroadcastsInnerTemplate.md +20 -0
  33. data/docs/GetWhatsAppBusinessProfile200Response.md +20 -0
  34. data/docs/GetWhatsAppBusinessProfile200ResponseBusinessProfile.md +30 -0
  35. data/docs/GetWhatsAppContact200Response.md +20 -0
  36. data/docs/GetWhatsAppContact200ResponseContact.md +56 -0
  37. data/docs/GetWhatsAppContacts200Response.md +24 -0
  38. data/docs/GetWhatsAppContacts200ResponseContactsInner.md +48 -0
  39. data/docs/GetWhatsAppContacts200ResponseFilters.md +20 -0
  40. data/docs/GetWhatsAppContacts200ResponsePagination.md +24 -0
  41. data/docs/GetWhatsAppGroups200Response.md +22 -0
  42. data/docs/GetWhatsAppGroups200ResponseGroupsInner.md +22 -0
  43. data/docs/GetWhatsAppGroups200ResponseSummary.md +22 -0
  44. data/docs/GetWhatsAppPhoneNumber200Response.md +18 -0
  45. data/docs/GetWhatsAppPhoneNumber200ResponsePhoneNumber.md +30 -0
  46. data/docs/GetWhatsAppPhoneNumbers200Response.md +18 -0
  47. data/docs/GetWhatsAppPhoneNumbers200ResponseNumbersInner.md +34 -0
  48. data/docs/GetWhatsAppTemplate200Response.md +20 -0
  49. data/docs/GetWhatsAppTemplate200ResponseTemplate.md +28 -0
  50. data/docs/GetWhatsAppTemplates200Response.md +20 -0
  51. data/docs/GetWhatsAppTemplates200ResponseTemplatesInner.md +28 -0
  52. data/docs/ImportWhatsAppContacts200Response.md +22 -0
  53. data/docs/ImportWhatsAppContacts200ResponseResultsInner.md +26 -0
  54. data/docs/ImportWhatsAppContacts200ResponseSummary.md +24 -0
  55. data/docs/ImportWhatsAppContactsRequest.md +26 -0
  56. data/docs/ImportWhatsAppContactsRequestContactsInner.md +32 -0
  57. data/docs/PurchaseWhatsAppPhoneNumber200Response.md +49 -0
  58. data/docs/PurchaseWhatsAppPhoneNumber200ResponseOneOf.md +20 -0
  59. data/docs/PurchaseWhatsAppPhoneNumber200ResponseOneOf1.md +20 -0
  60. data/docs/PurchaseWhatsAppPhoneNumber200ResponseOneOf1PhoneNumber.md +30 -0
  61. data/docs/PurchaseWhatsAppPhoneNumberRequest.md +18 -0
  62. data/docs/ReleaseWhatsAppPhoneNumber200Response.md +20 -0
  63. data/docs/ReleaseWhatsAppPhoneNumber200ResponsePhoneNumber.md +24 -0
  64. data/docs/RemoveWhatsAppBroadcastRecipients200Response.md +22 -0
  65. data/docs/RemoveWhatsAppBroadcastRecipientsRequest.md +18 -0
  66. data/docs/RenameWhatsAppGroup200Response.md +22 -0
  67. data/docs/RenameWhatsAppGroupRequest.md +22 -0
  68. data/docs/RequestWhatsAppVerificationCode200Response.md +20 -0
  69. data/docs/RequestWhatsAppVerificationCodeRequest.md +18 -0
  70. data/docs/ScheduleWhatsAppBroadcast200Response.md +20 -0
  71. data/docs/ScheduleWhatsAppBroadcast200ResponseBroadcast.md +22 -0
  72. data/docs/ScheduleWhatsAppBroadcastRequest.md +18 -0
  73. data/docs/SearchAvailableWhatsAppNumbers200Response.md +18 -0
  74. data/docs/SendWhatsAppBroadcast200Response.md +26 -0
  75. data/docs/SendWhatsAppBulk200Response.md +22 -0
  76. data/docs/SendWhatsAppBulk200ResponseResultsInner.md +24 -0
  77. data/docs/SendWhatsAppBulk200ResponseSummary.md +22 -0
  78. data/docs/SendWhatsAppBulkRequest.md +22 -0
  79. data/docs/SendWhatsAppBulkRequestRecipientsInner.md +20 -0
  80. data/docs/SendWhatsAppBulkRequestTemplate.md +22 -0
  81. data/docs/UpdateWhatsAppBusinessProfileRequest.md +32 -0
  82. data/docs/UpdateWhatsAppContact200Response.md +20 -0
  83. data/docs/UpdateWhatsAppContact200ResponseContact.md +40 -0
  84. data/docs/UpdateWhatsAppContactRequest.md +34 -0
  85. data/docs/UpdateWhatsAppTemplate200Response.md +20 -0
  86. data/docs/UpdateWhatsAppTemplate200ResponseTemplate.md +22 -0
  87. data/docs/UpdateWhatsAppTemplateRequest.md +20 -0
  88. data/docs/VerifyWhatsAppPhoneNumber200Response.md +22 -0
  89. data/docs/VerifyWhatsAppPhoneNumberRequest.md +18 -0
  90. data/docs/WhatsAppApi.md +2081 -0
  91. data/docs/WhatsAppPhoneNumbersApi.md +585 -0
  92. data/lib/late-sdk/api/whats_app_api.rb +2021 -0
  93. data/lib/late-sdk/api/whats_app_phone_numbers_api.rb +564 -0
  94. data/lib/late-sdk/models/add_whats_app_broadcast_recipients200_response.rb +177 -0
  95. data/lib/late-sdk/models/add_whats_app_broadcast_recipients_request.rb +176 -0
  96. data/lib/late-sdk/models/add_whats_app_broadcast_recipients_request_recipients_inner.rb +185 -0
  97. data/lib/late-sdk/models/bulk_delete_whats_app_contacts200_response.rb +157 -0
  98. data/lib/late-sdk/models/bulk_delete_whats_app_contacts_request.rb +176 -0
  99. data/lib/late-sdk/models/bulk_update_whats_app_contacts200_response.rb +176 -0
  100. data/lib/late-sdk/models/bulk_update_whats_app_contacts_request.rb +251 -0
  101. data/lib/late-sdk/models/cancel_whats_app_broadcast_schedule200_response.rb +165 -0
  102. data/lib/late-sdk/models/cancel_whats_app_broadcast_schedule200_response_broadcast.rb +157 -0
  103. data/lib/late-sdk/models/create_whats_app_broadcast200_response.rb +156 -0
  104. data/lib/late-sdk/models/create_whats_app_broadcast200_response_broadcast.rb +202 -0
  105. data/lib/late-sdk/models/create_whats_app_broadcast_request.rb +240 -0
  106. data/lib/late-sdk/models/create_whats_app_broadcast_request_recipients_inner.rb +186 -0
  107. data/lib/late-sdk/models/create_whats_app_contact200_response.rb +156 -0
  108. data/lib/late-sdk/models/create_whats_app_contact200_response_contact.rb +223 -0
  109. data/lib/late-sdk/models/create_whats_app_contact_request.rb +297 -0
  110. data/lib/late-sdk/models/create_whats_app_template200_response.rb +156 -0
  111. data/lib/late-sdk/models/create_whats_app_template200_response_template.rb +183 -0
  112. data/lib/late-sdk/models/create_whats_app_template_request.rb +310 -0
  113. data/lib/late-sdk/models/delete_whats_app_group_request.rb +192 -0
  114. data/lib/late-sdk/models/get_preverified_whats_app_numbers200_response.rb +161 -0
  115. data/lib/late-sdk/models/get_preverified_whats_app_numbers200_response_numbers_inner.rb +183 -0
  116. data/lib/late-sdk/models/get_whats_app_broadcast200_response.rb +156 -0
  117. data/lib/late-sdk/models/get_whats_app_broadcast200_response_broadcast.rb +307 -0
  118. data/lib/late-sdk/models/get_whats_app_broadcast_recipients200_response.rb +176 -0
  119. data/lib/late-sdk/models/get_whats_app_broadcast_recipients200_response_recipients_inner.rb +253 -0
  120. data/lib/late-sdk/models/get_whats_app_broadcast_recipients200_response_summary.rb +192 -0
  121. data/lib/late-sdk/models/get_whats_app_broadcasts200_response.rb +167 -0
  122. data/lib/late-sdk/models/get_whats_app_broadcasts200_response_broadcasts_inner.rb +298 -0
  123. data/lib/late-sdk/models/get_whats_app_broadcasts200_response_broadcasts_inner_template.rb +156 -0
  124. data/lib/late-sdk/models/get_whats_app_business_profile200_response.rb +156 -0
  125. data/lib/late-sdk/models/get_whats_app_business_profile200_response_business_profile.rb +225 -0
  126. data/lib/late-sdk/models/get_whats_app_contact200_response.rb +156 -0
  127. data/lib/late-sdk/models/get_whats_app_contact200_response_contact.rb +322 -0
  128. data/lib/late-sdk/models/get_whats_app_contacts200_response.rb +176 -0
  129. data/lib/late-sdk/models/get_whats_app_contacts200_response_contacts_inner.rb +286 -0
  130. data/lib/late-sdk/models/get_whats_app_contacts200_response_filters.rb +160 -0
  131. data/lib/late-sdk/models/get_whats_app_contacts200_response_pagination.rb +174 -0
  132. data/lib/late-sdk/models/get_whats_app_groups200_response.rb +167 -0
  133. data/lib/late-sdk/models/get_whats_app_groups200_response_groups_inner.rb +167 -0
  134. data/lib/late-sdk/models/get_whats_app_groups200_response_summary.rb +165 -0
  135. data/lib/late-sdk/models/get_whats_app_phone_number200_response.rb +147 -0
  136. data/lib/late-sdk/models/get_whats_app_phone_number200_response_phone_number.rb +235 -0
  137. data/lib/late-sdk/models/get_whats_app_phone_numbers200_response.rb +149 -0
  138. data/lib/late-sdk/models/get_whats_app_phone_numbers200_response_numbers_inner.rb +253 -0
  139. data/lib/late-sdk/models/get_whats_app_template200_response.rb +156 -0
  140. data/lib/late-sdk/models/get_whats_app_template200_response_template.rb +194 -0
  141. data/lib/late-sdk/models/get_whats_app_templates200_response.rb +158 -0
  142. data/lib/late-sdk/models/get_whats_app_templates200_response_templates_inner.rb +241 -0
  143. data/lib/late-sdk/models/import_whats_app_contacts200_response.rb +167 -0
  144. data/lib/late-sdk/models/import_whats_app_contacts200_response_results_inner.rb +183 -0
  145. data/lib/late-sdk/models/import_whats_app_contacts200_response_summary.rb +174 -0
  146. data/lib/late-sdk/models/import_whats_app_contacts_request.rb +239 -0
  147. data/lib/late-sdk/models/import_whats_app_contacts_request_contacts_inner.rb +252 -0
  148. data/lib/late-sdk/models/purchase_whats_app_phone_number200_response.rb +104 -0
  149. data/lib/late-sdk/models/purchase_whats_app_phone_number200_response_one_of.rb +157 -0
  150. data/lib/late-sdk/models/purchase_whats_app_phone_number200_response_one_of1.rb +157 -0
  151. data/lib/late-sdk/models/purchase_whats_app_phone_number200_response_one_of1_phone_number.rb +201 -0
  152. data/lib/late-sdk/models/purchase_whats_app_phone_number_request.rb +165 -0
  153. data/lib/late-sdk/models/release_whats_app_phone_number200_response.rb +156 -0
  154. data/lib/late-sdk/models/release_whats_app_phone_number200_response_phone_number.rb +175 -0
  155. data/lib/late-sdk/models/remove_whats_app_broadcast_recipients200_response.rb +167 -0
  156. data/lib/late-sdk/models/remove_whats_app_broadcast_recipients_request.rb +167 -0
  157. data/lib/late-sdk/models/rename_whats_app_group200_response.rb +166 -0
  158. data/lib/late-sdk/models/rename_whats_app_group_request.rb +219 -0
  159. data/lib/late-sdk/models/request_whats_app_verification_code200_response.rb +190 -0
  160. data/lib/late-sdk/models/request_whats_app_verification_code_request.rb +184 -0
  161. data/lib/late-sdk/models/schedule_whats_app_broadcast200_response.rb +156 -0
  162. data/lib/late-sdk/models/schedule_whats_app_broadcast200_response_broadcast.rb +166 -0
  163. data/lib/late-sdk/models/schedule_whats_app_broadcast_request.rb +165 -0
  164. data/lib/late-sdk/models/search_available_whats_app_numbers200_response.rb +149 -0
  165. data/lib/late-sdk/models/send_whats_app_broadcast200_response.rb +221 -0
  166. data/lib/late-sdk/models/send_whats_app_bulk200_response.rb +167 -0
  167. data/lib/late-sdk/models/send_whats_app_bulk200_response_results_inner.rb +174 -0
  168. data/lib/late-sdk/models/send_whats_app_bulk200_response_summary.rb +165 -0
  169. data/lib/late-sdk/models/send_whats_app_bulk_request.rb +229 -0
  170. data/lib/late-sdk/models/send_whats_app_bulk_request_recipients_inner.rb +177 -0
  171. data/lib/late-sdk/models/send_whats_app_bulk_request_template.rb +204 -0
  172. data/lib/late-sdk/models/update_whats_app_business_profile_request.rb +294 -0
  173. data/lib/late-sdk/models/update_whats_app_contact200_response.rb +156 -0
  174. data/lib/late-sdk/models/update_whats_app_contact200_response_contact.rb +250 -0
  175. data/lib/late-sdk/models/update_whats_app_contact_request.rb +234 -0
  176. data/lib/late-sdk/models/update_whats_app_template200_response.rb +156 -0
  177. data/lib/late-sdk/models/update_whats_app_template200_response_template.rb +165 -0
  178. data/lib/late-sdk/models/update_whats_app_template_request.rb +194 -0
  179. data/lib/late-sdk/models/verify_whats_app_phone_number200_response.rb +165 -0
  180. data/lib/late-sdk/models/verify_whats_app_phone_number_request.rb +165 -0
  181. data/lib/late-sdk/version.rb +1 -1
  182. data/lib/late-sdk.rb +89 -0
  183. data/openapi.yaml +2144 -0
  184. data/spec/api/whats_app_api_spec.rb +402 -0
  185. data/spec/api/whats_app_phone_numbers_api_spec.rb +137 -0
  186. data/spec/models/add_whats_app_broadcast_recipients200_response_spec.rb +54 -0
  187. data/spec/models/add_whats_app_broadcast_recipients_request_recipients_inner_spec.rb +48 -0
  188. data/spec/models/add_whats_app_broadcast_recipients_request_spec.rb +36 -0
  189. data/spec/models/bulk_delete_whats_app_contacts200_response_spec.rb +42 -0
  190. data/spec/models/bulk_delete_whats_app_contacts_request_spec.rb +36 -0
  191. data/spec/models/bulk_update_whats_app_contacts200_response_spec.rb +54 -0
  192. data/spec/models/bulk_update_whats_app_contacts_request_spec.rb +58 -0
  193. data/spec/models/cancel_whats_app_broadcast_schedule200_response_broadcast_spec.rb +42 -0
  194. data/spec/models/cancel_whats_app_broadcast_schedule200_response_spec.rb +48 -0
  195. data/spec/models/create_whats_app_broadcast200_response_broadcast_spec.rb +72 -0
  196. data/spec/models/create_whats_app_broadcast200_response_spec.rb +42 -0
  197. data/spec/models/create_whats_app_broadcast_request_recipients_inner_spec.rb +48 -0
  198. data/spec/models/create_whats_app_broadcast_request_spec.rb +60 -0
  199. data/spec/models/create_whats_app_contact200_response_contact_spec.rb +84 -0
  200. data/spec/models/create_whats_app_contact200_response_spec.rb +42 -0
  201. data/spec/models/create_whats_app_contact_request_spec.rb +90 -0
  202. data/spec/models/create_whats_app_template200_response_spec.rb +42 -0
  203. data/spec/models/create_whats_app_template200_response_template_spec.rb +60 -0
  204. data/spec/models/create_whats_app_template_request_spec.rb +64 -0
  205. data/spec/models/delete_whats_app_group_request_spec.rb +42 -0
  206. data/spec/models/get_preverified_whats_app_numbers200_response_numbers_inner_spec.rb +60 -0
  207. data/spec/models/get_preverified_whats_app_numbers200_response_spec.rb +42 -0
  208. data/spec/models/get_whats_app_broadcast200_response_broadcast_spec.rb +124 -0
  209. data/spec/models/get_whats_app_broadcast200_response_spec.rb +42 -0
  210. data/spec/models/get_whats_app_broadcast_recipients200_response_recipients_inner_spec.rb +88 -0
  211. data/spec/models/get_whats_app_broadcast_recipients200_response_spec.rb +54 -0
  212. data/spec/models/get_whats_app_broadcast_recipients200_response_summary_spec.rb +66 -0
  213. data/spec/models/get_whats_app_broadcasts200_response_broadcasts_inner_spec.rb +118 -0
  214. data/spec/models/get_whats_app_broadcasts200_response_broadcasts_inner_template_spec.rb +42 -0
  215. data/spec/models/get_whats_app_broadcasts200_response_spec.rb +48 -0
  216. data/spec/models/get_whats_app_business_profile200_response_business_profile_spec.rb +72 -0
  217. data/spec/models/get_whats_app_business_profile200_response_spec.rb +42 -0
  218. data/spec/models/get_whats_app_contact200_response_contact_spec.rb +150 -0
  219. data/spec/models/get_whats_app_contact200_response_spec.rb +42 -0
  220. data/spec/models/get_whats_app_contacts200_response_contacts_inner_spec.rb +126 -0
  221. data/spec/models/get_whats_app_contacts200_response_filters_spec.rb +42 -0
  222. data/spec/models/get_whats_app_contacts200_response_pagination_spec.rb +54 -0
  223. data/spec/models/get_whats_app_contacts200_response_spec.rb +54 -0
  224. data/spec/models/get_whats_app_groups200_response_groups_inner_spec.rb +48 -0
  225. data/spec/models/get_whats_app_groups200_response_spec.rb +48 -0
  226. data/spec/models/get_whats_app_groups200_response_summary_spec.rb +48 -0
  227. data/spec/models/get_whats_app_phone_number200_response_phone_number_spec.rb +76 -0
  228. data/spec/models/get_whats_app_phone_number200_response_spec.rb +36 -0
  229. data/spec/models/get_whats_app_phone_numbers200_response_numbers_inner_spec.rb +88 -0
  230. data/spec/models/get_whats_app_phone_numbers200_response_spec.rb +36 -0
  231. data/spec/models/get_whats_app_template200_response_spec.rb +42 -0
  232. data/spec/models/get_whats_app_template200_response_template_spec.rb +66 -0
  233. data/spec/models/get_whats_app_templates200_response_spec.rb +42 -0
  234. data/spec/models/get_whats_app_templates200_response_templates_inner_spec.rb +74 -0
  235. data/spec/models/import_whats_app_contacts200_response_results_inner_spec.rb +60 -0
  236. data/spec/models/import_whats_app_contacts200_response_spec.rb +48 -0
  237. data/spec/models/import_whats_app_contacts200_response_summary_spec.rb +54 -0
  238. data/spec/models/import_whats_app_contacts_request_contacts_inner_spec.rb +78 -0
  239. data/spec/models/import_whats_app_contacts_request_spec.rb +60 -0
  240. data/spec/models/purchase_whats_app_phone_number200_response_one_of1_phone_number_spec.rb +72 -0
  241. data/spec/models/purchase_whats_app_phone_number200_response_one_of1_spec.rb +42 -0
  242. data/spec/models/purchase_whats_app_phone_number200_response_one_of_spec.rb +42 -0
  243. data/spec/models/purchase_whats_app_phone_number200_response_spec.rb +32 -0
  244. data/spec/models/purchase_whats_app_phone_number_request_spec.rb +36 -0
  245. data/spec/models/release_whats_app_phone_number200_response_phone_number_spec.rb +54 -0
  246. data/spec/models/release_whats_app_phone_number200_response_spec.rb +42 -0
  247. data/spec/models/remove_whats_app_broadcast_recipients200_response_spec.rb +48 -0
  248. data/spec/models/remove_whats_app_broadcast_recipients_request_spec.rb +36 -0
  249. data/spec/models/rename_whats_app_group200_response_spec.rb +48 -0
  250. data/spec/models/rename_whats_app_group_request_spec.rb +48 -0
  251. data/spec/models/request_whats_app_verification_code200_response_spec.rb +46 -0
  252. data/spec/models/request_whats_app_verification_code_request_spec.rb +40 -0
  253. data/spec/models/schedule_whats_app_broadcast200_response_broadcast_spec.rb +48 -0
  254. data/spec/models/schedule_whats_app_broadcast200_response_spec.rb +42 -0
  255. data/spec/models/schedule_whats_app_broadcast_request_spec.rb +36 -0
  256. data/spec/models/search_available_whats_app_numbers200_response_spec.rb +36 -0
  257. data/spec/models/send_whats_app_broadcast200_response_spec.rb +64 -0
  258. data/spec/models/send_whats_app_bulk200_response_results_inner_spec.rb +54 -0
  259. data/spec/models/send_whats_app_bulk200_response_spec.rb +48 -0
  260. data/spec/models/send_whats_app_bulk200_response_summary_spec.rb +48 -0
  261. data/spec/models/send_whats_app_bulk_request_recipients_inner_spec.rb +42 -0
  262. data/spec/models/send_whats_app_bulk_request_spec.rb +48 -0
  263. data/spec/models/send_whats_app_bulk_request_template_spec.rb +48 -0
  264. data/spec/models/update_whats_app_business_profile_request_spec.rb +78 -0
  265. data/spec/models/update_whats_app_contact200_response_contact_spec.rb +102 -0
  266. data/spec/models/update_whats_app_contact200_response_spec.rb +42 -0
  267. data/spec/models/update_whats_app_contact_request_spec.rb +84 -0
  268. data/spec/models/update_whats_app_template200_response_spec.rb +42 -0
  269. data/spec/models/update_whats_app_template200_response_template_spec.rb +48 -0
  270. data/spec/models/update_whats_app_template_request_spec.rb +42 -0
  271. data/spec/models/verify_whats_app_phone_number200_response_spec.rb +48 -0
  272. data/spec/models/verify_whats_app_phone_number_request_spec.rb +36 -0
  273. metadata +357 -1
@@ -0,0 +1,250 @@
1
+ =begin
2
+ #Late API
3
+
4
+ #API reference for Late. Authenticate with a Bearer API key. Base URL: https://getlate.dev/api
5
+
6
+ The version of the OpenAPI document: 1.0.1
7
+ Contact: support@getlate.dev
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Late
17
+ class UpdateWhatsAppContact200ResponseContact < ApiModelBase
18
+ attr_accessor :id
19
+
20
+ attr_accessor :phone
21
+
22
+ attr_accessor :name
23
+
24
+ attr_accessor :email
25
+
26
+ attr_accessor :company
27
+
28
+ attr_accessor :tags
29
+
30
+ attr_accessor :groups
31
+
32
+ attr_accessor :is_opted_in
33
+
34
+ attr_accessor :is_blocked
35
+
36
+ attr_accessor :custom_fields
37
+
38
+ attr_accessor :notes
39
+
40
+ attr_accessor :updated_at
41
+
42
+ # Attribute mapping from ruby-style variable name to JSON key.
43
+ def self.attribute_map
44
+ {
45
+ :'id' => :'id',
46
+ :'phone' => :'phone',
47
+ :'name' => :'name',
48
+ :'email' => :'email',
49
+ :'company' => :'company',
50
+ :'tags' => :'tags',
51
+ :'groups' => :'groups',
52
+ :'is_opted_in' => :'isOptedIn',
53
+ :'is_blocked' => :'isBlocked',
54
+ :'custom_fields' => :'customFields',
55
+ :'notes' => :'notes',
56
+ :'updated_at' => :'updatedAt'
57
+ }
58
+ end
59
+
60
+ # Returns attribute mapping this model knows about
61
+ def self.acceptable_attribute_map
62
+ attribute_map
63
+ end
64
+
65
+ # Returns all the JSON keys this model knows about
66
+ def self.acceptable_attributes
67
+ acceptable_attribute_map.values
68
+ end
69
+
70
+ # Attribute type mapping.
71
+ def self.openapi_types
72
+ {
73
+ :'id' => :'String',
74
+ :'phone' => :'String',
75
+ :'name' => :'String',
76
+ :'email' => :'String',
77
+ :'company' => :'String',
78
+ :'tags' => :'Array<String>',
79
+ :'groups' => :'Array<String>',
80
+ :'is_opted_in' => :'Boolean',
81
+ :'is_blocked' => :'Boolean',
82
+ :'custom_fields' => :'Object',
83
+ :'notes' => :'String',
84
+ :'updated_at' => :'Time'
85
+ }
86
+ end
87
+
88
+ # List of attributes with nullable: true
89
+ def self.openapi_nullable
90
+ Set.new([
91
+ ])
92
+ end
93
+
94
+ # Initializes the object
95
+ # @param [Hash] attributes Model attributes in the form of hash
96
+ def initialize(attributes = {})
97
+ if (!attributes.is_a?(Hash))
98
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Late::UpdateWhatsAppContact200ResponseContact` initialize method"
99
+ end
100
+
101
+ # check to see if the attribute exists and convert string to symbol for hash key
102
+ acceptable_attribute_map = self.class.acceptable_attribute_map
103
+ attributes = attributes.each_with_object({}) { |(k, v), h|
104
+ if (!acceptable_attribute_map.key?(k.to_sym))
105
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Late::UpdateWhatsAppContact200ResponseContact`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
106
+ end
107
+ h[k.to_sym] = v
108
+ }
109
+
110
+ if attributes.key?(:'id')
111
+ self.id = attributes[:'id']
112
+ end
113
+
114
+ if attributes.key?(:'phone')
115
+ self.phone = attributes[:'phone']
116
+ end
117
+
118
+ if attributes.key?(:'name')
119
+ self.name = attributes[:'name']
120
+ end
121
+
122
+ if attributes.key?(:'email')
123
+ self.email = attributes[:'email']
124
+ end
125
+
126
+ if attributes.key?(:'company')
127
+ self.company = attributes[:'company']
128
+ end
129
+
130
+ if attributes.key?(:'tags')
131
+ if (value = attributes[:'tags']).is_a?(Array)
132
+ self.tags = value
133
+ end
134
+ end
135
+
136
+ if attributes.key?(:'groups')
137
+ if (value = attributes[:'groups']).is_a?(Array)
138
+ self.groups = value
139
+ end
140
+ end
141
+
142
+ if attributes.key?(:'is_opted_in')
143
+ self.is_opted_in = attributes[:'is_opted_in']
144
+ end
145
+
146
+ if attributes.key?(:'is_blocked')
147
+ self.is_blocked = attributes[:'is_blocked']
148
+ end
149
+
150
+ if attributes.key?(:'custom_fields')
151
+ self.custom_fields = attributes[:'custom_fields']
152
+ end
153
+
154
+ if attributes.key?(:'notes')
155
+ self.notes = attributes[:'notes']
156
+ end
157
+
158
+ if attributes.key?(:'updated_at')
159
+ self.updated_at = attributes[:'updated_at']
160
+ end
161
+ end
162
+
163
+ # Show invalid properties with the reasons. Usually used together with valid?
164
+ # @return Array for valid properties with the reasons
165
+ def list_invalid_properties
166
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
167
+ invalid_properties = Array.new
168
+ invalid_properties
169
+ end
170
+
171
+ # Check to see if the all the properties in the model are valid
172
+ # @return true if the model is valid
173
+ def valid?
174
+ warn '[DEPRECATED] the `valid?` method is obsolete'
175
+ true
176
+ end
177
+
178
+ # Checks equality by comparing each attribute.
179
+ # @param [Object] Object to be compared
180
+ def ==(o)
181
+ return true if self.equal?(o)
182
+ self.class == o.class &&
183
+ id == o.id &&
184
+ phone == o.phone &&
185
+ name == o.name &&
186
+ email == o.email &&
187
+ company == o.company &&
188
+ tags == o.tags &&
189
+ groups == o.groups &&
190
+ is_opted_in == o.is_opted_in &&
191
+ is_blocked == o.is_blocked &&
192
+ custom_fields == o.custom_fields &&
193
+ notes == o.notes &&
194
+ updated_at == o.updated_at
195
+ end
196
+
197
+ # @see the `==` method
198
+ # @param [Object] Object to be compared
199
+ def eql?(o)
200
+ self == o
201
+ end
202
+
203
+ # Calculates hash code according to all attributes.
204
+ # @return [Integer] Hash code
205
+ def hash
206
+ [id, phone, name, email, company, tags, groups, is_opted_in, is_blocked, custom_fields, notes, updated_at].hash
207
+ end
208
+
209
+ # Builds the object from hash
210
+ # @param [Hash] attributes Model attributes in the form of hash
211
+ # @return [Object] Returns the model itself
212
+ def self.build_from_hash(attributes)
213
+ return nil unless attributes.is_a?(Hash)
214
+ attributes = attributes.transform_keys(&:to_sym)
215
+ transformed_hash = {}
216
+ openapi_types.each_pair do |key, type|
217
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
218
+ transformed_hash["#{key}"] = nil
219
+ elsif type =~ /\AArray<(.*)>/i
220
+ # check to ensure the input is an array given that the attribute
221
+ # is documented as an array but the input is not
222
+ if attributes[attribute_map[key]].is_a?(Array)
223
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
224
+ end
225
+ elsif !attributes[attribute_map[key]].nil?
226
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
227
+ end
228
+ end
229
+ new(transformed_hash)
230
+ end
231
+
232
+ # Returns the object in the form of hash
233
+ # @return [Hash] Returns the object in the form of hash
234
+ def to_hash
235
+ hash = {}
236
+ self.class.attribute_map.each_pair do |attr, param|
237
+ value = self.send(attr)
238
+ if value.nil?
239
+ is_nullable = self.class.openapi_nullable.include?(attr)
240
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
241
+ end
242
+
243
+ hash[param] = _to_hash(value)
244
+ end
245
+ hash
246
+ end
247
+
248
+ end
249
+
250
+ end
@@ -0,0 +1,234 @@
1
+ =begin
2
+ #Late API
3
+
4
+ #API reference for Late. Authenticate with a Bearer API key. Base URL: https://getlate.dev/api
5
+
6
+ The version of the OpenAPI document: 1.0.1
7
+ Contact: support@getlate.dev
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Late
17
+ class UpdateWhatsAppContactRequest < ApiModelBase
18
+ # Contact name
19
+ attr_accessor :name
20
+
21
+ # Contact email
22
+ attr_accessor :email
23
+
24
+ # Company name
25
+ attr_accessor :company
26
+
27
+ # Tags (replaces existing)
28
+ attr_accessor :tags
29
+
30
+ # Groups (replaces existing)
31
+ attr_accessor :groups
32
+
33
+ # Opt-in status (changes are timestamped)
34
+ attr_accessor :is_opted_in
35
+
36
+ # Block status
37
+ attr_accessor :is_blocked
38
+
39
+ # Custom fields to merge (set value to null to remove a field)
40
+ attr_accessor :custom_fields
41
+
42
+ # Notes about the contact
43
+ attr_accessor :notes
44
+
45
+ # Attribute mapping from ruby-style variable name to JSON key.
46
+ def self.attribute_map
47
+ {
48
+ :'name' => :'name',
49
+ :'email' => :'email',
50
+ :'company' => :'company',
51
+ :'tags' => :'tags',
52
+ :'groups' => :'groups',
53
+ :'is_opted_in' => :'isOptedIn',
54
+ :'is_blocked' => :'isBlocked',
55
+ :'custom_fields' => :'customFields',
56
+ :'notes' => :'notes'
57
+ }
58
+ end
59
+
60
+ # Returns attribute mapping this model knows about
61
+ def self.acceptable_attribute_map
62
+ attribute_map
63
+ end
64
+
65
+ # Returns all the JSON keys this model knows about
66
+ def self.acceptable_attributes
67
+ acceptable_attribute_map.values
68
+ end
69
+
70
+ # Attribute type mapping.
71
+ def self.openapi_types
72
+ {
73
+ :'name' => :'String',
74
+ :'email' => :'String',
75
+ :'company' => :'String',
76
+ :'tags' => :'Array<String>',
77
+ :'groups' => :'Array<String>',
78
+ :'is_opted_in' => :'Boolean',
79
+ :'is_blocked' => :'Boolean',
80
+ :'custom_fields' => :'Hash<String, String>',
81
+ :'notes' => :'String'
82
+ }
83
+ end
84
+
85
+ # List of attributes with nullable: true
86
+ def self.openapi_nullable
87
+ Set.new([
88
+ ])
89
+ end
90
+
91
+ # Initializes the object
92
+ # @param [Hash] attributes Model attributes in the form of hash
93
+ def initialize(attributes = {})
94
+ if (!attributes.is_a?(Hash))
95
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Late::UpdateWhatsAppContactRequest` initialize method"
96
+ end
97
+
98
+ # check to see if the attribute exists and convert string to symbol for hash key
99
+ acceptable_attribute_map = self.class.acceptable_attribute_map
100
+ attributes = attributes.each_with_object({}) { |(k, v), h|
101
+ if (!acceptable_attribute_map.key?(k.to_sym))
102
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Late::UpdateWhatsAppContactRequest`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
103
+ end
104
+ h[k.to_sym] = v
105
+ }
106
+
107
+ if attributes.key?(:'name')
108
+ self.name = attributes[:'name']
109
+ end
110
+
111
+ if attributes.key?(:'email')
112
+ self.email = attributes[:'email']
113
+ end
114
+
115
+ if attributes.key?(:'company')
116
+ self.company = attributes[:'company']
117
+ end
118
+
119
+ if attributes.key?(:'tags')
120
+ if (value = attributes[:'tags']).is_a?(Array)
121
+ self.tags = value
122
+ end
123
+ end
124
+
125
+ if attributes.key?(:'groups')
126
+ if (value = attributes[:'groups']).is_a?(Array)
127
+ self.groups = value
128
+ end
129
+ end
130
+
131
+ if attributes.key?(:'is_opted_in')
132
+ self.is_opted_in = attributes[:'is_opted_in']
133
+ end
134
+
135
+ if attributes.key?(:'is_blocked')
136
+ self.is_blocked = attributes[:'is_blocked']
137
+ end
138
+
139
+ if attributes.key?(:'custom_fields')
140
+ if (value = attributes[:'custom_fields']).is_a?(Hash)
141
+ self.custom_fields = value
142
+ end
143
+ end
144
+
145
+ if attributes.key?(:'notes')
146
+ self.notes = attributes[:'notes']
147
+ end
148
+ end
149
+
150
+ # Show invalid properties with the reasons. Usually used together with valid?
151
+ # @return Array for valid properties with the reasons
152
+ def list_invalid_properties
153
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
154
+ invalid_properties = Array.new
155
+ invalid_properties
156
+ end
157
+
158
+ # Check to see if the all the properties in the model are valid
159
+ # @return true if the model is valid
160
+ def valid?
161
+ warn '[DEPRECATED] the `valid?` method is obsolete'
162
+ true
163
+ end
164
+
165
+ # Checks equality by comparing each attribute.
166
+ # @param [Object] Object to be compared
167
+ def ==(o)
168
+ return true if self.equal?(o)
169
+ self.class == o.class &&
170
+ name == o.name &&
171
+ email == o.email &&
172
+ company == o.company &&
173
+ tags == o.tags &&
174
+ groups == o.groups &&
175
+ is_opted_in == o.is_opted_in &&
176
+ is_blocked == o.is_blocked &&
177
+ custom_fields == o.custom_fields &&
178
+ notes == o.notes
179
+ end
180
+
181
+ # @see the `==` method
182
+ # @param [Object] Object to be compared
183
+ def eql?(o)
184
+ self == o
185
+ end
186
+
187
+ # Calculates hash code according to all attributes.
188
+ # @return [Integer] Hash code
189
+ def hash
190
+ [name, email, company, tags, groups, is_opted_in, is_blocked, custom_fields, notes].hash
191
+ end
192
+
193
+ # Builds the object from hash
194
+ # @param [Hash] attributes Model attributes in the form of hash
195
+ # @return [Object] Returns the model itself
196
+ def self.build_from_hash(attributes)
197
+ return nil unless attributes.is_a?(Hash)
198
+ attributes = attributes.transform_keys(&:to_sym)
199
+ transformed_hash = {}
200
+ openapi_types.each_pair do |key, type|
201
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
202
+ transformed_hash["#{key}"] = nil
203
+ elsif type =~ /\AArray<(.*)>/i
204
+ # check to ensure the input is an array given that the attribute
205
+ # is documented as an array but the input is not
206
+ if attributes[attribute_map[key]].is_a?(Array)
207
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
208
+ end
209
+ elsif !attributes[attribute_map[key]].nil?
210
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
211
+ end
212
+ end
213
+ new(transformed_hash)
214
+ end
215
+
216
+ # Returns the object in the form of hash
217
+ # @return [Hash] Returns the object in the form of hash
218
+ def to_hash
219
+ hash = {}
220
+ self.class.attribute_map.each_pair do |attr, param|
221
+ value = self.send(attr)
222
+ if value.nil?
223
+ is_nullable = self.class.openapi_nullable.include?(attr)
224
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
225
+ end
226
+
227
+ hash[param] = _to_hash(value)
228
+ end
229
+ hash
230
+ end
231
+
232
+ end
233
+
234
+ end
@@ -0,0 +1,156 @@
1
+ =begin
2
+ #Late API
3
+
4
+ #API reference for Late. Authenticate with a Bearer API key. Base URL: https://getlate.dev/api
5
+
6
+ The version of the OpenAPI document: 1.0.1
7
+ Contact: support@getlate.dev
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Late
17
+ class UpdateWhatsAppTemplate200Response < ApiModelBase
18
+ attr_accessor :success
19
+
20
+ attr_accessor :template
21
+
22
+ # Attribute mapping from ruby-style variable name to JSON key.
23
+ def self.attribute_map
24
+ {
25
+ :'success' => :'success',
26
+ :'template' => :'template'
27
+ }
28
+ end
29
+
30
+ # Returns attribute mapping this model knows about
31
+ def self.acceptable_attribute_map
32
+ attribute_map
33
+ end
34
+
35
+ # Returns all the JSON keys this model knows about
36
+ def self.acceptable_attributes
37
+ acceptable_attribute_map.values
38
+ end
39
+
40
+ # Attribute type mapping.
41
+ def self.openapi_types
42
+ {
43
+ :'success' => :'Boolean',
44
+ :'template' => :'UpdateWhatsAppTemplate200ResponseTemplate'
45
+ }
46
+ end
47
+
48
+ # List of attributes with nullable: true
49
+ def self.openapi_nullable
50
+ Set.new([
51
+ ])
52
+ end
53
+
54
+ # Initializes the object
55
+ # @param [Hash] attributes Model attributes in the form of hash
56
+ def initialize(attributes = {})
57
+ if (!attributes.is_a?(Hash))
58
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Late::UpdateWhatsAppTemplate200Response` initialize method"
59
+ end
60
+
61
+ # check to see if the attribute exists and convert string to symbol for hash key
62
+ acceptable_attribute_map = self.class.acceptable_attribute_map
63
+ attributes = attributes.each_with_object({}) { |(k, v), h|
64
+ if (!acceptable_attribute_map.key?(k.to_sym))
65
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Late::UpdateWhatsAppTemplate200Response`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
66
+ end
67
+ h[k.to_sym] = v
68
+ }
69
+
70
+ if attributes.key?(:'success')
71
+ self.success = attributes[:'success']
72
+ end
73
+
74
+ if attributes.key?(:'template')
75
+ self.template = attributes[:'template']
76
+ end
77
+ end
78
+
79
+ # Show invalid properties with the reasons. Usually used together with valid?
80
+ # @return Array for valid properties with the reasons
81
+ def list_invalid_properties
82
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
83
+ invalid_properties = Array.new
84
+ invalid_properties
85
+ end
86
+
87
+ # Check to see if the all the properties in the model are valid
88
+ # @return true if the model is valid
89
+ def valid?
90
+ warn '[DEPRECATED] the `valid?` method is obsolete'
91
+ true
92
+ end
93
+
94
+ # Checks equality by comparing each attribute.
95
+ # @param [Object] Object to be compared
96
+ def ==(o)
97
+ return true if self.equal?(o)
98
+ self.class == o.class &&
99
+ success == o.success &&
100
+ template == o.template
101
+ end
102
+
103
+ # @see the `==` method
104
+ # @param [Object] Object to be compared
105
+ def eql?(o)
106
+ self == o
107
+ end
108
+
109
+ # Calculates hash code according to all attributes.
110
+ # @return [Integer] Hash code
111
+ def hash
112
+ [success, template].hash
113
+ end
114
+
115
+ # Builds the object from hash
116
+ # @param [Hash] attributes Model attributes in the form of hash
117
+ # @return [Object] Returns the model itself
118
+ def self.build_from_hash(attributes)
119
+ return nil unless attributes.is_a?(Hash)
120
+ attributes = attributes.transform_keys(&:to_sym)
121
+ transformed_hash = {}
122
+ openapi_types.each_pair do |key, type|
123
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
124
+ transformed_hash["#{key}"] = nil
125
+ elsif type =~ /\AArray<(.*)>/i
126
+ # check to ensure the input is an array given that the attribute
127
+ # is documented as an array but the input is not
128
+ if attributes[attribute_map[key]].is_a?(Array)
129
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
130
+ end
131
+ elsif !attributes[attribute_map[key]].nil?
132
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
133
+ end
134
+ end
135
+ new(transformed_hash)
136
+ end
137
+
138
+ # Returns the object in the form of hash
139
+ # @return [Hash] Returns the object in the form of hash
140
+ def to_hash
141
+ hash = {}
142
+ self.class.attribute_map.each_pair do |attr, param|
143
+ value = self.send(attr)
144
+ if value.nil?
145
+ is_nullable = self.class.openapi_nullable.include?(attr)
146
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
147
+ end
148
+
149
+ hash[param] = _to_hash(value)
150
+ end
151
+ hash
152
+ end
153
+
154
+ end
155
+
156
+ end