klaviyo-api-sdk 3.0.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (286) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +33 -7
  3. data/README.md +243 -173
  4. data/klaviyo-api-sdk.gemspec +2 -2
  5. data/lib/klaviyo-api-sdk/api/accounts_api.rb +7 -7
  6. data/lib/klaviyo-api-sdk/api/campaigns_api.rb +528 -57
  7. data/lib/klaviyo-api-sdk/api/catalogs_api.rb +290 -220
  8. data/lib/klaviyo-api-sdk/api/data_privacy_api.rb +4 -4
  9. data/lib/klaviyo-api-sdk/api/events_api.rb +92 -92
  10. data/lib/klaviyo-api-sdk/api/flows_api.rb +105 -94
  11. data/lib/klaviyo-api-sdk/api/lists_api.rb +75 -40
  12. data/lib/klaviyo-api-sdk/api/metrics_api.rb +12 -12
  13. data/lib/klaviyo-api-sdk/api/profiles_api.rb +57 -57
  14. data/lib/klaviyo-api-sdk/api/segments_api.rb +71 -36
  15. data/lib/klaviyo-api-sdk/api/tags_api.rb +91 -63
  16. data/lib/klaviyo-api-sdk/api/templates_api.rb +25 -25
  17. data/lib/klaviyo-api-sdk/api_client.rb +2 -2
  18. data/lib/klaviyo-api-sdk/api_error.rb +1 -1
  19. data/lib/klaviyo-api-sdk/configuration.rb +1 -1
  20. data/lib/klaviyo-api-sdk/models/audiences_sub_object.rb +1 -1
  21. data/lib/klaviyo-api-sdk/models/{profile_unsuppression_bulk_create_job_enum.rb → back_in_stock_subscription_enum.rb} +5 -5
  22. data/lib/klaviyo-api-sdk/models/campaign_clone_query.rb +1 -1
  23. data/lib/klaviyo-api-sdk/models/campaign_clone_query_resource_object.rb +1 -1
  24. data/lib/klaviyo-api-sdk/models/campaign_clone_query_resource_object_attributes.rb +1 -1
  25. data/lib/klaviyo-api-sdk/models/campaign_create_query.rb +1 -1
  26. data/lib/klaviyo-api-sdk/models/campaign_create_query_resource_object.rb +1 -1
  27. data/lib/klaviyo-api-sdk/models/campaign_create_query_resource_object_attributes.rb +16 -22
  28. data/lib/klaviyo-api-sdk/models/campaign_create_query_resource_object_attributes_campaign_messages.rb +227 -0
  29. data/lib/klaviyo-api-sdk/models/campaign_create_query_resource_object_attributes_send_options.rb +106 -0
  30. data/lib/klaviyo-api-sdk/models/campaign_create_query_resource_object_attributes_tracking_options.rb +106 -0
  31. data/lib/klaviyo-api-sdk/models/campaign_enum.rb +1 -1
  32. data/lib/klaviyo-api-sdk/models/campaign_message_assign_template_query.rb +1 -1
  33. data/lib/klaviyo-api-sdk/models/campaign_message_assign_template_query_resource_object.rb +11 -2
  34. data/lib/klaviyo-api-sdk/models/campaign_message_assign_template_query_resource_object_attributes.rb +5 -20
  35. data/lib/klaviyo-api-sdk/models/campaign_message_assign_template_query_resource_object_relationships.rb +219 -0
  36. data/lib/klaviyo-api-sdk/models/campaign_message_assign_template_query_resource_object_relationships_template.rb +224 -0
  37. data/lib/klaviyo-api-sdk/models/campaign_message_assign_template_query_resource_object_relationships_template_data.rb +272 -0
  38. data/lib/klaviyo-api-sdk/models/{unsuppression_create_job_create_query_resource_object.rb → campaign_message_create_query_resource_object.rb} +6 -6
  39. data/lib/klaviyo-api-sdk/models/campaign_message_create_query_resource_object_attributes.rb +253 -0
  40. data/lib/klaviyo-api-sdk/models/campaign_message_create_query_resource_object_attributes_content.rb +106 -0
  41. data/lib/klaviyo-api-sdk/models/campaign_message_enum.rb +1 -1
  42. data/lib/klaviyo-api-sdk/models/campaign_message_partial_update_query.rb +1 -1
  43. data/lib/klaviyo-api-sdk/models/campaign_message_partial_update_query_resource_object.rb +1 -1
  44. data/lib/klaviyo-api-sdk/models/campaign_message_partial_update_query_resource_object_attributes.rb +12 -3
  45. data/lib/klaviyo-api-sdk/models/campaign_partial_update_query.rb +1 -1
  46. data/lib/klaviyo-api-sdk/models/campaign_partial_update_query_resource_object.rb +1 -1
  47. data/lib/klaviyo-api-sdk/models/campaign_partial_update_query_resource_object_attributes.rb +3 -3
  48. data/lib/klaviyo-api-sdk/models/campaign_recipient_estimation_job_create_query.rb +1 -1
  49. data/lib/klaviyo-api-sdk/models/campaign_recipient_estimation_job_create_query_resource_object.rb +1 -1
  50. data/lib/klaviyo-api-sdk/models/campaign_recipient_estimation_job_create_query_resource_object_attributes.rb +1 -1
  51. data/lib/klaviyo-api-sdk/models/campaign_recipient_estimation_job_enum.rb +1 -1
  52. data/lib/klaviyo-api-sdk/models/campaign_send_job_create_query.rb +1 -1
  53. data/lib/klaviyo-api-sdk/models/campaign_send_job_create_query_resource_object.rb +1 -1
  54. data/lib/klaviyo-api-sdk/models/campaign_send_job_create_query_resource_object_attributes.rb +1 -1
  55. data/lib/klaviyo-api-sdk/models/campaign_send_job_enum.rb +1 -1
  56. data/lib/klaviyo-api-sdk/models/campaign_send_job_partial_update_query.rb +1 -1
  57. data/lib/klaviyo-api-sdk/models/campaign_send_job_partial_update_query_resource_object.rb +1 -1
  58. data/lib/klaviyo-api-sdk/models/campaign_send_job_partial_update_query_resource_object_attributes.rb +1 -1
  59. data/lib/klaviyo-api-sdk/models/catalog_category_bulk_create_job_enum.rb +1 -1
  60. data/lib/klaviyo-api-sdk/models/catalog_category_bulk_delete_job_enum.rb +1 -1
  61. data/lib/klaviyo-api-sdk/models/catalog_category_bulk_update_job_enum.rb +1 -1
  62. data/lib/klaviyo-api-sdk/models/catalog_category_create_job_create_query.rb +1 -1
  63. data/lib/klaviyo-api-sdk/models/catalog_category_create_job_create_query_resource_object.rb +1 -1
  64. data/lib/klaviyo-api-sdk/models/catalog_category_create_job_create_query_resource_object_attributes.rb +3 -6
  65. data/lib/klaviyo-api-sdk/models/catalog_category_create_job_create_query_resource_object_attributes_categories.rb +227 -0
  66. data/lib/klaviyo-api-sdk/models/catalog_category_create_query.rb +1 -1
  67. data/lib/klaviyo-api-sdk/models/catalog_category_create_query_resource_object.rb +1 -1
  68. data/lib/klaviyo-api-sdk/models/catalog_category_create_query_resource_object_attributes.rb +3 -1
  69. data/lib/klaviyo-api-sdk/models/catalog_category_delete_job_create_query.rb +1 -1
  70. data/lib/klaviyo-api-sdk/models/catalog_category_delete_job_create_query_resource_object.rb +1 -1
  71. data/lib/klaviyo-api-sdk/models/catalog_category_delete_job_create_query_resource_object_attributes.rb +3 -6
  72. data/lib/klaviyo-api-sdk/models/catalog_category_delete_job_create_query_resource_object_attributes_categories.rb +227 -0
  73. data/lib/klaviyo-api-sdk/models/catalog_category_delete_query_resource_object.rb +1 -1
  74. data/lib/klaviyo-api-sdk/models/catalog_category_enum.rb +1 -1
  75. data/lib/klaviyo-api-sdk/models/catalog_category_item_op.rb +1 -1
  76. data/lib/klaviyo-api-sdk/models/catalog_category_update_job_create_query.rb +1 -1
  77. data/lib/klaviyo-api-sdk/models/catalog_category_update_job_create_query_resource_object.rb +1 -1
  78. data/lib/klaviyo-api-sdk/models/catalog_category_update_job_create_query_resource_object_attributes.rb +3 -6
  79. data/lib/klaviyo-api-sdk/models/catalog_category_update_job_create_query_resource_object_attributes_categories.rb +227 -0
  80. data/lib/klaviyo-api-sdk/models/catalog_category_update_query.rb +1 -1
  81. data/lib/klaviyo-api-sdk/models/catalog_category_update_query_resource_object.rb +1 -1
  82. data/lib/klaviyo-api-sdk/models/catalog_category_update_query_resource_object_attributes.rb +1 -1
  83. data/lib/klaviyo-api-sdk/models/catalog_category_update_query_resource_object_relationships.rb +1 -1
  84. data/lib/klaviyo-api-sdk/models/catalog_category_update_query_resource_object_relationships_items.rb +1 -1
  85. data/lib/klaviyo-api-sdk/models/catalog_category_update_query_resource_object_relationships_items_data_inner.rb +1 -1
  86. data/lib/klaviyo-api-sdk/models/catalog_item_bulk_create_job_enum.rb +1 -1
  87. data/lib/klaviyo-api-sdk/models/catalog_item_bulk_delete_job_enum.rb +1 -1
  88. data/lib/klaviyo-api-sdk/models/catalog_item_bulk_update_job_enum.rb +1 -1
  89. data/lib/klaviyo-api-sdk/models/catalog_item_category_op.rb +1 -1
  90. data/lib/klaviyo-api-sdk/models/catalog_item_category_op_data_inner.rb +1 -1
  91. data/lib/klaviyo-api-sdk/models/catalog_item_create_job_create_query.rb +1 -1
  92. data/lib/klaviyo-api-sdk/models/catalog_item_create_job_create_query_resource_object.rb +1 -1
  93. data/lib/klaviyo-api-sdk/models/catalog_item_create_job_create_query_resource_object_attributes.rb +3 -6
  94. data/lib/klaviyo-api-sdk/models/catalog_item_create_job_create_query_resource_object_attributes_items.rb +227 -0
  95. data/lib/klaviyo-api-sdk/models/catalog_item_create_query.rb +1 -1
  96. data/lib/klaviyo-api-sdk/models/catalog_item_create_query_resource_object.rb +1 -1
  97. data/lib/klaviyo-api-sdk/models/catalog_item_create_query_resource_object_attributes.rb +3 -1
  98. data/lib/klaviyo-api-sdk/models/catalog_item_create_query_resource_object_relationships.rb +1 -1
  99. data/lib/klaviyo-api-sdk/models/catalog_item_create_query_resource_object_relationships_categories.rb +1 -1
  100. data/lib/klaviyo-api-sdk/models/catalog_item_delete_job_create_query.rb +1 -1
  101. data/lib/klaviyo-api-sdk/models/catalog_item_delete_job_create_query_resource_object.rb +1 -1
  102. data/lib/klaviyo-api-sdk/models/catalog_item_delete_job_create_query_resource_object_attributes.rb +3 -6
  103. data/lib/klaviyo-api-sdk/models/catalog_item_delete_job_create_query_resource_object_attributes_items.rb +227 -0
  104. data/lib/klaviyo-api-sdk/models/catalog_item_delete_query_resource_object.rb +1 -1
  105. data/lib/klaviyo-api-sdk/models/catalog_item_enum.rb +1 -1
  106. data/lib/klaviyo-api-sdk/models/catalog_item_update_job_create_query.rb +1 -1
  107. data/lib/klaviyo-api-sdk/models/catalog_item_update_job_create_query_resource_object.rb +1 -1
  108. data/lib/klaviyo-api-sdk/models/catalog_item_update_job_create_query_resource_object_attributes.rb +3 -6
  109. data/lib/klaviyo-api-sdk/models/catalog_item_update_job_create_query_resource_object_attributes_items.rb +227 -0
  110. data/lib/klaviyo-api-sdk/models/catalog_item_update_query.rb +1 -1
  111. data/lib/klaviyo-api-sdk/models/catalog_item_update_query_resource_object.rb +1 -1
  112. data/lib/klaviyo-api-sdk/models/catalog_item_update_query_resource_object_attributes.rb +1 -1
  113. data/lib/klaviyo-api-sdk/models/catalog_variant_bulk_create_job_enum.rb +1 -1
  114. data/lib/klaviyo-api-sdk/models/catalog_variant_bulk_delete_job_enum.rb +1 -1
  115. data/lib/klaviyo-api-sdk/models/catalog_variant_bulk_update_job_enum.rb +1 -1
  116. data/lib/klaviyo-api-sdk/models/catalog_variant_create_job_create_query.rb +1 -1
  117. data/lib/klaviyo-api-sdk/models/catalog_variant_create_job_create_query_resource_object.rb +1 -1
  118. data/lib/klaviyo-api-sdk/models/catalog_variant_create_job_create_query_resource_object_attributes.rb +3 -6
  119. data/lib/klaviyo-api-sdk/models/catalog_variant_create_job_create_query_resource_object_attributes_variants.rb +227 -0
  120. data/lib/klaviyo-api-sdk/models/catalog_variant_create_query.rb +1 -1
  121. data/lib/klaviyo-api-sdk/models/catalog_variant_create_query_resource_object.rb +2 -2
  122. data/lib/klaviyo-api-sdk/models/catalog_variant_create_query_resource_object_attributes.rb +3 -1
  123. data/lib/klaviyo-api-sdk/models/catalog_variant_create_query_resource_object_relationships.rb +219 -0
  124. data/lib/klaviyo-api-sdk/models/catalog_variant_create_query_resource_object_relationships_item.rb +224 -0
  125. data/lib/klaviyo-api-sdk/models/catalog_variant_delete_job_create_query.rb +1 -1
  126. data/lib/klaviyo-api-sdk/models/catalog_variant_delete_job_create_query_resource_object.rb +1 -1
  127. data/lib/klaviyo-api-sdk/models/catalog_variant_delete_job_create_query_resource_object_attributes.rb +3 -6
  128. data/lib/klaviyo-api-sdk/models/catalog_variant_delete_job_create_query_resource_object_attributes_variants.rb +227 -0
  129. data/lib/klaviyo-api-sdk/models/catalog_variant_delete_query_resource_object.rb +1 -1
  130. data/lib/klaviyo-api-sdk/models/catalog_variant_enum.rb +1 -1
  131. data/lib/klaviyo-api-sdk/models/catalog_variant_update_job_create_query.rb +1 -1
  132. data/lib/klaviyo-api-sdk/models/catalog_variant_update_job_create_query_resource_object.rb +1 -1
  133. data/lib/klaviyo-api-sdk/models/catalog_variant_update_job_create_query_resource_object_attributes.rb +3 -6
  134. data/lib/klaviyo-api-sdk/models/catalog_variant_update_job_create_query_resource_object_attributes_variants.rb +227 -0
  135. data/lib/klaviyo-api-sdk/models/catalog_variant_update_query.rb +1 -1
  136. data/lib/klaviyo-api-sdk/models/catalog_variant_update_query_resource_object.rb +1 -1
  137. data/lib/klaviyo-api-sdk/models/catalog_variant_update_query_resource_object_attributes.rb +1 -1
  138. data/lib/klaviyo-api-sdk/models/data_privacy_create_deletion_job_query.rb +1 -1
  139. data/lib/klaviyo-api-sdk/models/data_privacy_create_deletion_job_query_resource_object.rb +1 -1
  140. data/lib/klaviyo-api-sdk/models/data_privacy_create_deletion_job_query_resource_object_attributes.rb +13 -29
  141. data/lib/klaviyo-api-sdk/models/data_privacy_create_deletion_job_query_resource_object_attributes_profile.rb +224 -0
  142. data/lib/klaviyo-api-sdk/models/data_privacy_deletion_job_enum.rb +1 -1
  143. data/lib/klaviyo-api-sdk/models/data_privacy_profile_query_resource_object.rb +248 -0
  144. data/lib/klaviyo-api-sdk/models/data_privacy_profile_query_resource_object_attributes.rb +230 -0
  145. data/lib/klaviyo-api-sdk/models/{content_sub_object.rb → email_content_sub_object.rb} +19 -39
  146. data/lib/klaviyo-api-sdk/models/email_send_options_sub_object.rb +220 -0
  147. data/lib/klaviyo-api-sdk/models/{tracking_options_sub_object.rb → email_tracking_options_sub_object.rb} +18 -18
  148. data/lib/klaviyo-api-sdk/models/{event_create_query.rb → event_create_query_v2.rb} +5 -5
  149. data/lib/klaviyo-api-sdk/models/{event_create_query_resource_object.rb → event_create_query_v2_resource_object.rb} +5 -5
  150. data/lib/klaviyo-api-sdk/models/{event_create_query_resource_object_attributes.rb → event_create_query_v2_resource_object_attributes.rb} +6 -7
  151. data/lib/klaviyo-api-sdk/models/event_create_query_v2_resource_object_attributes_metric.rb +224 -0
  152. data/lib/klaviyo-api-sdk/models/event_create_query_v2_resource_object_attributes_profile.rb +224 -0
  153. data/lib/klaviyo-api-sdk/models/event_enum.rb +1 -1
  154. data/lib/klaviyo-api-sdk/models/flow_enum.rb +1 -1
  155. data/lib/klaviyo-api-sdk/models/flow_update_query.rb +1 -1
  156. data/lib/klaviyo-api-sdk/models/flow_update_query_resource_object.rb +1 -1
  157. data/lib/klaviyo-api-sdk/models/flow_update_query_resource_object_attributes.rb +1 -1
  158. data/lib/klaviyo-api-sdk/models/get_create_variants_jobs5_xx_response.rb +1 -1
  159. data/lib/klaviyo-api-sdk/models/get_create_variants_jobs5_xx_response_errors_inner.rb +1 -1
  160. data/lib/klaviyo-api-sdk/models/get_create_variants_jobs5_xx_response_errors_inner_source.rb +1 -1
  161. data/lib/klaviyo-api-sdk/models/list_create_query.rb +1 -1
  162. data/lib/klaviyo-api-sdk/models/list_create_query_resource_object.rb +1 -1
  163. data/lib/klaviyo-api-sdk/models/list_create_query_resource_object_attributes.rb +1 -1
  164. data/lib/klaviyo-api-sdk/models/list_enum.rb +1 -1
  165. data/lib/klaviyo-api-sdk/models/list_members_add_query.rb +1 -1
  166. data/lib/klaviyo-api-sdk/models/list_members_add_query_data_inner.rb +1 -1
  167. data/lib/klaviyo-api-sdk/models/list_members_delete_query.rb +1 -1
  168. data/lib/klaviyo-api-sdk/models/list_partial_update_query.rb +1 -1
  169. data/lib/klaviyo-api-sdk/models/list_partial_update_query_resource_object.rb +1 -1
  170. data/lib/klaviyo-api-sdk/models/metric_aggregate_enum.rb +1 -1
  171. data/lib/klaviyo-api-sdk/models/metric_aggregate_query.rb +1 -1
  172. data/lib/klaviyo-api-sdk/models/metric_aggregate_query_resource_object.rb +1 -1
  173. data/lib/klaviyo-api-sdk/models/metric_aggregate_query_resource_object_attributes.rb +3 -6
  174. data/lib/klaviyo-api-sdk/models/{unsubscription_create_job_create_query_resource_object.rb → metric_create_query_resource_object.rb} +6 -6
  175. data/lib/klaviyo-api-sdk/models/{metric_create_query.rb → metric_create_query_resource_object_attributes.rb} +4 -4
  176. data/lib/klaviyo-api-sdk/models/{profile_unsubscription_bulk_create_job_enum.rb → metric_enum.rb} +5 -5
  177. data/lib/klaviyo-api-sdk/models/onsite_profile_create_query_resource_object.rb +257 -0
  178. data/lib/klaviyo-api-sdk/models/onsite_profile_create_query_resource_object_attributes.rb +328 -0
  179. data/lib/klaviyo-api-sdk/models/onsite_profile_meta.rb +219 -0
  180. data/lib/klaviyo-api-sdk/models/profile_create_query.rb +1 -1
  181. data/lib/klaviyo-api-sdk/models/profile_create_query_resource_object.rb +1 -1
  182. data/lib/klaviyo-api-sdk/models/profile_create_query_resource_object_attributes.rb +1 -1
  183. data/lib/klaviyo-api-sdk/models/profile_enum.rb +1 -1
  184. data/lib/klaviyo-api-sdk/models/profile_identifier_dto_resource_object.rb +248 -0
  185. data/lib/klaviyo-api-sdk/models/profile_identifier_dto_resource_object_attributes.rb +249 -0
  186. data/lib/klaviyo-api-sdk/models/profile_location.rb +1 -1
  187. data/lib/klaviyo-api-sdk/models/profile_location_latitude.rb +1 -1
  188. data/lib/klaviyo-api-sdk/models/profile_location_longitude.rb +1 -1
  189. data/lib/klaviyo-api-sdk/models/profile_meta.rb +219 -0
  190. data/lib/klaviyo-api-sdk/models/{tag_create_query_resource_object_attributes.rb → profile_meta_patch_properties.rb} +28 -24
  191. data/lib/klaviyo-api-sdk/models/profile_meta_patch_properties_unset.rb +106 -0
  192. data/lib/klaviyo-api-sdk/models/profile_partial_update_query.rb +1 -1
  193. data/lib/klaviyo-api-sdk/models/profile_partial_update_query_resource_object.rb +11 -2
  194. data/lib/klaviyo-api-sdk/models/profile_partial_update_query_resource_object_attributes.rb +1 -1
  195. data/lib/klaviyo-api-sdk/models/profile_subscription_bulk_create_job_enum.rb +1 -1
  196. data/lib/klaviyo-api-sdk/models/profile_subscription_bulk_delete_job_enum.rb +36 -0
  197. data/lib/klaviyo-api-sdk/models/profile_subscription_create_query_resource_object.rb +248 -0
  198. data/lib/klaviyo-api-sdk/models/{subscription.rb → profile_subscription_create_query_resource_object_attributes.rb} +17 -27
  199. data/lib/klaviyo-api-sdk/models/profile_subscription_delete_query_resource_object.rb +238 -0
  200. data/lib/klaviyo-api-sdk/models/profile_subscription_delete_query_resource_object_attributes.rb +230 -0
  201. data/lib/klaviyo-api-sdk/models/profile_suppression_bulk_create_job_enum.rb +1 -1
  202. data/lib/klaviyo-api-sdk/models/profile_suppression_bulk_delete_job_enum.rb +36 -0
  203. data/lib/klaviyo-api-sdk/models/profile_suppression_create_query_resource_object.rb +238 -0
  204. data/lib/klaviyo-api-sdk/models/{suppression.rb → profile_suppression_create_query_resource_object_attributes.rb} +5 -10
  205. data/lib/klaviyo-api-sdk/models/profile_suppression_delete_query_resource_object.rb +238 -0
  206. data/lib/klaviyo-api-sdk/models/profile_suppression_delete_query_resource_object_attributes.rb +220 -0
  207. data/lib/klaviyo-api-sdk/models/render_options_sub_object.rb +261 -0
  208. data/lib/klaviyo-api-sdk/models/segment_enum.rb +1 -1
  209. data/lib/klaviyo-api-sdk/models/segment_partial_update_query.rb +1 -1
  210. data/lib/klaviyo-api-sdk/models/segment_partial_update_query_resource_object.rb +1 -1
  211. data/lib/klaviyo-api-sdk/models/segment_partial_update_query_resource_object_attributes.rb +1 -1
  212. data/lib/klaviyo-api-sdk/models/send_strategy_sub_object.rb +1 -1
  213. data/lib/klaviyo-api-sdk/models/{unsuppression_create_job_create_query.rb → server_bis_subscription_create_query.rb} +5 -5
  214. data/lib/klaviyo-api-sdk/models/server_bis_subscription_create_query_resource_object.rb +247 -0
  215. data/lib/klaviyo-api-sdk/models/{unsubscription_create_job_create_query_resource_object_attributes.rb → server_bis_subscription_create_query_resource_object_attributes.rb} +46 -32
  216. data/lib/klaviyo-api-sdk/models/server_bis_subscription_create_query_resource_object_attributes_profile.rb +224 -0
  217. data/lib/klaviyo-api-sdk/models/server_bis_subscription_create_query_resource_object_relationships.rb +219 -0
  218. data/lib/klaviyo-api-sdk/models/server_bis_subscription_create_query_resource_object_relationships_variant.rb +224 -0
  219. data/lib/klaviyo-api-sdk/models/server_bis_subscription_create_query_resource_object_relationships_variant_data.rb +272 -0
  220. data/lib/klaviyo-api-sdk/models/sms_content_sub_object_create.rb +220 -0
  221. data/lib/klaviyo-api-sdk/models/{send_options_sub_object.rb → sms_send_options_sub_object.rb} +4 -4
  222. data/lib/klaviyo-api-sdk/models/{unsuppression_create_job_create_query_resource_object_attributes.rb → sms_tracking_options_sub_object.rb} +23 -18
  223. data/lib/klaviyo-api-sdk/models/static_schedule_options.rb +1 -1
  224. data/lib/klaviyo-api-sdk/models/sto_schedule_options.rb +1 -1
  225. data/lib/klaviyo-api-sdk/models/subscription_channels.rb +1 -1
  226. data/lib/klaviyo-api-sdk/models/subscription_create_job_create_query.rb +1 -1
  227. data/lib/klaviyo-api-sdk/models/subscription_create_job_create_query_resource_object.rb +11 -2
  228. data/lib/klaviyo-api-sdk/models/subscription_create_job_create_query_resource_object_attributes.rb +14 -32
  229. data/lib/klaviyo-api-sdk/models/subscription_create_job_create_query_resource_object_attributes_profiles.rb +227 -0
  230. data/lib/klaviyo-api-sdk/models/{unsubscription_create_job_create_query.rb → subscription_delete_job_create_query.rb} +5 -5
  231. data/lib/klaviyo-api-sdk/models/subscription_delete_job_create_query_resource_object.rb +247 -0
  232. data/lib/klaviyo-api-sdk/models/subscription_delete_job_create_query_resource_object_attributes.rb +224 -0
  233. data/lib/klaviyo-api-sdk/models/subscription_delete_job_create_query_resource_object_attributes_profiles.rb +227 -0
  234. data/lib/klaviyo-api-sdk/models/subscription_delete_job_create_query_resource_object_relationships.rb +219 -0
  235. data/lib/klaviyo-api-sdk/models/subscription_delete_job_create_query_resource_object_relationships_list.rb +224 -0
  236. data/lib/klaviyo-api-sdk/models/subscription_delete_job_create_query_resource_object_relationships_list_data.rb +272 -0
  237. data/lib/klaviyo-api-sdk/models/suppression_create_job_create_query.rb +1 -1
  238. data/lib/klaviyo-api-sdk/models/suppression_create_job_create_query_resource_object.rb +1 -1
  239. data/lib/klaviyo-api-sdk/models/suppression_create_job_create_query_resource_object_attributes.rb +11 -14
  240. data/lib/klaviyo-api-sdk/models/suppression_create_job_create_query_resource_object_attributes_profiles.rb +227 -0
  241. data/lib/klaviyo-api-sdk/models/suppression_delete_job_create_query.rb +224 -0
  242. data/lib/klaviyo-api-sdk/models/suppression_delete_job_create_query_resource_object.rb +238 -0
  243. data/lib/klaviyo-api-sdk/models/suppression_delete_job_create_query_resource_object_attributes.rb +224 -0
  244. data/lib/klaviyo-api-sdk/models/suppression_delete_job_create_query_resource_object_attributes_profiles.rb +227 -0
  245. data/lib/klaviyo-api-sdk/models/tag_campaign_op.rb +1 -1
  246. data/lib/klaviyo-api-sdk/models/tag_campaign_op_data_inner.rb +1 -1
  247. data/lib/klaviyo-api-sdk/models/tag_create_query.rb +1 -1
  248. data/lib/klaviyo-api-sdk/models/tag_create_query_resource_object.rb +12 -3
  249. data/lib/klaviyo-api-sdk/models/tag_create_query_resource_object_relationships.rb +219 -0
  250. data/lib/klaviyo-api-sdk/models/tag_create_query_resource_object_relationships_tag_group.rb +224 -0
  251. data/lib/klaviyo-api-sdk/models/tag_create_query_resource_object_relationships_tag_group_data.rb +272 -0
  252. data/lib/klaviyo-api-sdk/models/tag_enum.rb +1 -1
  253. data/lib/klaviyo-api-sdk/models/tag_flow_op.rb +1 -1
  254. data/lib/klaviyo-api-sdk/models/tag_flow_op_data_inner.rb +1 -1
  255. data/lib/klaviyo-api-sdk/models/tag_group_create_query.rb +1 -1
  256. data/lib/klaviyo-api-sdk/models/tag_group_create_query_resource_object.rb +1 -1
  257. data/lib/klaviyo-api-sdk/models/tag_group_create_query_resource_object_attributes.rb +1 -1
  258. data/lib/klaviyo-api-sdk/models/tag_group_enum.rb +1 -1
  259. data/lib/klaviyo-api-sdk/models/tag_group_update_query.rb +1 -1
  260. data/lib/klaviyo-api-sdk/models/tag_group_update_query_resource_object.rb +1 -1
  261. data/lib/klaviyo-api-sdk/models/tag_group_update_query_resource_object_attributes.rb +1 -1
  262. data/lib/klaviyo-api-sdk/models/tag_list_op.rb +1 -1
  263. data/lib/klaviyo-api-sdk/models/tag_list_op_data_inner.rb +1 -1
  264. data/lib/klaviyo-api-sdk/models/tag_segment_op.rb +1 -1
  265. data/lib/klaviyo-api-sdk/models/tag_segment_op_data_inner.rb +1 -1
  266. data/lib/klaviyo-api-sdk/models/tag_update_query.rb +1 -1
  267. data/lib/klaviyo-api-sdk/models/tag_update_query_resource_object.rb +1 -1
  268. data/lib/klaviyo-api-sdk/models/tag_update_query_resource_object_attributes.rb +1 -1
  269. data/lib/klaviyo-api-sdk/models/template_clone_query.rb +1 -1
  270. data/lib/klaviyo-api-sdk/models/template_clone_query_resource_object.rb +1 -1
  271. data/lib/klaviyo-api-sdk/models/template_clone_query_resource_object_attributes.rb +2 -14
  272. data/lib/klaviyo-api-sdk/models/template_create_query.rb +1 -1
  273. data/lib/klaviyo-api-sdk/models/template_create_query_resource_object.rb +1 -1
  274. data/lib/klaviyo-api-sdk/models/template_create_query_resource_object_attributes.rb +2 -14
  275. data/lib/klaviyo-api-sdk/models/template_enum.rb +1 -1
  276. data/lib/klaviyo-api-sdk/models/template_render_query.rb +1 -1
  277. data/lib/klaviyo-api-sdk/models/template_render_query_resource_object.rb +1 -1
  278. data/lib/klaviyo-api-sdk/models/template_render_query_resource_object_attributes.rb +2 -14
  279. data/lib/klaviyo-api-sdk/models/template_update_query.rb +1 -1
  280. data/lib/klaviyo-api-sdk/models/template_update_query_resource_object.rb +1 -1
  281. data/lib/klaviyo-api-sdk/models/template_update_query_resource_object_attributes.rb +5 -17
  282. data/lib/klaviyo-api-sdk/models/throttled_schedule_options.rb +1 -1
  283. data/lib/klaviyo-api-sdk/models/utm_params_sub_object.rb +1 -1
  284. data/lib/klaviyo-api-sdk/version.rb +1 -1
  285. data/lib/klaviyo-api-sdk.rb +81 -19
  286. metadata +82 -20
