klaviyo-api-sdk 17.0.0 → 19.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 (549) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +66 -0
  3. data/README.md +2261 -677
  4. data/klaviyo-api-sdk.gemspec +2 -2
  5. data/lib/klaviyo-api-sdk/api/accounts_api.rb +12 -12
  6. data/lib/klaviyo-api-sdk/api/billing_api.rb +162 -0
  7. data/lib/klaviyo-api-sdk/api/brands_api.rb +1933 -0
  8. data/lib/klaviyo-api-sdk/api/campaigns_api.rb +3334 -629
  9. data/lib/klaviyo-api-sdk/api/catalogs_api.rb +585 -381
  10. data/lib/klaviyo-api-sdk/api/client_api.rb +96 -0
  11. data/lib/klaviyo-api-sdk/api/conversations_api.rb +3 -3
  12. data/lib/klaviyo-api-sdk/api/coupons_api.rb +187 -108
  13. data/lib/klaviyo-api-sdk/api/custom_objects_api.rb +2758 -83
  14. data/lib/klaviyo-api-sdk/api/data_privacy_api.rb +3 -3
  15. data/lib/klaviyo-api-sdk/api/events_api.rb +72 -58
  16. data/lib/klaviyo-api-sdk/api/flows_api.rb +315 -152
  17. data/lib/klaviyo-api-sdk/api/forms_api.rb +330 -60
  18. data/lib/klaviyo-api-sdk/api/images_api.rb +48 -27
  19. data/lib/klaviyo-api-sdk/api/lists_api.rb +113 -88
  20. data/lib/klaviyo-api-sdk/api/metrics_api.rb +184 -156
  21. data/lib/klaviyo-api-sdk/api/profiles_api.rb +445 -226
  22. data/lib/klaviyo-api-sdk/api/reporting_api.rb +76 -27
  23. data/lib/klaviyo-api-sdk/api/reviews_api.rb +38 -31
  24. data/lib/klaviyo-api-sdk/api/segments_api.rb +107 -82
  25. data/lib/klaviyo-api-sdk/api/tags_api.rb +164 -128
  26. data/lib/klaviyo-api-sdk/api/templates_api.rb +291 -78
  27. data/lib/klaviyo-api-sdk/api/text_messaging_api.rb +774 -0
  28. data/lib/klaviyo-api-sdk/api/tracking_settings_api.rb +24 -17
  29. data/lib/klaviyo-api-sdk/api/translations_api.rb +1102 -0
  30. data/lib/klaviyo-api-sdk/api/web_feeds_api.rb +41 -27
  31. data/lib/klaviyo-api-sdk/api/webhooks_api.rb +73 -31
  32. data/lib/klaviyo-api-sdk/api_client.rb +1 -1
  33. data/lib/klaviyo-api-sdk/models/ab_test_action_link_only.rb +271 -0
  34. data/lib/klaviyo-api-sdk/models/{campaign_message_property.rb → ab_test_settings.rb} +39 -34
  35. data/lib/klaviyo-api-sdk/models/action_output_condition.rb +1 -1
  36. data/lib/klaviyo-api-sdk/models/action_output_condition_filter.rb +78 -195
  37. data/lib/klaviyo-api-sdk/models/action_output_split_action_data.rb +2 -6
  38. data/lib/klaviyo-api-sdk/models/{flow_push_notification_additional_filters.rb → action_output_split_action_data_action_output_filter.rb} +4 -4
  39. data/lib/klaviyo-api-sdk/models/{action_output_condition_condition_group.rb → action_output_split_action_data_action_output_filter_condition_groups_inner.rb} +3 -3
  40. data/lib/klaviyo-api-sdk/models/{smart_send_time_strategy.rb → action_output_split_action_link_only.rb} +30 -31
  41. data/lib/klaviyo-api-sdk/models/address.rb +295 -0
  42. data/lib/klaviyo-api-sdk/models/age_gate_properties.rb +20 -1
  43. data/lib/klaviyo-api-sdk/models/age_gate_styles.rb +14 -5
  44. data/lib/klaviyo-api-sdk/models/{dynamic_tracking_param.rb → animation.rb} +56 -44
  45. data/lib/klaviyo-api-sdk/models/{drop_shadow_block_v0.rb → api_schema_property.rb} +42 -34
  46. data/lib/klaviyo-api-sdk/models/audience_clone_query.rb +223 -0
  47. data/lib/klaviyo-api-sdk/models/{campaign_message_partial_update_query_resource_object.rb → audience_clone_query_resource_object.rb} +7 -7
  48. data/lib/klaviyo-api-sdk/models/audience_clone_query_resource_object_attributes.rb +235 -0
  49. data/lib/klaviyo-api-sdk/models/audience_clone_query_resource_object_relationships.rb +218 -0
  50. data/lib/klaviyo-api-sdk/models/audience_clone_query_resource_object_relationships_campaign.rb +218 -0
  51. data/lib/klaviyo-api-sdk/models/audience_clone_query_resource_object_relationships_campaign_data.rb +238 -0
  52. data/lib/klaviyo-api-sdk/models/audience_create_query.rb +223 -0
  53. data/lib/klaviyo-api-sdk/models/audience_create_query_resource_object.rb +251 -0
  54. data/lib/klaviyo-api-sdk/models/{campaign_message_create_query_resource_object_attributes.rb → audience_create_query_resource_object_attributes.rb} +4 -4
  55. data/lib/klaviyo-api-sdk/models/audience_create_query_resource_object_relationships.rb +232 -0
  56. data/lib/klaviyo-api-sdk/models/audience_create_query_resource_object_relationships_campaign.rb +218 -0
  57. data/lib/klaviyo-api-sdk/models/audience_create_query_resource_object_relationships_campaign_data.rb +238 -0
  58. data/lib/klaviyo-api-sdk/models/audience_create_query_resource_object_relationships_campaign_messages.rb +220 -0
  59. data/lib/klaviyo-api-sdk/models/audience_create_query_resource_object_relationships_campaign_messages_data_inner.rb +238 -0
  60. data/lib/klaviyo-api-sdk/models/{audiences_update.rb → audience_definition.rb} +32 -10
  61. data/lib/klaviyo-api-sdk/models/audience_inline_create.rb +261 -0
  62. data/lib/klaviyo-api-sdk/models/audience_update_query.rb +223 -0
  63. data/lib/klaviyo-api-sdk/models/audience_update_query_resource_object.rb +252 -0
  64. data/lib/klaviyo-api-sdk/models/{campaign_message_partial_update_query_resource_object_attributes.rb → audience_update_query_resource_object_attributes.rb} +4 -5
  65. data/lib/klaviyo-api-sdk/models/back_in_stock_delay_action_link_only.rb +271 -0
  66. data/lib/klaviyo-api-sdk/models/back_in_stock_email_consent_checkbox_properties.rb +20 -1
  67. data/lib/klaviyo-api-sdk/models/back_in_stock_email_consent_checkbox_styles.rb +10 -1
  68. data/lib/klaviyo-api-sdk/models/base_event_create_query_bulk_entry_resource_object_attributes.rb +15 -2
  69. data/lib/klaviyo-api-sdk/models/base_style_properties.rb +15 -5
  70. data/lib/klaviyo-api-sdk/models/border_styles.rb +297 -0
  71. data/lib/klaviyo-api-sdk/models/brand_button_create_query.rb +223 -0
  72. data/lib/klaviyo-api-sdk/models/brand_button_create_query_resource_object.rb +237 -0
  73. data/lib/klaviyo-api-sdk/models/brand_button_create_query_resource_object_attributes.rb +298 -0
  74. data/lib/klaviyo-api-sdk/models/brand_button_enum.rb +35 -0
  75. data/lib/klaviyo-api-sdk/models/brand_button_partial_update_query.rb +223 -0
  76. data/lib/klaviyo-api-sdk/models/brand_button_partial_update_query_resource_object.rb +252 -0
  77. data/lib/klaviyo-api-sdk/models/brand_button_partial_update_query_resource_object_attributes.rb +275 -0
  78. data/lib/klaviyo-api-sdk/models/brand_color_create_query.rb +223 -0
  79. data/lib/klaviyo-api-sdk/models/brand_color_create_query_resource_object.rb +237 -0
  80. data/lib/klaviyo-api-sdk/models/brand_color_create_query_resource_object_attributes.rb +233 -0
  81. data/lib/klaviyo-api-sdk/models/brand_color_enum.rb +35 -0
  82. data/lib/klaviyo-api-sdk/models/brand_color_partial_update_query.rb +223 -0
  83. data/lib/klaviyo-api-sdk/models/brand_color_partial_update_query_resource_object.rb +252 -0
  84. data/lib/klaviyo-api-sdk/models/{metric_property_condition_condition_group.rb → brand_color_partial_update_query_resource_object_attributes.rb} +22 -16
  85. data/lib/klaviyo-api-sdk/models/{campaigns_email_tracking_options.rb → brand_email_body_patch_attributes.rb} +68 -38
  86. data/lib/klaviyo-api-sdk/models/brand_email_default_enum.rb +35 -0
  87. data/lib/klaviyo-api-sdk/models/brand_email_default_partial_update_query.rb +223 -0
  88. data/lib/klaviyo-api-sdk/models/brand_email_default_partial_update_query_resource_object.rb +261 -0
  89. data/lib/klaviyo-api-sdk/models/{mobile_push_content_update.rb → brand_email_default_partial_update_query_resource_object_attributes.rb} +20 -26
  90. data/lib/klaviyo-api-sdk/models/brand_email_default_partial_update_query_resource_object_relationships.rb +236 -0
  91. data/lib/klaviyo-api-sdk/models/brand_email_default_partial_update_query_resource_object_relationships_brand_button.rb +218 -0
  92. data/lib/klaviyo-api-sdk/models/{content_repeat_v0.rb → brand_email_default_partial_update_query_resource_object_relationships_brand_button_data.rb} +22 -22
  93. data/lib/klaviyo-api-sdk/models/brand_email_default_partial_update_query_resource_object_relationships_brand_logo.rb +218 -0
  94. data/lib/klaviyo-api-sdk/models/brand_email_default_partial_update_query_resource_object_relationships_brand_logo_data.rb +237 -0
  95. data/lib/klaviyo-api-sdk/models/brand_email_default_partial_update_query_resource_object_relationships_brand_social_group.rb +218 -0
  96. data/lib/klaviyo-api-sdk/models/brand_email_default_partial_update_rels_brand_social_group_data.rb +237 -0
  97. data/lib/klaviyo-api-sdk/models/{sms_message_definition_create.rb → brand_email_footer_patch_attributes.rb} +43 -35
  98. data/lib/klaviyo-api-sdk/models/brand_email_header_patch_attributes.rb +253 -0
  99. data/lib/klaviyo-api-sdk/models/brand_library_button_styles.rb +262 -0
  100. data/lib/klaviyo-api-sdk/models/brand_library_text_styles.rb +368 -0
  101. data/lib/klaviyo-api-sdk/models/{mobile_push_options_on_open.rb → brand_library_text_styles_letter_spacing.rb} +3 -3
  102. data/lib/klaviyo-api-sdk/models/brand_logo_create_query.rb +223 -0
  103. data/lib/klaviyo-api-sdk/models/{campaign_message_create_query_resource_object.rb → brand_logo_create_query_resource_object.rb} +6 -6
  104. data/lib/klaviyo-api-sdk/models/brand_logo_create_query_resource_object_attributes.rb +264 -0
  105. data/lib/klaviyo-api-sdk/models/{campaign_message_create_query_resource_object_relationships.rb → brand_logo_create_query_resource_object_relationships.rb} +4 -4
  106. data/lib/klaviyo-api-sdk/models/brand_logo_create_query_resource_object_relationships_image.rb +218 -0
  107. data/lib/klaviyo-api-sdk/models/brand_logo_create_query_resource_object_relationships_image_data.rb +237 -0
  108. data/lib/klaviyo-api-sdk/models/brand_logo_enum.rb +35 -0
  109. data/lib/klaviyo-api-sdk/models/{universal_content_create_query.rb → brand_logo_partial_update_query.rb} +4 -4
  110. data/lib/klaviyo-api-sdk/models/brand_logo_partial_update_query_resource_object.rb +261 -0
  111. data/lib/klaviyo-api-sdk/models/brand_logo_partial_update_query_resource_object_attributes.rb +259 -0
  112. data/lib/klaviyo-api-sdk/models/brand_social_group_create_query.rb +223 -0
  113. data/lib/klaviyo-api-sdk/models/{universal_content_create_query_resource_object.rb → brand_social_group_create_query_resource_object.rb} +5 -5
  114. data/lib/klaviyo-api-sdk/models/brand_social_group_create_query_resource_object_attributes.rb +237 -0
  115. data/lib/klaviyo-api-sdk/models/brand_social_group_create_query_resource_object_attributes_social_links_inner.rb +104 -0
  116. data/lib/klaviyo-api-sdk/models/brand_social_group_enum.rb +35 -0
  117. data/lib/klaviyo-api-sdk/models/{universal_content_partial_update_query.rb → brand_social_group_partial_update_query.rb} +4 -4
  118. data/lib/klaviyo-api-sdk/models/{universal_content_partial_update_query_resource_object.rb → brand_social_group_partial_update_query_resource_object.rb} +6 -6
  119. data/lib/klaviyo-api-sdk/models/brand_social_group_partial_update_query_resource_object_attributes.rb +231 -0
  120. data/lib/klaviyo-api-sdk/models/brand_voice_descriptor.rb +248 -0
  121. data/lib/klaviyo-api-sdk/models/brand_voice_enum.rb +35 -0
  122. data/lib/klaviyo-api-sdk/models/brand_voice_partial_update_query.rb +223 -0
  123. data/lib/klaviyo-api-sdk/models/brand_voice_partial_update_query_resource_object.rb +252 -0
  124. data/lib/klaviyo-api-sdk/models/brand_voice_partial_update_query_resource_object_attributes.rb +235 -0
  125. data/lib/klaviyo-api-sdk/models/button_action.rb +2 -0
  126. data/lib/klaviyo-api-sdk/models/button_properties.rb +20 -1
  127. data/lib/klaviyo-api-sdk/models/button_styles.rb +34 -3
  128. data/lib/klaviyo-api-sdk/models/{mobile_push_options_badge.rb → button_styles_height.rb} +3 -4
  129. data/lib/klaviyo-api-sdk/models/campaign_audience_clone_enum.rb +35 -0
  130. data/lib/klaviyo-api-sdk/models/campaign_audience_enum.rb +35 -0
  131. data/lib/klaviyo-api-sdk/models/campaign_clone_query_resource_object_attributes.rb +9 -9
  132. data/lib/klaviyo-api-sdk/models/campaign_create_query_resource_object.rb +13 -4
  133. data/lib/klaviyo-api-sdk/models/campaign_create_query_resource_object_attributes.rb +30 -63
  134. data/lib/klaviyo-api-sdk/models/campaign_create_query_resource_object_relationships.rb +236 -0
  135. data/lib/klaviyo-api-sdk/models/campaign_create_query_resource_object_relationships_campaign_audiences.rb +220 -0
  136. data/lib/klaviyo-api-sdk/models/campaign_create_query_resource_object_relationships_campaign_audiences_data_inner.rb +238 -0
  137. data/lib/klaviyo-api-sdk/models/campaign_create_query_resource_object_relationships_campaign_messages.rb +220 -0
  138. data/lib/klaviyo-api-sdk/models/campaign_create_query_resource_object_relationships_campaign_messages_data_inner.rb +238 -0
  139. data/lib/klaviyo-api-sdk/models/campaign_create_query_resource_object_relationships_tags.rb +220 -0
  140. data/lib/klaviyo-api-sdk/models/campaign_create_query_resource_object_relationships_tags_data_inner.rb +238 -0
  141. data/lib/klaviyo-api-sdk/models/campaign_definition.rb +273 -0
  142. data/lib/klaviyo-api-sdk/models/campaign_message_schedule_enum.rb +35 -0
  143. data/lib/klaviyo-api-sdk/models/campaign_message_schedule_query.rb +223 -0
  144. data/lib/klaviyo-api-sdk/models/campaign_message_schedule_query_resource_object.rb +251 -0
  145. data/lib/klaviyo-api-sdk/models/campaign_message_schedule_query_resource_object_attributes.rb +298 -0
  146. data/lib/klaviyo-api-sdk/models/campaign_message_schedule_query_resource_object_relationships.rb +223 -0
  147. data/lib/klaviyo-api-sdk/models/campaign_message_schedule_query_resource_object_relationships_campaign_message.rb +218 -0
  148. data/lib/klaviyo-api-sdk/models/campaign_message_schedule_query_resource_object_relationships_campaign_message_data.rb +238 -0
  149. data/lib/klaviyo-api-sdk/models/campaign_message_schedule_update_query.rb +223 -0
  150. data/lib/klaviyo-api-sdk/models/campaign_message_schedule_update_query_resource_object.rb +251 -0
  151. data/lib/klaviyo-api-sdk/models/{non_local_static_send.rb → campaign_message_schedule_update_query_resource_object_attributes.rb} +22 -22
  152. data/lib/klaviyo-api-sdk/models/campaign_partial_update_query_resource_object.rb +1 -1
  153. data/lib/klaviyo-api-sdk/models/campaign_partial_update_query_resource_object_attributes.rb +12 -48
  154. data/lib/klaviyo-api-sdk/models/campaign_schedule_enum.rb +35 -0
  155. data/lib/klaviyo-api-sdk/models/campaign_schedule_query.rb +223 -0
  156. data/lib/klaviyo-api-sdk/models/campaign_schedule_query_resource_object.rb +251 -0
  157. data/lib/klaviyo-api-sdk/models/campaign_schedule_query_resource_object_attributes.rb +226 -0
  158. data/lib/klaviyo-api-sdk/models/campaign_schedule_query_resource_object_relationships.rb +223 -0
  159. data/lib/klaviyo-api-sdk/models/campaign_schedule_query_resource_object_relationships_campaign.rb +218 -0
  160. data/lib/klaviyo-api-sdk/models/campaign_schedule_query_resource_object_relationships_campaign_data.rb +238 -0
  161. data/lib/klaviyo-api-sdk/models/campaign_tracking_setting_dynamic_param.rb +2 -2
  162. data/lib/klaviyo-api-sdk/models/campaign_variation_enum.rb +35 -0
  163. data/lib/klaviyo-api-sdk/models/{push_on_open_deep_link.rb → cart_content.rb} +23 -25
  164. data/lib/klaviyo-api-sdk/models/cart_content_properties.rb +236 -0
  165. data/lib/klaviyo-api-sdk/models/checkboxes_properties.rb +20 -1
  166. data/lib/klaviyo-api-sdk/models/checkboxes_styles.rb +10 -1
  167. data/lib/klaviyo-api-sdk/models/{campaign_message_increment.rb → click_tracking_subscription_parameters.rb} +22 -21
  168. data/lib/klaviyo-api-sdk/models/click_tracking_unsubscription_parameters.rb +258 -0
  169. data/lib/klaviyo-api-sdk/models/close_button_style.rb +49 -4
  170. data/lib/klaviyo-api-sdk/models/{push_on_open_app.rb → code_action_link_only.rb} +23 -9
  171. data/lib/klaviyo-api-sdk/models/color.rb +237 -0
  172. data/lib/klaviyo-api-sdk/models/conditional_branch_action_data_profile_filter_condition_groups_inner_conditions_inner.rb +5 -0
  173. data/lib/klaviyo-api-sdk/models/conditional_branch_action_link_only.rb +271 -0
  174. data/lib/klaviyo-api-sdk/models/consent_page_enum.rb +35 -0
  175. data/lib/klaviyo-api-sdk/models/{static_tracking_param.rb → constant_property_mapping.rb} +25 -26
  176. data/lib/klaviyo-api-sdk/models/constant_property_mapping_value.rb +107 -0
  177. data/lib/klaviyo-api-sdk/models/content_experiment_action.rb +1 -1
  178. data/lib/klaviyo-api-sdk/models/{send_push_notification_action_content_experiment_action_data.rb → content_experiment_action_data.rb} +6 -5
  179. data/lib/klaviyo-api-sdk/models/{send_push_notification_action_current_experiment.rb → content_experiment_action_data_current_experiment.rb} +6 -6
  180. data/lib/klaviyo-api-sdk/models/{campaigns_email_tracking_options_custom_tracking_params_inner.rb → content_experiment_action_data_main_action.rb} +3 -3
  181. data/lib/klaviyo-api-sdk/models/content_experiment_action_link_only.rb +271 -0
  182. data/lib/klaviyo-api-sdk/models/continue_with_shop.rb +286 -0
  183. data/lib/klaviyo-api-sdk/models/continue_with_shop_autofill.rb +264 -0
  184. data/lib/klaviyo-api-sdk/models/continue_with_shop_phone_consent.rb +262 -0
  185. data/lib/klaviyo-api-sdk/models/continue_with_shop_properties.rb +327 -0
  186. data/lib/klaviyo-api-sdk/models/continue_with_shop_styles.rb +298 -0
  187. data/lib/klaviyo-api-sdk/models/conversation_message_create_query_resource_object_attributes.rb +17 -4
  188. data/lib/klaviyo-api-sdk/models/countdown_delay_action_link_only.rb +271 -0
  189. data/lib/klaviyo-api-sdk/models/countdown_timer_properties.rb +43 -1
  190. data/lib/klaviyo-api-sdk/models/coupon_assigner_configuration.rb +285 -0
  191. data/lib/klaviyo-api-sdk/models/coupon_block_data.rb +1 -5
  192. data/lib/klaviyo-api-sdk/models/coupon_create_query_resource_object_attributes.rb +14 -5
  193. data/lib/klaviyo-api-sdk/models/coupon_properties.rb +20 -1
  194. data/lib/klaviyo-api-sdk/models/coupon_update_query_resource_object_attributes.rb +14 -5
  195. data/lib/klaviyo-api-sdk/models/{push_send_options.rb → custom_css.rb} +22 -13
  196. data/lib/klaviyo-api-sdk/models/custom_html.rb +292 -0
  197. data/lib/klaviyo-api-sdk/models/custom_html_properties.rb +272 -0
  198. data/lib/klaviyo-api-sdk/models/custom_object_date_trigger.rb +460 -0
  199. data/lib/klaviyo-api-sdk/models/{low_inventory_condition_filter.rb → custom_object_date_trigger_trigger_filter.rb} +4 -4
  200. data/lib/klaviyo-api-sdk/models/{flow_sms_additional_filters_condition_groups_inner.rb → custom_object_date_trigger_trigger_filter_condition_groups_inner.rb} +4 -4
  201. data/lib/klaviyo-api-sdk/models/custom_object_property_condition.rb +1 -1
  202. data/lib/klaviyo-api-sdk/models/{spacer_block_v0.rb → custom_object_relationship_source.rb} +69 -34
  203. data/lib/klaviyo-api-sdk/models/{local_static_send.rb → custom_social_link.rb} +72 -31
  204. data/lib/klaviyo-api-sdk/models/customer_hub_block_action_link_only.rb +271 -0
  205. data/lib/klaviyo-api-sdk/models/data_source_record_bulk_create_job_create_query_resource_object.rb +5 -0
  206. data/lib/klaviyo-api-sdk/models/data_source_record_bulk_create_job_create_query_resource_object_attributes.rb +5 -1
  207. data/lib/klaviyo-api-sdk/models/data_source_record_bulk_create_job_create_query_resource_object_relationships.rb +5 -0
  208. data/lib/klaviyo-api-sdk/models/data_source_record_create_job_create_query_resource_object.rb +5 -0
  209. data/lib/klaviyo-api-sdk/models/date_properties.rb +20 -1
  210. data/lib/klaviyo-api-sdk/models/date_styles.rb +14 -5
  211. data/lib/klaviyo-api-sdk/models/display_options.rb +24 -4
  212. data/lib/klaviyo-api-sdk/models/dropdown_properties.rb +20 -1
  213. data/lib/klaviyo-api-sdk/models/dropdown_styles.rb +14 -5
  214. data/lib/klaviyo-api-sdk/models/{mobile_push_badge.rb → dynamic_sms_image.rb} +29 -28
  215. data/lib/klaviyo-api-sdk/models/{email_content.rb → email_channel_details.rb} +97 -42
  216. data/lib/klaviyo-api-sdk/models/email_header_link.rb +237 -0
  217. data/lib/klaviyo-api-sdk/models/email_properties.rb +20 -1
  218. data/lib/klaviyo-api-sdk/models/email_styles.rb +14 -5
  219. data/lib/klaviyo-api-sdk/models/email_subscription_parameters.rb +22 -9
  220. data/lib/klaviyo-api-sdk/models/email_unsubscription_parameters.rb +22 -9
  221. data/lib/klaviyo-api-sdk/models/embedded_object_schema_resource_object.rb +237 -0
  222. data/lib/klaviyo-api-sdk/models/embedded_object_schema_resource_object_attributes.rb +292 -0
  223. data/lib/klaviyo-api-sdk/models/embedded_object_schema_resource_object_attributes_source_mapping.rb +224 -0
  224. data/lib/klaviyo-api-sdk/models/enroll_form_action_link_only.rb +271 -0
  225. data/lib/klaviyo-api-sdk/models/event_create_query_v2_resource_object_attributes.rb +15 -2
  226. data/lib/klaviyo-api-sdk/models/event_profile_create_query_resource_object.rb +13 -4
  227. data/lib/klaviyo-api-sdk/models/event_profile_create_query_resource_object_attributes.rb +5 -14
  228. data/lib/klaviyo-api-sdk/models/events_bulk_create_query_resource_object_attributes.rb +14 -1
  229. data/lib/klaviyo-api-sdk/models/first_party_social_link.rb +271 -0
  230. data/lib/klaviyo-api-sdk/models/flow_action_anchor_query_resource_object.rb +252 -0
  231. data/lib/klaviyo-api-sdk/models/flow_action_anchor_query_resource_object_attributes.rb +223 -0
  232. data/lib/klaviyo-api-sdk/models/flow_action_anchor_query_resource_object_attributes_definition.rb +126 -0
  233. data/lib/klaviyo-api-sdk/models/flow_action_insert_query.rb +223 -0
  234. data/lib/klaviyo-api-sdk/models/flow_action_insert_query_resource_object.rb +246 -0
  235. data/lib/klaviyo-api-sdk/models/flow_action_insert_query_resource_object_attributes.rb +245 -0
  236. data/lib/klaviyo-api-sdk/models/flow_action_insert_query_resource_object_attributes_anchor_action.rb +224 -0
  237. data/lib/klaviyo-api-sdk/models/flow_action_insert_query_resource_object_attributes_definition.rb +124 -0
  238. data/lib/klaviyo-api-sdk/models/flow_action_insert_query_resource_object_relationships.rb +218 -0
  239. data/lib/klaviyo-api-sdk/models/flow_action_insert_query_resource_object_relationships_flow.rb +218 -0
  240. data/lib/klaviyo-api-sdk/models/flow_action_insert_query_resource_object_relationships_flow_data.rb +238 -0
  241. data/lib/klaviyo-api-sdk/models/flow_action_update_query_resource_object_attributes_definition.rb +1 -0
  242. data/lib/klaviyo-api-sdk/models/flow_definition_actions_inner.rb +1 -0
  243. data/lib/klaviyo-api-sdk/models/flow_definition_profile_filter_condition_groups_inner_conditions_inner.rb +5 -0
  244. data/lib/klaviyo-api-sdk/models/flow_definition_triggers_inner.rb +1 -0
  245. data/lib/klaviyo-api-sdk/models/flow_email.rb +1 -1
  246. data/lib/klaviyo-api-sdk/models/flow_message_enum.rb +35 -0
  247. data/lib/klaviyo-api-sdk/models/flow_push_notification.rb +15 -5
  248. data/lib/klaviyo-api-sdk/models/flow_sms.rb +15 -2
  249. data/lib/klaviyo-api-sdk/models/flow_sms_message_hierarchy_inner.rb +104 -0
  250. data/lib/klaviyo-api-sdk/models/flow_whats_app.rb +25 -5
  251. data/lib/klaviyo-api-sdk/models/flow_whats_app_with_ac.rb +303 -0
  252. data/lib/klaviyo-api-sdk/models/form_create_query_resource_object_attributes.rb +2 -2
  253. data/lib/klaviyo-api-sdk/models/form_partial_update_query.rb +223 -0
  254. data/lib/klaviyo-api-sdk/models/form_partial_update_query_resource_object.rb +252 -0
  255. data/lib/klaviyo-api-sdk/models/form_partial_update_query_resource_object_attributes.rb +229 -0
  256. data/lib/klaviyo-api-sdk/models/form_publish_job_create_query.rb +223 -0
  257. data/lib/klaviyo-api-sdk/models/{html_block_data_v0.rb → form_publish_job_create_query_resource_object.rb} +22 -22
  258. data/lib/klaviyo-api-sdk/models/form_publish_job_create_query_resource_object_relationships.rb +223 -0
  259. data/lib/klaviyo-api-sdk/models/form_publish_job_create_query_resource_object_relationships_form.rb +218 -0
  260. data/lib/klaviyo-api-sdk/models/form_publish_job_create_query_resource_object_relationships_form_data.rb +238 -0
  261. data/lib/klaviyo-api-sdk/models/form_publish_job_enum.rb +35 -0
  262. data/lib/klaviyo-api-sdk/models/form_unpublish_job_create_query.rb +223 -0
  263. data/lib/klaviyo-api-sdk/models/form_unpublish_job_create_query_resource_object.rb +237 -0
  264. data/lib/klaviyo-api-sdk/models/form_unpublish_job_create_query_resource_object_relationships.rb +223 -0
  265. data/lib/klaviyo-api-sdk/models/{campaign_message_create_query_resource_object_relationships_image.rb → form_unpublish_job_create_query_resource_object_relationships_form.rb} +4 -4
  266. data/lib/klaviyo-api-sdk/models/{campaign_message_create_query_resource_object_relationships_image_data.rb → form_unpublish_job_create_query_resource_object_relationships_form_data.rb} +5 -5
  267. data/lib/klaviyo-api-sdk/models/form_unpublish_job_enum.rb +35 -0
  268. data/lib/klaviyo-api-sdk/models/html_text_properties.rb +20 -1
  269. data/lib/klaviyo-api-sdk/models/iaf_deeplink_to_screen.rb +305 -0
  270. data/lib/klaviyo-api-sdk/models/{render_options.rb → iaf_deeplink_to_screen_properties.rb} +32 -37
  271. data/lib/klaviyo-api-sdk/models/{text_block_v0.rb → iaf_open_url.rb} +42 -34
  272. data/lib/klaviyo-api-sdk/models/{sms_content_create.rb → iaf_open_url_properties.rb} +12 -12
  273. data/lib/klaviyo-api-sdk/models/image_action.rb +2 -0
  274. data/lib/klaviyo-api-sdk/models/image_asset.rb +409 -0
  275. data/lib/klaviyo-api-sdk/models/image_block_cropping_properties.rb +0 -35
  276. data/lib/klaviyo-api-sdk/models/image_block_styles.rb +11 -1
  277. data/lib/klaviyo-api-sdk/models/image_properties.rb +20 -1
  278. data/lib/klaviyo-api-sdk/models/{throttled_send_strategy.rb → inline_message_schedule.rb} +69 -55
  279. data/lib/klaviyo-api-sdk/models/input_style_overrides.rb +307 -0
  280. data/lib/klaviyo-api-sdk/models/internal_service_action_link_only.rb +271 -0
  281. data/lib/klaviyo-api-sdk/models/link_text_styles.rb +352 -0
  282. data/lib/klaviyo-api-sdk/models/link_text_styles_letter_spacing.rb +104 -0
  283. data/lib/klaviyo-api-sdk/models/list_update_action_link_only.rb +271 -0
  284. data/lib/klaviyo-api-sdk/models/low_inventory_condition.rb +1 -1
  285. data/lib/klaviyo-api-sdk/models/low_inventory_trigger.rb +2 -6
  286. data/lib/klaviyo-api-sdk/models/{flow_sms_additional_filters.rb → low_inventory_trigger_trigger_filter.rb} +4 -4
  287. data/lib/klaviyo-api-sdk/models/{low_inventory_condition_condition_group.rb → low_inventory_trigger_trigger_filter_condition_groups_inner.rb} +3 -3
  288. data/lib/klaviyo-api-sdk/models/marketing_tracking_consent_checkbox.rb +291 -0
  289. data/lib/klaviyo-api-sdk/models/marketing_tracking_consent_checkbox_properties.rb +372 -0
  290. data/lib/klaviyo-api-sdk/models/marketing_tracking_consent_checkbox_styles.rb +283 -0
  291. data/lib/klaviyo-api-sdk/models/marketing_tracking_consent_configuration.rb +272 -0
  292. data/lib/klaviyo-api-sdk/models/media_asset.rb +318 -0
  293. data/lib/klaviyo-api-sdk/models/media_asset_reference.rb +240 -0
  294. data/lib/klaviyo-api-sdk/models/message_clone_query.rb +223 -0
  295. data/lib/klaviyo-api-sdk/models/message_clone_query_resource_object.rb +266 -0
  296. data/lib/klaviyo-api-sdk/models/message_clone_query_resource_object_attributes.rb +235 -0
  297. data/lib/klaviyo-api-sdk/models/message_clone_query_resource_object_relationships.rb +223 -0
  298. data/lib/klaviyo-api-sdk/models/message_create_query.rb +223 -0
  299. data/lib/klaviyo-api-sdk/models/message_create_query_resource_object.rb +251 -0
  300. data/lib/klaviyo-api-sdk/models/message_create_query_resource_object_attributes.rb +236 -0
  301. data/lib/klaviyo-api-sdk/models/message_create_query_resource_object_relationships.rb +237 -0
  302. data/lib/klaviyo-api-sdk/models/message_create_query_resource_object_relationships_campaign.rb +218 -0
  303. data/lib/klaviyo-api-sdk/models/message_create_query_resource_object_relationships_campaign_audience.rb +218 -0
  304. data/lib/klaviyo-api-sdk/models/message_create_query_resource_object_relationships_campaign_audience_data.rb +238 -0
  305. data/lib/klaviyo-api-sdk/models/{flow_push_notification_additional_filters_condition_groups_inner.rb → message_create_query_resource_object_relationships_campaign_data.rb} +28 -15
  306. data/lib/klaviyo-api-sdk/models/{static_send_strategy.rb → message_definition.rb} +52 -42
  307. data/lib/klaviyo-api-sdk/models/message_hierarchy_rcs_item.rb +296 -0
  308. data/lib/klaviyo-api-sdk/models/message_hierarchy_sms_item.rb +301 -0
  309. data/lib/klaviyo-api-sdk/models/message_hierarchy_sms_item_image.rb +105 -0
  310. data/lib/klaviyo-api-sdk/models/{campaign_create_query_resource_object_attributes_tracking_options.rb → message_hierarchy_sms_item_media.rb} +4 -4
  311. data/lib/klaviyo-api-sdk/models/{block_display_options.rb → message_inline_create.rb} +64 -33
  312. data/lib/klaviyo-api-sdk/models/message_partial_update_query.rb +223 -0
  313. data/lib/klaviyo-api-sdk/models/message_partial_update_query_resource_object.rb +252 -0
  314. data/lib/klaviyo-api-sdk/models/message_partial_update_query_resource_object_attributes.rb +218 -0
  315. data/lib/klaviyo-api-sdk/models/message_send_options.rb +344 -0
  316. data/lib/klaviyo-api-sdk/models/{mobile_push_content_create.rb → message_tracking_options.rb} +25 -32
  317. data/lib/klaviyo-api-sdk/models/metric_aggregate_query_resource_object_attributes.rb +2 -2
  318. data/lib/klaviyo-api-sdk/models/metric_property_condition.rb +1 -1
  319. data/lib/klaviyo-api-sdk/models/metric_property_condition_filter.rb +87 -195
  320. data/lib/klaviyo-api-sdk/models/metric_trigger.rb +2 -1
  321. data/lib/klaviyo-api-sdk/models/{flow_email_additional_filters.rb → metric_trigger_trigger_filter.rb} +4 -4
  322. data/lib/klaviyo-api-sdk/models/{flow_email_additional_filters_condition_groups_inner.rb → metric_trigger_trigger_filter_condition_groups_inner.rb} +4 -4
  323. data/lib/klaviyo-api-sdk/models/{html_block_v0.rb → multi_branch_split_action_link_only.rb} +7 -33
  324. data/lib/klaviyo-api-sdk/models/multi_branch_split_action_link_only_data.rb +225 -0
  325. data/lib/klaviyo-api-sdk/models/multi_branch_split_branch_branch_filter_condition_groups_inner_conditions_inner.rb +9 -0
  326. data/lib/klaviyo-api-sdk/models/multi_branch_split_branch_link_only.rb +237 -0
  327. data/lib/klaviyo-api-sdk/models/object_record_bulk_delete_job_enum.rb +35 -0
  328. data/lib/klaviyo-api-sdk/models/object_record_delete_job_create_query.rb +223 -0
  329. data/lib/klaviyo-api-sdk/models/object_record_delete_job_create_query_resource_object.rb +237 -0
  330. data/lib/klaviyo-api-sdk/models/object_record_delete_job_create_query_resource_object_relationships.rb +223 -0
  331. data/lib/klaviyo-api-sdk/models/object_record_delete_job_create_query_resource_object_relationships_object_records.rb +220 -0
  332. data/lib/klaviyo-api-sdk/models/{mobile_push_options.rb → object_record_delete_job_rels_records_data_inner.rb} +27 -31
  333. data/lib/klaviyo-api-sdk/models/object_record_enum.rb +35 -0
  334. data/lib/klaviyo-api-sdk/models/object_schema_create_query.rb +223 -0
  335. data/lib/klaviyo-api-sdk/models/object_schema_create_query_resource_object.rb +246 -0
  336. data/lib/klaviyo-api-sdk/models/object_schema_create_query_resource_object_attributes.rb +322 -0
  337. data/lib/klaviyo-api-sdk/models/object_schema_create_query_resource_object_relationships.rb +218 -0
  338. data/lib/klaviyo-api-sdk/models/object_schema_create_query_resource_object_relationships_object_type.rb +218 -0
  339. data/lib/klaviyo-api-sdk/models/object_schema_create_query_resource_object_relationships_object_type_data.rb +238 -0
  340. data/lib/klaviyo-api-sdk/models/object_schema_enum.rb +35 -0
  341. data/lib/klaviyo-api-sdk/models/object_schema_partial_update_query.rb +223 -0
  342. data/lib/klaviyo-api-sdk/models/object_schema_partial_update_query_resource_object.rb +252 -0
  343. data/lib/klaviyo-api-sdk/models/object_schema_partial_update_query_resource_object_attributes.rb +302 -0
  344. data/lib/klaviyo-api-sdk/models/object_schema_relationship_create_meta.rb +237 -0
  345. data/lib/klaviyo-api-sdk/models/{campaign_create_query_resource_object_attributes_campaign_messages.rb → object_schema_relationship_create_query.rb} +4 -5
  346. data/lib/klaviyo-api-sdk/models/object_schema_relationship_create_query_data_inner.rb +247 -0
  347. data/lib/klaviyo-api-sdk/models/object_schema_relationship_delete_meta.rb +224 -0
  348. data/lib/klaviyo-api-sdk/models/object_schema_relationship_delete_query.rb +225 -0
  349. data/lib/klaviyo-api-sdk/models/object_schema_relationship_delete_query_data_inner.rb +247 -0
  350. data/lib/klaviyo-api-sdk/models/object_schema_relationship_partial_update_query.rb +223 -0
  351. data/lib/klaviyo-api-sdk/models/object_schema_relationship_partial_update_query_data.rb +247 -0
  352. data/lib/klaviyo-api-sdk/models/object_schema_relationship_update_meta.rb +246 -0
  353. data/lib/klaviyo-api-sdk/models/object_type_create_query.rb +223 -0
  354. data/lib/klaviyo-api-sdk/models/object_type_create_query_resource_object.rb +237 -0
  355. data/lib/klaviyo-api-sdk/models/{mobile_push_message_standard_definition_update.rb → object_type_create_query_resource_object_attributes.rb} +59 -62
  356. data/lib/klaviyo-api-sdk/models/object_type_create_query_resource_object_attributes_object_schema.rb +224 -0
  357. data/lib/klaviyo-api-sdk/models/object_type_enum.rb +35 -0
  358. data/lib/klaviyo-api-sdk/models/onsite_profile_create_query_resource_object.rb +1 -1
  359. data/lib/klaviyo-api-sdk/models/onsite_profile_meta.rb +13 -4
  360. data/lib/klaviyo-api-sdk/models/{mobile_push_no_badge.rb → open_tracking_subscription_parameters.rb} +22 -22
  361. data/lib/klaviyo-api-sdk/models/open_tracking_unsubscription_parameters.rb +258 -0
  362. data/lib/klaviyo-api-sdk/models/opt_in_code_properties.rb +20 -1
  363. data/lib/klaviyo-api-sdk/models/opt_in_code_styles.rb +14 -5
  364. data/lib/klaviyo-api-sdk/models/{email_send_options.rb → patch_identifiers.rb} +19 -14
  365. data/lib/klaviyo-api-sdk/models/phone_number_properties.rb +20 -1
  366. data/lib/klaviyo-api-sdk/models/phone_number_styles.rb +14 -5
  367. data/lib/klaviyo-api-sdk/models/price_drop_condition.rb +1 -1
  368. data/lib/klaviyo-api-sdk/models/price_drop_trigger.rb +2 -6
  369. data/lib/klaviyo-api-sdk/models/{price_drop_condition_filter.rb → price_drop_trigger_trigger_filter.rb} +4 -4
  370. data/lib/klaviyo-api-sdk/models/{price_drop_condition_condition_group.rb → price_drop_trigger_trigger_filter_condition_groups_inner.rb} +3 -3
  371. data/lib/klaviyo-api-sdk/models/profile_event_tracked_properties.rb +29 -9
  372. data/lib/klaviyo-api-sdk/models/profile_has_custom_object_filter_filter.rb +2 -0
  373. data/lib/klaviyo-api-sdk/models/profile_has_not_received_email_message_condition.rb +1 -1
  374. data/lib/klaviyo-api-sdk/models/{profile_has_not_received_push_message_condition_timeframe_filter.rb → profile_has_not_received_email_message_condition_timeframe_filter.rb} +1 -1
  375. data/lib/klaviyo-api-sdk/models/profile_has_not_received_push_message_condition.rb +1 -1
  376. data/lib/klaviyo-api-sdk/models/profile_has_not_received_sms_message_condition.rb +1 -1
  377. data/lib/klaviyo-api-sdk/models/profile_meta.rb +13 -4
  378. data/lib/klaviyo-api-sdk/models/profile_metric_property_filter.rb +5 -1
  379. data/lib/klaviyo-api-sdk/models/profile_not_in_flow_condition.rb +1 -1
  380. data/lib/klaviyo-api-sdk/models/profile_object_schema_enum.rb +35 -0
  381. data/lib/klaviyo-api-sdk/models/profile_object_schema_relationship_create_query.rb +225 -0
  382. data/lib/klaviyo-api-sdk/models/profile_object_schema_relationship_create_query_data_inner.rb +247 -0
  383. data/lib/klaviyo-api-sdk/models/profile_object_schema_relationship_delete_query.rb +225 -0
  384. data/lib/klaviyo-api-sdk/models/profile_object_schema_relationship_delete_query_data_inner.rb +247 -0
  385. data/lib/klaviyo-api-sdk/models/profile_object_schema_relationship_partial_update_query.rb +223 -0
  386. data/lib/klaviyo-api-sdk/models/profile_object_schema_relationship_partial_update_query_data.rb +247 -0
  387. data/lib/klaviyo-api-sdk/models/profile_permissions_condition.rb +2 -2
  388. data/lib/klaviyo-api-sdk/models/profile_predictive_analytics_channel_affinity_priority_condition.rb +2 -2
  389. data/lib/klaviyo-api-sdk/models/profile_predictive_analytics_channel_affinity_rank_condition.rb +2 -2
  390. data/lib/klaviyo-api-sdk/models/profile_property_condition.rb +1 -0
  391. data/lib/klaviyo-api-sdk/models/profile_relationship_source.rb +330 -0
  392. data/lib/klaviyo-api-sdk/models/{sms_send_options.rb → property_filter.rb} +29 -14
  393. data/lib/klaviyo-api-sdk/models/{text_block_data_v0.rb → property_source.rb} +34 -31
  394. data/lib/klaviyo-api-sdk/models/push_action_button_v0.rb +322 -0
  395. data/lib/klaviyo-api-sdk/models/{push_action_button.rb → push_action_button_v2.rb} +29 -13
  396. data/lib/klaviyo-api-sdk/models/push_channel_details.rb +512 -0
  397. data/lib/klaviyo-api-sdk/models/push_profile_upsert_query_resource_object.rb +13 -4
  398. data/lib/klaviyo-api-sdk/models/push_profile_upsert_query_resource_object_attributes.rb +1 -10
  399. data/lib/klaviyo-api-sdk/models/quote_style.rb +21 -1
  400. data/lib/klaviyo-api-sdk/models/radio_buttons_properties.rb +20 -1
  401. data/lib/klaviyo-api-sdk/models/radio_buttons_styles.rb +10 -1
  402. data/lib/klaviyo-api-sdk/models/rcs_card.rb +290 -0
  403. data/lib/klaviyo-api-sdk/models/rcs_card_image.rb +105 -0
  404. data/lib/klaviyo-api-sdk/models/{campaign_create_query_resource_object_attributes_send_options.rb → rcs_card_video.rb} +4 -5
  405. data/lib/klaviyo-api-sdk/models/rcs_rich_content.rb +244 -0
  406. data/lib/klaviyo-api-sdk/models/{button_block_v0.rb → rcs_suggestion.rb} +63 -34
  407. data/lib/klaviyo-api-sdk/models/redirect_properties.rb +2 -5
  408. data/lib/klaviyo-api-sdk/models/related_id_path.rb +273 -0
  409. data/lib/klaviyo-api-sdk/models/review_block_styles.rb +13 -13
  410. data/lib/klaviyo-api-sdk/models/review_properties.rb +20 -1
  411. data/lib/klaviyo-api-sdk/models/review_styles.rb +10 -1
  412. data/lib/klaviyo-api-sdk/models/reviewer_name_style.rb +21 -1
  413. data/lib/klaviyo-api-sdk/models/row_v0_blocks_inner.rb +3 -0
  414. data/lib/klaviyo-api-sdk/models/send_email_action_link_only.rb +271 -0
  415. data/lib/klaviyo-api-sdk/models/send_internal_alert_action_link_only.rb +271 -0
  416. data/lib/klaviyo-api-sdk/models/send_push_notification_action_link_only.rb +271 -0
  417. data/lib/klaviyo-api-sdk/models/send_settings.rb +264 -0
  418. data/lib/klaviyo-api-sdk/models/send_sms_action_link_only.rb +271 -0
  419. data/lib/klaviyo-api-sdk/models/send_webhook_action_link_only.rb +271 -0
  420. data/lib/klaviyo-api-sdk/models/send_whats_app_action_link_only.rb +271 -0
  421. data/lib/klaviyo-api-sdk/models/{image_block_v0.rb → send_whats_app_with_ac_action.rb} +35 -31
  422. data/lib/klaviyo-api-sdk/models/send_whats_app_with_ac_action_data.rb +264 -0
  423. data/lib/klaviyo-api-sdk/models/send_whats_app_with_ac_action_link_only.rb +271 -0
  424. data/lib/klaviyo-api-sdk/models/signup_counter_properties.rb +20 -1
  425. data/lib/klaviyo-api-sdk/models/{horizontal_rule_block_v0.rb → simple_property_mapping.rb} +28 -34
  426. data/lib/klaviyo-api-sdk/models/simple_relationship_mapping.rb +287 -0
  427. data/lib/klaviyo-api-sdk/models/simple_relationship_mapping_source.rb +105 -0
  428. data/lib/klaviyo-api-sdk/models/slim_image_reference.rb +242 -0
  429. data/lib/klaviyo-api-sdk/models/{mobile_push_message_silent_definition_update.rb → sms_channel_details.rb} +135 -34
  430. data/lib/klaviyo-api-sdk/models/sms_consent_checkbox_properties.rb +20 -1
  431. data/lib/klaviyo-api-sdk/models/sms_consent_checkbox_styles.rb +10 -1
  432. data/lib/klaviyo-api-sdk/models/sms_disclosure_link_text_style.rb +319 -0
  433. data/lib/klaviyo-api-sdk/models/sms_disclosure_properties.rb +20 -1
  434. data/lib/klaviyo-api-sdk/models/sms_disclosure_styles.rb +1 -1
  435. data/lib/klaviyo-api-sdk/models/source_mapping_create_query_resource_object.rb +237 -0
  436. data/lib/klaviyo-api-sdk/models/{campaigns_sms_tracking_options.rb → source_mapping_create_query_resource_object_attributes.rb} +23 -21
  437. data/lib/klaviyo-api-sdk/models/source_mapping_create_query_resource_object_attributes_property_mappings_inner.rb +104 -0
  438. data/lib/klaviyo-api-sdk/models/source_mapping_enum.rb +35 -0
  439. data/lib/klaviyo-api-sdk/models/source_mapping_partial_update_query.rb +223 -0
  440. data/lib/klaviyo-api-sdk/models/source_mapping_partial_update_query_resource_object.rb +252 -0
  441. data/lib/klaviyo-api-sdk/models/spacing_styles.rb +265 -0
  442. data/lib/klaviyo-api-sdk/models/spin_to_win_properties.rb +20 -1
  443. data/lib/klaviyo-api-sdk/models/static_sms_image.rb +270 -0
  444. data/lib/klaviyo-api-sdk/models/string_phone_operator_string_array_filter.rb +1 -1
  445. data/lib/klaviyo-api-sdk/models/table_fallback_image_sub_block.rb +0 -13
  446. data/lib/klaviyo-api-sdk/models/table_image_sub_block.rb +0 -13
  447. data/lib/klaviyo-api-sdk/models/target_date_action_link_only.rb +271 -0
  448. data/lib/klaviyo-api-sdk/models/template_definition.rb +1 -0
  449. data/lib/klaviyo-api-sdk/models/{campaign_message_partial_update_query.rb → template_preview_send_job_create_query.rb} +4 -4
  450. data/lib/klaviyo-api-sdk/models/template_preview_send_job_create_query_resource_object.rb +251 -0
  451. data/lib/klaviyo-api-sdk/models/template_preview_send_job_create_query_resource_object_attributes.rb +237 -0
  452. data/lib/klaviyo-api-sdk/models/{audiences.rb → template_preview_send_job_create_query_resource_object_relationships.rb} +19 -26
  453. data/lib/klaviyo-api-sdk/models/template_preview_send_job_create_query_resource_object_relationships_profile.rb +218 -0
  454. data/lib/klaviyo-api-sdk/models/template_preview_send_job_create_query_resource_object_relationships_profile_data.rb +238 -0
  455. data/lib/klaviyo-api-sdk/models/template_preview_send_job_create_query_resource_object_relationships_template.rb +218 -0
  456. data/lib/klaviyo-api-sdk/models/template_preview_send_job_create_query_resource_object_relationships_template_data.rb +238 -0
  457. data/lib/klaviyo-api-sdk/models/template_preview_send_job_enum.rb +35 -0
  458. data/lib/klaviyo-api-sdk/models/text_messaging_configuration_create_query.rb +223 -0
  459. data/lib/klaviyo-api-sdk/models/text_messaging_configuration_create_query_resource_object.rb +237 -0
  460. data/lib/klaviyo-api-sdk/models/text_messaging_configuration_create_query_resource_object_attributes.rb +224 -0
  461. data/lib/klaviyo-api-sdk/models/text_messaging_configuration_enum.rb +35 -0
  462. data/lib/klaviyo-api-sdk/models/text_messaging_sender_create_attrs_text_messaging_sender_registration.rb +224 -0
  463. data/lib/klaviyo-api-sdk/models/text_messaging_sender_create_query.rb +223 -0
  464. data/lib/klaviyo-api-sdk/models/text_messaging_sender_create_query_resource_object.rb +237 -0
  465. data/lib/klaviyo-api-sdk/models/{mobile_push_message_standard_definition_create.rb → text_messaging_sender_create_query_resource_object_attributes.rb} +50 -68
  466. data/lib/klaviyo-api-sdk/models/text_messaging_sender_enum.rb +35 -0
  467. data/lib/klaviyo-api-sdk/models/text_messaging_sender_registration_create_query.rb +223 -0
  468. data/lib/klaviyo-api-sdk/models/text_messaging_sender_registration_create_query_resource_object.rb +251 -0
  469. data/lib/klaviyo-api-sdk/models/text_messaging_sender_registration_create_query_resource_object_attributes.rb +440 -0
  470. data/lib/klaviyo-api-sdk/models/text_messaging_sender_registration_create_query_resource_object_relationships.rb +223 -0
  471. data/lib/klaviyo-api-sdk/models/text_messaging_sender_registration_create_rels_text_messaging_sender.rb +218 -0
  472. data/lib/klaviyo-api-sdk/models/text_messaging_sender_registration_create_rels_text_messaging_sender_data.rb +237 -0
  473. data/lib/klaviyo-api-sdk/models/text_messaging_sender_registration_enum.rb +35 -0
  474. data/lib/klaviyo-api-sdk/models/text_properties.rb +20 -1
  475. data/lib/klaviyo-api-sdk/models/text_style_overrides.rb +294 -0
  476. data/lib/klaviyo-api-sdk/models/text_style_overrides_font_family.rb +103 -0
  477. data/lib/klaviyo-api-sdk/models/text_styles.rb +14 -5
  478. data/lib/klaviyo-api-sdk/models/{campaign_message_static_count.rb → throttled_options.rb} +31 -32
  479. data/lib/klaviyo-api-sdk/models/time_delay_action_link_only.rb +271 -0
  480. data/lib/klaviyo-api-sdk/models/timezone_options.rb +222 -0
  481. data/lib/klaviyo-api-sdk/models/toll_free_registration_details_resource_object.rb +237 -0
  482. data/lib/klaviyo-api-sdk/models/toll_free_registration_details_resource_object_attributes.rb +440 -0
  483. data/lib/klaviyo-api-sdk/models/{immediate_send_strategy.rb → toll_free_sender_details.rb} +22 -21
  484. data/lib/klaviyo-api-sdk/models/translation_create_query.rb +223 -0
  485. data/lib/klaviyo-api-sdk/models/translation_create_query_resource_object.rb +246 -0
  486. data/lib/klaviyo-api-sdk/models/{mobile_push_message_silent_definition_create.rb → translation_create_query_resource_object_attributes.rb} +54 -41
  487. data/lib/klaviyo-api-sdk/models/translation_create_query_resource_object_relationships.rb +254 -0
  488. data/lib/klaviyo-api-sdk/models/translation_create_query_resource_object_relationships_campaign_variation.rb +218 -0
  489. data/lib/klaviyo-api-sdk/models/translation_create_query_resource_object_relationships_campaign_variation_data.rb +238 -0
  490. data/lib/klaviyo-api-sdk/models/translation_create_query_resource_object_relationships_consent_page.rb +218 -0
  491. data/lib/klaviyo-api-sdk/models/translation_create_query_resource_object_relationships_consent_page_data.rb +238 -0
  492. data/lib/klaviyo-api-sdk/models/translation_create_query_resource_object_relationships_flow_message.rb +218 -0
  493. data/lib/klaviyo-api-sdk/models/translation_create_query_resource_object_relationships_flow_message_data.rb +238 -0
  494. data/lib/klaviyo-api-sdk/models/translation_create_query_resource_object_relationships_template.rb +218 -0
  495. data/lib/klaviyo-api-sdk/models/translation_create_query_resource_object_relationships_template_data.rb +238 -0
  496. data/lib/klaviyo-api-sdk/models/translation_create_query_resource_object_relationships_template_universal_content.rb +218 -0
  497. data/lib/klaviyo-api-sdk/models/translation_create_query_resource_object_relationships_template_universal_content_data.rb +238 -0
  498. data/lib/klaviyo-api-sdk/models/translation_enum.rb +35 -0
  499. data/lib/klaviyo-api-sdk/models/translation_partial_update_query.rb +223 -0
  500. data/lib/klaviyo-api-sdk/models/translation_partial_update_query_resource_object.rb +252 -0
  501. data/lib/klaviyo-api-sdk/models/translation_partial_update_query_resource_object_attributes.rb +257 -0
  502. data/lib/klaviyo-api-sdk/models/trigger_branch_action_link_only.rb +271 -0
  503. data/lib/klaviyo-api-sdk/models/universal_content_clone_query.rb +223 -0
  504. data/lib/klaviyo-api-sdk/models/universal_content_clone_query_resource_object.rb +252 -0
  505. data/lib/klaviyo-api-sdk/models/universal_content_clone_query_resource_object_attributes.rb +235 -0
  506. data/lib/klaviyo-api-sdk/models/universal_content_create_query_v1.rb +223 -0
  507. data/lib/klaviyo-api-sdk/models/universal_content_create_query_v1_resource_object.rb +237 -0
  508. data/lib/klaviyo-api-sdk/models/{universal_content_create_query_resource_object_attributes.rb → universal_content_create_query_v1_resource_object_attributes.rb} +4 -4
  509. data/lib/klaviyo-api-sdk/models/{campaign_create_query_resource_object_attributes_send_strategy.rb → universal_content_create_query_v1_resource_object_attributes_definition.rb} +17 -6
  510. data/lib/klaviyo-api-sdk/models/universal_content_partial_update_query_v1.rb +223 -0
  511. data/lib/klaviyo-api-sdk/models/universal_content_partial_update_query_v1_resource_object.rb +252 -0
  512. data/lib/klaviyo-api-sdk/models/{universal_content_partial_update_query_resource_object_attributes.rb → universal_content_partial_update_query_v1_resource_object_attributes.rb} +4 -4
  513. data/lib/klaviyo-api-sdk/models/{action_output_condition_filter2.rb → universal_content_partial_update_query_v1_resource_object_attributes_definition.rb} +18 -7
  514. data/lib/klaviyo-api-sdk/models/update_profile_action_link_only.rb +271 -0
  515. data/lib/klaviyo-api-sdk/models/variation_create_query.rb +223 -0
  516. data/lib/klaviyo-api-sdk/models/variation_create_query_resource_object.rb +251 -0
  517. data/lib/klaviyo-api-sdk/models/variation_create_query_resource_object_attributes.rb +223 -0
  518. data/lib/klaviyo-api-sdk/models/variation_create_query_resource_object_relationships.rb +223 -0
  519. data/lib/klaviyo-api-sdk/models/variation_create_query_resource_object_relationships_campaign_message.rb +218 -0
  520. data/lib/klaviyo-api-sdk/models/variation_create_query_resource_object_relationships_campaign_message_data.rb +238 -0
  521. data/lib/klaviyo-api-sdk/models/variation_definition.rb +230 -0
  522. data/lib/klaviyo-api-sdk/models/{mobile_push_badge_badge_options.rb → variation_definition_details.rb} +6 -5
  523. data/lib/klaviyo-api-sdk/models/variation_inline_create.rb +223 -0
  524. data/lib/klaviyo-api-sdk/models/variation_partial_update_query.rb +223 -0
  525. data/lib/klaviyo-api-sdk/models/variation_partial_update_query_resource_object.rb +252 -0
  526. data/lib/klaviyo-api-sdk/models/verified_badge_style.rb +266 -0
  527. data/lib/klaviyo-api-sdk/models/version.rb +39 -4
  528. data/lib/klaviyo-api-sdk/models/version_properties.rb +14 -4
  529. data/lib/klaviyo-api-sdk/models/version_styles.rb +15 -6
  530. data/lib/klaviyo-api-sdk/models/version_triggers_inner.rb +1 -0
  531. data/lib/klaviyo-api-sdk/models/{email_message_definition.rb → whatsapp_channel_details.rb} +23 -25
  532. data/lib/klaviyo-api-sdk.rb +389 -99
  533. data/lib/klaviyo-api-sdk.rb.bak +390 -100
  534. metadata +399 -103
  535. data/lib/klaviyo-api-sdk/models/campaign_message_create_query_resource_object_attributes_definition.rb +0 -106
  536. data/lib/klaviyo-api-sdk/models/campaign_message_partial_update_query_resource_object_attributes_definition.rb +0 -107
  537. data/lib/klaviyo-api-sdk/models/campaign_partial_update_query_resource_object_attributes_send_strategy.rb +0 -107
  538. data/lib/klaviyo-api-sdk/models/custom_object_property_condition_filter.rb +0 -117
  539. data/lib/klaviyo-api-sdk/models/flow_email_additional_filters_condition_groups_inner_conditions_inner.rb +0 -116
  540. data/lib/klaviyo-api-sdk/models/flow_push_notification_additional_filters_condition_groups_inner_conditions_inner.rb +0 -116
  541. data/lib/klaviyo-api-sdk/models/flow_sms_additional_filters_condition_groups_inner_conditions_inner.rb +0 -116
  542. data/lib/klaviyo-api-sdk/models/low_inventory_condition_filter2.rb +0 -117
  543. data/lib/klaviyo-api-sdk/models/metric_property_condition_filter2.rb +0 -117
  544. data/lib/klaviyo-api-sdk/models/onsite_profile_create_query_resource_object_attributes.rb +0 -349
  545. data/lib/klaviyo-api-sdk/models/price_drop_condition_filter2.rb +0 -117
  546. data/lib/klaviyo-api-sdk/models/static_send_strategy_options.rb +0 -105
  547. data/lib/klaviyo-api-sdk/models/text_block_styles_v0.rb +0 -533
  548. data/lib/klaviyo-api-sdk/models/universal_content_create_query_resource_object_attributes_definition.rb +0 -109
  549. data/lib/klaviyo-api-sdk/models/universal_content_partial_update_query_resource_object_attributes_definition.rb +0 -109
