algolia 3.10.2 → 3.12.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 (605) hide show
  1. checksums.yaml +4 -4
  2. data/.github/ISSUE_TEMPLATE/Bug_report.yml +1 -1
  3. data/.github/workflows/release.yml +1 -1
  4. data/CHANGELOG.md +24 -0
  5. data/Gemfile.lock +1 -1
  6. data/lib/algolia/api/abtesting_client.rb +3 -1
  7. data/lib/algolia/api/analytics_client.rb +45 -43
  8. data/lib/algolia/api/composition_client.rb +174 -0
  9. data/lib/algolia/api/ingestion_client.rb +15 -3
  10. data/lib/algolia/api/insights_client.rb +3 -1
  11. data/lib/algolia/api/monitoring_client.rb +2 -0
  12. data/lib/algolia/api/personalization_client.rb +3 -1
  13. data/lib/algolia/api/query_suggestions_client.rb +3 -1
  14. data/lib/algolia/api/recommend_client.rb +20 -18
  15. data/lib/algolia/api/search_client.rb +160 -141
  16. data/lib/algolia/models/abtesting/ab_test.rb +2 -5
  17. data/lib/algolia/models/abtesting/ab_test_configuration.rb +2 -5
  18. data/lib/algolia/models/abtesting/ab_test_response.rb +2 -5
  19. data/lib/algolia/models/abtesting/ab_tests_variant.rb +2 -5
  20. data/lib/algolia/models/abtesting/ab_tests_variant_search_params.rb +7 -3
  21. data/lib/algolia/models/abtesting/add_ab_tests_request.rb +2 -5
  22. data/lib/algolia/models/abtesting/add_ab_tests_variant.rb +7 -6
  23. data/lib/algolia/models/abtesting/currency.rb +2 -5
  24. data/lib/algolia/models/abtesting/effect_metric.rb +2 -0
  25. data/lib/algolia/models/abtesting/empty_search.rb +2 -5
  26. data/lib/algolia/models/abtesting/empty_search_filter.rb +2 -5
  27. data/lib/algolia/models/abtesting/error_base.rb +2 -5
  28. data/lib/algolia/models/abtesting/estimate_ab_test_request.rb +2 -5
  29. data/lib/algolia/models/abtesting/estimate_ab_test_response.rb +2 -5
  30. data/lib/algolia/models/abtesting/estimate_configuration.rb +2 -5
  31. data/lib/algolia/models/abtesting/filter_effects.rb +2 -5
  32. data/lib/algolia/models/abtesting/list_ab_tests_response.rb +2 -5
  33. data/lib/algolia/models/abtesting/minimum_detectable_effect.rb +2 -5
  34. data/lib/algolia/models/abtesting/outliers.rb +2 -5
  35. data/lib/algolia/models/abtesting/outliers_filter.rb +2 -5
  36. data/lib/algolia/models/abtesting/schedule_ab_test_response.rb +2 -5
  37. data/lib/algolia/models/abtesting/schedule_ab_tests_request.rb +2 -5
  38. data/lib/algolia/models/abtesting/status.rb +2 -0
  39. data/lib/algolia/models/abtesting/variant.rb +2 -5
  40. data/lib/algolia/models/analytics/click_position.rb +2 -5
  41. data/lib/algolia/models/analytics/currency_code.rb +2 -5
  42. data/lib/algolia/models/analytics/daily_add_to_cart_rates.rb +3 -6
  43. data/lib/algolia/models/analytics/daily_average_clicks.rb +2 -5
  44. data/lib/algolia/models/analytics/daily_click_through_rates.rb +3 -6
  45. data/lib/algolia/models/analytics/daily_conversion_rates.rb +3 -6
  46. data/lib/algolia/models/analytics/daily_no_click_rates.rb +3 -6
  47. data/lib/algolia/models/analytics/daily_no_results_rates.rb +3 -6
  48. data/lib/algolia/models/analytics/daily_purchase_rates.rb +3 -6
  49. data/lib/algolia/models/analytics/daily_revenue.rb +3 -6
  50. data/lib/algolia/models/analytics/daily_searches.rb +2 -5
  51. data/lib/algolia/models/analytics/daily_searches_no_clicks.rb +2 -5
  52. data/lib/algolia/models/analytics/daily_searches_no_results.rb +2 -5
  53. data/lib/algolia/models/analytics/daily_users.rb +2 -5
  54. data/lib/algolia/models/analytics/direction.rb +2 -0
  55. data/lib/algolia/models/analytics/error_base.rb +2 -5
  56. data/lib/algolia/models/analytics/get_add_to_cart_rate_response.rb +3 -6
  57. data/lib/algolia/models/analytics/get_average_click_position_response.rb +2 -5
  58. data/lib/algolia/models/analytics/get_click_positions_response.rb +2 -5
  59. data/lib/algolia/models/analytics/get_click_through_rate_response.rb +3 -6
  60. data/lib/algolia/models/analytics/get_conversion_rate_response.rb +3 -6
  61. data/lib/algolia/models/analytics/get_no_click_rate_response.rb +3 -6
  62. data/lib/algolia/models/analytics/get_no_results_rate_response.rb +3 -6
  63. data/lib/algolia/models/analytics/get_purchase_rate_response.rb +3 -6
  64. data/lib/algolia/models/analytics/get_revenue.rb +3 -6
  65. data/lib/algolia/models/analytics/get_searches_count_response.rb +2 -5
  66. data/lib/algolia/models/analytics/get_searches_no_clicks_response.rb +2 -5
  67. data/lib/algolia/models/analytics/get_searches_no_results_response.rb +2 -5
  68. data/lib/algolia/models/analytics/get_status_response.rb +2 -5
  69. data/lib/algolia/models/analytics/get_top_countries_response.rb +2 -5
  70. data/lib/algolia/models/analytics/get_top_filter_attribute.rb +2 -5
  71. data/lib/algolia/models/analytics/get_top_filter_attributes_response.rb +2 -5
  72. data/lib/algolia/models/analytics/get_top_filter_for_attribute.rb +2 -5
  73. data/lib/algolia/models/analytics/get_top_filter_for_attribute_response.rb +2 -5
  74. data/lib/algolia/models/analytics/get_top_filters_no_results_response.rb +3 -6
  75. data/lib/algolia/models/analytics/get_top_filters_no_results_value.rb +2 -5
  76. data/lib/algolia/models/analytics/get_top_filters_no_results_values.rb +2 -5
  77. data/lib/algolia/models/analytics/get_top_hits_response.rb +7 -6
  78. data/lib/algolia/models/analytics/get_top_searches_response.rb +7 -6
  79. data/lib/algolia/models/analytics/get_users_count_response.rb +2 -5
  80. data/lib/algolia/models/analytics/operator.rb +2 -0
  81. data/lib/algolia/models/analytics/order_by.rb +2 -0
  82. data/lib/algolia/models/analytics/top_country.rb +2 -5
  83. data/lib/algolia/models/analytics/top_hit.rb +3 -6
  84. data/lib/algolia/models/analytics/top_hit_with_analytics.rb +5 -8
  85. data/lib/algolia/models/analytics/top_hit_with_revenue_analytics.rb +8 -11
  86. data/lib/algolia/models/analytics/top_hits_response.rb +2 -5
  87. data/lib/algolia/models/analytics/top_hits_response_with_analytics.rb +2 -5
  88. data/lib/algolia/models/analytics/top_hits_response_with_revenue_analytics.rb +2 -5
  89. data/lib/algolia/models/analytics/top_search.rb +2 -5
  90. data/lib/algolia/models/analytics/top_search_with_analytics.rb +4 -7
  91. data/lib/algolia/models/analytics/top_search_with_revenue_analytics.rb +7 -10
  92. data/lib/algolia/models/analytics/top_searches_response.rb +2 -5
  93. data/lib/algolia/models/analytics/top_searches_response_with_analytics.rb +2 -5
  94. data/lib/algolia/models/analytics/top_searches_response_with_revenue_analytics.rb +2 -5
  95. data/lib/algolia/models/composition/around_precision.rb +110 -0
  96. data/lib/algolia/models/composition/around_radius.rb +110 -0
  97. data/lib/algolia/models/{ingestion/docker_registry.rb → composition/around_radius_all.rb} +8 -7
  98. data/lib/algolia/models/composition/banner.rb +215 -0
  99. data/lib/algolia/models/composition/banner_image.rb +220 -0
  100. data/lib/algolia/models/composition/banner_image_url.rb +209 -0
  101. data/lib/algolia/models/composition/banner_link.rb +209 -0
  102. data/lib/algolia/models/composition/composition_id_ranking_info.rb +221 -0
  103. data/lib/algolia/models/composition/composition_run_applied_rules.rb +211 -0
  104. data/lib/algolia/models/composition/composition_run_search_response.rb +222 -0
  105. data/lib/algolia/models/composition/compositions_search_response.rb +212 -0
  106. data/lib/algolia/models/composition/error_base.rb +209 -0
  107. data/lib/algolia/models/composition/exhaustive.rb +250 -0
  108. data/lib/algolia/models/composition/facet_filters.rb +110 -0
  109. data/lib/algolia/models/composition/facet_hits.rb +235 -0
  110. data/lib/algolia/models/composition/facet_ordering.rb +221 -0
  111. data/lib/algolia/models/composition/facet_stats.rb +239 -0
  112. data/lib/algolia/models/composition/facets.rb +209 -0
  113. data/lib/algolia/models/composition/highlight_result.rb +110 -0
  114. data/lib/algolia/models/composition/highlight_result_option.rb +255 -0
  115. data/lib/algolia/models/composition/hit.rb +251 -0
  116. data/lib/algolia/models/composition/hit_ranking_info.rb +371 -0
  117. data/lib/algolia/models/composition/inside_bounding_box.rb +109 -0
  118. data/lib/algolia/models/{ingestion/docker_image_type.rb → composition/match_level.rb} +10 -8
  119. data/lib/algolia/models/composition/matched_geo_location.rb +229 -0
  120. data/lib/algolia/models/composition/numeric_filters.rb +110 -0
  121. data/lib/algolia/models/composition/optional_filters.rb +110 -0
  122. data/lib/algolia/models/composition/params.rb +488 -0
  123. data/lib/algolia/models/composition/personalization.rb +229 -0
  124. data/lib/algolia/models/composition/range.rb +217 -0
  125. data/lib/algolia/models/composition/redirect.rb +208 -0
  126. data/lib/algolia/models/composition/redirect_rule_index_data.rb +211 -0
  127. data/lib/algolia/models/composition/redirect_rule_index_metadata.rb +258 -0
  128. data/lib/algolia/models/composition/redirect_url.rb +209 -0
  129. data/lib/algolia/models/composition/rendering_content.rb +227 -0
  130. data/lib/algolia/models/composition/request_body.rb +208 -0
  131. data/lib/algolia/models/composition/results_composition_info_response.rb +212 -0
  132. data/lib/algolia/models/composition/results_injected_item_applied_rules_info_response.rb +211 -0
  133. data/lib/algolia/models/composition/results_injected_item_info_response.rb +221 -0
  134. data/lib/algolia/models/composition/search_for_facet_values_params.rb +228 -0
  135. data/lib/algolia/models/composition/search_for_facet_values_request.rb +208 -0
  136. data/lib/algolia/models/composition/search_for_facet_values_response.rb +211 -0
  137. data/lib/algolia/models/composition/search_for_facet_values_results.rb +253 -0
  138. data/lib/algolia/models/composition/search_response.rb +230 -0
  139. data/lib/algolia/models/composition/search_results_item.rb +608 -0
  140. data/lib/algolia/models/composition/snippet_result.rb +110 -0
  141. data/lib/algolia/models/composition/snippet_result_option.rb +230 -0
  142. data/lib/algolia/models/composition/sort_remaining_by.rb +35 -0
  143. data/lib/algolia/models/composition/supported_language.rb +169 -0
  144. data/lib/algolia/models/composition/value.rb +229 -0
  145. data/lib/algolia/models/composition/widgets.rb +209 -0
  146. data/lib/algolia/models/ingestion/action.rb +2 -0
  147. data/lib/algolia/models/ingestion/action_type.rb +2 -0
  148. data/lib/algolia/models/ingestion/auth_algolia.rb +2 -5
  149. data/lib/algolia/models/ingestion/auth_algolia_insights.rb +2 -5
  150. data/lib/algolia/models/ingestion/auth_algolia_insights_partial.rb +2 -5
  151. data/lib/algolia/models/ingestion/auth_algolia_partial.rb +2 -5
  152. data/lib/algolia/models/ingestion/auth_api_key.rb +7 -3
  153. data/lib/algolia/models/ingestion/auth_api_key_partial.rb +7 -3
  154. data/lib/algolia/models/ingestion/auth_basic.rb +8 -3
  155. data/lib/algolia/models/ingestion/auth_basic_partial.rb +7 -3
  156. data/lib/algolia/models/ingestion/auth_google_service_account.rb +8 -3
  157. data/lib/algolia/models/ingestion/auth_google_service_account_partial.rb +7 -3
  158. data/lib/algolia/models/ingestion/auth_input.rb +7 -6
  159. data/lib/algolia/models/ingestion/auth_input_partial.rb +7 -6
  160. data/lib/algolia/models/ingestion/auth_o_auth.rb +9 -3
  161. data/lib/algolia/models/ingestion/auth_o_auth_partial.rb +7 -3
  162. data/lib/algolia/models/ingestion/authentication.rb +2 -5
  163. data/lib/algolia/models/ingestion/authentication_create.rb +2 -5
  164. data/lib/algolia/models/ingestion/authentication_create_response.rb +2 -5
  165. data/lib/algolia/models/ingestion/authentication_search.rb +2 -5
  166. data/lib/algolia/models/ingestion/authentication_sort_keys.rb +2 -0
  167. data/lib/algolia/models/ingestion/authentication_type.rb +2 -0
  168. data/lib/algolia/models/ingestion/authentication_update.rb +2 -5
  169. data/lib/algolia/models/ingestion/authentication_update_response.rb +2 -5
  170. data/lib/algolia/models/ingestion/big_commerce_channel.rb +2 -5
  171. data/lib/algolia/models/ingestion/big_commerce_metafield.rb +2 -5
  172. data/lib/algolia/models/ingestion/big_query_data_type.rb +2 -0
  173. data/lib/algolia/models/ingestion/commercetools_custom_fields.rb +2 -5
  174. data/lib/algolia/models/ingestion/delete_response.rb +2 -5
  175. data/lib/algolia/models/ingestion/destination.rb +2 -5
  176. data/lib/algolia/models/ingestion/destination_create.rb +2 -5
  177. data/lib/algolia/models/ingestion/destination_create_response.rb +2 -5
  178. data/lib/algolia/models/ingestion/destination_index_name.rb +2 -5
  179. data/lib/algolia/models/ingestion/destination_input.rb +7 -6
  180. data/lib/algolia/models/ingestion/destination_search.rb +2 -5
  181. data/lib/algolia/models/ingestion/destination_sort_keys.rb +2 -0
  182. data/lib/algolia/models/ingestion/destination_type.rb +2 -0
  183. data/lib/algolia/models/ingestion/destination_update.rb +2 -5
  184. data/lib/algolia/models/ingestion/destination_update_response.rb +2 -5
  185. data/lib/algolia/models/ingestion/docker_streams.rb +2 -5
  186. data/lib/algolia/models/ingestion/docker_streams_input.rb +8 -4
  187. data/lib/algolia/models/ingestion/docker_streams_sync_mode.rb +2 -0
  188. data/lib/algolia/models/ingestion/email_notifications.rb +209 -0
  189. data/lib/algolia/models/ingestion/entity_type.rb +2 -0
  190. data/lib/algolia/models/ingestion/error_base.rb +2 -5
  191. data/lib/algolia/models/ingestion/event.rb +2 -5
  192. data/lib/algolia/models/ingestion/event_sort_keys.rb +2 -0
  193. data/lib/algolia/models/ingestion/event_status.rb +2 -0
  194. data/lib/algolia/models/ingestion/event_type.rb +2 -0
  195. data/lib/algolia/models/ingestion/list_authentications_response.rb +2 -5
  196. data/lib/algolia/models/ingestion/list_destinations_response.rb +2 -5
  197. data/lib/algolia/models/ingestion/list_events_response.rb +2 -5
  198. data/lib/algolia/models/ingestion/list_sources_response.rb +2 -5
  199. data/lib/algolia/models/ingestion/list_tasks_response.rb +2 -5
  200. data/lib/algolia/models/ingestion/list_tasks_response_v1.rb +2 -5
  201. data/lib/algolia/models/ingestion/list_transformations_response.rb +2 -5
  202. data/lib/algolia/models/ingestion/mapping_field_directive.rb +2 -5
  203. data/lib/algolia/models/ingestion/mapping_format_schema.rb +2 -0
  204. data/lib/algolia/models/ingestion/mapping_input.rb +8 -3
  205. data/lib/algolia/models/ingestion/mapping_kit_action.rb +2 -5
  206. data/lib/algolia/models/ingestion/mapping_type_csv.rb +2 -0
  207. data/lib/algolia/models/ingestion/method_type.rb +2 -0
  208. data/lib/algolia/models/ingestion/notifications.rb +211 -0
  209. data/lib/algolia/models/ingestion/on_demand_trigger.rb +2 -5
  210. data/lib/algolia/models/ingestion/on_demand_trigger_input.rb +2 -5
  211. data/lib/algolia/models/ingestion/on_demand_trigger_type.rb +2 -0
  212. data/lib/algolia/models/ingestion/order_keys.rb +2 -0
  213. data/lib/algolia/models/ingestion/pagination.rb +2 -5
  214. data/lib/algolia/models/ingestion/platform.rb +2 -0
  215. data/lib/algolia/models/ingestion/platform_none.rb +2 -0
  216. data/lib/algolia/models/ingestion/platform_with_none.rb +7 -6
  217. data/lib/algolia/models/ingestion/policies.rb +207 -0
  218. data/lib/algolia/models/ingestion/push_task_payload.rb +2 -5
  219. data/lib/algolia/models/ingestion/push_task_records.rb +10 -13
  220. data/lib/algolia/models/ingestion/record_type.rb +2 -0
  221. data/lib/algolia/models/ingestion/run.rb +2 -5
  222. data/lib/algolia/models/ingestion/run_list_response.rb +2 -5
  223. data/lib/algolia/models/ingestion/run_outcome.rb +3 -2
  224. data/lib/algolia/models/ingestion/run_progress.rb +6 -5
  225. data/lib/algolia/models/ingestion/run_reason_code.rb +2 -0
  226. data/lib/algolia/models/ingestion/run_response.rb +2 -5
  227. data/lib/algolia/models/ingestion/run_sort_keys.rb +2 -0
  228. data/lib/algolia/models/ingestion/run_source_payload.rb +2 -5
  229. data/lib/algolia/models/ingestion/run_source_response.rb +2 -5
  230. data/lib/algolia/models/ingestion/run_status.rb +2 -0
  231. data/lib/algolia/models/ingestion/run_type.rb +2 -0
  232. data/lib/algolia/models/ingestion/schedule_trigger.rb +2 -5
  233. data/lib/algolia/models/ingestion/schedule_trigger_input.rb +7 -3
  234. data/lib/algolia/models/ingestion/schedule_trigger_type.rb +2 -0
  235. data/lib/algolia/models/ingestion/shopify_input.rb +2 -5
  236. data/lib/algolia/models/ingestion/shopify_market.rb +2 -5
  237. data/lib/algolia/models/ingestion/shopify_metafield.rb +2 -5
  238. data/lib/algolia/models/ingestion/source.rb +2 -5
  239. data/lib/algolia/models/ingestion/source_big_commerce.rb +7 -3
  240. data/lib/algolia/models/ingestion/source_big_query.rb +7 -3
  241. data/lib/algolia/models/ingestion/source_commercetools.rb +7 -3
  242. data/lib/algolia/models/ingestion/source_create.rb +2 -5
  243. data/lib/algolia/models/ingestion/source_create_response.rb +2 -5
  244. data/lib/algolia/models/ingestion/source_csv.rb +2 -5
  245. data/lib/algolia/models/ingestion/source_docker.rb +10 -37
  246. data/lib/algolia/models/ingestion/source_ga4_big_query_export.rb +9 -3
  247. data/lib/algolia/models/ingestion/source_input.rb +7 -6
  248. data/lib/algolia/models/ingestion/source_json.rb +2 -5
  249. data/lib/algolia/models/ingestion/source_search.rb +2 -5
  250. data/lib/algolia/models/ingestion/source_shopify.rb +7 -3
  251. data/lib/algolia/models/ingestion/source_sort_keys.rb +2 -0
  252. data/lib/algolia/models/ingestion/source_type.rb +2 -0
  253. data/lib/algolia/models/ingestion/source_update.rb +2 -5
  254. data/lib/algolia/models/ingestion/source_update_commercetools.rb +2 -5
  255. data/lib/algolia/models/ingestion/source_update_docker.rb +8 -33
  256. data/lib/algolia/models/ingestion/source_update_input.rb +7 -6
  257. data/lib/algolia/models/ingestion/source_update_response.rb +2 -5
  258. data/lib/algolia/models/ingestion/source_update_shopify.rb +2 -5
  259. data/lib/algolia/models/ingestion/streaming_input.rb +7 -3
  260. data/lib/algolia/models/ingestion/streaming_trigger.rb +2 -5
  261. data/lib/algolia/models/ingestion/streaming_trigger_type.rb +2 -0
  262. data/lib/algolia/models/ingestion/subscription_trigger.rb +2 -5
  263. data/lib/algolia/models/ingestion/subscription_trigger_type.rb +2 -0
  264. data/lib/algolia/models/ingestion/task.rb +22 -5
  265. data/lib/algolia/models/ingestion/task_create.rb +24 -9
  266. data/lib/algolia/models/ingestion/task_create_response.rb +2 -5
  267. data/lib/algolia/models/ingestion/task_create_trigger.rb +7 -6
  268. data/lib/algolia/models/ingestion/task_create_v1.rb +2 -5
  269. data/lib/algolia/models/ingestion/task_input.rb +7 -6
  270. data/lib/algolia/models/ingestion/task_search.rb +2 -5
  271. data/lib/algolia/models/ingestion/task_sort_keys.rb +2 -0
  272. data/lib/algolia/models/ingestion/task_update.rb +24 -9
  273. data/lib/algolia/models/ingestion/task_update_response.rb +2 -5
  274. data/lib/algolia/models/ingestion/task_update_v1.rb +2 -5
  275. data/lib/algolia/models/ingestion/task_v1.rb +22 -5
  276. data/lib/algolia/models/ingestion/transformation.rb +2 -5
  277. data/lib/algolia/models/ingestion/transformation_create.rb +2 -5
  278. data/lib/algolia/models/ingestion/transformation_create_response.rb +2 -5
  279. data/lib/algolia/models/ingestion/transformation_error.rb +2 -5
  280. data/lib/algolia/models/ingestion/transformation_search.rb +2 -5
  281. data/lib/algolia/models/ingestion/transformation_sort_keys.rb +2 -0
  282. data/lib/algolia/models/ingestion/transformation_try.rb +2 -5
  283. data/lib/algolia/models/ingestion/transformation_try_response.rb +2 -5
  284. data/lib/algolia/models/ingestion/transformation_update_response.rb +2 -5
  285. data/lib/algolia/models/ingestion/trigger.rb +7 -6
  286. data/lib/algolia/models/ingestion/trigger_type.rb +2 -0
  287. data/lib/algolia/models/ingestion/trigger_update_input.rb +2 -5
  288. data/lib/algolia/models/ingestion/watch_response.rb +2 -5
  289. data/lib/algolia/models/ingestion/window.rb +2 -5
  290. data/lib/algolia/models/insights/add_to_cart_event.rb +2 -0
  291. data/lib/algolia/models/insights/added_to_cart_object_ids.rb +9 -3
  292. data/lib/algolia/models/insights/added_to_cart_object_ids_after_search.rb +10 -3
  293. data/lib/algolia/models/insights/click_event.rb +2 -0
  294. data/lib/algolia/models/insights/clicked_filters.rb +8 -3
  295. data/lib/algolia/models/insights/clicked_object_ids.rb +8 -3
  296. data/lib/algolia/models/insights/clicked_object_ids_after_search.rb +9 -3
  297. data/lib/algolia/models/insights/conversion_event.rb +2 -0
  298. data/lib/algolia/models/insights/converted_filters.rb +8 -3
  299. data/lib/algolia/models/insights/converted_object_ids.rb +8 -3
  300. data/lib/algolia/models/insights/converted_object_ids_after_search.rb +8 -3
  301. data/lib/algolia/models/insights/discount.rb +7 -6
  302. data/lib/algolia/models/insights/error_base.rb +2 -5
  303. data/lib/algolia/models/insights/events_items.rb +7 -6
  304. data/lib/algolia/models/insights/events_response.rb +2 -5
  305. data/lib/algolia/models/insights/insights_events.rb +2 -5
  306. data/lib/algolia/models/insights/object_data.rb +2 -5
  307. data/lib/algolia/models/insights/object_data_after_search.rb +2 -5
  308. data/lib/algolia/models/insights/price.rb +7 -6
  309. data/lib/algolia/models/insights/purchase_event.rb +2 -0
  310. data/lib/algolia/models/insights/purchased_object_ids.rb +9 -3
  311. data/lib/algolia/models/insights/purchased_object_ids_after_search.rb +10 -3
  312. data/lib/algolia/models/insights/value.rb +7 -6
  313. data/lib/algolia/models/insights/view_event.rb +2 -0
  314. data/lib/algolia/models/insights/viewed_filters.rb +8 -3
  315. data/lib/algolia/models/insights/viewed_object_ids.rb +8 -3
  316. data/lib/algolia/models/monitoring/error_base.rb +2 -5
  317. data/lib/algolia/models/monitoring/incident.rb +2 -5
  318. data/lib/algolia/models/monitoring/incident_entry.rb +2 -5
  319. data/lib/algolia/models/monitoring/incidents_response.rb +2 -5
  320. data/lib/algolia/models/monitoring/indexing_metric.rb +2 -5
  321. data/lib/algolia/models/monitoring/indexing_time_response.rb +2 -5
  322. data/lib/algolia/models/monitoring/infrastructure_response.rb +2 -5
  323. data/lib/algolia/models/monitoring/inventory_response.rb +2 -5
  324. data/lib/algolia/models/monitoring/latency_metric.rb +2 -5
  325. data/lib/algolia/models/monitoring/latency_response.rb +2 -5
  326. data/lib/algolia/models/monitoring/metric.rb +2 -0
  327. data/lib/algolia/models/monitoring/metrics.rb +2 -5
  328. data/lib/algolia/models/monitoring/period.rb +2 -0
  329. data/lib/algolia/models/monitoring/probes_metric.rb +2 -5
  330. data/lib/algolia/models/monitoring/region.rb +2 -0
  331. data/lib/algolia/models/monitoring/server.rb +2 -5
  332. data/lib/algolia/models/monitoring/server_status.rb +2 -0
  333. data/lib/algolia/models/monitoring/status.rb +2 -0
  334. data/lib/algolia/models/monitoring/status_response.rb +2 -5
  335. data/lib/algolia/models/monitoring/time_entry.rb +2 -5
  336. data/lib/algolia/models/monitoring/type.rb +2 -0
  337. data/lib/algolia/models/personalization/delete_user_profile_response.rb +2 -5
  338. data/lib/algolia/models/personalization/error_base.rb +2 -5
  339. data/lib/algolia/models/personalization/event_type.rb +2 -0
  340. data/lib/algolia/models/personalization/{event_scoring.rb → events_scoring.rb} +5 -8
  341. data/lib/algolia/models/personalization/{facet_scoring.rb → facets_scoring.rb} +5 -8
  342. data/lib/algolia/models/personalization/get_user_token_response.rb +2 -5
  343. data/lib/algolia/models/personalization/personalization_strategy_params.rb +19 -22
  344. data/lib/algolia/models/personalization/set_personalization_strategy_response.rb +2 -5
  345. data/lib/algolia/models/query-suggestions/base_response.rb +2 -5
  346. data/lib/algolia/models/query-suggestions/config_status.rb +2 -5
  347. data/lib/algolia/models/query-suggestions/configuration.rb +2 -5
  348. data/lib/algolia/models/query-suggestions/configuration_response.rb +2 -5
  349. data/lib/algolia/models/query-suggestions/configuration_with_index.rb +2 -5
  350. data/lib/algolia/models/query-suggestions/error_base.rb +2 -5
  351. data/lib/algolia/models/query-suggestions/facet.rb +2 -5
  352. data/lib/algolia/models/query-suggestions/languages.rb +7 -6
  353. data/lib/algolia/models/query-suggestions/log_file.rb +2 -5
  354. data/lib/algolia/models/query-suggestions/log_level.rb +2 -0
  355. data/lib/algolia/models/query-suggestions/source_index.rb +2 -5
  356. data/lib/algolia/models/recommend/advanced_syntax_features.rb +2 -0
  357. data/lib/algolia/models/recommend/alternatives_as_exact.rb +2 -0
  358. data/lib/algolia/models/recommend/around_precision.rb +7 -6
  359. data/lib/algolia/models/recommend/around_radius.rb +7 -6
  360. data/lib/algolia/models/recommend/around_radius_all.rb +2 -0
  361. data/lib/algolia/models/recommend/auto_facet_filter.rb +2 -5
  362. data/lib/algolia/models/recommend/banner.rb +3 -6
  363. data/lib/algolia/models/recommend/banner_image.rb +3 -6
  364. data/lib/algolia/models/recommend/banner_image_url.rb +3 -6
  365. data/lib/algolia/models/recommend/banner_link.rb +3 -6
  366. data/lib/algolia/models/recommend/boolean_string.rb +2 -0
  367. data/lib/algolia/models/recommend/bought_together_query.rb +10 -13
  368. data/lib/algolia/models/recommend/condition.rb +2 -5
  369. data/lib/algolia/models/recommend/consequence.rb +2 -5
  370. data/lib/algolia/models/recommend/deleted_at_response.rb +2 -5
  371. data/lib/algolia/models/recommend/distinct.rb +7 -6
  372. data/lib/algolia/models/recommend/error_base.rb +2 -5
  373. data/lib/algolia/models/recommend/exact_on_single_word_query.rb +2 -0
  374. data/lib/algolia/models/recommend/exhaustive.rb +2 -5
  375. data/lib/algolia/models/recommend/facet_filters.rb +7 -6
  376. data/lib/algolia/models/recommend/facet_ordering.rb +2 -5
  377. data/lib/algolia/models/recommend/facet_stats.rb +2 -5
  378. data/lib/algolia/models/recommend/fallback_params.rb +26 -5
  379. data/lib/algolia/models/recommend/fbt_model.rb +2 -0
  380. data/lib/algolia/models/recommend/get_recommend_task_response.rb +2 -5
  381. data/lib/algolia/models/recommend/get_recommendations_params.rb +2 -5
  382. data/lib/algolia/models/recommend/get_recommendations_response.rb +2 -5
  383. data/lib/algolia/models/recommend/hide_consequence_object.rb +9 -12
  384. data/lib/algolia/models/recommend/highlight_result.rb +7 -6
  385. data/lib/algolia/models/recommend/highlight_result_option.rb +8 -3
  386. data/lib/algolia/models/recommend/ignore_plurals.rb +7 -6
  387. data/lib/algolia/models/recommend/index_settings_facets.rb +2 -5
  388. data/lib/algolia/models/recommend/inside_bounding_box.rb +7 -6
  389. data/lib/algolia/models/recommend/looking_similar_model.rb +2 -0
  390. data/lib/algolia/models/recommend/looking_similar_query.rb +10 -13
  391. data/lib/algolia/models/recommend/match_level.rb +2 -0
  392. data/lib/algolia/models/recommend/matched_geo_location.rb +2 -5
  393. data/lib/algolia/models/recommend/numeric_filters.rb +7 -6
  394. data/lib/algolia/models/recommend/optional_filters.rb +8 -7
  395. data/lib/algolia/models/recommend/optional_words.rb +7 -6
  396. data/lib/algolia/models/recommend/params_consequence.rb +2 -5
  397. data/lib/algolia/models/recommend/personalization.rb +2 -5
  398. data/lib/algolia/models/recommend/promote_consequence_object.rb +9 -12
  399. data/lib/algolia/models/recommend/query_type.rb +2 -0
  400. data/lib/algolia/models/recommend/range.rb +2 -5
  401. data/lib/algolia/models/recommend/ranking_info.rb +2 -5
  402. data/lib/algolia/models/recommend/re_ranking_apply_filter.rb +7 -6
  403. data/lib/algolia/models/recommend/recommend_hit.rb +15 -11
  404. data/lib/algolia/models/recommend/recommend_models.rb +2 -0
  405. data/lib/algolia/models/recommend/recommend_rule.rb +9 -12
  406. data/lib/algolia/models/recommend/recommend_search_params.rb +26 -5
  407. data/lib/algolia/models/recommend/recommend_updated_at_response.rb +2 -5
  408. data/lib/algolia/models/recommend/recommendations_hit.rb +7 -6
  409. data/lib/algolia/models/recommend/recommendations_request.rb +7 -6
  410. data/lib/algolia/models/recommend/recommendations_results.rb +2 -5
  411. data/lib/algolia/models/recommend/redirect.rb +2 -5
  412. data/lib/algolia/models/recommend/redirect_rule_index_data.rb +2 -5
  413. data/lib/algolia/models/recommend/redirect_rule_index_metadata.rb +2 -5
  414. data/lib/algolia/models/recommend/redirect_url.rb +2 -5
  415. data/lib/algolia/models/recommend/related_model.rb +2 -0
  416. data/lib/algolia/models/recommend/related_query.rb +10 -13
  417. data/lib/algolia/models/recommend/remove_stop_words.rb +7 -6
  418. data/lib/algolia/models/recommend/remove_words_if_no_results.rb +2 -0
  419. data/lib/algolia/models/recommend/rendering_content.rb +2 -5
  420. data/lib/algolia/models/recommend/rule_metadata.rb +2 -5
  421. data/lib/algolia/models/recommend/search_recommend_rules_params.rb +2 -5
  422. data/lib/algolia/models/recommend/search_recommend_rules_response.rb +2 -5
  423. data/lib/algolia/models/recommend/snippet_result.rb +7 -6
  424. data/lib/algolia/models/recommend/snippet_result_option.rb +7 -3
  425. data/lib/algolia/models/recommend/sort_remaining_by.rb +2 -0
  426. data/lib/algolia/models/recommend/supported_language.rb +2 -0
  427. data/lib/algolia/models/recommend/tag_filters.rb +7 -6
  428. data/lib/algolia/models/recommend/task_status.rb +2 -0
  429. data/lib/algolia/models/recommend/time_range.rb +2 -5
  430. data/lib/algolia/models/recommend/trending_facet_hit.rb +8 -3
  431. data/lib/algolia/models/recommend/trending_facets_model.rb +2 -0
  432. data/lib/algolia/models/recommend/trending_facets_query.rb +2 -5
  433. data/lib/algolia/models/recommend/trending_items_model.rb +2 -0
  434. data/lib/algolia/models/recommend/trending_items_query.rb +2 -5
  435. data/lib/algolia/models/recommend/typo_tolerance.rb +7 -6
  436. data/lib/algolia/models/recommend/typo_tolerance_enum.rb +2 -0
  437. data/lib/algolia/models/recommend/value.rb +2 -5
  438. data/lib/algolia/models/recommend/widgets.rb +4 -7
  439. data/lib/algolia/models/search/acl.rb +2 -0
  440. data/lib/algolia/models/search/action.rb +2 -0
  441. data/lib/algolia/models/search/add_api_key_response.rb +2 -5
  442. data/lib/algolia/models/search/advanced_syntax_features.rb +2 -0
  443. data/lib/algolia/models/search/alternatives_as_exact.rb +2 -0
  444. data/lib/algolia/models/search/anchoring.rb +2 -0
  445. data/lib/algolia/models/search/api_key.rb +2 -5
  446. data/lib/algolia/models/search/api_key_operation.rb +2 -0
  447. data/lib/algolia/models/search/around_precision.rb +7 -6
  448. data/lib/algolia/models/search/around_radius.rb +7 -6
  449. data/lib/algolia/models/search/around_radius_all.rb +2 -0
  450. data/lib/algolia/models/search/assign_user_id_params.rb +2 -5
  451. data/lib/algolia/models/search/attribute_to_update.rb +7 -6
  452. data/lib/algolia/models/search/automatic_facet_filter.rb +2 -5
  453. data/lib/algolia/models/search/automatic_facet_filters.rb +7 -6
  454. data/lib/algolia/models/search/banner.rb +3 -6
  455. data/lib/algolia/models/search/banner_image.rb +3 -6
  456. data/lib/algolia/models/search/banner_image_url.rb +3 -6
  457. data/lib/algolia/models/search/banner_link.rb +3 -6
  458. data/lib/algolia/models/search/batch_assign_user_ids_params.rb +2 -5
  459. data/lib/algolia/models/search/batch_dictionary_entries_params.rb +2 -5
  460. data/lib/algolia/models/search/batch_dictionary_entries_request.rb +2 -5
  461. data/lib/algolia/models/search/batch_params.rb +2 -5
  462. data/lib/algolia/models/search/batch_request.rb +2 -5
  463. data/lib/algolia/models/search/batch_response.rb +2 -5
  464. data/lib/algolia/models/search/batch_write_params.rb +2 -5
  465. data/lib/algolia/models/search/boolean_string.rb +2 -0
  466. data/lib/algolia/models/search/browse_params.rb +7 -6
  467. data/lib/algolia/models/search/browse_params_object.rb +2 -29
  468. data/lib/algolia/models/search/browse_response.rb +2 -5
  469. data/lib/algolia/models/search/built_in_operation.rb +2 -5
  470. data/lib/algolia/models/search/built_in_operation_type.rb +2 -0
  471. data/lib/algolia/models/search/built_in_operation_value.rb +7 -6
  472. data/lib/algolia/models/search/condition.rb +2 -5
  473. data/lib/algolia/models/search/consequence.rb +2 -5
  474. data/lib/algolia/models/search/consequence_hide.rb +10 -13
  475. data/lib/algolia/models/search/consequence_params.rb +2 -29
  476. data/lib/algolia/models/search/consequence_query.rb +7 -6
  477. data/lib/algolia/models/search/consequence_query_object.rb +2 -5
  478. data/lib/algolia/models/search/created_at_response.rb +2 -5
  479. data/lib/algolia/models/search/delete_api_key_response.rb +2 -5
  480. data/lib/algolia/models/search/delete_by_params.rb +2 -5
  481. data/lib/algolia/models/search/delete_source_response.rb +2 -5
  482. data/lib/algolia/models/search/deleted_at_response.rb +2 -5
  483. data/lib/algolia/models/search/dictionary_action.rb +2 -0
  484. data/lib/algolia/models/search/dictionary_entry.rb +10 -13
  485. data/lib/algolia/models/search/dictionary_entry_state.rb +2 -0
  486. data/lib/algolia/models/search/dictionary_entry_type.rb +2 -0
  487. data/lib/algolia/models/search/dictionary_language.rb +2 -5
  488. data/lib/algolia/models/search/dictionary_settings_params.rb +2 -5
  489. data/lib/algolia/models/search/dictionary_type.rb +2 -0
  490. data/lib/algolia/models/search/distinct.rb +7 -6
  491. data/lib/algolia/models/search/edit.rb +2 -5
  492. data/lib/algolia/models/search/edit_type.rb +2 -0
  493. data/lib/algolia/models/search/error_base.rb +2 -5
  494. data/lib/algolia/models/search/exact_on_single_word_query.rb +2 -0
  495. data/lib/algolia/models/search/exhaustive.rb +2 -5
  496. data/lib/algolia/models/search/facet_filters.rb +7 -6
  497. data/lib/algolia/models/search/facet_hits.rb +2 -5
  498. data/lib/algolia/models/search/facet_ordering.rb +2 -5
  499. data/lib/algolia/models/search/facet_stats.rb +2 -5
  500. data/lib/algolia/models/search/facets.rb +2 -5
  501. data/lib/algolia/models/search/fetched_index.rb +2 -5
  502. data/lib/algolia/models/search/get_api_key_response.rb +2 -5
  503. data/lib/algolia/models/search/get_dictionary_settings_response.rb +2 -5
  504. data/lib/algolia/models/search/get_logs_response.rb +2 -5
  505. data/lib/algolia/models/search/get_objects_params.rb +2 -5
  506. data/lib/algolia/models/search/get_objects_request.rb +10 -13
  507. data/lib/algolia/models/search/get_objects_response.rb +2 -5
  508. data/lib/algolia/models/search/get_task_response.rb +2 -5
  509. data/lib/algolia/models/search/get_top_user_ids_response.rb +2 -5
  510. data/lib/algolia/models/search/has_pending_mappings_response.rb +2 -5
  511. data/lib/algolia/models/search/highlight_result.rb +7 -6
  512. data/lib/algolia/models/search/highlight_result_option.rb +8 -3
  513. data/lib/algolia/models/search/hit.rb +10 -13
  514. data/lib/algolia/models/search/ignore_plurals.rb +7 -6
  515. data/lib/algolia/models/search/index_settings.rb +26 -29
  516. data/lib/algolia/models/search/inside_bounding_box.rb +7 -6
  517. data/lib/algolia/models/search/languages.rb +2 -5
  518. data/lib/algolia/models/search/list_api_keys_response.rb +2 -5
  519. data/lib/algolia/models/search/list_clusters_response.rb +2 -5
  520. data/lib/algolia/models/search/list_indices_response.rb +2 -5
  521. data/lib/algolia/models/search/list_user_ids_response.rb +2 -5
  522. data/lib/algolia/models/search/log.rb +2 -5
  523. data/lib/algolia/models/search/log_query.rb +2 -5
  524. data/lib/algolia/models/search/log_type.rb +2 -0
  525. data/lib/algolia/models/search/match_level.rb +2 -0
  526. data/lib/algolia/models/search/matched_geo_location.rb +2 -5
  527. data/lib/algolia/models/search/mode.rb +2 -0
  528. data/lib/algolia/models/search/multiple_batch_request.rb +2 -5
  529. data/lib/algolia/models/search/multiple_batch_response.rb +2 -5
  530. data/lib/algolia/models/search/numeric_filters.rb +7 -6
  531. data/lib/algolia/models/search/operation_index_params.rb +2 -5
  532. data/lib/algolia/models/search/operation_type.rb +2 -0
  533. data/lib/algolia/models/search/optional_filters.rb +8 -7
  534. data/lib/algolia/models/search/optional_words.rb +7 -6
  535. data/lib/algolia/models/search/personalization.rb +2 -5
  536. data/lib/algolia/models/search/promote.rb +7 -6
  537. data/lib/algolia/models/search/promote_object_id.rb +15 -11
  538. data/lib/algolia/models/search/promote_object_ids.rb +7 -3
  539. data/lib/algolia/models/search/query_type.rb +2 -0
  540. data/lib/algolia/models/search/range.rb +2 -5
  541. data/lib/algolia/models/search/ranking_info.rb +2 -5
  542. data/lib/algolia/models/search/re_ranking_apply_filter.rb +7 -6
  543. data/lib/algolia/models/search/redirect.rb +2 -5
  544. data/lib/algolia/models/search/redirect_rule_index_data.rb +2 -5
  545. data/lib/algolia/models/search/redirect_rule_index_metadata.rb +2 -5
  546. data/lib/algolia/models/search/redirect_url.rb +2 -5
  547. data/lib/algolia/models/search/remove_stop_words.rb +7 -6
  548. data/lib/algolia/models/search/remove_user_id_response.rb +2 -5
  549. data/lib/algolia/models/search/remove_words_if_no_results.rb +2 -0
  550. data/lib/algolia/models/search/rendering_content.rb +2 -5
  551. data/lib/algolia/models/search/replace_all_objects_response.rb +2 -5
  552. data/lib/algolia/models/search/replace_source_response.rb +2 -5
  553. data/lib/algolia/models/search/rule.rb +10 -13
  554. data/lib/algolia/models/search/save_object_response.rb +9 -12
  555. data/lib/algolia/models/search/save_synonym_response.rb +2 -5
  556. data/lib/algolia/models/search/scope_type.rb +2 -0
  557. data/lib/algolia/models/search/search_dictionary_entries_params.rb +2 -5
  558. data/lib/algolia/models/search/search_dictionary_entries_response.rb +2 -5
  559. data/lib/algolia/models/search/search_for_facet_values_request.rb +2 -5
  560. data/lib/algolia/models/search/search_for_facet_values_response.rb +7 -3
  561. data/lib/algolia/models/search/search_for_facets.rb +8 -27
  562. data/lib/algolia/models/search/search_for_hits.rb +2 -29
  563. data/lib/algolia/models/search/search_method_params.rb +2 -5
  564. data/lib/algolia/models/search/search_params.rb +7 -6
  565. data/lib/algolia/models/search/search_params_object.rb +2 -29
  566. data/lib/algolia/models/search/search_params_string.rb +7 -3
  567. data/lib/algolia/models/search/search_query.rb +7 -6
  568. data/lib/algolia/models/search/search_response.rb +2 -5
  569. data/lib/algolia/models/search/search_responses.rb +2 -5
  570. data/lib/algolia/models/search/search_result.rb +7 -6
  571. data/lib/algolia/models/search/search_rules_params.rb +2 -5
  572. data/lib/algolia/models/search/search_rules_response.rb +2 -5
  573. data/lib/algolia/models/search/search_strategy.rb +2 -0
  574. data/lib/algolia/models/search/search_synonyms_params.rb +2 -5
  575. data/lib/algolia/models/search/search_synonyms_response.rb +2 -5
  576. data/lib/algolia/models/search/search_type_default.rb +2 -0
  577. data/lib/algolia/models/search/search_type_facet.rb +2 -0
  578. data/lib/algolia/models/search/search_user_ids_params.rb +2 -5
  579. data/lib/algolia/models/search/search_user_ids_response.rb +2 -5
  580. data/lib/algolia/models/search/secured_api_key_restrictions.rb +2 -5
  581. data/lib/algolia/models/search/semantic_search.rb +2 -5
  582. data/lib/algolia/models/search/settings_response.rb +26 -29
  583. data/lib/algolia/models/search/snippet_result.rb +7 -6
  584. data/lib/algolia/models/search/snippet_result_option.rb +7 -3
  585. data/lib/algolia/models/search/sort_remaining_by.rb +2 -0
  586. data/lib/algolia/models/search/source.rb +2 -5
  587. data/lib/algolia/models/search/standard_entries.rb +2 -5
  588. data/lib/algolia/models/search/supported_language.rb +2 -0
  589. data/lib/algolia/models/search/synonym_hit.rb +10 -13
  590. data/lib/algolia/models/search/synonym_type.rb +2 -0
  591. data/lib/algolia/models/search/tag_filters.rb +7 -6
  592. data/lib/algolia/models/search/task_status.rb +2 -0
  593. data/lib/algolia/models/search/time_range.rb +2 -5
  594. data/lib/algolia/models/search/typo_tolerance.rb +7 -6
  595. data/lib/algolia/models/search/typo_tolerance_enum.rb +2 -0
  596. data/lib/algolia/models/search/update_api_key_response.rb +2 -5
  597. data/lib/algolia/models/search/updated_at_response.rb +2 -5
  598. data/lib/algolia/models/search/updated_at_with_object_id_response.rb +9 -12
  599. data/lib/algolia/models/search/user_highlight_result.rb +2 -5
  600. data/lib/algolia/models/search/user_hit.rb +10 -13
  601. data/lib/algolia/models/search/user_id.rb +2 -5
  602. data/lib/algolia/models/search/value.rb +2 -5
  603. data/lib/algolia/models/search/widgets.rb +4 -7
  604. data/lib/algolia/version.rb +3 -1
  605. metadata +60 -11