@@ -0,0 +1,227 @@
1
+ =begin
2
+ #Klaviyo API
3
+
4
+ #The Klaviyo REST API. Please visit https://developers.klaviyo.com for more details.
5
+
6
+ The version of the OpenAPI document: 2023-07-15
7
+ Contact: developers@klaviyo.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 6.2.1
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module KlaviyoAPI
17
+ # Array of catalog variants to update.
18
+ class CatalogVariantUpdateJobCreateQueryResourceObjectAttributesVariants
19
+ attr_accessor :data
20
+
21
+ # Attribute mapping from ruby-style variable name to JSON key.
22
+ def self.attribute_map
23
+ {
24
+ :'data' => :'data'
25
+ }
26
+ end
27
+
28
+ # Returns all the JSON keys this model knows about
29
+ def self.acceptable_attributes
30
+ attribute_map.values
31
+ end
32
+
33
+ # Attribute type mapping.
34
+ def self.openapi_types
35
+ {
36
+ :'data' => :'Array<CatalogVariantUpdateQueryResourceObject>'
37
+ }
38
+ end
39
+
40
+ # List of attributes with nullable: true
41
+ def self.openapi_nullable
42
+ Set.new([
43
+ ])
44
+ end
45
+
46
+ # Initializes the object
47
+ # @param [Hash] attributes Model attributes in the form of hash
48
+ def initialize(attributes = {})
49
+ if (!attributes.is_a?(Hash))
50
+ fail ArgumentError, "The input argument (attributes) must be a hash in `KlaviyoAPI::CatalogVariantUpdateJobCreateQueryResourceObjectAttributesVariants` initialize method"
51
+ end
52
+
53
+ # check to see if the attribute exists and convert string to symbol for hash key
54
+ attributes = attributes.each_with_object({}) { |(k, v), h|
55
+ if (!self.class.attribute_map.key?(k.to_sym))
56
+ fail ArgumentError, "`#{k}` is not a valid attribute in `KlaviyoAPI::CatalogVariantUpdateJobCreateQueryResourceObjectAttributesVariants`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
57
+ end
58
+ h[k.to_sym] = v
59
+ }
60
+
61
+ if attributes.key?(:'data')
62
+ if (value = attributes[:'data']).is_a?(Array)
63
+ self.data = value
64
+ end
65
+ end
66
+ end
67
+
68
+ # Show invalid properties with the reasons. Usually used together with valid?
69
+ # @return Array for valid properties with the reasons
70
+ def list_invalid_properties
71
+ invalid_properties = Array.new
72
+ if @data.nil?
73
+ invalid_properties.push('invalid value for "data", data cannot be nil.')
74
+ end
75
+
76
+ invalid_properties
77
+ end
78
+
79
+ # Check to see if the all the properties in the model are valid
80
+ # @return true if the model is valid
81
+ def valid?
82
+ return false if @data.nil?
83
+ true
84
+ end
85
+
86
+ # Checks equality by comparing each attribute.
87
+ # @param [Object] Object to be compared
88
+ def ==(o)
89
+ return true if self.equal?(o)
90
+ self.class == o.class &&
91
+ data == o.data
92
+ end
93
+
94
+ # @see the `==` method
95
+ # @param [Object] Object to be compared
96
+ def eql?(o)
97
+ self == o
98
+ end
99
+
100
+ # Calculates hash code according to all attributes.
101
+ # @return [Integer] Hash code
102
+ def hash
103
+ [data].hash
104
+ end
105
+
106
+ # Builds the object from hash
107
+ # @param [Hash] attributes Model attributes in the form of hash
108
+ # @return [Object] Returns the model itself
109
+ def self.build_from_hash(attributes)
110
+ new.build_from_hash(attributes)
111
+ end
112
+
113
+ # Builds the object from hash
114
+ # @param [Hash] attributes Model attributes in the form of hash
115
+ # @return [Object] Returns the model itself
116
+ def build_from_hash(attributes)
117
+ return nil unless attributes.is_a?(Hash)
118
+ attributes = attributes.transform_keys(&:to_sym)
119
+ self.class.openapi_types.each_pair do |key, type|
120
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
121
+ self.send("#{key}=", nil)
122
+ elsif type =~ /\AArray<(.*)>/i
123
+ # check to ensure the input is an array given that the attribute
124
+ # is documented as an array but the input is not
125
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
126
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
127
+ end
128
+ elsif !attributes[self.class.attribute_map[key]].nil?
129
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
130
+ end
131
+ end
132
+
133
+ self
134
+ end
135
+
136
+ # Deserializes the data based on type
137
+ # @param string type Data type
138
+ # @param string value Value to be deserialized
139
+ # @return [Object] Deserialized data
140
+ def _deserialize(type, value)
141
+ case type.to_sym
142
+ when :Time
143
+ Time.parse(value)
144
+ when :Date
145
+ Date.parse(value)
146
+ when :String
147
+ value.to_s
148
+ when :Integer
149
+ value.to_i
150
+ when :Float
151
+ value.to_f
152
+ when :Boolean
153
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
154
+ true
155
+ else
156
+ false
157
+ end
158
+ when :Object
159
+ # generic object (usually a Hash), return directly
160
+ value
161
+ when /\AArray<(?<inner_type>.+)>\z/
162
+ inner_type = Regexp.last_match[:inner_type]
163
+ value.map { |v| _deserialize(inner_type, v) }
164
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
165
+ k_type = Regexp.last_match[:k_type]
166
+ v_type = Regexp.last_match[:v_type]
167
+ {}.tap do |hash|
168
+ value.each do |k, v|
169
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
170
+ end
171
+ end
172
+ else # model
173
+ # models (e.g. Pet) or oneOf
174
+ klass = KlaviyoAPI.const_get(type)
175
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
176
+ end
177
+ end
178
+
179
+ # Returns the string representation of the object
180
+ # @return [String] String presentation of the object
181
+ def to_s
182
+ to_hash.to_s
183
+ end
184
+
185
+ # to_body is an alias to to_hash (backward compatibility)
186
+ # @return [Hash] Returns the object in the form of hash
187
+ def to_body
188
+ to_hash
189
+ end
190
+
191
+ # Returns the object in the form of hash
192
+ # @return [Hash] Returns the object in the form of hash
193
+ def to_hash
194
+ hash = {}
195
+ self.class.attribute_map.each_pair do |attr, param|
196
+ value = self.send(attr)
197
+ if value.nil?
198
+ is_nullable = self.class.openapi_nullable.include?(attr)
199
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
200
+ end
201
+
202
+ hash[param] = _to_hash(value)
203
+ end
204
+ hash
205
+ end
206
+
207
+ # Outputs non-array value in the form of hash
208
+ # For object, use to_hash. Otherwise, just return the value
209
+ # @param [Object] value Any valid value
210
+ # @return [Hash] Returns the value in the form of hash
211
+ def _to_hash(value)
212
+ if value.is_a?(Array)
213
+ value.compact.map { |v| _to_hash(v) }
214
+ elsif value.is_a?(Hash)
215
+ {}.tap do |hash|
216
+ value.each { |k, v| hash[k] = _to_hash(v) }
217
+ end
218
+ elsif value.respond_to? :to_hash
219
+ value.to_hash
220
+ else
221
+ value
222
+ end
223
+ end
224
+
225
+ end
226
+
227
+ end
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The Klaviyo REST API. Please visit https://developers.klaviyo.com for more details.
5
5
 