@@ -21,10 +21,15 @@ module KlaviyoAPI
21
21
  :'FlowsProfileMetricCondition',
22
22
  :'ProfileHasCustomObjectCondition',
23
23
  :'ProfileHasGroupMembershipCondition',
24
+ :'ProfileHasNotReceivedEmailMessageCondition',
25
+ :'ProfileHasNotReceivedPushMessageCondition',
26
+ :'ProfileHasNotReceivedSmsMessageCondition',
24
27
  :'ProfileMarketingConsentCondition',
25
28
  :'ProfileNoGroupMembershipCondition',
26
29
  :'ProfilePermissionsCondition',
27
30
  :'ProfilePostalCodeDistanceCondition',
31
+ :'ProfilePredictiveAnalyticsChannelAffinityPriorityCondition',
32
+ :'ProfilePredictiveAnalyticsChannelAffinityRankCondition',
28
33
  :'ProfilePredictiveAnalyticsDateCondition',
29
34
  :'ProfilePredictiveAnalyticsNumericCondition',
30
35
  :'ProfilePredictiveAnalyticsStringCondition',
@@ -0,0 +1,271 @@
1
+ =begin
2
+ #Klaviyo API
3
+
4
+ #The Klaviyo REST API. Please visit https://developers.klaviyo.com for more details.
5
+
6
+ Contact: developers@klaviyo.com
7
+ Generated by: https://openapi-generator.tech
8
+ OpenAPI Generator version: 6.2.1
9
+
10
+ =end
11
+
12
+ require 'date'
13
+ require 'time'
14
+
15
+ module KlaviyoAPI
16
+ class ConditionalBranchActionLinkOnly
17
+ attr_accessor :type
18
+
19
+ attr_accessor :links
20
+
21
+ class EnumAttributeValidator
22
+ attr_reader :datatype
23
+ attr_reader :allowable_values
24
+
25
+ def initialize(datatype, allowable_values)
26
+ @allowable_values = allowable_values.map do |value|
27
+ case datatype.to_s
28
+ when /Integer/i
29
+ value.to_i
30
+ when /Float/i
31
+ value.to_f
32
+ else
33
+ value
34
+ end
35
+ end
36
+ end
37
+
38
+ def valid?(value)
39
+ !value || allowable_values.include?(value)
40
+ end
41
+ end
42
+
43
+ # Attribute mapping from ruby-style variable name to JSON key.
44
+ def self.attribute_map
45
+ {
46
+ :'type' => :'type',
47
+ :'links' => :'links'
48
+ }
49
+ end
50
+
51
+ # Returns all the JSON keys this model knows about
52
+ def self.acceptable_attributes
53
+ attribute_map.values
54
+ end
55
+
56
+ # Attribute type mapping.
57
+ def self.openapi_types
58
+ {
59
+ :'type' => :'String',
60
+ :'links' => :'BooleanBranchLinks'
61
+ }
62
+ end
63
+
64
+ # List of attributes with nullable: true
65
+ def self.openapi_nullable
66
+ Set.new([
67
+ ])
68
+ end
69
+
70
+ # Initializes the object
71
+ # @param [Hash] attributes Model attributes in the form of hash
72
+ def initialize(attributes = {})
73
+ if (!attributes.is_a?(Hash))
74
+ fail ArgumentError, "The input argument (attributes) must be a hash in `KlaviyoAPI::ConditionalBranchActionLinkOnly` initialize method"
75
+ end
76
+
77
+ # check to see if the attribute exists and convert string to symbol for hash key
78
+ attributes = attributes.each_with_object({}) { |(k, v), h|
79
+ if (!self.class.attribute_map.key?(k.to_sym))
80
+ fail ArgumentError, "`#{k}` is not a valid attribute in `KlaviyoAPI::ConditionalBranchActionLinkOnly`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
81
+ end
82
+ h[k.to_sym] = v
83
+ }
84
+
85
+ if attributes.key?(:'type')
86
+ self.type = attributes[:'type']
87
+ end
88
+
89
+ if attributes.key?(:'links')
90
+ self.links = attributes[:'links']
91
+ end
92
+ end
93
+
94
+ # Show invalid properties with the reasons. Usually used together with valid?
95
+ # @return Array for valid properties with the reasons
96
+ def list_invalid_properties
97
+ invalid_properties = Array.new
98
+ if @type.nil?
99
+ invalid_properties.push('invalid value for "type", type cannot be nil.')
100
+ end
101
+
102
+ if @links.nil?
103
+ invalid_properties.push('invalid value for "links", links cannot be nil.')
104
+ end
105
+
106
+ invalid_properties
107
+ end
108
+
109
+ # Check to see if the all the properties in the model are valid
110
+ # @return true if the model is valid
111
+ def valid?
112
+ return false if @type.nil?
113
+ type_validator = EnumAttributeValidator.new('String', ["conditional-split"])
114
+ return false unless type_validator.valid?(@type)
115
+ return false if @links.nil?
116
+ true
117
+ end
118
+
119
+ # Custom attribute writer method checking allowed values (enum).
120
+ # @param [Object] type Object to be assigned
121
+ def type=(type)
122
+ validator = EnumAttributeValidator.new('String', ["conditional-split"])
123
+ unless validator.valid?(type)
124
+ fail ArgumentError, "invalid value for \"type\", must be one of #{validator.allowable_values}."
125
+ end
126
+ @type = type
127
+ end
128
+
129
+ # Checks equality by comparing each attribute.
130
+ # @param [Object] Object to be compared
131
+ def ==(o)
132
+ return true if self.equal?(o)
133
+ self.class == o.class &&
134
+ type == o.type &&
135
+ links == o.links
136
+ end
137
+
138
+ # @see the `==` method
139
+ # @param [Object] Object to be compared
140
+ def eql?(o)
141
+ self == o
142
+ end
143
+
144
+ # Calculates hash code according to all attributes.
145
+ # @return [Integer] Hash code
146
+ def hash
147
+ [type, links].hash
148
+ end
149
+
150
+ # Builds the object from hash
151
+ # @param [Hash] attributes Model attributes in the form of hash
152
+ # @return [Object] Returns the model itself
153
+ def self.build_from_hash(attributes)
154
+ new.build_from_hash(attributes)
155
+ end
156
+
157
+ # Builds the object from hash
158
+ # @param [Hash] attributes Model attributes in the form of hash
159
+ # @return [Object] Returns the model itself
160
+ def build_from_hash(attributes)
161
+ return nil unless attributes.is_a?(Hash)
162
+ attributes = attributes.transform_keys(&:to_sym)
163
+ self.class.openapi_types.each_pair do |key, type|
164
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
165
+ self.send("#{key}=", nil)
166
+ elsif type =~ /\AArray<(.*)>/i
167
+ # check to ensure the input is an array given that the attribute
168
+ # is documented as an array but the input is not
169
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
170
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
171
+ end
172
+ elsif !attributes[self.class.attribute_map[key]].nil?
173
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
174
+ end
175
+ end
176
+
177
+ self
178
+ end
179
+
180
+ # Deserializes the data based on type
181
+ # @param string type Data type
182
+ # @param string value Value to be deserialized
183
+ # @return [Object] Deserialized data
184
+ def _deserialize(type, value)
185
+ case type.to_sym
186
+ when :Time
187
+ Time.parse(value)
188
+ when :Date
189
+ Date.parse(value)
190
+ when :String
191
+ value.to_s
192
+ when :Integer
193
+ value.to_i
194
+ when :Float
195
+ value.to_f
196
+ when :Boolean
197
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
198
+ true
199
+ else
200
+ false
201
+ end
202
+ when :Object
203
+ # generic object (usually a Hash), return directly
204
+ value
205
+ when /\AArray<(?<inner_type>.+)>\z/
206
+ inner_type = Regexp.last_match[:inner_type]
207
+ value.map { |v| _deserialize(inner_type, v) }
208
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
209
+ k_type = Regexp.last_match[:k_type]
210
+ v_type = Regexp.last_match[:v_type]
211
+ {}.tap do |hash|
212
+ value.each do |k, v|
213
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
214
+ end
215
+ end
216
+ else # model
217
+ # models (e.g. Pet) or oneOf
218
+ klass = KlaviyoAPI.const_get(type)
219
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
220
+ end
221
+ end
222
+
223
+ # Returns the string representation of the object
224
+ # @return [String] String presentation of the object
225
+ def to_s
226
+ to_hash.to_s
227
+ end
228
+
229
+ # to_body is an alias to to_hash (backward compatibility)
230
+ # @return [Hash] Returns the object in the form of hash
231
+ def to_body
232
+ to_hash
233
+ end
234
+
235
+ # Returns the object in the form of hash
236
+ # @return [Hash] Returns the object in the form of hash
237
+ def to_hash
238
+ hash = {}
239
+ self.class.attribute_map.each_pair do |attr, param|
240
+ value = self.send(attr)
241
+ if value.nil?
242
+ is_nullable = self.class.openapi_nullable.include?(attr)
243
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
244
+ end
245
+
246
+ hash[param] = _to_hash(value)
247
+ end
248
+ hash
249
+ end
250
+
251
+ # Outputs non-array value in the form of hash
252
+ # For object, use to_hash. Otherwise, just return the value
253
+ # @param [Object] value Any valid value
254
+ # @return [Hash] Returns the value in the form of hash
255
+ def _to_hash(value)
256
+ if value.is_a?(Array)
257
+ value.compact.map { |v| _to_hash(v) }
258
+ elsif value.is_a?(Hash)
259
+ {}.tap do |hash|
260
+ value.each { |k, v| hash[k] = _to_hash(v) }
261
+ end
262
+ elsif value.respond_to? :to_hash
263
+ value.to_hash
264
+ else
265
+ value
266
+ end
267
+ end
268
+
269
+ end
270
+
271
+ end
@@ -0,0 +1,35 @@
1
+ =begin
2
+ #Klaviyo API
3
+
4
+ #The Klaviyo REST API. Please visit https://developers.klaviyo.com for more details.
5
+
6
+ Contact: developers@klaviyo.com
7
+ Generated by: https://openapi-generator.tech
8
+ OpenAPI Generator version: 6.2.1
9
+
10
+ =end
11
+
12
+ require 'date'
13
+ require 'time'
14
+
15
+ module KlaviyoAPI
16
+ class ConsentPageEnum
17
+ CONSENT_PAGE = "consent-page".freeze
18
+
19
+ # Builds the enum from string
20
+ # @param [String] The enum value in the form of the string
21
+ # @return [String] The enum value
22
+ def self.build_from_hash(value)
23
+ new.build_from_hash(value)
24
+ end
25
+
26
+ # Builds the enum from string
27
+ # @param [String] The enum value in the form of the string
28
+ # @return [String] The enum value
29
+ def build_from_hash(value)
30
+ constantValues = ConsentPageEnum.constants.select { |c| ConsentPageEnum::const_get(c) == value }
31
+ raise "Invalid ENUM value #{value} for class #ConsentPageEnum" if constantValues.empty?
32
+ value
33
+ end
34
+ end
35
+ end
@@ -13,16 +13,15 @@ require 'date'
13
13
  require 'time'