@@ -0,0 +1,211 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
4
+
5
+ require "date"
6
+ require "time"
7
+
8
+ module Algolia
9
+ module Ingestion
10
+ # Notifications settings for a task.
11
+ class Notifications
12
+ attr_accessor :email
13
+
14
+ # Attribute mapping from ruby-style variable name to JSON key.
15
+ def self.attribute_map
16
+ {
17
+ :email => :email
18
+ }
19
+ end
20
+
21
+ # Attribute type mapping.
22
+ def self.types_mapping
23
+ {
24
+ :email => :"EmailNotifications"
25
+ }
26
+ end
27
+
28
+ # List of attributes with nullable: true
29
+ def self.openapi_nullable
30
+ Set.new(
31
+ []
32
+ )
33
+ end
34
+
35
+ # Initializes the object
36
+ # @param [Hash] attributes Model attributes in the form of hash
37
+ def initialize(attributes = {})
38
+ if (!attributes.is_a?(Hash))
39
+ raise(
40
+ ArgumentError,
41
+ "The input argument (attributes) must be a hash in `Algolia::Notifications` initialize method"
42
+ )
43
+ end
44
+
45
+ # check to see if the attribute exists and convert string to symbol for hash key
46
+ attributes = attributes.each_with_object({}) { |(k, v), h|
47
+ if (!self.class.attribute_map.key?(k.to_sym))
48
+ raise(
49
+ ArgumentError,
50
+ "`#{k}` is not a valid attribute in `Algolia::Notifications`. Please check the name to make sure it's valid. List of attributes: " +
51
+ self.class.attribute_map.keys.inspect
52
+ )
53
+ end
54
+
55
+ h[k.to_sym] = v
56
+ }
57
+
58
+ if attributes.key?(:email)
59
+ self.email = attributes[:email]
60
+ else
61
+ self.email = nil
62
+ end
63
+ end
64
+
65
+ # Checks equality by comparing each attribute.
66
+ # @param [Object] Object to be compared
67
+ def ==(other)
68
+ return true if self.equal?(other)
69
+ self.class == other.class &&
70
+ email == other.email
71
+ end
72
+
73
+ # @see the `==` method
74
+ # @param [Object] Object to be compared
75
+ def eql?(other)
76
+ self == other
77
+ end
78
+
79
+ # Calculates hash code according to all attributes.
80
+ # @return [Integer] Hash code
81
+ def hash
82
+ [email].hash
83
+ end
84
+
85
+ # Builds the object from hash
86
+ # @param [Hash] attributes Model attributes in the form of hash
87
+ # @return [Object] Returns the model itself
88
+ def self.build_from_hash(attributes)
89
+ return nil unless attributes.is_a?(Hash)
90
+ attributes = attributes.transform_keys(&:to_sym)
91
+ transformed_hash = {}
92
+ types_mapping.each_pair do |key, type|
93
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
94
+ transformed_hash[key.to_sym] = nil
95
+ elsif type =~ /\AArray<(.*)>/i
96
+ # check to ensure the input is an array given that the attribute
97
+ # is documented as an array but the input is not
98
+ if attributes[attribute_map[key]].is_a?(Array)
99
+ transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v|
100
+ _deserialize(::Regexp.last_match(1), v)
101
+ }
102
+ end
103
+ elsif !attributes[attribute_map[key]].nil?
104
+ transformed_hash[key.to_sym] = _deserialize(type, attributes[attribute_map[key]])
105
+ end
106
+ end
107
+
108
+ new(transformed_hash)
109
+ end
110
+
111
+ # Deserializes the data based on type
112
+ # @param string type Data type
113
+ # @param string value Value to be deserialized
114
+ # @return [Object] Deserialized data
115
+ def self._deserialize(type, value)
116
+ case type.to_sym
117
+ when :Time
118
+ Time.parse(value)
119
+ when :Date
120
+ Date.parse(value)
121
+ when :String
122
+ value.to_s
123
+ when :Integer
124
+ value.to_i
125
+ when :Float
126
+ value.to_f
127
+ when :Boolean
128
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
129
+ true
130
+ else
131
+ false
132
+ end
133
+
134
+ when :Object
135
+ # generic object (usually a Hash), return directly
136
+ value
137
+ when /\AArray<(?<inner_type>.+)>\z/
138
+ inner_type = Regexp.last_match[:inner_type]
139
+ value.map { |v| _deserialize(inner_type, v) }
140
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
141
+ k_type = Regexp.last_match[:k_type]
142
+ v_type = Regexp.last_match[:v_type]
143
+ {}.tap do |hash|
144
+ value.each do |k, v|
145
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
146
+ end
147
+ end
148
+ # model
149
+ else
150
+ # models (e.g. Pet) or oneOf
151
+ klass = Algolia::Ingestion.const_get(type)
152
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass
153
+ .build_from_hash(value)
154
+ end
155
+ end
156
+
157
+ # Returns the string representation of the object
158
+ # @return [String] String presentation of the object
159
+ def to_s
160
+ to_hash.to_s
161
+ end
162
+
163
+ # to_body is an alias to to_hash (backward compatibility)
164
+ # @return [Hash] Returns the object in the form of hash
165
+ def to_body
166
+ to_hash
167
+ end
168
+
169
+ def to_json(*_args)
170
+ to_hash.to_json
171
+ end
172
+
173
+ # Returns the object in the form of hash
174
+ # @return [Hash] Returns the object in the form of hash
175
+ def to_hash
176
+ hash = {}
177
+ self.class.attribute_map.each_pair do |attr, param|
178
+ value = send(attr)
179
+ if value.nil?
180
+ is_nullable = self.class.openapi_nullable.include?(attr)
181
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
182
+ end
183
+
184
+ hash[param] = _to_hash(value)
185
+ end
186
+
187
+ hash
188
+ end
189
+
190
+ # Outputs non-array value in the form of hash
191
+ # For object, use to_hash. Otherwise, just return the value
192
+ # @param [Object] value Any valid value
193
+ # @return [Hash] Returns the value in the form of hash
194
+ def _to_hash(value)
195
+ if value.is_a?(Array)
196
+ value.compact.map { |v| _to_hash(v) }
197
+ elsif value.is_a?(Hash)
198
+ {}.tap do |hash|
199
+ value.each { |k, v| hash[k] = _to_hash(v) }
200
+ end
201
+ elsif value.respond_to?(:to_hash)
202
+ value.to_hash
203
+ else
204
+ value
205
+ end
206
+ end
207
+
208
+ end
209
+
210
+ end
211
+ end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
2
4
 