6
- The version of the OpenAPI document: 2023-06-15
6
+ The version of the OpenAPI document: 2023-07-15
7
7
  Contact: developers@klaviyo.com
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 6.2.1
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The Klaviyo REST API. Please visit https://developers.klaviyo.com for more details.
5
5
 
6
- The version of the OpenAPI document: 2023-06-15
6
+ The version of the OpenAPI document: 2023-07-15
7
7
  Contact: developers@klaviyo.com
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 6.2.1
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The Klaviyo REST API. Please visit https://developers.klaviyo.com for more details.
5
5
 
6
- The version of the OpenAPI document: 2023-06-15
6
+ The version of the OpenAPI document: 2023-07-15
7
7
  Contact: developers@klaviyo.com
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 6.2.1
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The Klaviyo REST API. Please visit https://developers.klaviyo.com for more details.
5
5
 
6
- The version of the OpenAPI document: 2023-06-15
6
+ The version of the OpenAPI document: 2023-07-15
7
7
  Contact: developers@klaviyo.com
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 6.2.1
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The Klaviyo REST API. Please visit https://developers.klaviyo.com for more details.
5
5
 
6
- The version of the OpenAPI document: 2023-06-15
6
+ The version of the OpenAPI document: 2023-07-15
7
7
  Contact: developers@klaviyo.com
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 6.2.1
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The Klaviyo REST API. Please visit https://developers.klaviyo.com for more details.
5
5
 