14
14
 
15
15
  module KlaviyoAPI
16
- class StaticTrackingParam
17
- # The type of the tracking parameter
16
+ class ConstantPropertyMapping
17
+ # Property ID. Must be a positive integer.
18
+ attr_accessor :id
19
+
20
+ # String literal for serialization
18
21
  attr_accessor :type
19
22
 
20
- # The value of the tracking parameter
21
23
  attr_accessor :value
22
24
 
23
- # Name of the tracking param
24
- attr_accessor :name
25
-
26
25
  class EnumAttributeValidator
27
26
  attr_reader :datatype
28
27
  attr_reader :allowable_values
@@ -48,9 +47,9 @@ module KlaviyoAPI
48
47
  # Attribute mapping from ruby-style variable name to JSON key.
49
48
  def self.attribute_map
50
49
  {
50
+ :'id' => :'id',
51
51
  :'type' => :'type',
52
- :'value' => :'value',
53
- :'name' => :'name'
52
+ :'value' => :'value'
54
53
  }
55
54
  end
56
55
 
@@ -62,9 +61,9 @@ module KlaviyoAPI
62
61
  # Attribute type mapping.
63
62
  def self.openapi_types
64
63
  {
64
+ :'id' => :'Integer',
65
65
  :'type' => :'String',
66
- :'value' => :'String',
67
- :'name' => :'String'
66
+ :'value' => :'ConstantPropertyMappingValue'
68
67
  }