3
5
  require "date"
@@ -20,11 +22,6 @@ module Algolia
20
22
  }
21
23
  end
22
24
 
23
- # Returns all the JSON keys this model knows about
24
- def self.acceptable_attributes
25
- attribute_map.values
26
- end
27
-
28
25
  # Attribute type mapping.
29
26
  def self.types_mapping
30
27
  {
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
2
4
 
3
5
  require "date"
@@ -16,11 +18,6 @@ module Algolia
16
18
  }
17
19
  end
18
20
 
19
- # Returns all the JSON keys this model knows about
20
- def self.acceptable_attributes
21
- attribute_map.values
22
- end
23
-
24
21
  # Attribute type mapping.
25
22
  def self.types_mapping
26
23
  {
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
2
4
 
3
5
  require "date"
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
2
4
 
3
5
  require "date"
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
2
4
 
3
5
  require "date"
@@ -29,11 +31,6 @@ module Algolia
29
31
  }
30
32
  end
31
33
 
32
- # Returns all the JSON keys this model knows about
33
- def self.acceptable_attributes
34
- attribute_map.values
35
- end
36
-
37
34
  # Attribute type mapping.
38
35
  def self.types_mapping
39
36
  {
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
2
4
 
3
5
  require "date"
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
2
4
 
3
5
  require "date"
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
2
4
 
3
5
  require "date"
@@ -44,7 +46,6 @@ module Algolia
44
46
 
45
47
  SchemaMismatchError = Class.new(StandardError)
46
48
 
47
- # Note: 'File' is missing here because in the regular case we get the data _after_ a call to JSON.parse.
48
49
  def find_and_cast_into_type(klass, data)
49
50
  return if data.nil?
50
51
 
@@ -83,12 +84,12 @@ module Algolia
83
84
  if const.respond_to?(:openapi_one_of)
84
85
  # nested oneOf model
85
86
  model = const.build(data)
86
- elsif const.respond_to?(:acceptable_attributes)
87
- # raise if data contains keys that are not known to the model
88
- raise unless (data.keys - const.acceptable_attributes).empty?
89
- model = const.build_from_hash(data)
87
+ elsif const.respond_to?(:discriminator_attributes)
88
+ if const.discriminator_attributes.all? { |attr| data.key?(attr) }
89
+ model = const.build_from_hash(data)
90
+ end
90
91
  else
91
- # maybe it's an enum
92
+ # maybe it's an enum, or doens't have discriminators
92
93
  model = const.build_from_hash(data)
93
94
  end
94
95
 
@@ -0,0 +1,207 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
4
+
5
+ require "date"
6
+ require "time"
7
+
8
+ module Algolia
9
+ module Ingestion
10
+ # Set of rules for a task.
11
+ class Policies
12
+ # The number of critical failures in a row before blocking the task and sending a notification.
13
+ attr_accessor :critical_threshold
14
+
15
+ # Attribute mapping from ruby-style variable name to JSON key.
16
+ def self.attribute_map
17
+ {
18
+ :critical_threshold => :criticalThreshold
19
+ }
20
+ end
21
+
22
+ # Attribute type mapping.
23
+ def self.types_mapping
24
+ {
25
+ :critical_threshold => :"Integer"
26
+ }
27
+ end
28
+
29
+ # List of attributes with nullable: true
30
+ def self.openapi_nullable
31
+ Set.new(
32
+ []
33
+ )
34
+ end
35
+
36
+ # Initializes the object
37
+ # @param [Hash] attributes Model attributes in the form of hash
38
+ def initialize(attributes = {})
39
+ if (!attributes.is_a?(Hash))
40
+ raise ArgumentError, "The input argument (attributes) must be a hash in `Algolia::Policies` initialize method"
41
+ end
42
+
43
+ # check to see if the attribute exists and convert string to symbol for hash key
44
+ attributes = attributes.each_with_object({}) { |(k, v), h|
45
+ if (!self.class.attribute_map.key?(k.to_sym))
46
+ raise(
47
+ ArgumentError,
48
+ "`#{k}` is not a valid attribute in `Algolia::Policies`. Please check the name to make sure it's valid. List of attributes: " +
49
+ self.class.attribute_map.keys.inspect
50
+ )
51
+ end
52
+
53
+ h[k.to_sym] = v
54
+ }
55
+
56
+ if attributes.key?(:critical_threshold)
57
+ self.critical_threshold = attributes[:critical_threshold]
58
+ end
59
+ end
60
+
61
+ # Checks equality by comparing each attribute.
62
+ # @param [Object] Object to be compared
63
+ def ==(other)
64
+ return true if self.equal?(other)
65
+ self.class == other.class &&
66
+ critical_threshold == other.critical_threshold
67
+ end
68
+
69
+ # @see the `==` method
70
+ # @param [Object] Object to be compared
71
+ def eql?(other)
72
+ self == other
73
+ end
74
+
75
+ # Calculates hash code according to all attributes.
76
+ # @return [Integer] Hash code
77
+ def hash
78
+ [critical_threshold].hash
79
+ end
80
+
81
+ # Builds the object from hash
82
+ # @param [Hash] attributes Model attributes in the form of hash
83
+ # @return [Object] Returns the model itself
84
+ def self.build_from_hash(attributes)
85
+ return nil unless attributes.is_a?(Hash)
86
+ attributes = attributes.transform_keys(&:to_sym)
87
+ transformed_hash = {}
88
+ types_mapping.each_pair do |key, type|
89
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
90
+ transformed_hash[key.to_sym] = nil
91
+ elsif type =~ /\AArray<(.*)>/i
92
+ # check to ensure the input is an array given that the attribute
93
+ # is documented as an array but the input is not
94
+ if attributes[attribute_map[key]].is_a?(Array)
95
+ transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v|
96
+ _deserialize(::Regexp.last_match(1), v)
97
+ }
98
+ end
99
+ elsif !attributes[attribute_map[key]].nil?
100
+ transformed_hash[key.to_sym] = _deserialize(type, attributes[attribute_map[key]])
101
+ end
102
+ end
103
+
104
+ new(transformed_hash)
105
+ end
106
+
107
+ # Deserializes the data based on type
108
+ # @param string type Data type
109
+ # @param string value Value to be deserialized
110
+ # @return [Object] Deserialized data
111
+ def self._deserialize(type, value)
112
+ case type.to_sym
113
+ when :Time
114
+ Time.parse(value)
115
+ when :Date
116
+ Date.parse(value)
117
+ when :String
118
+ value.to_s
119
+ when :Integer
120
+ value.to_i
121
+ when :Float
122
+ value.to_f
123
+ when :Boolean
124
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
125
+ true
126
+ else
127
+ false
128
+ end
129
+
130
+ when :Object
131
+ # generic object (usually a Hash), return directly
132
+ value
133
+ when /\AArray<(?<inner_type>.+)>\z/
134
+ inner_type = Regexp.last_match[:inner_type]
135
+ value.map { |v| _deserialize(inner_type, v) }
136
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
137
+ k_type = Regexp.last_match[:k_type]
138
+ v_type = Regexp.last_match[:v_type]
139
+ {}.tap do |hash|
140
+ value.each do |k, v|
141
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
142
+ end
143
+ end
144
+ # model
145
+ else
146
+ # models (e.g. Pet) or oneOf
147
+ klass = Algolia::Ingestion.const_get(type)
148
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass
149
+ .build_from_hash(value)
150
+ end
151
+ end
152
+
153
+ # Returns the string representation of the object
154
+ # @return [String] String presentation of the object
155
+ def to_s
156
+ to_hash.to_s
157
+ end
158
+
159
+ # to_body is an alias to to_hash (backward compatibility)
160
+ # @return [Hash] Returns the object in the form of hash
161
+ def to_body
162
+ to_hash
163
+ end
164
+
165
+ def to_json(*_args)
166
+ to_hash.to_json
167
+ end
168
+
169
+ # Returns the object in the form of hash
170
+ # @return [Hash] Returns the object in the form of hash
171
+ def to_hash
172
+ hash = {}
173
+ self.class.attribute_map.each_pair do |attr, param|
174
+ value = send(attr)
175
+ if value.nil?
176
+ is_nullable = self.class.openapi_nullable.include?(attr)
177
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
178
+ end
179
+
180
+ hash[param] = _to_hash(value)
181
+ end
182
+
183
+ hash
184
+ end
185
+
186
+ # Outputs non-array value in the form of hash
187
+ # For object, use to_hash. Otherwise, just return the value
188
+ # @param [Object] value Any valid value
189
+ # @return [Hash] Returns the value in the form of hash
190
+ def _to_hash(value)
191
+ if value.is_a?(Array)
192
+ value.compact.map { |v| _to_hash(v) }
193
+ elsif value.is_a?(Hash)
194
+ {}.tap do |hash|
195
+ value.each { |k, v| hash[k] = _to_hash(v) }
196
+ end
197
+ elsif value.respond_to?(:to_hash)
198
+ value.to_hash
199
+ else
200
+ value
201
+ end
202
+ end
203
+
204
+ end
205
+
206
+ end
207
+ end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
2
4
 