6
- The version of the OpenAPI document: 2023-06-15
6
+ The version of the OpenAPI document: 2023-07-15
7
7
  Contact: developers@klaviyo.com
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 6.2.1
@@ -15,21 +15,12 @@ require 'time'
15
15
 
16
16
  module KlaviyoAPI
17
17
  class DataPrivacyCreateDeletionJobQueryResourceObjectAttributes
18
- # The phone number of the profile to delete.
19
- attr_accessor :phone_number
20
-
21
- # The ID of the profile to delete. This is the `id` field on the profile object.
22
- attr_accessor :profile_id
23
-
24
- # The email address of the profile to delete.
25
- attr_accessor :email
18
+ attr_accessor :profile
26
19
 
27
20
  # Attribute mapping from ruby-style variable name to JSON key.
28
21
  def self.attribute_map
29
22
  {
30
- :'phone_number' => :'phone_number',
31
- :'profile_id' => :'profile_id',
32
- :'email' => :'email'
23
+ :'profile' => :'profile'
33
24
  }
34
25
  end
35
26
 
@@ -41,9 +32,7 @@ module KlaviyoAPI
41
32
  # Attribute type mapping.
42
33
  def self.openapi_types
43
34
  {
44
- :'phone_number' => :'String',
45
- :'profile_id' => :'String',
46
- :'email' => :'String'
35
+ :'profile' => :'DataPrivacyCreateDeletionJobQueryResourceObjectAttributesProfile'
47
36
  }