69
68
  end
70
69
 
@@ -78,17 +77,21 @@ module KlaviyoAPI
78
77
  # @param [Hash] attributes Model attributes in the form of hash
79
78
  def initialize(attributes = {})
80
79
  if (!attributes.is_a?(Hash))
81
- fail ArgumentError, "The input argument (attributes) must be a hash in `KlaviyoAPI::StaticTrackingParam` initialize method"
80
+ fail ArgumentError, "The input argument (attributes) must be a hash in `KlaviyoAPI::ConstantPropertyMapping` initialize method"
82
81
  end
83
82
 
84
83
  # check to see if the attribute exists and convert string to symbol for hash key
85
84
  attributes = attributes.each_with_object({}) { |(k, v), h|
86
85
  if (!self.class.attribute_map.key?(k.to_sym))
87
- fail ArgumentError, "`#{k}` is not a valid attribute in `KlaviyoAPI::StaticTrackingParam`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
86
+ fail ArgumentError, "`#{k}` is not a valid attribute in `KlaviyoAPI::ConstantPropertyMapping`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
88
87
  end
89
88
  h[k.to_sym] = v
90
89
  }
91
90
 
91
+ if attributes.key?(:'id')
92
+ self.id = attributes[:'id']
93
+ end
94
+
92
95
  if attributes.key?(:'type')