3
5
  require "date"
@@ -18,11 +20,6 @@ module Algolia
18
20
  }
19
21
  end
20
22
 
21
- # Returns all the JSON keys this model knows about
22
- def self.acceptable_attributes
23
- attribute_map.values
24
- end
25
-
26
23
  # Attribute type mapping.
27
24
  def self.types_mapping
28
25
  {
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
2
4
 
3
5
  require "date"
@@ -7,26 +9,21 @@ module Algolia
7
9
  module Ingestion
8
10
  class PushTaskRecords
9
11
  # Unique record identifier.
10
- attr_accessor :object_id
12
+ attr_accessor :algolia_object_id
11
13
 
12
14
  attr_accessor :additional_properties
13
15
 
14
16
  # Attribute mapping from ruby-style variable name to JSON key.
15
17
  def self.attribute_map
16
18
  {
17
- :object_id => :objectID
19
+ :algolia_object_id => :objectID
18
20
  }
19
21
  end
20
22
 
21
- # Returns all the JSON keys this model knows about
22
- def self.acceptable_attributes
23
- attribute_map.values
24
- end
25
-
26
23
  # Attribute type mapping.
27
24
  def self.types_mapping
28
25
  {
29
- :object_id => :"String"
26
+ :algolia_object_id => :"String"
30
27
  }
31
28
  end
32
29
 
@@ -47,10 +44,10 @@ module Algolia
47
44
  )