48
37
  end
49
38
 
@@ -68,16 +57,8 @@ module KlaviyoAPI
68
57
  h[k.to_sym] = v
69
58
  }
70
59
 
71
- if attributes.key?(:'phone_number')
72
- self.phone_number = attributes[:'phone_number']
73
- end
74
-
75
- if attributes.key?(:'profile_id')
76
- self.profile_id = attributes[:'profile_id']
77
- end
78
-
79
- if attributes.key?(:'email')
80
- self.email = attributes[:'email']
60
+ if attributes.key?(:'profile')
61
+ self.profile = attributes[:'profile']
81
62
  end
82
63
  end
83
64
 
@@ -85,12 +66,17 @@ module KlaviyoAPI
85
66
  # @return Array for valid properties with the reasons
86
67
  def list_invalid_properties
87
68
  invalid_properties = Array.new
69
+ if @profile.nil?
70
+ invalid_properties.push('invalid value for "profile", profile cannot be nil.')
71
+ end
72
+
88
73
  invalid_properties
89
74
  end
90
75
 
91
76
  # Check to see if the all the properties in the model are valid
92
77
  # @return true if the model is valid
93
78
  def valid?
79
+ return false if @profile.nil?
94
80
  true
95
81
  end
96
82
 
@@ -99,9 +85,7 @@ module KlaviyoAPI
99
85
  def ==(o)