93
96
  self.type = attributes[:'type']
94
97
  end
@@ -96,16 +99,16 @@ module KlaviyoAPI
96
99
  if attributes.key?(:'value')
97
100
  self.value = attributes[:'value']
98
101
  end
99
-
100
- if attributes.key?(:'name')
101
- self.name = attributes[:'name']
102
- end
103
102
  end
104
103
 
105
104
  # Show invalid properties with the reasons. Usually used together with valid?
106
105
  # @return Array for valid properties with the reasons
107
106
  def list_invalid_properties
108
107
  invalid_properties = Array.new
108
+ if @id.nil?
109
+ invalid_properties.push('invalid value for "id", id cannot be nil.')
110
+ end
111
+
109
112
  if @type.nil?
110
113
  invalid_properties.push('invalid value for "type", type cannot be nil.')
111
114
  end
@@ -114,28 +117,24 @@ module KlaviyoAPI
114
117
  invalid_properties.push('invalid value for "value", value cannot be nil.')
115
118
  end
116
119
 
117
- if @name.nil?
118
- invalid_properties.push('invalid value for "name", name cannot be nil.')
119
- end
120
-
121
120
  invalid_properties
122
121
  end
123
122
 
124
123
  # Check to see if the all the properties in the model are valid
125
124
  # @return true if the model is valid
