brevo 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1083) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +7 -0
  3. data/LICENSE.md +21 -0
  4. data/README.md +655 -0
  5. data/Rakefile +8 -0
  6. data/brevo.gemspec +46 -0
  7. data/docs/AbTestCampaignResult.md +15 -0
  8. data/docs/AbTestCampaignResultClickedLinks.md +9 -0
  9. data/docs/AbTestCampaignResultStatistics.md +13 -0
  10. data/docs/AbTestVersionClicks.md +7 -0
  11. data/docs/AbTestVersionClicksInner.md +10 -0
  12. data/docs/AbTestVersionStats.md +9 -0
  13. data/docs/AccountApi.md +125 -0
  14. data/docs/AddChildDomain.md +8 -0
  15. data/docs/AddContactToList.md +9 -0
  16. data/docs/AddCredits.md +9 -0
  17. data/docs/AuthenticateDomainModel.md +9 -0
  18. data/docs/BlockDomain.md +8 -0
  19. data/docs/Body.md +10 -0
  20. data/docs/Body1.md +10 -0
  21. data/docs/Body10.md +11 -0
  22. data/docs/Body11.md +8 -0
  23. data/docs/Body12.md +11 -0
  24. data/docs/Body2.md +11 -0
  25. data/docs/Body3.md +9 -0
  26. data/docs/Body4.md +9 -0
  27. data/docs/Body5.md +11 -0
  28. data/docs/Body6.md +18 -0
  29. data/docs/Body7.md +17 -0
  30. data/docs/Body8.md +13 -0
  31. data/docs/Body9.md +8 -0
  32. data/docs/BodyVariablesItems.md +7 -0
  33. data/docs/CompaniesApi.md +425 -0
  34. data/docs/CompaniesList.md +8 -0
  35. data/docs/Company.md +11 -0
  36. data/docs/CompanyAttributes.md +7 -0
  37. data/docs/CompanyAttributesInner.md +12 -0
  38. data/docs/ComponentItems.md +9 -0
  39. data/docs/ContactsApi.md +1767 -0
  40. data/docs/ConversationsApi.md +542 -0
  41. data/docs/ConversationsMessage.md +17 -0
  42. data/docs/ConversationsMessageFile.md +12 -0
  43. data/docs/ConversationsMessageFileImageInfo.md +10 -0
  44. data/docs/CouponsApi.md +305 -0
  45. data/docs/CreateApiKeyRequest.md +9 -0
  46. data/docs/CreateApiKeyResponse.md +9 -0
  47. data/docs/CreateAttribute.md +11 -0
  48. data/docs/CreateAttributeEnumeration.md +9 -0
  49. data/docs/CreateCategoryModel.md +8 -0
  50. data/docs/CreateChild.md +13 -0
  51. data/docs/CreateContact.md +15 -0
  52. data/docs/CreateCouponCollection.md +9 -0
  53. data/docs/CreateCoupons.md +9 -0
  54. data/docs/CreateDoiContact.md +13 -0
  55. data/docs/CreateDomain.md +8 -0
  56. data/docs/CreateDomainModel.md +11 -0
  57. data/docs/CreateDomainModelDnsRecords.md +9 -0
  58. data/docs/CreateDomainModelDnsRecordsDkimRecord.md +11 -0
  59. data/docs/CreateEmailCampaign.md +38 -0
  60. data/docs/CreateEmailCampaignRecipients.md +10 -0
  61. data/docs/CreateEmailCampaignSender.md +10 -0
  62. data/docs/CreateExternalFeed.md +16 -0
  63. data/docs/CreateList.md +9 -0
  64. data/docs/CreateModel.md +8 -0
  65. data/docs/CreateProductModel.md +8 -0
  66. data/docs/CreateReseller.md +9 -0
  67. data/docs/CreateSender.md +10 -0
  68. data/docs/CreateSenderIps.md +10 -0
  69. data/docs/CreateSenderModel.md +10 -0
  70. data/docs/CreateSmsCampaign.md +15 -0
  71. data/docs/CreateSmsCampaignRecipients.md +9 -0
  72. data/docs/CreateSmtpEmail.md +9 -0
  73. data/docs/CreateSmtpTemplate.md +17 -0
  74. data/docs/CreateSmtpTemplateSender.md +10 -0
  75. data/docs/CreateSubAccount.md +11 -0
  76. data/docs/CreateSubAccountResponse.md +8 -0
  77. data/docs/CreateUpdateBatchCategory.md +9 -0
  78. data/docs/CreateUpdateBatchCategoryModel.md +9 -0
  79. data/docs/CreateUpdateBatchProducts.md +9 -0
  80. data/docs/CreateUpdateBatchProductsModel.md +9 -0
  81. data/docs/CreateUpdateCategories.md +11 -0
  82. data/docs/CreateUpdateCategory.md +12 -0
  83. data/docs/CreateUpdateContactModel.md +8 -0
  84. data/docs/CreateUpdateFolder.md +8 -0
  85. data/docs/CreateUpdateProduct.md +18 -0
  86. data/docs/CreateUpdateProducts.md +17 -0
  87. data/docs/CreateWebhook.md +12 -0
  88. data/docs/CreateWhatsAppCampaign.md +11 -0
  89. data/docs/CreateWhatsAppCampaignRecipients.md +10 -0
  90. data/docs/CreateWhatsAppTemplate.md +13 -0
  91. data/docs/CreatedBatchId.md +8 -0
  92. data/docs/CreatedProcessId.md +8 -0
  93. data/docs/Deal.md +11 -0
  94. data/docs/DealAttributes.md +7 -0
  95. data/docs/DealAttributesInner.md +12 -0
  96. data/docs/DealsApi.md +588 -0
  97. data/docs/DealsList.md +8 -0
  98. data/docs/DeleteHardbounces.md +10 -0
  99. data/docs/DomainsApi.md +292 -0
  100. data/docs/EcommerceApi.md +675 -0
  101. data/docs/EmailCampaignsApi.md +801 -0
  102. data/docs/EmailExportRecipients.md +9 -0
  103. data/docs/ErrorModel.md +9 -0
  104. data/docs/ExportWebhooksHistory.md +16 -0
  105. data/docs/ExternalFeedsApi.md +322 -0
  106. data/docs/FileData.md +14 -0
  107. data/docs/FileDownloadableLink.md +8 -0
  108. data/docs/FileList.md +7 -0
  109. data/docs/FilesApi.md +318 -0
  110. data/docs/GetAccount.md +15 -0
  111. data/docs/GetAccountActivity.md +8 -0
  112. data/docs/GetAccountActivityLogs.md +12 -0
  113. data/docs/GetAccountMarketingAutomation.md +9 -0
  114. data/docs/GetAccountPlan.md +13 -0
  115. data/docs/GetAccountRelay.md +9 -0
  116. data/docs/GetAccountRelayData.md +10 -0
  117. data/docs/GetAggregatedReport.md +20 -0
  118. data/docs/GetAllExternalFeeds.md +9 -0
  119. data/docs/GetAllExternalFeedsFeeds.md +19 -0
  120. data/docs/GetAttributes.md +8 -0
  121. data/docs/GetAttributesAttributes.md +12 -0
  122. data/docs/GetAttributesEnumeration.md +9 -0
  123. data/docs/GetBlockedDomains.md +8 -0
  124. data/docs/GetCampaignOverview.md +21 -0
  125. data/docs/GetCampaignRecipients.md +9 -0
  126. data/docs/GetCampaignStats.md +23 -0
  127. data/docs/GetCategories.md +9 -0
  128. data/docs/GetCategoryDetails.md +13 -0
  129. data/docs/GetChildAccountCreationStatus.md +8 -0
  130. data/docs/GetChildDomain.md +9 -0
  131. data/docs/GetChildDomains.md +7 -0
  132. data/docs/GetChildInfo.md +16 -0
  133. data/docs/GetChildInfoApiKeys.md +9 -0
  134. data/docs/GetChildInfoApiKeysV2.md +9 -0
  135. data/docs/GetChildInfoApiKeysV3.md +9 -0
  136. data/docs/GetChildInfoCredits.md +9 -0
  137. data/docs/GetChildInfoStatistics.md +10 -0
  138. data/docs/GetChildrenList.md +9 -0
  139. data/docs/GetClient.md +11 -0
  140. data/docs/GetContactCampaignStats.md +16 -0
  141. data/docs/GetContactCampaignStatsClicked.md +9 -0
  142. data/docs/GetContactCampaignStatsOpened.md +11 -0
  143. data/docs/GetContactCampaignStatsTransacAttributes.md +10 -0
  144. data/docs/GetContactCampaignStatsUnsubscriptions.md +9 -0
  145. data/docs/GetContactDetails.md +16 -0
  146. data/docs/GetContacts.md +9 -0
  147. data/docs/GetCouponCollection.md +13 -0
  148. data/docs/GetDeviceBrowserStats.md +11 -0
  149. data/docs/GetDomainConfigurationModel.md +11 -0
  150. data/docs/GetDomainsList.md +8 -0
  151. data/docs/GetDomainsListDomains.md +12 -0
  152. data/docs/GetEmailCampaign.md +39 -0
  153. data/docs/GetEmailCampaigns.md +9 -0
  154. data/docs/GetEmailEventReport.md +8 -0
  155. data/docs/GetEmailEventReportEvents.md +18 -0
  156. data/docs/GetExtendedCampaignOverview.md +37 -0
  157. data/docs/GetExtendedCampaignOverviewSender.md +10 -0
  158. data/docs/GetExtendedCampaignStats.md +15 -0
  159. data/docs/GetExtendedCampaignStatsGlobalStats.md +7 -0
  160. data/docs/GetExtendedClient.md +12 -0
  161. data/docs/GetExtendedClientAddress.md +11 -0
  162. data/docs/GetExtendedContactDetails.md +17 -0
  163. data/docs/GetExtendedContactDetailsStatistics.md +16 -0
  164. data/docs/GetExtendedContactDetailsStatisticsClicked.md +9 -0
  165. data/docs/GetExtendedContactDetailsStatisticsDelivered.md +9 -0
  166. data/docs/GetExtendedContactDetailsStatisticsLinks.md +11 -0
  167. data/docs/GetExtendedContactDetailsStatisticsMessagesSent.md +9 -0
  168. data/docs/GetExtendedContactDetailsStatisticsOpened.md +11 -0
  169. data/docs/GetExtendedContactDetailsStatisticsUnsubscriptions.md +9 -0
  170. data/docs/GetExtendedContactDetailsStatisticsUnsubscriptionsAdminUnsubscription.md +9 -0
  171. data/docs/GetExtendedContactDetailsStatisticsUnsubscriptionsUserUnsubscription.md +10 -0
  172. data/docs/GetExtendedList.md +16 -0
  173. data/docs/GetExtendedListCampaignStats.md +9 -0
  174. data/docs/GetExternalFeedByUUID.md +19 -0
  175. data/docs/GetExternalFeedByUUIDHeaders.md +9 -0
  176. data/docs/GetFolder.md +12 -0
  177. data/docs/GetFolderLists.md +9 -0
  178. data/docs/GetFolders.md +9 -0
  179. data/docs/GetInboundEmailEvents.md +8 -0
  180. data/docs/GetInboundEmailEventsByUuid.md +15 -0
  181. data/docs/GetInboundEmailEventsByUuidAttachments.md +11 -0
  182. data/docs/GetInboundEmailEventsByUuidLogs.md +9 -0
  183. data/docs/GetInboundEmailEventsEvents.md +11 -0
  184. data/docs/GetInvitedUsersList.md +8 -0
  185. data/docs/GetInvitedUsersListFeatureAccess.md +10 -0
  186. data/docs/GetInvitedUsersListUsers.md +11 -0
  187. data/docs/GetIp.md +11 -0
  188. data/docs/GetIpFromSender.md +11 -0
  189. data/docs/GetIps.md +8 -0
  190. data/docs/GetIpsFromSender.md +8 -0
  191. data/docs/GetList.md +12 -0
  192. data/docs/GetLists.md +9 -0
  193. data/docs/GetProcess.md +11 -0
  194. data/docs/GetProcesses.md +9 -0
  195. data/docs/GetProductDetails.md +22 -0
  196. data/docs/GetProducts.md +9 -0
  197. data/docs/GetReports.md +8 -0
  198. data/docs/GetReportsReports.md +20 -0
  199. data/docs/GetScheduledEmailByBatchId.md +9 -0
  200. data/docs/GetScheduledEmailByBatchIdBatches.md +10 -0
  201. data/docs/GetScheduledEmailByMessageId.md +10 -0
  202. data/docs/GetSegments.md +9 -0
  203. data/docs/GetSegmentsSegments.md +11 -0
  204. data/docs/GetSendersList.md +8 -0
  205. data/docs/GetSendersListIps.md +10 -0
  206. data/docs/GetSendersListSenders.md +12 -0
  207. data/docs/GetSharedTemplateUrl.md +8 -0
  208. data/docs/GetSmsCampaign.md +17 -0
  209. data/docs/GetSmsCampaignOverview.md +15 -0
  210. data/docs/GetSmsCampaignRecipients.md +7 -0
  211. data/docs/GetSmsCampaignStats.md +14 -0
  212. data/docs/GetSmsCampaigns.md +9 -0
  213. data/docs/GetSmsEventReport.md +8 -0
  214. data/docs/GetSmsEventReportEvents.md +14 -0
  215. data/docs/GetSmtpTemplateOverview.md +20 -0
  216. data/docs/GetSmtpTemplateOverviewSender.md +10 -0
  217. data/docs/GetSmtpTemplates.md +9 -0
  218. data/docs/GetSsoToken.md +8 -0
  219. data/docs/GetStatsByBrowser.md +7 -0
  220. data/docs/GetStatsByDevice.md +11 -0
  221. data/docs/GetStatsByDomain.md +7 -0
  222. data/docs/GetTransacAggregatedSmsReport.md +17 -0
  223. data/docs/GetTransacBlockedContacts.md +9 -0
  224. data/docs/GetTransacBlockedContactsContacts.md +11 -0
  225. data/docs/GetTransacBlockedContactsReason.md +9 -0
  226. data/docs/GetTransacEmailContent.md +14 -0
  227. data/docs/GetTransacEmailContentEvents.md +9 -0
  228. data/docs/GetTransacEmailsList.md +9 -0
  229. data/docs/GetTransacEmailsListTransactionalEmails.md +15 -0
  230. data/docs/GetTransacSmsReport.md +8 -0
  231. data/docs/GetTransacSmsReportReports.md +17 -0
  232. data/docs/GetUserPermission.md +10 -0
  233. data/docs/GetUserPermissionPrivileges.md +9 -0
  234. data/docs/GetWATemplates.md +9 -0
  235. data/docs/GetWATemplatesTemplates.md +15 -0
  236. data/docs/GetWebhook.md +14 -0
  237. data/docs/GetWebhooks.md +8 -0
  238. data/docs/GetWhatsAppConfig.md +13 -0
  239. data/docs/GetWhatsappCampaignOverview.md +16 -0
  240. data/docs/GetWhatsappCampaigns.md +9 -0
  241. data/docs/GetWhatsappCampaignsCampaigns.md +18 -0
  242. data/docs/GetWhatsappEventReport.md +8 -0
  243. data/docs/GetWhatsappEventReportEvents.md +15 -0
  244. data/docs/InboundParsingApi.md +199 -0
  245. data/docs/InlineResponse200.md +8 -0
  246. data/docs/InlineResponse2001.md +10 -0
  247. data/docs/InlineResponse201.md +8 -0
  248. data/docs/InlineResponse2011.md +8 -0
  249. data/docs/InlineResponse2012.md +8 -0
  250. data/docs/InlineResponse2013.md +8 -0
  251. data/docs/InlineResponse2014.md +8 -0
  252. data/docs/ManageIp.md +8 -0
  253. data/docs/MasterAccountApi.md +611 -0
  254. data/docs/MasterDetailsResponse.md +14 -0
  255. data/docs/MasterDetailsResponseBillingInfo.md +11 -0
  256. data/docs/MasterDetailsResponseBillingInfoAddress.md +12 -0
  257. data/docs/MasterDetailsResponseBillingInfoName.md +9 -0
  258. data/docs/MasterDetailsResponsePlanInfo.md +13 -0
  259. data/docs/MasterDetailsResponsePlanInfoFeatures.md +12 -0
  260. data/docs/Note.md +14 -0
  261. data/docs/NoteData.md +11 -0
  262. data/docs/NoteId.md +8 -0
  263. data/docs/NoteList.md +7 -0
  264. data/docs/NotesApi.md +312 -0
  265. data/docs/Order.md +16 -0
  266. data/docs/OrderBatch.md +9 -0
  267. data/docs/OrderBilling.md +14 -0
  268. data/docs/OrderProducts.md +11 -0
  269. data/docs/Otp.md +8 -0
  270. data/docs/Pipeline.md +10 -0
  271. data/docs/PipelineStage.md +9 -0
  272. data/docs/Pipelines.md +7 -0
  273. data/docs/PostContactInfo.md +8 -0
  274. data/docs/PostContactInfoContacts.md +11 -0
  275. data/docs/PostSendFailed.md +12 -0
  276. data/docs/PostSendSmsTestFailed.md +11 -0
  277. data/docs/ProcessApi.md +129 -0
  278. data/docs/RemainingCreditModel.md +9 -0
  279. data/docs/RemainingCreditModelChild.md +9 -0
  280. data/docs/RemainingCreditModelReseller.md +9 -0
  281. data/docs/RemoveContactFromList.md +10 -0
  282. data/docs/RemoveCredits.md +9 -0
  283. data/docs/RequestContactExport.md +10 -0
  284. data/docs/RequestContactExportCustomContactFilter.md +13 -0
  285. data/docs/RequestContactImport.md +17 -0
  286. data/docs/RequestContactImportJsonBody.md +9 -0
  287. data/docs/RequestContactImportNewList.md +9 -0
  288. data/docs/RequestSMSRecipientExport.md +9 -0
  289. data/docs/ResellerApi.md +964 -0
  290. data/docs/SMSCampaignsApi.md +613 -0
  291. data/docs/ScheduleSmtpEmail.md +10 -0
  292. data/docs/SendReport.md +9 -0
  293. data/docs/SendReportEmail.md +9 -0
  294. data/docs/SendSms.md +12 -0
  295. data/docs/SendSmtpEmail.md +23 -0
  296. data/docs/SendSmtpEmailAttachment.md +10 -0
  297. data/docs/SendSmtpEmailBcc.md +9 -0
  298. data/docs/SendSmtpEmailCc.md +9 -0
  299. data/docs/SendSmtpEmailMessageVersions.md +13 -0
  300. data/docs/SendSmtpEmailReplyTo.md +9 -0
  301. data/docs/SendSmtpEmailReplyTo1.md +9 -0
  302. data/docs/SendSmtpEmailSender.md +10 -0
  303. data/docs/SendSmtpEmailTo.md +9 -0
  304. data/docs/SendSmtpEmailTo1.md +9 -0
  305. data/docs/SendTestEmail.md +8 -0
  306. data/docs/SendTestSms.md +8 -0
  307. data/docs/SendTransacSms.md +15 -0
  308. data/docs/SendWhatsappMessage.md +11 -0
  309. data/docs/SendersApi.md +417 -0
  310. data/docs/SsoTokenRequest.md +11 -0
  311. data/docs/SubAccountAppsToggleRequest.md +20 -0
  312. data/docs/SubAccountDetailsResponse.md +11 -0
  313. data/docs/SubAccountDetailsResponsePlanInfo.md +10 -0
  314. data/docs/SubAccountDetailsResponsePlanInfoCredits.md +9 -0
  315. data/docs/SubAccountDetailsResponsePlanInfoCreditsEmails.md +9 -0
  316. data/docs/SubAccountDetailsResponsePlanInfoFeatures.md +10 -0
  317. data/docs/SubAccountDetailsResponsePlanInfoFeaturesInbox.md +9 -0
  318. data/docs/SubAccountDetailsResponsePlanInfoFeaturesLandingPage.md +9 -0
  319. data/docs/SubAccountDetailsResponsePlanInfoFeaturesUsers.md +9 -0
  320. data/docs/SubAccountUpdatePlanRequest.md +9 -0
  321. data/docs/SubAccountUpdatePlanRequestCredits.md +8 -0
  322. data/docs/SubAccountUpdatePlanRequestFeatures.md +10 -0
  323. data/docs/SubAccountsResponse.md +9 -0
  324. data/docs/SubAccountsResponseSubAccounts.md +11 -0
  325. data/docs/Task.md +13 -0
  326. data/docs/TaskList.md +8 -0
  327. data/docs/TaskReminder.md +10 -0
  328. data/docs/TaskTypes.md +9 -0
  329. data/docs/TasksApi.md +376 -0
  330. data/docs/TransactionalEmailsApi.md +1390 -0
  331. data/docs/TransactionalSMSApi.md +273 -0
  332. data/docs/TransactionalWhatsAppApi.md +143 -0
  333. data/docs/UpdateAttribute.md +9 -0
  334. data/docs/UpdateAttributeEnumeration.md +9 -0
  335. data/docs/UpdateBatchContacts.md +8 -0
  336. data/docs/UpdateBatchContactsContacts.md +17 -0
  337. data/docs/UpdateBatchContactsModel.md +9 -0
  338. data/docs/UpdateCampaignStatus.md +8 -0
  339. data/docs/UpdateChild.md +12 -0
  340. data/docs/UpdateChildAccountStatus.md +11 -0
  341. data/docs/UpdateChildDomain.md +8 -0
  342. data/docs/UpdateContact.md +14 -0
  343. data/docs/UpdateCouponCollection.md +8 -0
  344. data/docs/UpdateEmailCampaign.md +38 -0
  345. data/docs/UpdateEmailCampaignRecipients.md +10 -0
  346. data/docs/UpdateEmailCampaignSender.md +10 -0
  347. data/docs/UpdateExternalFeed.md +16 -0
  348. data/docs/UpdateList.md +9 -0
  349. data/docs/UpdateSender.md +10 -0
  350. data/docs/UpdateSmsCampaign.md +15 -0
  351. data/docs/UpdateSmtpTemplate.md +17 -0
  352. data/docs/UpdateSmtpTemplateSender.md +10 -0
  353. data/docs/UpdateWebhook.md +11 -0
  354. data/docs/UpdateWhatsAppCampaign.md +11 -0
  355. data/docs/UploadImageModel.md +8 -0
  356. data/docs/UploadImageToGallery.md +9 -0
  357. data/docs/UserApi.md +118 -0
  358. data/docs/VariablesItems.md +10 -0
  359. data/docs/WebhooksApi.md +362 -0
  360. data/docs/WhatsAppCampaignsApi.md +543 -0
  361. data/docs/WhatsappCampStats.md +12 -0
  362. data/docs/WhatsappCampTemplate.md +18 -0
  363. data/lib/brevo/api/account_api.rb +145 -0
  364. data/lib/brevo/api/companies_api.rb +419 -0
  365. data/lib/brevo/api/contacts_api.rb +1735 -0
  366. data/lib/brevo/api/conversations_api.rb +514 -0
  367. data/lib/brevo/api/coupons_api.rb +316 -0
  368. data/lib/brevo/api/deals_api.rb +564 -0
  369. data/lib/brevo/api/domains_api.rb +282 -0
  370. data/lib/brevo/api/ecommerce_api.rb +655 -0
  371. data/lib/brevo/api/email_campaigns_api.rb +785 -0
  372. data/lib/brevo/api/external_feeds_api.rb +336 -0
  373. data/lib/brevo/api/files_api.rb +323 -0
  374. data/lib/brevo/api/inbound_parsing_api.rb +218 -0
  375. data/lib/brevo/api/master_account_api.rb +594 -0
  376. data/lib/brevo/api/notes_api.rb +318 -0
  377. data/lib/brevo/api/process_api.rb +151 -0
  378. data/lib/brevo/api/reseller_api.rb +923 -0
  379. data/lib/brevo/api/senders_api.rb +388 -0
  380. data/lib/brevo/api/sms_campaigns_api.rb +603 -0
  381. data/lib/brevo/api/tasks_api.rb +385 -0
  382. data/lib/brevo/api/transactional_emails_api.rb +1370 -0
  383. data/lib/brevo/api/transactional_sms_api.rb +290 -0
  384. data/lib/brevo/api/transactional_whats_app_api.rb +173 -0
  385. data/lib/brevo/api/user_api.rb +131 -0
  386. data/lib/brevo/api/webhooks_api.rb +357 -0
  387. data/lib/brevo/api/whats_app_campaigns_api.rb +534 -0
  388. data/lib/brevo/api_client.rb +392 -0
  389. data/lib/brevo/api_error.rb +38 -0
  390. data/lib/brevo/configuration.rb +216 -0
  391. data/lib/brevo/models/ab_test_campaign_result.rb +299 -0
  392. data/lib/brevo/models/ab_test_campaign_result_clicked_links.rb +203 -0
  393. data/lib/brevo/models/ab_test_campaign_result_statistics.rb +259 -0
  394. data/lib/brevo/models/ab_test_version_clicks.rb +176 -0
  395. data/lib/brevo/models/ab_test_version_clicks_inner.rb +220 -0
  396. data/lib/brevo/models/ab_test_version_stats.rb +206 -0
  397. data/lib/brevo/models/add_child_domain.rb +185 -0
  398. data/lib/brevo/models/add_contact_to_list.rb +199 -0
  399. data/lib/brevo/models/add_credits.rb +195 -0
  400. data/lib/brevo/models/authenticate_domain_model.rb +205 -0
  401. data/lib/brevo/models/block_domain.rb +190 -0
  402. data/lib/brevo/models/body.rb +210 -0
  403. data/lib/brevo/models/body_1.rb +205 -0
  404. data/lib/brevo/models/body_10.rb +225 -0
  405. data/lib/brevo/models/body_11.rb +190 -0
  406. data/lib/brevo/models/body_12.rb +215 -0
  407. data/lib/brevo/models/body_2.rb +223 -0
  408. data/lib/brevo/models/body_3.rb +200 -0
  409. data/lib/brevo/models/body_4.rb +195 -0
  410. data/lib/brevo/models/body_5.rb +223 -0
  411. data/lib/brevo/models/body_6.rb +320 -0
  412. data/lib/brevo/models/body_7.rb +281 -0
  413. data/lib/brevo/models/body_8.rb +245 -0
  414. data/lib/brevo/models/body_9.rb +190 -0
  415. data/lib/brevo/models/body_variables_items.rb +175 -0
  416. data/lib/brevo/models/companies_list.rb +188 -0
  417. data/lib/brevo/models/company.rb +220 -0
  418. data/lib/brevo/models/company_attributes.rb +176 -0
  419. data/lib/brevo/models/company_attributes_inner.rb +223 -0
  420. data/lib/brevo/models/component_items.rb +193 -0
  421. data/lib/brevo/models/conversations_message.rb +324 -0
  422. data/lib/brevo/models/conversations_message_file.rb +239 -0
  423. data/lib/brevo/models/conversations_message_file_image_info.rb +236 -0
  424. data/lib/brevo/models/create_api_key_request.rb +200 -0
  425. data/lib/brevo/models/create_api_key_response.rb +195 -0
  426. data/lib/brevo/models/create_attribute.rb +251 -0
  427. data/lib/brevo/models/create_attribute_enumeration.rb +205 -0
  428. data/lib/brevo/models/create_category_model.rb +185 -0
  429. data/lib/brevo/models/create_child.rb +294 -0
  430. data/lib/brevo/models/create_contact.rb +261 -0
  431. data/lib/brevo/models/create_coupon_collection.rb +205 -0
  432. data/lib/brevo/models/create_coupons.rb +206 -0
  433. data/lib/brevo/models/create_doi_contact.rb +259 -0
  434. data/lib/brevo/models/create_domain.rb +190 -0
  435. data/lib/brevo/models/create_domain_model.rb +219 -0
  436. data/lib/brevo/models/create_domain_model_dns_records.rb +193 -0
  437. data/lib/brevo/models/create_domain_model_dns_records_dkim_record.rb +211 -0
  438. data/lib/brevo/models/create_email_campaign.rb +607 -0
  439. data/lib/brevo/models/create_email_campaign_recipients.rb +212 -0
  440. data/lib/brevo/models/create_email_campaign_sender.rb +211 -0
  441. data/lib/brevo/models/create_external_feed.rb +339 -0
  442. data/lib/brevo/models/create_list.rb +205 -0
  443. data/lib/brevo/models/create_model.rb +190 -0
  444. data/lib/brevo/models/create_product_model.rb +185 -0
  445. data/lib/brevo/models/create_reseller.rb +200 -0
  446. data/lib/brevo/models/create_sender.rb +217 -0
  447. data/lib/brevo/models/create_sender_ips.rb +239 -0
  448. data/lib/brevo/models/create_sender_model.rb +210 -0
  449. data/lib/brevo/models/create_sms_campaign.rb +290 -0
  450. data/lib/brevo/models/create_sms_campaign_recipients.rb +204 -0
  451. data/lib/brevo/models/create_smtp_email.rb +196 -0
  452. data/lib/brevo/models/create_smtp_template.rb +289 -0
  453. data/lib/brevo/models/create_smtp_template_sender.rb +206 -0
  454. data/lib/brevo/models/create_sub_account.rb +259 -0
  455. data/lib/brevo/models/create_sub_account_response.rb +190 -0
  456. data/lib/brevo/models/create_update_batch_category.rb +202 -0
  457. data/lib/brevo/models/create_update_batch_category_model.rb +195 -0
  458. data/lib/brevo/models/create_update_batch_products.rb +202 -0
  459. data/lib/brevo/models/create_update_batch_products_model.rb +195 -0
  460. data/lib/brevo/models/create_update_categories.rb +220 -0
  461. data/lib/brevo/models/create_update_category.rb +232 -0
  462. data/lib/brevo/models/create_update_contact_model.rb +185 -0
  463. data/lib/brevo/models/create_update_folder.rb +185 -0
  464. data/lib/brevo/models/create_update_product.rb +301 -0
  465. data/lib/brevo/models/create_update_products.rb +289 -0
  466. data/lib/brevo/models/create_webhook.rb +273 -0
  467. data/lib/brevo/models/create_whats_app_campaign.rb +234 -0
  468. data/lib/brevo/models/create_whats_app_campaign_recipients.rb +212 -0
  469. data/lib/brevo/models/create_whats_app_template.rb +289 -0
  470. data/lib/brevo/models/created_batch_id.rb +190 -0
  471. data/lib/brevo/models/created_process_id.rb +190 -0
  472. data/lib/brevo/models/deal.rb +220 -0
  473. data/lib/brevo/models/deal_attributes.rb +176 -0
  474. data/lib/brevo/models/deal_attributes_inner.rb +223 -0
  475. data/lib/brevo/models/deals_list.rb +188 -0
  476. data/lib/brevo/models/delete_hardbounces.rb +205 -0
  477. data/lib/brevo/models/email_export_recipients.rb +234 -0
  478. data/lib/brevo/models/error_model.rb +239 -0
  479. data/lib/brevo/models/export_webhooks_history.rb +309 -0
  480. data/lib/brevo/models/file_data.rb +246 -0
  481. data/lib/brevo/models/file_downloadable_link.rb +190 -0
  482. data/lib/brevo/models/file_list.rb +176 -0
  483. data/lib/brevo/models/get_account.rb +289 -0
  484. data/lib/brevo/models/get_account_activity.rb +187 -0
  485. data/lib/brevo/models/get_account_activity_logs.rb +250 -0
  486. data/lib/brevo/models/get_account_marketing_automation.rb +200 -0
  487. data/lib/brevo/models/get_account_plan.rb +296 -0
  488. data/lib/brevo/models/get_account_relay.rb +205 -0
  489. data/lib/brevo/models/get_account_relay_data.rb +221 -0
  490. data/lib/brevo/models/get_aggregated_report.rb +305 -0
  491. data/lib/brevo/models/get_all_external_feeds.rb +196 -0
  492. data/lib/brevo/models/get_all_external_feeds_feeds.rb +404 -0
  493. data/lib/brevo/models/get_attributes.rb +192 -0
  494. data/lib/brevo/models/get_attributes_attributes.rb +283 -0
  495. data/lib/brevo/models/get_attributes_enumeration.rb +205 -0
  496. data/lib/brevo/models/get_blocked_domains.rb +193 -0
  497. data/lib/brevo/models/get_campaign_overview.rb +381 -0
  498. data/lib/brevo/models/get_campaign_recipients.rb +207 -0
  499. data/lib/brevo/models/get_campaign_stats.rb +390 -0
  500. data/lib/brevo/models/get_categories.rb +206 -0
  501. data/lib/brevo/models/get_category_details.rb +255 -0
  502. data/lib/brevo/models/get_child_account_creation_status.rb +190 -0
  503. data/lib/brevo/models/get_child_domain.rb +195 -0
  504. data/lib/brevo/models/get_child_domains.rb +175 -0
  505. data/lib/brevo/models/get_child_info.rb +289 -0
  506. data/lib/brevo/models/get_child_info_api_keys.rb +203 -0
  507. data/lib/brevo/models/get_child_info_api_keys_v2.rb +205 -0
  508. data/lib/brevo/models/get_child_info_api_keys_v3.rb +205 -0
  509. data/lib/brevo/models/get_child_info_credits.rb +196 -0
  510. data/lib/brevo/models/get_child_info_statistics.rb +206 -0
  511. data/lib/brevo/models/get_children_list.rb +197 -0
  512. data/lib/brevo/models/get_client.rb +235 -0
  513. data/lib/brevo/models/get_contact_campaign_stats.rb +273 -0
  514. data/lib/brevo/models/get_contact_campaign_stats_clicked.rb +206 -0
  515. data/lib/brevo/models/get_contact_campaign_stats_opened.rb +235 -0
  516. data/lib/brevo/models/get_contact_campaign_stats_transac_attributes.rb +220 -0
  517. data/lib/brevo/models/get_contact_campaign_stats_unsubscriptions.rb +209 -0
  518. data/lib/brevo/models/get_contact_details.rb +307 -0
  519. data/lib/brevo/models/get_contacts.rb +206 -0
  520. data/lib/brevo/models/get_coupon_collection.rb +265 -0
  521. data/lib/brevo/models/get_device_browser_stats.rb +235 -0
  522. data/lib/brevo/models/get_domain_configuration_model.rb +234 -0
  523. data/lib/brevo/models/get_domains_list.rb +187 -0
  524. data/lib/brevo/models/get_domains_list_domains.rb +245 -0
  525. data/lib/brevo/models/get_email_campaign.rb +608 -0
  526. data/lib/brevo/models/get_email_campaigns.rb +196 -0
  527. data/lib/brevo/models/get_email_event_report.rb +186 -0
  528. data/lib/brevo/models/get_email_event_report_events.rb +339 -0
  529. data/lib/brevo/models/get_extended_campaign_overview.rb +580 -0
  530. data/lib/brevo/models/get_extended_campaign_overview_sender.rb +205 -0
  531. data/lib/brevo/models/get_extended_campaign_stats.rb +295 -0
  532. data/lib/brevo/models/get_extended_campaign_stats_global_stats.rb +176 -0
  533. data/lib/brevo/models/get_extended_client.rb +249 -0
  534. data/lib/brevo/models/get_extended_client_address.rb +236 -0
  535. data/lib/brevo/models/get_extended_contact_details.rb +321 -0
  536. data/lib/brevo/models/get_extended_contact_details_statistics.rb +281 -0
  537. data/lib/brevo/models/get_extended_contact_details_statistics_clicked.rb +207 -0
  538. data/lib/brevo/models/get_extended_contact_details_statistics_delivered.rb +205 -0
  539. data/lib/brevo/models/get_extended_contact_details_statistics_links.rb +235 -0
  540. data/lib/brevo/models/get_extended_contact_details_statistics_messages_sent.rb +205 -0
  541. data/lib/brevo/models/get_extended_contact_details_statistics_opened.rb +235 -0
  542. data/lib/brevo/models/get_extended_contact_details_statistics_unsubscriptions.rb +210 -0
  543. data/lib/brevo/models/get_extended_contact_details_statistics_unsubscriptions_admin_unsubscription.rb +200 -0
  544. data/lib/brevo/models/get_extended_contact_details_statistics_unsubscriptions_user_unsubscription.rb +215 -0
  545. data/lib/brevo/models/get_extended_list.rb +301 -0
  546. data/lib/brevo/models/get_extended_list_campaign_stats.rb +204 -0
  547. data/lib/brevo/models/get_external_feed_by_uuid.rb +404 -0
  548. data/lib/brevo/models/get_external_feed_by_uuid_headers.rb +195 -0
  549. data/lib/brevo/models/get_folder.rb +250 -0
  550. data/lib/brevo/models/get_folder_lists.rb +196 -0
  551. data/lib/brevo/models/get_folders.rb +196 -0
  552. data/lib/brevo/models/get_inbound_email_events.rb +186 -0
  553. data/lib/brevo/models/get_inbound_email_events_by_uuid.rb +259 -0
  554. data/lib/brevo/models/get_inbound_email_events_by_uuid_attachments.rb +215 -0
  555. data/lib/brevo/models/get_inbound_email_events_by_uuid_logs.rb +229 -0
  556. data/lib/brevo/models/get_inbound_email_events_events.rb +235 -0
  557. data/lib/brevo/models/get_invited_users_list.rb +187 -0
  558. data/lib/brevo/models/get_invited_users_list_feature_access.rb +206 -0
  559. data/lib/brevo/models/get_invited_users_list_users.rb +234 -0
  560. data/lib/brevo/models/get_ip.rb +235 -0
  561. data/lib/brevo/models/get_ip_from_sender.rb +235 -0
  562. data/lib/brevo/models/get_ips.rb +192 -0
  563. data/lib/brevo/models/get_ips_from_sender.rb +192 -0
  564. data/lib/brevo/models/get_list.rb +250 -0
  565. data/lib/brevo/models/get_lists.rb +197 -0
  566. data/lib/brevo/models/get_process.rb +264 -0
  567. data/lib/brevo/models/get_processes.rb +197 -0
  568. data/lib/brevo/models/get_product_details.rb +357 -0
  569. data/lib/brevo/models/get_products.rb +206 -0
  570. data/lib/brevo/models/get_reports.rb +186 -0
  571. data/lib/brevo/models/get_reports_reports.rb +370 -0
  572. data/lib/brevo/models/get_scheduled_email_by_batch_id.rb +196 -0
  573. data/lib/brevo/models/get_scheduled_email_by_batch_id_batches.rb +254 -0
  574. data/lib/brevo/models/get_scheduled_email_by_message_id.rb +254 -0
  575. data/lib/brevo/models/get_segments.rb +194 -0
  576. data/lib/brevo/models/get_segments_segments.rb +215 -0
  577. data/lib/brevo/models/get_senders_list.rb +187 -0
  578. data/lib/brevo/models/get_senders_list_ips.rb +220 -0
  579. data/lib/brevo/models/get_senders_list_senders.rb +247 -0
  580. data/lib/brevo/models/get_shared_template_url.rb +190 -0
  581. data/lib/brevo/models/get_sms_campaign.rb +352 -0
  582. data/lib/brevo/models/get_sms_campaign_overview.rb +324 -0
  583. data/lib/brevo/models/get_sms_campaign_recipients.rb +175 -0
  584. data/lib/brevo/models/get_sms_campaign_stats.rb +280 -0
  585. data/lib/brevo/models/get_sms_campaigns.rb +196 -0
  586. data/lib/brevo/models/get_sms_event_report.rb +186 -0
  587. data/lib/brevo/models/get_sms_event_report_events.rb +278 -0
  588. data/lib/brevo/models/get_smtp_template_overview.rb +364 -0
  589. data/lib/brevo/models/get_smtp_template_overview_sender.rb +205 -0
  590. data/lib/brevo/models/get_smtp_templates.rb +196 -0
  591. data/lib/brevo/models/get_sso_token.rb +190 -0
  592. data/lib/brevo/models/get_stats_by_browser.rb +175 -0
  593. data/lib/brevo/models/get_stats_by_device.rb +223 -0
  594. data/lib/brevo/models/get_stats_by_domain.rb +175 -0
  595. data/lib/brevo/models/get_transac_aggregated_sms_report.rb +275 -0
  596. data/lib/brevo/models/get_transac_blocked_contacts.rb +196 -0
  597. data/lib/brevo/models/get_transac_blocked_contacts_contacts.rb +234 -0
  598. data/lib/brevo/models/get_transac_blocked_contacts_reason.rb +230 -0
  599. data/lib/brevo/models/get_transac_email_content.rb +277 -0
  600. data/lib/brevo/models/get_transac_email_content_events.rb +205 -0
  601. data/lib/brevo/models/get_transac_emails_list.rb +196 -0
  602. data/lib/brevo/models/get_transac_emails_list_transactional_emails.rb +282 -0
  603. data/lib/brevo/models/get_transac_sms_report.rb +186 -0
  604. data/lib/brevo/models/get_transac_sms_report_reports.rb +275 -0
  605. data/lib/brevo/models/get_user_permission.rb +223 -0
  606. data/lib/brevo/models/get_user_permission_privileges.rb +205 -0
  607. data/lib/brevo/models/get_wa_templates.rb +206 -0
  608. data/lib/brevo/models/get_wa_templates_templates.rb +290 -0
  609. data/lib/brevo/models/get_webhook.rb +315 -0
  610. data/lib/brevo/models/get_webhooks.rb +191 -0
  611. data/lib/brevo/models/get_whats_app_config.rb +281 -0
  612. data/lib/brevo/models/get_whatsapp_campaign_overview.rb +332 -0
  613. data/lib/brevo/models/get_whatsapp_campaigns.rb +196 -0
  614. data/lib/brevo/models/get_whatsapp_campaigns_campaigns.rb +353 -0
  615. data/lib/brevo/models/get_whatsapp_event_report.rb +186 -0
  616. data/lib/brevo/models/get_whatsapp_event_report_events.rb +314 -0
  617. data/lib/brevo/models/inline_response_200.rb +191 -0
  618. data/lib/brevo/models/inline_response_200_1.rb +220 -0
  619. data/lib/brevo/models/inline_response_201.rb +191 -0
  620. data/lib/brevo/models/inline_response_201_1.rb +191 -0
  621. data/lib/brevo/models/inline_response_201_2.rb +190 -0
  622. data/lib/brevo/models/inline_response_201_3.rb +190 -0
  623. data/lib/brevo/models/inline_response_201_4.rb +190 -0
  624. data/lib/brevo/models/manage_ip.rb +185 -0
  625. data/lib/brevo/models/master_details_response.rb +243 -0
  626. data/lib/brevo/models/master_details_response_billing_info.rb +214 -0
  627. data/lib/brevo/models/master_details_response_billing_info_address.rb +226 -0
  628. data/lib/brevo/models/master_details_response_billing_info_name.rb +196 -0
  629. data/lib/brevo/models/master_details_response_plan_info.rb +272 -0
  630. data/lib/brevo/models/master_details_response_plan_info_features.rb +225 -0
  631. data/lib/brevo/models/note.rb +283 -0
  632. data/lib/brevo/models/note_data.rb +255 -0
  633. data/lib/brevo/models/note_id.rb +186 -0
  634. data/lib/brevo/models/note_list.rb +176 -0
  635. data/lib/brevo/models/order.rb +297 -0
  636. data/lib/brevo/models/order_batch.rb +202 -0
  637. data/lib/brevo/models/order_billing.rb +246 -0
  638. data/lib/brevo/models/order_products.rb +231 -0
  639. data/lib/brevo/models/otp.rb +185 -0
  640. data/lib/brevo/models/pipeline.rb +208 -0
  641. data/lib/brevo/models/pipeline_stage.rb +196 -0
  642. data/lib/brevo/models/pipelines.rb +176 -0
  643. data/lib/brevo/models/post_contact_info.rb +189 -0
  644. data/lib/brevo/models/post_contact_info_contacts.rb +217 -0
  645. data/lib/brevo/models/post_send_failed.rb +238 -0
  646. data/lib/brevo/models/post_send_sms_test_failed.rb +227 -0
  647. data/lib/brevo/models/remaining_credit_model.rb +203 -0
  648. data/lib/brevo/models/remaining_credit_model_child.rb +206 -0
  649. data/lib/brevo/models/remaining_credit_model_reseller.rb +205 -0
  650. data/lib/brevo/models/remove_contact_from_list.rb +209 -0
  651. data/lib/brevo/models/remove_credits.rb +195 -0
  652. data/lib/brevo/models/request_contact_export.rb +211 -0
  653. data/lib/brevo/models/request_contact_export_custom_contact_filter.rb +294 -0
  654. data/lib/brevo/models/request_contact_import.rb +286 -0
  655. data/lib/brevo/models/request_contact_import_json_body.rb +194 -0
  656. data/lib/brevo/models/request_contact_import_new_list.rb +196 -0
  657. data/lib/brevo/models/request_sms_recipient_export.rb +234 -0
  658. data/lib/brevo/models/schedule_smtp_email.rb +206 -0
  659. data/lib/brevo/models/send_report.rb +235 -0
  660. data/lib/brevo/models/send_report_email.rb +208 -0
  661. data/lib/brevo/models/send_sms.rb +233 -0
  662. data/lib/brevo/models/send_smtp_email.rb +345 -0
  663. data/lib/brevo/models/send_smtp_email_attachment.rb +220 -0
  664. data/lib/brevo/models/send_smtp_email_bcc.rb +200 -0
  665. data/lib/brevo/models/send_smtp_email_cc.rb +200 -0
  666. data/lib/brevo/models/send_smtp_email_message_versions.rb +247 -0
  667. data/lib/brevo/models/send_smtp_email_reply_to.rb +201 -0
  668. data/lib/brevo/models/send_smtp_email_reply_to_1.rb +201 -0
  669. data/lib/brevo/models/send_smtp_email_sender.rb +206 -0
  670. data/lib/brevo/models/send_smtp_email_to.rb +200 -0
  671. data/lib/brevo/models/send_smtp_email_to_1.rb +200 -0
  672. data/lib/brevo/models/send_test_email.rb +187 -0
  673. data/lib/brevo/models/send_test_sms.rb +185 -0
  674. data/lib/brevo/models/send_transac_sms.rb +327 -0
  675. data/lib/brevo/models/send_whatsapp_message.rb +227 -0
  676. data/lib/brevo/models/sso_token_request.rb +254 -0
  677. data/lib/brevo/models/sub_account_apps_toggle_request.rb +306 -0
  678. data/lib/brevo/models/sub_account_details_response.rb +214 -0
  679. data/lib/brevo/models/sub_account_details_response_plan_info.rb +204 -0
  680. data/lib/brevo/models/sub_account_details_response_plan_info_credits.rb +195 -0
  681. data/lib/brevo/models/sub_account_details_response_plan_info_credits_emails.rb +196 -0
  682. data/lib/brevo/models/sub_account_details_response_plan_info_features.rb +203 -0
  683. data/lib/brevo/models/sub_account_details_response_plan_info_features_inbox.rb +196 -0
  684. data/lib/brevo/models/sub_account_details_response_plan_info_features_landing_page.rb +196 -0
  685. data/lib/brevo/models/sub_account_details_response_plan_info_features_users.rb +196 -0
  686. data/lib/brevo/models/sub_account_update_plan_request.rb +194 -0
  687. data/lib/brevo/models/sub_account_update_plan_request_credits.rb +186 -0
  688. data/lib/brevo/models/sub_account_update_plan_request_features.rb +206 -0
  689. data/lib/brevo/models/sub_accounts_response.rb +196 -0
  690. data/lib/brevo/models/sub_accounts_response_sub_accounts.rb +235 -0
  691. data/lib/brevo/models/task.rb +252 -0
  692. data/lib/brevo/models/task_list.rb +188 -0
  693. data/lib/brevo/models/task_reminder.rb +257 -0
  694. data/lib/brevo/models/task_types.rb +196 -0
  695. data/lib/brevo/models/update_attribute.rb +197 -0
  696. data/lib/brevo/models/update_attribute_enumeration.rb +205 -0
  697. data/lib/brevo/models/update_batch_contacts.rb +187 -0
  698. data/lib/brevo/models/update_batch_contacts_contacts.rb +283 -0
  699. data/lib/brevo/models/update_batch_contacts_model.rb +197 -0
  700. data/lib/brevo/models/update_campaign_status.rb +220 -0
  701. data/lib/brevo/models/update_child.rb +225 -0
  702. data/lib/brevo/models/update_child_account_status.rb +215 -0
  703. data/lib/brevo/models/update_child_domain.rb +185 -0
  704. data/lib/brevo/models/update_contact.rb +251 -0
  705. data/lib/brevo/models/update_coupon_collection.rb +190 -0
  706. data/lib/brevo/models/update_email_campaign.rb +597 -0
  707. data/lib/brevo/models/update_email_campaign_recipients.rb +212 -0
  708. data/lib/brevo/models/update_email_campaign_sender.rb +206 -0
  709. data/lib/brevo/models/update_external_feed.rb +327 -0
  710. data/lib/brevo/models/update_list.rb +195 -0
  711. data/lib/brevo/models/update_sender.rb +207 -0
  712. data/lib/brevo/models/update_sms_campaign.rb +271 -0
  713. data/lib/brevo/models/update_smtp_template.rb +274 -0
  714. data/lib/brevo/models/update_smtp_template_sender.rb +206 -0
  715. data/lib/brevo/models/update_webhook.rb +239 -0
  716. data/lib/brevo/models/update_whats_app_campaign.rb +250 -0
  717. data/lib/brevo/models/upload_image_model.rb +190 -0
  718. data/lib/brevo/models/upload_image_to_gallery.rb +200 -0
  719. data/lib/brevo/models/variables_items.rb +202 -0
  720. data/lib/brevo/models/whatsapp_camp_stats.rb +245 -0
  721. data/lib/brevo/models/whatsapp_camp_template.rb +287 -0
  722. data/lib/brevo/version.rb +15 -0
  723. data/lib/brevo.rb +395 -0
  724. data/spec/api/account_api_spec.rb +59 -0
  725. data/spec/api/companies_api_spec.rb +119 -0
  726. data/spec/api/contacts_api_spec.rb +387 -0
  727. data/spec/api/conversations_api_spec.rb +140 -0
  728. data/spec/api/coupons_api_spec.rb +93 -0
  729. data/spec/api/deals_api_spec.rb +151 -0
  730. data/spec/api/domains_api_spec.rb +89 -0
  731. data/spec/api/ecommerce_api_spec.rb +173 -0
  732. data/spec/api/email_campaigns_api_spec.rb +196 -0
  733. data/spec/api/external_feeds_api_spec.rb +102 -0
  734. data/spec/api/files_api_spec.rb +99 -0
  735. data/spec/api/inbound_parsing_api_spec.rb +76 -0
  736. data/spec/api/master_account_api_spec.rb +158 -0
  737. data/spec/api/notes_api_spec.rb +97 -0
  738. data/spec/api/process_api_spec.rb +59 -0
  739. data/spec/api/reseller_api_spec.rb +223 -0
  740. data/spec/api/senders_api_spec.rb +114 -0
  741. data/spec/api/sms_campaigns_api_spec.rb +157 -0
  742. data/spec/api/tasks_api_spec.rb +113 -0
  743. data/spec/api/transactional_emails_api_spec.rb +330 -0
  744. data/spec/api/transactional_sms_api_spec.rb +94 -0
  745. data/spec/api/transactional_whats_app_api_spec.rb +66 -0
  746. data/spec/api/user_api_spec.rb +56 -0
  747. data/spec/api/webhooks_api_spec.rb +104 -0
  748. data/spec/api/whats_app_campaigns_api_spec.rb +142 -0
  749. data/spec/api_client_spec.rb +243 -0
  750. data/spec/configuration_spec.rb +42 -0
  751. data/spec/models/ab_test_campaign_result_clicked_links_spec.rb +47 -0
  752. data/spec/models/ab_test_campaign_result_spec.rb +91 -0
  753. data/spec/models/ab_test_campaign_result_statistics_spec.rb +71 -0
  754. data/spec/models/ab_test_version_clicks_inner_spec.rb +53 -0
  755. data/spec/models/ab_test_version_clicks_spec.rb +35 -0
  756. data/spec/models/ab_test_version_stats_spec.rb +47 -0
  757. data/spec/models/add_child_domain_spec.rb +41 -0
  758. data/spec/models/add_contact_to_list_spec.rb +47 -0
  759. data/spec/models/add_credits_spec.rb +47 -0
  760. data/spec/models/authenticate_domain_model_spec.rb +47 -0
  761. data/spec/models/block_domain_spec.rb +41 -0
  762. data/spec/models/body_10_spec.rb +59 -0
  763. data/spec/models/body_11_spec.rb +41 -0
  764. data/spec/models/body_12_spec.rb +59 -0
  765. data/spec/models/body_1_spec.rb +53 -0
  766. data/spec/models/body_2_spec.rb +59 -0
  767. data/spec/models/body_3_spec.rb +47 -0
  768. data/spec/models/body_4_spec.rb +47 -0
  769. data/spec/models/body_5_spec.rb +59 -0
  770. data/spec/models/body_6_spec.rb +101 -0
  771. data/spec/models/body_7_spec.rb +95 -0
  772. data/spec/models/body_8_spec.rb +71 -0
  773. data/spec/models/body_9_spec.rb +41 -0
  774. data/spec/models/body_spec.rb +53 -0
  775. data/spec/models/body_variables_items_spec.rb +35 -0
  776. data/spec/models/companies_list_spec.rb +41 -0
  777. data/spec/models/company_attributes_inner_spec.rb +65 -0
  778. data/spec/models/company_attributes_spec.rb +35 -0
  779. data/spec/models/company_spec.rb +59 -0
  780. data/spec/models/component_items_spec.rb +47 -0
  781. data/spec/models/conversations_message_file_image_info_spec.rb +53 -0
  782. data/spec/models/conversations_message_file_spec.rb +65 -0
  783. data/spec/models/conversations_message_spec.rb +99 -0
  784. data/spec/models/create_api_key_request_spec.rb +47 -0
  785. data/spec/models/create_api_key_response_spec.rb +47 -0
  786. data/spec/models/create_attribute_enumeration_spec.rb +47 -0
  787. data/spec/models/create_attribute_spec.rb +63 -0
  788. data/spec/models/create_category_model_spec.rb +41 -0
  789. data/spec/models/create_child_spec.rb +75 -0
  790. data/spec/models/create_contact_spec.rb +83 -0
  791. data/spec/models/create_coupon_collection_spec.rb +47 -0
  792. data/spec/models/create_coupons_spec.rb +47 -0
  793. data/spec/models/create_doi_contact_spec.rb +71 -0
  794. data/spec/models/create_domain_model_dns_records_dkim_record_spec.rb +59 -0
  795. data/spec/models/create_domain_model_dns_records_spec.rb +47 -0
  796. data/spec/models/create_domain_model_spec.rb +59 -0
  797. data/spec/models/create_domain_spec.rb +41 -0
  798. data/spec/models/create_email_campaign_recipients_spec.rb +53 -0
  799. data/spec/models/create_email_campaign_sender_spec.rb +53 -0
  800. data/spec/models/create_email_campaign_spec.rb +225 -0
  801. data/spec/models/create_external_feed_spec.rb +93 -0
  802. data/spec/models/create_list_spec.rb +47 -0
  803. data/spec/models/create_model_spec.rb +41 -0
  804. data/spec/models/create_product_model_spec.rb +41 -0
  805. data/spec/models/create_reseller_spec.rb +47 -0
  806. data/spec/models/create_sender_ips_spec.rb +53 -0
  807. data/spec/models/create_sender_model_spec.rb +53 -0
  808. data/spec/models/create_sender_spec.rb +53 -0
  809. data/spec/models/create_sms_campaign_recipients_spec.rb +47 -0
  810. data/spec/models/create_sms_campaign_spec.rb +83 -0
  811. data/spec/models/create_smtp_email_spec.rb +47 -0
  812. data/spec/models/create_smtp_template_sender_spec.rb +53 -0
  813. data/spec/models/create_smtp_template_spec.rb +95 -0
  814. data/spec/models/create_sub_account_response_spec.rb +41 -0
  815. data/spec/models/create_sub_account_spec.rb +63 -0
  816. data/spec/models/create_update_batch_category_model_spec.rb +47 -0
  817. data/spec/models/create_update_batch_category_spec.rb +47 -0
  818. data/spec/models/create_update_batch_products_model_spec.rb +47 -0
  819. data/spec/models/create_update_batch_products_spec.rb +47 -0
  820. data/spec/models/create_update_categories_spec.rb +59 -0
  821. data/spec/models/create_update_category_spec.rb +65 -0
  822. data/spec/models/create_update_contact_model_spec.rb +41 -0
  823. data/spec/models/create_update_folder_spec.rb +41 -0
  824. data/spec/models/create_update_product_spec.rb +101 -0
  825. data/spec/models/create_update_products_spec.rb +95 -0
  826. data/spec/models/create_webhook_spec.rb +73 -0
  827. data/spec/models/create_whats_app_campaign_recipients_spec.rb +53 -0
  828. data/spec/models/create_whats_app_campaign_spec.rb +59 -0
  829. data/spec/models/create_whats_app_template_spec.rb +75 -0
  830. data/spec/models/created_batch_id_spec.rb +41 -0
  831. data/spec/models/created_process_id_spec.rb +41 -0
  832. data/spec/models/deal_attributes_inner_spec.rb +65 -0
  833. data/spec/models/deal_attributes_spec.rb +35 -0
  834. data/spec/models/deal_spec.rb +59 -0
  835. data/spec/models/deals_list_spec.rb +41 -0
  836. data/spec/models/delete_hardbounces_spec.rb +53 -0
  837. data/spec/models/email_export_recipients_spec.rb +51 -0
  838. data/spec/models/error_model_spec.rb +51 -0
  839. data/spec/models/export_webhooks_history_spec.rb +93 -0
  840. data/spec/models/file_data_spec.rb +77 -0
  841. data/spec/models/file_downloadable_link_spec.rb +41 -0
  842. data/spec/models/file_list_spec.rb +35 -0
  843. data/spec/models/get_account_activity_logs_spec.rb +65 -0
  844. data/spec/models/get_account_activity_spec.rb +41 -0
  845. data/spec/models/get_account_marketing_automation_spec.rb +47 -0
  846. data/spec/models/get_account_plan_spec.rb +79 -0
  847. data/spec/models/get_account_relay_data_spec.rb +53 -0
  848. data/spec/models/get_account_relay_spec.rb +47 -0
  849. data/spec/models/get_account_spec.rb +83 -0
  850. data/spec/models/get_aggregated_report_spec.rb +113 -0
  851. data/spec/models/get_all_external_feeds_feeds_spec.rb +111 -0
  852. data/spec/models/get_all_external_feeds_spec.rb +47 -0
  853. data/spec/models/get_attributes_attributes_spec.rb +73 -0
  854. data/spec/models/get_attributes_enumeration_spec.rb +47 -0
  855. data/spec/models/get_attributes_spec.rb +41 -0
  856. data/spec/models/get_blocked_domains_spec.rb +41 -0
  857. data/spec/models/get_campaign_overview_spec.rb +127 -0
  858. data/spec/models/get_campaign_recipients_spec.rb +47 -0
  859. data/spec/models/get_campaign_stats_spec.rb +131 -0
  860. data/spec/models/get_categories_spec.rb +47 -0
  861. data/spec/models/get_category_details_spec.rb +71 -0
  862. data/spec/models/get_child_account_creation_status_spec.rb +41 -0
  863. data/spec/models/get_child_domain_spec.rb +47 -0
  864. data/spec/models/get_child_domains_spec.rb +35 -0
  865. data/spec/models/get_child_info_api_keys_spec.rb +47 -0
  866. data/spec/models/get_child_info_api_keys_v2_spec.rb +47 -0
  867. data/spec/models/get_child_info_api_keys_v3_spec.rb +47 -0
  868. data/spec/models/get_child_info_credits_spec.rb +47 -0
  869. data/spec/models/get_child_info_spec.rb +89 -0
  870. data/spec/models/get_child_info_statistics_spec.rb +53 -0
  871. data/spec/models/get_children_list_spec.rb +47 -0
  872. data/spec/models/get_client_spec.rb +59 -0
  873. data/spec/models/get_contact_campaign_stats_clicked_spec.rb +47 -0
  874. data/spec/models/get_contact_campaign_stats_opened_spec.rb +59 -0
  875. data/spec/models/get_contact_campaign_stats_spec.rb +89 -0
  876. data/spec/models/get_contact_campaign_stats_transac_attributes_spec.rb +53 -0
  877. data/spec/models/get_contact_campaign_stats_unsubscriptions_spec.rb +47 -0
  878. data/spec/models/get_contact_details_spec.rb +89 -0
  879. data/spec/models/get_contacts_spec.rb +47 -0
  880. data/spec/models/get_coupon_collection_spec.rb +71 -0
  881. data/spec/models/get_device_browser_stats_spec.rb +59 -0
  882. data/spec/models/get_domain_configuration_model_spec.rb +59 -0
  883. data/spec/models/get_domains_list_domains_spec.rb +65 -0
  884. data/spec/models/get_domains_list_spec.rb +41 -0
  885. data/spec/models/get_email_campaign_spec.rb +235 -0
  886. data/spec/models/get_email_campaigns_spec.rb +47 -0
  887. data/spec/models/get_email_event_report_events_spec.rb +105 -0
  888. data/spec/models/get_email_event_report_spec.rb +41 -0
  889. data/spec/models/get_extended_campaign_overview_sender_spec.rb +53 -0
  890. data/spec/models/get_extended_campaign_overview_spec.rb +223 -0
  891. data/spec/models/get_extended_campaign_stats_global_stats_spec.rb +35 -0
  892. data/spec/models/get_extended_campaign_stats_spec.rb +83 -0
  893. data/spec/models/get_extended_client_address_spec.rb +59 -0
  894. data/spec/models/get_extended_client_spec.rb +65 -0
  895. data/spec/models/get_extended_contact_details_spec.rb +95 -0
  896. data/spec/models/get_extended_contact_details_statistics_clicked_spec.rb +47 -0
  897. data/spec/models/get_extended_contact_details_statistics_delivered_spec.rb +47 -0
  898. data/spec/models/get_extended_contact_details_statistics_links_spec.rb +59 -0
  899. data/spec/models/get_extended_contact_details_statistics_messages_sent_spec.rb +47 -0
  900. data/spec/models/get_extended_contact_details_statistics_opened_spec.rb +59 -0
  901. data/spec/models/get_extended_contact_details_statistics_spec.rb +89 -0
  902. data/spec/models/get_extended_contact_details_statistics_unsubscriptions_admin_unsubscription_spec.rb +47 -0
  903. data/spec/models/get_extended_contact_details_statistics_unsubscriptions_spec.rb +47 -0
  904. data/spec/models/get_extended_contact_details_statistics_unsubscriptions_user_unsubscription_spec.rb +53 -0
  905. data/spec/models/get_extended_list_campaign_stats_spec.rb +47 -0
  906. data/spec/models/get_extended_list_spec.rb +89 -0
  907. data/spec/models/get_external_feed_by_uuid_headers_spec.rb +47 -0
  908. data/spec/models/get_external_feed_by_uuid_spec.rb +111 -0
  909. data/spec/models/get_folder_lists_spec.rb +47 -0
  910. data/spec/models/get_folder_spec.rb +65 -0
  911. data/spec/models/get_folders_spec.rb +47 -0
  912. data/spec/models/get_inbound_email_events_by_uuid_attachments_spec.rb +59 -0
  913. data/spec/models/get_inbound_email_events_by_uuid_logs_spec.rb +51 -0
  914. data/spec/models/get_inbound_email_events_by_uuid_spec.rb +83 -0
  915. data/spec/models/get_inbound_email_events_events_spec.rb +59 -0
  916. data/spec/models/get_inbound_email_events_spec.rb +41 -0
  917. data/spec/models/get_invited_users_list_feature_access_spec.rb +53 -0
  918. data/spec/models/get_invited_users_list_spec.rb +41 -0
  919. data/spec/models/get_invited_users_list_users_spec.rb +59 -0
  920. data/spec/models/get_ip_from_sender_spec.rb +59 -0
  921. data/spec/models/get_ip_spec.rb +59 -0
  922. data/spec/models/get_ips_from_sender_spec.rb +41 -0
  923. data/spec/models/get_ips_spec.rb +41 -0
  924. data/spec/models/get_list_spec.rb +65 -0
  925. data/spec/models/get_lists_spec.rb +47 -0
  926. data/spec/models/get_process_spec.rb +63 -0
  927. data/spec/models/get_processes_spec.rb +47 -0
  928. data/spec/models/get_product_details_spec.rb +125 -0
  929. data/spec/models/get_products_spec.rb +47 -0
  930. data/spec/models/get_reports_reports_spec.rb +113 -0
  931. data/spec/models/get_reports_spec.rb +41 -0
  932. data/spec/models/get_scheduled_email_by_batch_id_batches_spec.rb +57 -0
  933. data/spec/models/get_scheduled_email_by_batch_id_spec.rb +47 -0
  934. data/spec/models/get_scheduled_email_by_message_id_spec.rb +57 -0
  935. data/spec/models/get_segments_segments_spec.rb +59 -0
  936. data/spec/models/get_segments_spec.rb +47 -0
  937. data/spec/models/get_senders_list_ips_spec.rb +53 -0
  938. data/spec/models/get_senders_list_senders_spec.rb +65 -0
  939. data/spec/models/get_senders_list_spec.rb +41 -0
  940. data/spec/models/get_shared_template_url_spec.rb +41 -0
  941. data/spec/models/get_sms_campaign_overview_spec.rb +87 -0
  942. data/spec/models/get_sms_campaign_recipients_spec.rb +35 -0
  943. data/spec/models/get_sms_campaign_spec.rb +99 -0
  944. data/spec/models/get_sms_campaign_stats_spec.rb +77 -0
  945. data/spec/models/get_sms_campaigns_spec.rb +47 -0
  946. data/spec/models/get_sms_event_report_events_spec.rb +81 -0
  947. data/spec/models/get_sms_event_report_spec.rb +41 -0
  948. data/spec/models/get_smtp_template_overview_sender_spec.rb +53 -0
  949. data/spec/models/get_smtp_template_overview_spec.rb +113 -0
  950. data/spec/models/get_smtp_templates_spec.rb +47 -0
  951. data/spec/models/get_sso_token_spec.rb +41 -0
  952. data/spec/models/get_stats_by_browser_spec.rb +35 -0
  953. data/spec/models/get_stats_by_device_spec.rb +59 -0
  954. data/spec/models/get_stats_by_domain_spec.rb +35 -0
  955. data/spec/models/get_transac_aggregated_sms_report_spec.rb +95 -0
  956. data/spec/models/get_transac_blocked_contacts_contacts_spec.rb +59 -0
  957. data/spec/models/get_transac_blocked_contacts_reason_spec.rb +51 -0
  958. data/spec/models/get_transac_blocked_contacts_spec.rb +47 -0
  959. data/spec/models/get_transac_email_content_events_spec.rb +47 -0
  960. data/spec/models/get_transac_email_content_spec.rb +77 -0
  961. data/spec/models/get_transac_emails_list_spec.rb +47 -0
  962. data/spec/models/get_transac_emails_list_transactional_emails_spec.rb +83 -0
  963. data/spec/models/get_transac_sms_report_reports_spec.rb +95 -0
  964. data/spec/models/get_transac_sms_report_spec.rb +41 -0
  965. data/spec/models/get_user_permission_privileges_spec.rb +47 -0
  966. data/spec/models/get_user_permission_spec.rb +53 -0
  967. data/spec/models/get_wa_templates_spec.rb +47 -0
  968. data/spec/models/get_wa_templates_templates_spec.rb +83 -0
  969. data/spec/models/get_webhook_spec.rb +81 -0
  970. data/spec/models/get_webhooks_spec.rb +41 -0
  971. data/spec/models/get_whats_app_config_spec.rb +79 -0
  972. data/spec/models/get_whatsapp_campaign_overview_spec.rb +93 -0
  973. data/spec/models/get_whatsapp_campaigns_campaigns_spec.rb +105 -0
  974. data/spec/models/get_whatsapp_campaigns_spec.rb +47 -0
  975. data/spec/models/get_whatsapp_event_report_events_spec.rb +87 -0
  976. data/spec/models/get_whatsapp_event_report_spec.rb +41 -0
  977. data/spec/models/inline_response_200_1_spec.rb +53 -0
  978. data/spec/models/inline_response_200_spec.rb +41 -0
  979. data/spec/models/inline_response_201_1_spec.rb +41 -0
  980. data/spec/models/inline_response_201_2_spec.rb +41 -0
  981. data/spec/models/inline_response_201_3_spec.rb +41 -0
  982. data/spec/models/inline_response_201_4_spec.rb +41 -0
  983. data/spec/models/inline_response_201_spec.rb +41 -0
  984. data/spec/models/manage_ip_spec.rb +41 -0
  985. data/spec/models/master_details_response_billing_info_address_spec.rb +65 -0
  986. data/spec/models/master_details_response_billing_info_name_spec.rb +47 -0
  987. data/spec/models/master_details_response_billing_info_spec.rb +59 -0
  988. data/spec/models/master_details_response_plan_info_features_spec.rb +65 -0
  989. data/spec/models/master_details_response_plan_info_spec.rb +75 -0
  990. data/spec/models/master_details_response_spec.rb +77 -0
  991. data/spec/models/note_data_spec.rb +59 -0
  992. data/spec/models/note_id_spec.rb +41 -0
  993. data/spec/models/note_list_spec.rb +35 -0
  994. data/spec/models/note_spec.rb +77 -0
  995. data/spec/models/order_batch_spec.rb +47 -0
  996. data/spec/models/order_billing_spec.rb +77 -0
  997. data/spec/models/order_products_spec.rb +59 -0
  998. data/spec/models/order_spec.rb +89 -0
  999. data/spec/models/otp_spec.rb +41 -0
  1000. data/spec/models/pipeline_spec.rb +53 -0
  1001. data/spec/models/pipeline_stage_spec.rb +47 -0
  1002. data/spec/models/pipelines_spec.rb +35 -0
  1003. data/spec/models/post_contact_info_contacts_spec.rb +59 -0
  1004. data/spec/models/post_contact_info_spec.rb +41 -0
  1005. data/spec/models/post_send_failed_spec.rb +65 -0
  1006. data/spec/models/post_send_sms_test_failed_spec.rb +59 -0
  1007. data/spec/models/remaining_credit_model_child_spec.rb +47 -0
  1008. data/spec/models/remaining_credit_model_reseller_spec.rb +47 -0
  1009. data/spec/models/remaining_credit_model_spec.rb +47 -0
  1010. data/spec/models/remove_contact_from_list_spec.rb +53 -0
  1011. data/spec/models/remove_credits_spec.rb +47 -0
  1012. data/spec/models/request_contact_export_custom_contact_filter_spec.rb +83 -0
  1013. data/spec/models/request_contact_export_spec.rb +53 -0
  1014. data/spec/models/request_contact_import_json_body_spec.rb +47 -0
  1015. data/spec/models/request_contact_import_new_list_spec.rb +47 -0
  1016. data/spec/models/request_contact_import_spec.rb +95 -0
  1017. data/spec/models/request_sms_recipient_export_spec.rb +51 -0
  1018. data/spec/models/schedule_smtp_email_spec.rb +53 -0
  1019. data/spec/models/send_report_email_spec.rb +47 -0
  1020. data/spec/models/send_report_spec.rb +51 -0
  1021. data/spec/models/send_sms_spec.rb +65 -0
  1022. data/spec/models/send_smtp_email_attachment_spec.rb +53 -0
  1023. data/spec/models/send_smtp_email_bcc_spec.rb +47 -0
  1024. data/spec/models/send_smtp_email_cc_spec.rb +47 -0
  1025. data/spec/models/send_smtp_email_message_versions_spec.rb +71 -0
  1026. data/spec/models/send_smtp_email_reply_to_1_spec.rb +47 -0
  1027. data/spec/models/send_smtp_email_reply_to_spec.rb +47 -0
  1028. data/spec/models/send_smtp_email_sender_spec.rb +53 -0
  1029. data/spec/models/send_smtp_email_spec.rb +131 -0
  1030. data/spec/models/send_smtp_email_to_1_spec.rb +47 -0
  1031. data/spec/models/send_smtp_email_to_spec.rb +47 -0
  1032. data/spec/models/send_test_email_spec.rb +41 -0
  1033. data/spec/models/send_test_sms_spec.rb +41 -0
  1034. data/spec/models/send_transac_sms_spec.rb +87 -0
  1035. data/spec/models/send_whatsapp_message_spec.rb +59 -0
  1036. data/spec/models/sso_token_request_spec.rb +63 -0
  1037. data/spec/models/sub_account_apps_toggle_request_spec.rb +113 -0
  1038. data/spec/models/sub_account_details_response_plan_info_credits_emails_spec.rb +47 -0
  1039. data/spec/models/sub_account_details_response_plan_info_credits_spec.rb +47 -0
  1040. data/spec/models/sub_account_details_response_plan_info_features_inbox_spec.rb +47 -0
  1041. data/spec/models/sub_account_details_response_plan_info_features_landing_page_spec.rb +47 -0
  1042. data/spec/models/sub_account_details_response_plan_info_features_spec.rb +53 -0
  1043. data/spec/models/sub_account_details_response_plan_info_features_users_spec.rb +47 -0
  1044. data/spec/models/sub_account_details_response_plan_info_spec.rb +53 -0
  1045. data/spec/models/sub_account_details_response_spec.rb +59 -0
  1046. data/spec/models/sub_account_update_plan_request_credits_spec.rb +41 -0
  1047. data/spec/models/sub_account_update_plan_request_features_spec.rb +53 -0
  1048. data/spec/models/sub_account_update_plan_request_spec.rb +47 -0
  1049. data/spec/models/sub_accounts_response_spec.rb +47 -0
  1050. data/spec/models/sub_accounts_response_sub_accounts_spec.rb +59 -0
  1051. data/spec/models/task_list_spec.rb +41 -0
  1052. data/spec/models/task_reminder_spec.rb +57 -0
  1053. data/spec/models/task_spec.rb +71 -0
  1054. data/spec/models/task_types_spec.rb +47 -0
  1055. data/spec/models/update_attribute_enumeration_spec.rb +47 -0
  1056. data/spec/models/update_attribute_spec.rb +47 -0
  1057. data/spec/models/update_batch_contacts_contacts_spec.rb +95 -0
  1058. data/spec/models/update_batch_contacts_model_spec.rb +47 -0
  1059. data/spec/models/update_batch_contacts_spec.rb +41 -0
  1060. data/spec/models/update_campaign_status_spec.rb +45 -0
  1061. data/spec/models/update_child_account_status_spec.rb +59 -0
  1062. data/spec/models/update_child_domain_spec.rb +41 -0
  1063. data/spec/models/update_child_spec.rb +65 -0
  1064. data/spec/models/update_contact_spec.rb +77 -0
  1065. data/spec/models/update_coupon_collection_spec.rb +41 -0
  1066. data/spec/models/update_email_campaign_recipients_spec.rb +53 -0
  1067. data/spec/models/update_email_campaign_sender_spec.rb +53 -0
  1068. data/spec/models/update_email_campaign_spec.rb +225 -0
  1069. data/spec/models/update_external_feed_spec.rb +93 -0
  1070. data/spec/models/update_list_spec.rb +47 -0
  1071. data/spec/models/update_sender_spec.rb +53 -0
  1072. data/spec/models/update_sms_campaign_spec.rb +83 -0
  1073. data/spec/models/update_smtp_template_sender_spec.rb +53 -0
  1074. data/spec/models/update_smtp_template_spec.rb +95 -0
  1075. data/spec/models/update_webhook_spec.rb +63 -0
  1076. data/spec/models/update_whats_app_campaign_spec.rb +63 -0
  1077. data/spec/models/upload_image_model_spec.rb +41 -0
  1078. data/spec/models/upload_image_to_gallery_spec.rb +47 -0
  1079. data/spec/models/variables_items_spec.rb +53 -0
  1080. data/spec/models/whatsapp_camp_stats_spec.rb +65 -0
  1081. data/spec/models/whatsapp_camp_template_spec.rb +101 -0
  1082. data/spec/spec_helper.rb +111 -0
  1083. metadata +1683 -0