100
86
  return true if self.equal?(o)
101
87
  self.class == o.class &&
102
- phone_number == o.phone_number &&
103
- profile_id == o.profile_id &&
104
- email == o.email
88
+ profile == o.profile
105
89
  end
106
90
 
107
91
  # @see the `==` method
@@ -113,7 +97,7 @@ module KlaviyoAPI
113
97
  # Calculates hash code according to all attributes.
114
98
  # @return [Integer] Hash code
115
99
  def hash
116
- [phone_number, profile_id, email].hash
100
+ [profile].hash
117
101
  end
118
102
 
119
103
  # Builds the object from hash
@@ -0,0 +1,224 @@
1
+ =begin
2
+ #Klaviyo API
3
+
4
+ #The Klaviyo REST API. Please visit https://developers.klaviyo.com for more details.
5
+
6
+ The version of the OpenAPI document: 2023-07-15
7
+ Contact: developers@klaviyo.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 6.2.1
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module KlaviyoAPI
17
+ class DataPrivacyCreateDeletionJobQueryResourceObjectAttributesProfile
18
+ attr_accessor :data
19
+
20
+ # Attribute mapping from ruby-style variable name to JSON key.
21
+ def self.attribute_map
22
+ {
23
+ :'data' => :'data'
24
+ }
25
+ end
26
+
27
+ # Returns all the JSON keys this model knows about
28
+ def self.acceptable_attributes
29
+ attribute_map.values
30
+ end
31
+
32
+ # Attribute type mapping.
33
+ def self.openapi_types
34
+ {
35
+ :'data' => :'DataPrivacyProfileQueryResourceObject'
36
+ }
37
+ end
38
+
39
+ # List of attributes with nullable: true
40
+ def self.openapi_nullable
41
+ Set.new([
42
+ ])
43
+ end
44
+
45
+ # Initializes the object
46
+ # @param [Hash] attributes Model attributes in the form of hash
47
+ def initialize(attributes = {})
48
+ if (!attributes.is_a?(Hash))
49
+ fail ArgumentError, "The input argument (attributes) must be a hash in `KlaviyoAPI::DataPrivacyCreateDeletionJobQueryResourceObjectAttributesProfile` initialize method"
50
+ end
51
+
52
+ # check to see if the attribute exists and convert string to symbol for hash key
53
+ attributes = attributes.each_with_object({}) { |(k, v), h|
54
+ if (!self.class.attribute_map.key?(k.to_sym))
55
+ fail ArgumentError, "`#{k}` is not a valid attribute in `KlaviyoAPI::DataPrivacyCreateDeletionJobQueryResourceObjectAttributesProfile`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
56
+ end
57
+ h[k.to_sym] = v
58
+ }
59
+
60
+ if attributes.key?(:'data')
61
+ self.data = attributes[:'data']
62
+ end
63
+ end
64
+
65
+ # Show invalid properties with the reasons. Usually used together with valid?
66
+ # @return Array for valid properties with the reasons
67
+ def list_invalid_properties
68
+ invalid_properties = Array.new
69
+ if @data.nil?
70
+ invalid_properties.push('invalid value for "data", data cannot be nil.')
71
+ end
72
+
73
+ invalid_properties
74
+ end
75
+
76
+ # Check to see if the all the properties in the model are valid
77
+ # @return true if the model is valid
78
+ def valid?
79
+ return false if @data.nil?
80
+ true
81
+ end
82
+
83
+ # Checks equality by comparing each attribute.
84
+ # @param [Object] Object to be compared
85
+ def ==(o)
86
+ return true if self.equal?(o)
87
+ self.class == o.class &&
88
+ data == o.data
89
+ end
90
+
91
+ # @see the `==` method
92
+ # @param [Object] Object to be compared
93
+ def eql?(o)
94
+ self == o
95
+ end
96
+
97
+ # Calculates hash code according to all attributes.
98
+ # @return [Integer] Hash code
99
+ def hash
100
+ [data].hash
101
+ end
102
+
103
+ # Builds the object from hash
104
+ # @param [Hash] attributes Model attributes in the form of hash
105
+ # @return [Object] Returns the model itself
106
+ def self.build_from_hash(attributes)
107
+ new.build_from_hash(attributes)
108
+ end
109
+
110
+ # Builds the object from hash
111
+ # @param [Hash] attributes Model attributes in the form of hash
112
+ # @return [Object] Returns the model itself
113
+ def build_from_hash(attributes)
114
+ return nil unless attributes.is_a?(Hash)
115
+ attributes = attributes.transform_keys(&:to_sym)
116
+ self.class.openapi_types.each_pair do |key, type|
117
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
118
+ self.send("#{key}=", nil)
119
+ elsif type =~ /\AArray<(.*)>/i
120
+ # check to ensure the input is an array given that the attribute
121
+ # is documented as an array but the input is not
122
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
123
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
124
+ end
125
+ elsif !attributes[self.class.attribute_map[key]].nil?
126
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
127
+ end
128
+ end
129
+
130
+ self
131
+ end
132
+
133
+ # Deserializes the data based on type
134
+ # @param string type Data type
135
+ # @param string value Value to be deserialized
136
+ # @return [Object] Deserialized data
137
+ def _deserialize(type, value)
138
+ case type.to_sym
139
+ when :Time
140
+ Time.parse(value)
141
+ when :Date
142
+ Date.parse(value)
143
+ when :String
144
+ value.to_s
145
+ when :Integer
146
+ value.to_i
147
+ when :Float
148
+ value.to_f
149
+ when :Boolean
150
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
151
+ true
152
+ else
153
+ false
154
+ end
155
+ when :Object
156
+ # generic object (usually a Hash), return directly
157
+ value
158
+ when /\AArray<(?<inner_type>.+)>\z/
159
+ inner_type = Regexp.last_match[:inner_type]
160
+ value.map { |v| _deserialize(inner_type, v) }
161
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
162
+ k_type = Regexp.last_match[:k_type]
163
+ v_type = Regexp.last_match[:v_type]
164
+ {}.tap do |hash|
165
+ value.each do |k, v|
166
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
167
+ end
168
+ end
169
+ else # model
170
+ # models (e.g. Pet) or oneOf
171
+ klass = KlaviyoAPI.const_get(type)
172
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
173
+ end
174
+ end
175
+
176
+ # Returns the string representation of the object
177
+ # @return [String] String presentation of the object
178
+ def to_s
179
+ to_hash.to_s
180
+ end
181
+
182
+ # to_body is an alias to to_hash (backward compatibility)
183
+ # @return [Hash] Returns the object in the form of hash
184
+ def to_body
185
+ to_hash
186
+ end
187
+
188
+ # Returns the object in the form of hash
189
+ # @return [Hash] Returns the object in the form of hash
190
+ def to_hash
191
+ hash = {}
192
+ self.class.attribute_map.each_pair do |attr, param|
193
+ value = self.send(attr)
194
+ if value.nil?
195
+ is_nullable = self.class.openapi_nullable.include?(attr)
196
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
197
+ end
198
+
199
+ hash[param] = _to_hash(value)
200
+ end
201
+ hash
202
+ end
203
+
204
+ # Outputs non-array value in the form of hash
205
+ # For object, use to_hash. Otherwise, just return the value
206
+ # @param [Object] value Any valid value
207
+ # @return [Hash] Returns the value in the form of hash
208
+ def _to_hash(value)
209
+ if value.is_a?(Array)
210
+ value.compact.map { |v| _to_hash(v) }
211
+ elsif value.is_a?(Hash)
212
+ {}.tap do |hash|
213
+ value.each { |k, v| hash[k] = _to_hash(v) }
214
+ end
215
+ elsif value.respond_to? :to_hash
216
+ value.to_hash
217
+ else
218
+ value
219
+ end
220
+ end
221
+
222
+ end
223
+
224
+ end
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The Klaviyo REST API. Please visit https://developers.klaviyo.com for more details.
5
5
 
6
- The version of the OpenAPI document: 2023-06-15
6
+ The version of the OpenAPI document: 2023-07-15
7
7
  Contact: developers@klaviyo.com
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 6.2.1