126
125
  def valid?
126
+ return false if @id.nil?
127
127
  return false if @type.nil?
128
- type_validator = EnumAttributeValidator.new('String', ["static"])
128
+ type_validator = EnumAttributeValidator.new('String', ["constant"])
129
129
  return false unless type_validator.valid?(@type)
130
130
  return false if @value.nil?
131
- return false if @name.nil?
132
131
  true
133
132
  end
134
133
 
135
134
  # Custom attribute writer method checking allowed values (enum).
136
135
  # @param [Object] type Object to be assigned
137
136
  def type=(type)
138
- validator = EnumAttributeValidator.new('String', ["static"])
137
+ validator = EnumAttributeValidator.new('String', ["constant"])
139
138
  unless validator.valid?(type)
140
139
  fail ArgumentError, "invalid value for \"type\", must be one of #{validator.allowable_values}."
141
140
  end
@@ -147,9 +146,9 @@ module KlaviyoAPI
147
146
  def ==(o)
148
147
  return true if self.equal?(o)
149
148
  self.class == o.class &&
149
+ id == o.id &&
150
150
  type == o.type &&
151
- value == o.value &&
152
- name == o.name
151
+ value == o.value
153
152
  end
154
153
 
155
154
  # @see the `==` method
@@ -161,7 +160,7 @@ module KlaviyoAPI
161
160
  # Calculates hash code according to all attributes.