48
45
  end
49
46
 
50
- if attributes.key?(:object_id)
51
- self.object_id = attributes[:object_id]
47
+ if attributes.key?(:algolia_object_id)
48
+ self.algolia_object_id = attributes[:algolia_object_id]
52
49
  else
53
- self.object_id = nil
50
+ self.algolia_object_id = nil
54
51
  end
55
52
 
56
53
  # add extra attribute to additional_properties
@@ -63,7 +60,7 @@ module Algolia
63
60
  def ==(other)
64
61
  return true if self.equal?(other)
65
62
  self.class == other.class &&
66
- object_id == other.object_id
63
+ algolia_object_id == other.algolia_object_id
67
64
  end
68
65
 
69
66
  # @see the `==` method
@@ -75,7 +72,7 @@ module Algolia
75
72
  # Calculates hash code according to all attributes.
76
73
  # @return [Integer] Hash code
77
74
  def hash
78
- [object_id].hash
75
+ [algolia_object_id].hash
79
76
  end
80
77
 
81
78
  # Builds the object from hash
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
2
4
 
3
5
  require "date"
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
2
4
 
3
5
  require "date"
@@ -58,11 +60,6 @@ module Algolia
58
60
  }
59
61
  end
60
62
 
61
- # Returns all the JSON keys this model knows about
62
- def self.acceptable_attributes
63
- attribute_map.values
64
- end
65
-
66
63
  # Attribute type mapping.
67
64
  def self.types_mapping
68
65
  {
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
2
4
 
3
5
  require "date"
@@ -21,11 +23,6 @@ module Algolia
21
23
  }
22
24
  end
23
25
 
24
- # Returns all the JSON keys this model knows about
25
- def self.acceptable_attributes
26
- attribute_map.values
27
- end
28
-
29
26
  # Attribute type mapping.
30
27
  def self.types_mapping
31
28
  {
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
2
4
 
3
5
  require "date"
@@ -8,10 +10,9 @@ module Algolia
8
10
  class RunOutcome
9
11
  SUCCESS = "success".freeze
10
12
  FAILURE = "failure".freeze
11
- PROCESSING = "processing".freeze
12
13
 
13
14
  def self.all_vars
14
- @all_vars ||= [SUCCESS, FAILURE, PROCESSING].freeze
15
+ @all_vars ||= [SUCCESS, FAILURE].freeze
15
16
  end
16
17
 
17
18
  # Builds the enum from string