@@ -0,0 +1,607 @@
1
+ =begin
2
+ #Brevo API
3
+
4
+ #Brevo provide a RESTFul API that can be used with any languages. With this API, you will be able to : - Manage your campaigns and get the statistics - Manage your contacts - Send transactional Emails and SMS - and much more... You can download our wrappers at https://github.com/orgs/brevo **Possible responses** | Code | Message | | :-------------: | ------------- | | 200 | OK. Successful Request | | 201 | OK. Successful Creation | | 202 | OK. Request accepted | | 204 | OK. Successful Update/Deletion | | 400 | Error. Bad Request | | 401 | Error. Authentication Needed | | 402 | Error. Not enough credit, plan upgrade needed | | 403 | Error. Permission denied | | 404 | Error. Object does not exist | | 405 | Error. Method not allowed | | 406 | Error. Not Acceptable |
5
+
6
+ OpenAPI spec version: 3.0.0
7
+ Contact: contact@brevo.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.19
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module Brevo
16
+ class CreateEmailCampaign
17
+ # Tag of the campaign
18
+ attr_accessor :tag
19
+
20
+ attr_accessor :sender
21
+
22
+ # Name of the campaign
23
+ attr_accessor :name
24
+
25
+ # Mandatory if htmlUrl and templateId are empty. Body of the message (HTML)
26
+ attr_accessor :html_content
27
+
28
+ # Mandatory if htmlContent and templateId are empty. Url to the message (HTML)
29
+ attr_accessor :html_url
30
+
31
+ # Mandatory if htmlContent and htmlUrl are empty. Id of the transactional email template with status 'active'. Used to copy only its content fetched from htmlContent/htmlUrl to an email campaign for RSS feature.
32
+ attr_accessor :template_id
33
+
34
+ # Sending UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ). Prefer to pass your timezone in date-time format for accurate result. If sendAtBestTime is set to true, your campaign will be sent according to the date passed (ignoring the time part).
35
+ attr_accessor :scheduled_at
36
+
37
+ # Subject of the campaign. Mandatory if abTesting is false. Ignored if abTesting is true.
38
+ attr_accessor :subject
39
+
40
+ # Preview text or preheader of the email campaign
41
+ attr_accessor :preview_text
42
+
43
+ # Email on which the campaign recipients will be able to reply to
44
+ attr_accessor :reply_to
45
+
46
+ # To personalize the «To» Field. If you want to include the first name and last name of your recipient, add {FNAME} {LNAME}. These contact attributes must already exist in your Brevo account. If input parameter 'params' used please use {{contact.FNAME}} {{contact.LNAME}} for personalization
47
+ attr_accessor :to_field
48
+
49
+ attr_accessor :recipients
50
+
51
+ # Absolute url of the attachment (no local file). Extension allowed: xlsx, xls, ods, docx, docm, doc, csv, pdf, txt, gif, jpg, jpeg, png, tif, tiff, rtf, bmp, cgm, css, shtml, html, htm, zip, xml, ppt, pptx, tar, ez, ics, mobi, msg, pub and eps
52
+ attr_accessor :attachment_url
53
+
54
+ # Use true to embedded the images in your email. Final size of the email should be less than 4MB. Campaigns with embedded images can not be sent to more than 5000 contacts
55
+ attr_accessor :inline_image_activation
56
+
57
+ # Use true to enable the mirror link
58
+ attr_accessor :mirror_active
59
+
60
+ # Footer of the email campaign
61
+ attr_accessor :footer
62
+
63
+ # Header of the email campaign
64
+ attr_accessor :header
65
+
66
+ # Customize the utm_campaign value. If this field is empty, the campaign name will be used. Only alphanumeric characters and spaces are allowed
67
+ attr_accessor :utm_campaign
68
+
69
+ # Pass the set of attributes to customize the type classic campaign. For example, {\"FNAME\":\"Joe\", \"LNAME\":\"Doe\"}. Only available if 'type' is 'classic'. It's considered only if campaign is in New Template Language format. The New Template Language is dependent on the values of 'subject', 'htmlContent/htmlUrl', 'sender.name' & 'toField'
70
+ attr_accessor :params
71
+
72
+ # Set this to true if you want to send your campaign at best time.
73
+ attr_accessor :send_at_best_time
74
+
75
+ # Status of A/B Test. abTesting = false means it is disabled, & abTesting = true means it is enabled. 'subjectA', 'subjectB', 'splitRule', 'winnerCriteria' & 'winnerDelay' will be considered when abTesting is set to true. 'subjectA' & 'subjectB' are mandatory together & 'subject' if passed is ignored. Can be set to true only if 'sendAtBestTime' is 'false'. You will be able to set up two subject lines for your campaign and send them to a random sample of your total recipients. Half of the test group will receive version A, and the other half will receive version B
76
+ attr_accessor :ab_testing
77
+
78
+ # Subject A of the campaign. Mandatory if abTesting = true. subjectA & subjectB should have unique value
79
+ attr_accessor :subject_a
80
+
81
+ # Subject B of the campaign. Mandatory if abTesting = true. subjectA & subjectB should have unique value
82
+ attr_accessor :subject_b
83
+
84
+ # Add the size of your test groups. Mandatory if abTesting = true & 'recipients' is passed. We'll send version A and B to a random sample of recipients, and then the winning version to everyone else
85
+ attr_accessor :split_rule
86
+
87
+ # Choose the metrics that will determinate the winning version. Mandatory if 'splitRule' >= 1 and < 50. If splitRule = 50, 'winnerCriteria' is ignored if passed
88
+ attr_accessor :winner_criteria
89
+
90
+ # Choose the duration of the test in hours. Maximum is 7 days, pass 24*7 = 168 hours. The winning version will be sent at the end of the test. Mandatory if 'splitRule' >= 1 and < 50. If splitRule = 50, 'winnerDelay' is ignored if passed
91
+ attr_accessor :winner_delay
92
+
93
+ # Available for dedicated ip clients. Set this to true if you wish to warm up your ip.
94
+ attr_accessor :ip_warmup_enable
95
+
96
+ # Mandatory if ipWarmupEnable is set to true. Set an initial quota greater than 1 for warming up your ip. We recommend you set a value of 3000.
97
+ attr_accessor :initial_quota
98
+
99
+ # Mandatory if ipWarmupEnable is set to true. Set a percentage increase rate for warming up your ip. We recommend you set the increase rate to 30% per day. If you want to send the same number of emails every day, set the daily increase value to 0%.
100
+ attr_accessor :increase_rate
101
+
102
+ # Enter an unsubscription page id. The page id is a 24 digit alphanumeric id that can be found in the URL when editing the page. If not entered, then the default unsubscription page will be used.
103
+ attr_accessor :unsubscription_page_id
104
+
105
+ # Mandatory if templateId is used containing the {{ update_profile }} tag. Enter an update profile form id. The form id is a 24 digit alphanumeric id that can be found in the URL when editing the form. If not entered, then the default update profile form will be used.
106
+ attr_accessor :update_form_id
107
+
108
+ class EnumAttributeValidator
109
+ attr_reader :datatype
110
+ attr_reader :allowable_values
111
+
112
+ def initialize(datatype, allowable_values)
113
+ @allowable_values = allowable_values.map do |value|
114
+ case datatype.to_s
115
+ when /Integer/i
116
+ value.to_i
117
+ when /Float/i
118
+ value.to_f
119
+ else
120
+ value
121
+ end
122
+ end
123
+ end
124
+
125
+ def valid?(value)
126
+ !value || allowable_values.include?(value)
127
+ end
128
+ end
129
+
130
+ # Attribute mapping from ruby-style variable name to JSON key.
131
+ def self.attribute_map
132
+ {
133
+ :'tag' => :'tag',
134
+ :'sender' => :'sender',
135
+ :'name' => :'name',
136
+ :'html_content' => :'htmlContent',
137
+ :'html_url' => :'htmlUrl',
138
+ :'template_id' => :'templateId',
139
+ :'scheduled_at' => :'scheduledAt',
140
+ :'subject' => :'subject',
141
+ :'preview_text' => :'previewText',
142
+ :'reply_to' => :'replyTo',
143
+ :'to_field' => :'toField',
144
+ :'recipients' => :'recipients',
145
+ :'attachment_url' => :'attachmentUrl',
146
+ :'inline_image_activation' => :'inlineImageActivation',
147
+ :'mirror_active' => :'mirrorActive',
148
+ :'footer' => :'footer',
149
+ :'header' => :'header',
150
+ :'utm_campaign' => :'utmCampaign',
151
+ :'params' => :'params',
152
+ :'send_at_best_time' => :'sendAtBestTime',
153
+ :'ab_testing' => :'abTesting',
154
+ :'subject_a' => :'subjectA',
155
+ :'subject_b' => :'subjectB',
156
+ :'split_rule' => :'splitRule',
157
+ :'winner_criteria' => :'winnerCriteria',
158
+ :'winner_delay' => :'winnerDelay',
159
+ :'ip_warmup_enable' => :'ipWarmupEnable',
160
+ :'initial_quota' => :'initialQuota',
161
+ :'increase_rate' => :'increaseRate',
162
+ :'unsubscription_page_id' => :'unsubscriptionPageId',
163
+ :'update_form_id' => :'updateFormId'
164
+ }
165
+ end
166
+
167
+ # Attribute type mapping.
168
+ def self.swagger_types
169
+ {
170
+ :'tag' => :'String',
171
+ :'sender' => :'CreateEmailCampaignSender',
172
+ :'name' => :'String',
173
+ :'html_content' => :'String',
174
+ :'html_url' => :'String',
175
+ :'template_id' => :'Integer',
176
+ :'scheduled_at' => :'String',
177
+ :'subject' => :'String',
178
+ :'preview_text' => :'String',
179
+ :'reply_to' => :'String',
180
+ :'to_field' => :'String',
181
+ :'recipients' => :'CreateEmailCampaignRecipients',
182
+ :'attachment_url' => :'String',
183
+ :'inline_image_activation' => :'BOOLEAN',
184
+ :'mirror_active' => :'BOOLEAN',
185
+ :'footer' => :'String',
186
+ :'header' => :'String',
187
+ :'utm_campaign' => :'String',
188
+ :'params' => :'Object',
189
+ :'send_at_best_time' => :'BOOLEAN',
190
+ :'ab_testing' => :'BOOLEAN',
191
+ :'subject_a' => :'String',
192
+ :'subject_b' => :'String',
193
+ :'split_rule' => :'Integer',
194
+ :'winner_criteria' => :'String',
195
+ :'winner_delay' => :'Integer',
196
+ :'ip_warmup_enable' => :'BOOLEAN',
197
+ :'initial_quota' => :'Integer',
198
+ :'increase_rate' => :'Integer',
199
+ :'unsubscription_page_id' => :'String',
200
+ :'update_form_id' => :'String'
201
+ }
202
+ end
203
+
204
+ # Initializes the object
205
+ # @param [Hash] attributes Model attributes in the form of hash
206
+ def initialize(attributes = {})
207
+ return unless attributes.is_a?(Hash)
208
+
209
+ # convert string to symbol for hash key
210
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
211
+
212
+ if attributes.has_key?(:'tag')
213
+ self.tag = attributes[:'tag']
214
+ end
215
+
216
+ if attributes.has_key?(:'sender')
217
+ self.sender = attributes[:'sender']
218
+ end
219
+
220
+ if attributes.has_key?(:'name')
221
+ self.name = attributes[:'name']
222
+ end
223
+
224
+ if attributes.has_key?(:'htmlContent')
225
+ self.html_content = attributes[:'htmlContent']
226
+ end
227
+
228
+ if attributes.has_key?(:'htmlUrl')
229
+ self.html_url = attributes[:'htmlUrl']
230
+ end
231
+
232
+ if attributes.has_key?(:'templateId')
233
+ self.template_id = attributes[:'templateId']
234
+ end
235
+
236
+ if attributes.has_key?(:'scheduledAt')
237
+ self.scheduled_at = attributes[:'scheduledAt']
238
+ end
239
+
240
+ if attributes.has_key?(:'subject')
241
+ self.subject = attributes[:'subject']
242
+ end
243
+
244
+ if attributes.has_key?(:'previewText')
245
+ self.preview_text = attributes[:'previewText']
246
+ end
247
+
248
+ if attributes.has_key?(:'replyTo')
249
+ self.reply_to = attributes[:'replyTo']
250
+ end
251
+
252
+ if attributes.has_key?(:'toField')
253
+ self.to_field = attributes[:'toField']
254
+ end
255
+
256
+ if attributes.has_key?(:'recipients')
257
+ self.recipients = attributes[:'recipients']
258
+ end
259
+
260
+ if attributes.has_key?(:'attachmentUrl')
261
+ self.attachment_url = attributes[:'attachmentUrl']
262
+ end
263
+
264
+ if attributes.has_key?(:'inlineImageActivation')
265
+ self.inline_image_activation = attributes[:'inlineImageActivation']
266
+ else
267
+ self.inline_image_activation = false
268
+ end
269
+
270
+ if attributes.has_key?(:'mirrorActive')
271
+ self.mirror_active = attributes[:'mirrorActive']
272
+ end
273
+
274
+ if attributes.has_key?(:'footer')
275
+ self.footer = attributes[:'footer']
276
+ end
277
+
278
+ if attributes.has_key?(:'header')
279
+ self.header = attributes[:'header']
280
+ end
281
+
282
+ if attributes.has_key?(:'utmCampaign')
283
+ self.utm_campaign = attributes[:'utmCampaign']
284
+ end
285
+
286
+ if attributes.has_key?(:'params')
287
+ self.params = attributes[:'params']
288
+ end
289
+
290
+ if attributes.has_key?(:'sendAtBestTime')
291
+ self.send_at_best_time = attributes[:'sendAtBestTime']
292
+ else
293
+ self.send_at_best_time = false
294
+ end
295
+
296
+ if attributes.has_key?(:'abTesting')
297
+ self.ab_testing = attributes[:'abTesting']
298
+ else
299
+ self.ab_testing = false
300
+ end
301
+
302
+ if attributes.has_key?(:'subjectA')
303
+ self.subject_a = attributes[:'subjectA']
304
+ end
305
+
306
+ if attributes.has_key?(:'subjectB')
307
+ self.subject_b = attributes[:'subjectB']
308
+ end
309
+
310
+ if attributes.has_key?(:'splitRule')
311
+ self.split_rule = attributes[:'splitRule']
312
+ end
313
+
314
+ if attributes.has_key?(:'winnerCriteria')
315
+ self.winner_criteria = attributes[:'winnerCriteria']
316
+ end
317
+
318
+ if attributes.has_key?(:'winnerDelay')
319
+ self.winner_delay = attributes[:'winnerDelay']
320
+ end
321
+
322
+ if attributes.has_key?(:'ipWarmupEnable')
323
+ self.ip_warmup_enable = attributes[:'ipWarmupEnable']
324
+ else
325
+ self.ip_warmup_enable = false
326
+ end
327
+
328
+ if attributes.has_key?(:'initialQuota')
329
+ self.initial_quota = attributes[:'initialQuota']
330
+ end
331
+
332
+ if attributes.has_key?(:'increaseRate')
333
+ self.increase_rate = attributes[:'increaseRate']
334
+ end
335
+
336
+ if attributes.has_key?(:'unsubscriptionPageId')
337
+ self.unsubscription_page_id = attributes[:'unsubscriptionPageId']
338
+ end
339
+
340
+ if attributes.has_key?(:'updateFormId')
341
+ self.update_form_id = attributes[:'updateFormId']
342
+ end
343
+ end
344
+
345
+ # Show invalid properties with the reasons. Usually used together with valid?
346
+ # @return Array for valid properties with the reasons
347
+ def list_invalid_properties
348
+ invalid_properties = Array.new
349
+ if @sender.nil?
350
+ invalid_properties.push('invalid value for "sender", sender cannot be nil.')
351
+ end
352
+
353
+ if @name.nil?
354
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
355
+ end
356
+
357
+ if !@split_rule.nil? && @split_rule > 50
358
+ invalid_properties.push('invalid value for "split_rule", must be smaller than or equal to 50.')
359
+ end
360
+
361
+ if !@split_rule.nil? && @split_rule < 1
362
+ invalid_properties.push('invalid value for "split_rule", must be greater than or equal to 1.')
363
+ end
364
+
365
+ if !@winner_delay.nil? && @winner_delay > 168
366
+ invalid_properties.push('invalid value for "winner_delay", must be smaller than or equal to 168.')
367
+ end
368
+
369
+ if !@winner_delay.nil? && @winner_delay < 1
370
+ invalid_properties.push('invalid value for "winner_delay", must be greater than or equal to 1.')
371
+ end
372
+
373
+ if !@increase_rate.nil? && @increase_rate > 100
374
+ invalid_properties.push('invalid value for "increase_rate", must be smaller than or equal to 100.')
375
+ end
376
+
377
+ if !@increase_rate.nil? && @increase_rate < 0
378
+ invalid_properties.push('invalid value for "increase_rate", must be greater than or equal to 0.')
379
+ end
380
+
381
+ invalid_properties
382
+ end
383
+
384
+ # Check to see if the all the properties in the model are valid
385
+ # @return true if the model is valid
386
+ def valid?
387
+ return false if @sender.nil?
388
+ return false if @name.nil?
389
+ return false if !@split_rule.nil? && @split_rule > 50
390
+ return false if !@split_rule.nil? && @split_rule < 1
391
+ winner_criteria_validator = EnumAttributeValidator.new('String', ['open', 'click'])
392
+ return false unless winner_criteria_validator.valid?(@winner_criteria)
393
+ return false if !@winner_delay.nil? && @winner_delay > 168
394
+ return false if !@winner_delay.nil? && @winner_delay < 1
395
+ return false if !@increase_rate.nil? && @increase_rate > 100
396
+ return false if !@increase_rate.nil? && @increase_rate < 0
397
+ true
398
+ end
399
+
400
+ # Custom attribute writer method with validation
401
+ # @param [Object] split_rule Value to be assigned
402
+ def split_rule=(split_rule)
403
+ if !split_rule.nil? && split_rule > 50
404
+ fail ArgumentError, 'invalid value for "split_rule", must be smaller than or equal to 50.'
405
+ end
406
+
407
+ if !split_rule.nil? && split_rule < 1
408
+ fail ArgumentError, 'invalid value for "split_rule", must be greater than or equal to 1.'
409
+ end
410
+
411
+ @split_rule = split_rule
412
+ end
413
+
414
+ # Custom attribute writer method checking allowed values (enum).
415
+ # @param [Object] winner_criteria Object to be assigned
416
+ def winner_criteria=(winner_criteria)
417
+ validator = EnumAttributeValidator.new('String', ['open', 'click'])
418
+ unless validator.valid?(winner_criteria)
419
+ fail ArgumentError, 'invalid value for "winner_criteria", must be one of #{validator.allowable_values}.'
420
+ end
421
+ @winner_criteria = winner_criteria
422
+ end
423
+
424
+ # Custom attribute writer method with validation
425
+ # @param [Object] winner_delay Value to be assigned
426
+ def winner_delay=(winner_delay)
427
+ if !winner_delay.nil? && winner_delay > 168
428
+ fail ArgumentError, 'invalid value for "winner_delay", must be smaller than or equal to 168.'
429
+ end
430
+
431
+ if !winner_delay.nil? && winner_delay < 1
432
+ fail ArgumentError, 'invalid value for "winner_delay", must be greater than or equal to 1.'
433
+ end
434
+
435
+ @winner_delay = winner_delay
436
+ end
437
+
438
+ # Custom attribute writer method with validation
439
+ # @param [Object] increase_rate Value to be assigned
440
+ def increase_rate=(increase_rate)
441
+ if !increase_rate.nil? && increase_rate > 100
442
+ fail ArgumentError, 'invalid value for "increase_rate", must be smaller than or equal to 100.'
443
+ end
444
+
445
+ if !increase_rate.nil? && increase_rate < 0
446
+ fail ArgumentError, 'invalid value for "increase_rate", must be greater than or equal to 0.'
447
+ end
448
+
449
+ @increase_rate = increase_rate
450
+ end
451
+
452
+ # Checks equality by comparing each attribute.
453
+ # @param [Object] Object to be compared
454
+ def ==(o)
455
+ return true if self.equal?(o)
456
+ self.class == o.class &&
457
+ tag == o.tag &&
458
+ sender == o.sender &&
459
+ name == o.name &&
460
+ html_content == o.html_content &&
461
+ html_url == o.html_url &&
462
+ template_id == o.template_id &&
463
+ scheduled_at == o.scheduled_at &&
464
+ subject == o.subject &&
465
+ preview_text == o.preview_text &&
466
+ reply_to == o.reply_to &&
467
+ to_field == o.to_field &&
468
+ recipients == o.recipients &&
469
+ attachment_url == o.attachment_url &&
470
+ inline_image_activation == o.inline_image_activation &&
471
+ mirror_active == o.mirror_active &&
472
+ footer == o.footer &&
473
+ header == o.header &&
474
+ utm_campaign == o.utm_campaign &&
475
+ params == o.params &&
476
+ send_at_best_time == o.send_at_best_time &&
477
+ ab_testing == o.ab_testing &&
478
+ subject_a == o.subject_a &&
479
+ subject_b == o.subject_b &&
480
+ split_rule == o.split_rule &&
481
+ winner_criteria == o.winner_criteria &&
482
+ winner_delay == o.winner_delay &&
483
+ ip_warmup_enable == o.ip_warmup_enable &&
484
+ initial_quota == o.initial_quota &&
485
+ increase_rate == o.increase_rate &&
486
+ unsubscription_page_id == o.unsubscription_page_id &&
487
+ update_form_id == o.update_form_id
488
+ end
489
+
490
+ # @see the `==` method
491
+ # @param [Object] Object to be compared
492
+ def eql?(o)
493
+ self == o
494
+ end
495
+
496
+ # Calculates hash code according to all attributes.
497
+ # @return [Fixnum] Hash code
498
+ def hash
499
+ [tag, sender, name, html_content, html_url, template_id, scheduled_at, subject, preview_text, reply_to, to_field, recipients, attachment_url, inline_image_activation, mirror_active, footer, header, utm_campaign, params, send_at_best_time, ab_testing, subject_a, subject_b, split_rule, winner_criteria, winner_delay, ip_warmup_enable, initial_quota, increase_rate, unsubscription_page_id, update_form_id].hash
500
+ end
501
+
502
+ # Builds the object from hash
503
+ # @param [Hash] attributes Model attributes in the form of hash
504
+ # @return [Object] Returns the model itself
505
+ def build_from_hash(attributes)
506
+ return nil unless attributes.is_a?(Hash)
507
+ self.class.swagger_types.each_pair do |key, type|
508
+ if type =~ /\AArray<(.*)>/i
509
+ # check to ensure the input is an array given that the attribute
510
+ # is documented as an array but the input is not
511
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
512
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
513
+ end
514
+ elsif !attributes[self.class.attribute_map[key]].nil?
515
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
516
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
517
+ end
518
+
519
+ self
520
+ end
521
+
522
+ # Deserializes the data based on type
523
+ # @param string type Data type
524
+ # @param string value Value to be deserialized
525
+ # @return [Object] Deserialized data
526
+ def _deserialize(type, value)
527
+ case type.to_sym
528
+ when :DateTime
529
+ DateTime.parse(value)
530
+ when :Date
531
+ Date.parse(value)
532
+ when :String
533
+ value.to_s
534
+ when :Integer
535
+ value.to_i
536
+ when :Float
537
+ value.to_f
538
+ when :BOOLEAN
539
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
540
+ true
541
+ else
542
+ false
543
+ end
544
+ when :Object
545
+ # generic object (usually a Hash), return directly
546
+ value
547
+ when /\AArray<(?<inner_type>.+)>\z/
548
+ inner_type = Regexp.last_match[:inner_type]
549
+ value.map { |v| _deserialize(inner_type, v) }
550
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
551
+ k_type = Regexp.last_match[:k_type]
552
+ v_type = Regexp.last_match[:v_type]
553
+ {}.tap do |hash|
554
+ value.each do |k, v|
555
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
556
+ end
557
+ end
558
+ else # model
559
+ temp_model = Brevo.const_get(type).new
560
+ temp_model.build_from_hash(value)
561
+ end
562
+ end
563
+
564
+ # Returns the string representation of the object
565
+ # @return [String] String presentation of the object
566
+ def to_s
567
+ to_hash.to_s
568
+ end
569
+
570
+ # to_body is an alias to to_hash (backward compatibility)
571
+ # @return [Hash] Returns the object in the form of hash
572
+ def to_body
573
+ to_hash
574
+ end
575
+
576
+ # Returns the object in the form of hash
577
+ # @return [Hash] Returns the object in the form of hash
578
+ def to_hash
579
+ hash = {}
580
+ self.class.attribute_map.each_pair do |attr, param|
581
+ value = self.send(attr)
582
+ next if value.nil?
583
+ hash[param] = _to_hash(value)
584
+ end
585
+ hash
586
+ end
587
+
588
+ # Outputs non-array value in the form of hash
589
+ # For object, use to_hash. Otherwise, just return the value
590
+ # @param [Object] value Any valid value
591
+ # @return [Hash] Returns the value in the form of hash
592
+ def _to_hash(value)
593
+ if value.is_a?(Array)
594
+ value.compact.map { |v| _to_hash(v) }
595
+ elsif value.is_a?(Hash)
596
+ {}.tap do |hash|
597
+ value.each { |k, v| hash[k] = _to_hash(v) }
598
+ end
599
+ elsif value.respond_to? :to_hash
600
+ value.to_hash
601
+ else
602
+ value
603
+ end
604
+ end
605
+
606
+ end
607
+ end