162
161
  # @return [Integer] Hash code
163
162
  def hash
164
- [type, value, name].hash
163
+ [id, type, value].hash
165
164
  end
166
165
 
167
166
  # Builds the object from hash
@@ -0,0 +1,107 @@
1
+ =begin
2
+ #Klaviyo API
3
+
4
+ #The Klaviyo REST API. Please visit https://developers.klaviyo.com for more details.
5
+
6
+ Contact: developers@klaviyo.com
7
+ Generated by: https://openapi-generator.tech
8
+ OpenAPI Generator version: 6.2.1
9
+
10
+ =end
11
+
12
+ require 'date'
13
+ require 'time'
14
+
15
+ module KlaviyoAPI
16
+ # Constant value assigned to every record
17
+ module ConstantPropertyMappingValue
18
+ class << self
19
+ # List of class defined in oneOf (OpenAPI v3)
20
+ def openapi_one_of
21
+ [
22
+ :'Boolean',
23
+ :'Float',
24
+ :'Integer',
25
+ :'String'
26
+ ]
27
+ end
28
+
29
+ # Builds the object
30
+ # @param [Mixed] Data to be matched against the list of oneOf items
31
+ # @return [Object] Returns the model or the data itself
32
+ def build(data)
33
+ # Go through the list of oneOf items and attempt to identify the appropriate one.
34
+ # Note:
35
+ # - We do not attempt to check whether exactly one item matches.
36
+ # - No advanced validation of types in some cases (e.g. "x: { type: string }" will happily match { x: 123 })
37
+ # due to the way the deserialization is made in the base_object template (it just casts without verifying).
38
+ # - TODO: scalar values are de facto behaving as if they were nullable.
39
+ # - TODO: logging when debugging is set.
40
+ openapi_one_of.each do |klass|
41
+ begin
42
+ next if klass == :AnyType # "nullable: true"
43
+ typed_data = find_and_cast_into_type(klass, data)
44
+ return typed_data if typed_data
45
+ rescue # rescue all errors so we keep iterating even if the current item lookup raises
46
+ end
47
+ end
48
+
49
+ openapi_one_of.include?(:AnyType) ? data : nil
50
+ end
51
+
52
+ private
53
+
54
+ SchemaMismatchError = Class.new(StandardError)
55
+
56
+ # Note: 'File' is missing here because in the regular case we get the data _after_ a call to JSON.parse.
57
+ def find_and_cast_into_type(klass, data)
58
+ return if data.nil?
59
+
60
+ case klass.to_s
61
+ when 'Boolean'
62
+ return data if data.instance_of?(TrueClass) || data.instance_of?(FalseClass)
63
+ when 'Float'
64
+ return data if data.instance_of?(Float)
65
+ when 'Integer'
66
+ return data if data.instance_of?(Integer)
67
+ when 'Time'
68
+ return Time.parse(data)
69
+ when 'Date'
70
+ return Date.parse(data)
71
+ when 'String'
72
+ return data if data.instance_of?(String)
73
+ when 'Object' # "type: object"
74
+ return data if data.instance_of?(Hash)
75
+ when /\AArray<(?<sub_type>.+)>\z/ # "type: array"
76
+ if data.instance_of?(Array)
77
+ sub_type = Regexp.last_match[:sub_type]
78
+ return data.map { |item| find_and_cast_into_type(sub_type, item) }
79
+ end
80
+ when /\AHash<String, (?<sub_type>.+)>\z/ # "type: object" with "additionalProperties: { ... }"
81
+ if data.instance_of?(Hash) && data.keys.all? { |k| k.instance_of?(Symbol) || k.instance_of?(String) }
82
+ sub_type = Regexp.last_match[:sub_type]
83
+ return data.each_with_object({}) { |(k, v), hsh| hsh[k] = find_and_cast_into_type(sub_type, v) }
84
+ end
85
+ else # model
86
+ const = KlaviyoAPI.const_get(klass)
87
+ if const
88
+ if const.respond_to?(:openapi_one_of) # nested oneOf model
89
+ model = const.build(data)
90
+ return model if model
91
+ else
92
+ # raise if data contains keys that are not known to the model
93
+ raise unless (data.keys - const.acceptable_attributes).empty?
94
+ model = const.build_from_hash(data)
95
+ return model if model && model.valid?
96
+ end
97
+ end
98
+ end
99
+
100
+ raise # if no match by now, raise
101
+ rescue
102
+ raise SchemaMismatchError, "#{data} doesn't match the #{klass} type"
103
+ end
104
+ end
105
+ end
106
+
107
+ end
@@ -71,7 +71,7 @@ module KlaviyoAPI
71
71
  :'temporary_id' => :'String',
72
72
  :'type' => :'String',
73
73
  :'links' => :'Link',
74
- :'data' => :'SendPushNotificationActionContentExperimentActionData'
74
+ :'data' => :'ContentExperimentActionData'
75
75
  }
76
76
  end
77
77
 
@@ -13,7 +13,7 @@ require 'date'
13
13
  require 'time'
14
14
 
15
15
  module KlaviyoAPI
16
- class SendPushNotificationActionContentExperimentActionData
16
+ class ContentExperimentActionData
17
17
  # Flow action status.
18
18
  attr_accessor :status
19
19
 
@@ -66,8 +66,8 @@ module KlaviyoAPI
66
66
  {
67
67
  :'status' => :'String',
68
68
  :'experiment_status' => :'String',
69
- :'main_action' => :'SendPushNotificationAction',
70
- :'current_experiment' => :'SendPushNotificationActionCurrentExperiment'
69
+ :'main_action' => :'ContentExperimentActionDataMainAction',
70
+ :'current_experiment' => :'ContentExperimentActionDataCurrentExperiment'
71
71
  }
72
72
  end
73
73
 
@@ -75,6 +75,7 @@ module KlaviyoAPI
75
75
  def self.openapi_nullable
76
76
  Set.new([
77
77
  :'experiment_status',
78
+ :'current_experiment'
78
79
  ])
79
80
  end
80
81
 
@@ -82,13 +83,13 @@ module KlaviyoAPI
82
83
  # @param [Hash] attributes Model attributes in the form of hash
83
84
  def initialize(attributes = {})
84
85
  if (!attributes.is_a?(Hash))
85
- fail ArgumentError, "The input argument (attributes) must be a hash in `KlaviyoAPI::SendPushNotificationActionContentExperimentActionData` initialize method"
86
+ fail ArgumentError, "The input argument (attributes) must be a hash in `KlaviyoAPI::ContentExperimentActionData` initialize method"
86
87
  end
87
88
 
88
89
  # check to see if the attribute exists and convert string to symbol for hash key
89
90
  attributes = attributes.each_with_object({}) { |(k, v), h|
90
91
  if (!self.class.attribute_map.key?(k.to_sym))
91
- fail ArgumentError, "`#{k}` is not a valid attribute in `KlaviyoAPI::SendPushNotificationActionContentExperimentActionData`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
92
+ fail ArgumentError, "`#{k}` is not a valid attribute in `KlaviyoAPI::ContentExperimentActionData`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
92
93
  end
93
94
  h[k.to_sym] = v
94
95
  }
@@ -13,7 +13,7 @@ require 'date'
13
13
  require 'time'
14
14
 
15
15
  module KlaviyoAPI
16
- class SendPushNotificationActionCurrentExperiment
16
+ class ContentExperimentActionDataCurrentExperiment
17
17
  # Not allowed on create.
18
18
  attr_accessor :id
19
19
 
@@ -72,7 +72,7 @@ module KlaviyoAPI
72
72
  {
73
73
  :'id' => :'String',
74
74
  :'name' => :'String',
75
- :'variations' => :'Array<SendPushNotificationAction>',
75
+ :'variations' => :'Array<ContentExperimentActionDataMainAction>',
76
76
  :'allocations' => :'Object',
77
77
  :'started' => :'Time',
78
78
  :'winner_metric' => :'String'
@@ -94,13 +94,13 @@ module KlaviyoAPI
94
94
  # @param [Hash] attributes Model attributes in the form of hash
95
95
  def initialize(attributes = {})
96
96
  if (!attributes.is_a?(Hash))
97
- fail ArgumentError, "The input argument (attributes) must be a hash in `KlaviyoAPI::SendPushNotificationActionCurrentExperiment` initialize method"
97
+ fail ArgumentError, "The input argument (attributes) must be a hash in `KlaviyoAPI::ContentExperimentActionDataCurrentExperiment` initialize method"
98
98
  end
99
99
 
100
100
  # check to see if the attribute exists and convert string to symbol for hash key
101
101
  attributes = attributes.each_with_object({}) { |(k, v), h|
102
102
  if (!self.class.attribute_map.key?(k.to_sym))
103
- fail ArgumentError, "`#{k}` is not a valid attribute in `KlaviyoAPI::SendPushNotificationActionCurrentExperiment`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
103
+ fail ArgumentError, "`#{k}` is not a valid attribute in `KlaviyoAPI::ContentExperimentActionDataCurrentExperiment`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
104
104
  end
105
105
  h[k.to_sym] = v
106
106
  }
@@ -147,7 +147,7 @@ module KlaviyoAPI
147
147
  # @return true if the model is valid
148
148
  def valid?
149
149
  return false if @variations.nil?
150
- winner_metric_validator = EnumAttributeValidator.new('String', ["open-rate"])
150
+ winner_metric_validator = EnumAttributeValidator.new('String', ["click-rate", "open-rate"])
151
151
  return false unless winner_metric_validator.valid?(@winner_metric)
152
152
  true
153
153
  end
@@ -155,7 +155,7 @@ module KlaviyoAPI
155
155
  # Custom attribute writer method checking allowed values (enum).
156
156
  # @param [Object] winner_metric Object to be assigned
157
157
  def winner_metric=(winner_metric)
158
- validator = EnumAttributeValidator.new('String', ["open-rate"])
158
+ validator = EnumAttributeValidator.new('String', ["click-rate", "open-rate"])
159
159
  unless validator.valid?(winner_metric)
160
160
  fail ArgumentError, "invalid value for \"winner_metric\", must be one of #{validator.allowable_values}."
161
161
  end