facebookbusiness 0.3.0.6 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (659) hide show
  1. checksums.yaml +4 -4
  2. data/lib/facebook_ads/ad_objects/ad.rb +54 -26
  3. data/lib/facebook_ads/ad_objects/ad_account.rb +757 -204
  4. data/lib/facebook_ads/ad_objects/ad_account_activity.rb +67 -0
  5. data/lib/facebook_ads/ad_objects/ad_account_ad_rules_history.rb +1 -2
  6. data/lib/facebook_ads/ad_objects/ad_account_all_payment_methods.rb +35 -0
  7. data/lib/facebook_ads/ad_objects/ad_account_asl_schedule.rb +40 -0
  8. data/lib/facebook_ads/ad_objects/ad_account_bank_info_list.rb +36 -0
  9. data/lib/facebook_ads/ad_objects/ad_account_billing_date_preference.rb +40 -0
  10. data/lib/facebook_ads/ad_objects/ad_account_checkout.rb +41 -0
  11. data/lib/facebook_ads/ad_objects/ad_account_checkout_payment.rb +43 -0
  12. data/lib/facebook_ads/ad_objects/ad_account_contextual_targeting.rb +8 -2
  13. data/lib/facebook_ads/ad_objects/ad_account_creation_request.rb +40 -1
  14. data/lib/facebook_ads/ad_objects/ad_account_custom_audience_limits.rb +40 -0
  15. data/lib/facebook_ads/ad_objects/ad_account_default_destination.rb +37 -0
  16. data/lib/facebook_ads/ad_objects/ad_account_default_objective.rb +79 -0
  17. data/lib/facebook_ads/ad_objects/ad_account_delivery_estimate.rb +2 -2
  18. data/lib/facebook_ads/ad_objects/ad_account_matched_search_applications_edge_data.rb +57 -0
  19. data/lib/facebook_ads/ad_objects/ad_account_payment_details.rb +40 -0
  20. data/lib/facebook_ads/ad_objects/ad_account_payment_options.rb +39 -0
  21. data/lib/facebook_ads/ad_objects/ad_account_placement_usage.rb +37 -0
  22. data/lib/facebook_ads/ad_objects/ad_account_prepay_details.rb +39 -0
  23. data/lib/facebook_ads/ad_objects/ad_account_promotable_objects.rb +38 -0
  24. data/lib/facebook_ads/ad_objects/ad_account_promotion_progress_bar.rb +43 -0
  25. data/lib/facebook_ads/ad_objects/ad_account_recommended_camapaign_budget.rb +38 -0
  26. data/lib/facebook_ads/ad_objects/ad_account_roas.rb +1 -34
  27. data/lib/facebook_ads/ad_objects/ad_account_spend_limit.rb +42 -0
  28. data/lib/facebook_ads/ad_objects/ad_account_subsidy_amount_details.rb +38 -0
  29. data/lib/facebook_ads/ad_objects/ad_account_targeting_unified.rb +12 -108
  30. data/lib/facebook_ads/ad_objects/ad_account_tracking_data.rb +36 -0
  31. data/lib/facebook_ads/ad_objects/ad_account_user.rb +1 -3
  32. data/lib/facebook_ads/ad_objects/ad_account_user_permissions.rb +45 -0
  33. data/lib/facebook_ads/ad_objects/ad_account_user_settings.rb +55 -0
  34. data/lib/facebook_ads/ad_objects/ad_activity.rb +2 -2
  35. data/lib/facebook_ads/ad_objects/ad_asset_feed.rb +216 -0
  36. data/lib/facebook_ads/ad_objects/ad_asset_feed_spec.rb +2 -2
  37. data/lib/facebook_ads/ad_objects/ad_asset_feed_spec_asset_label.rb +0 -1
  38. data/lib/facebook_ads/ad_objects/ad_asset_feed_spec_body.rb +1 -2
  39. data/lib/facebook_ads/ad_objects/ad_asset_feed_spec_caption.rb +1 -2
  40. data/lib/facebook_ads/ad_objects/ad_asset_feed_spec_description.rb +1 -2
  41. data/lib/facebook_ads/ad_objects/ad_asset_feed_spec_group_rule.rb +1 -2
  42. data/lib/facebook_ads/ad_objects/ad_asset_feed_spec_image.rb +1 -2
  43. data/lib/facebook_ads/ad_objects/ad_asset_feed_spec_link_url.rb +1 -2
  44. data/lib/facebook_ads/ad_objects/ad_asset_feed_spec_title.rb +1 -2
  45. data/lib/facebook_ads/ad_objects/ad_asset_feed_spec_video.rb +1 -2
  46. data/lib/facebook_ads/ad_objects/ad_async_request.rb +0 -1
  47. data/lib/facebook_ads/ad_objects/ad_async_request_set.rb +0 -2
  48. data/lib/facebook_ads/ad_objects/ad_async_request_set_notification_result.rb +1 -2
  49. data/lib/facebook_ads/ad_objects/ad_bid_adjustments.rb +38 -0
  50. data/lib/facebook_ads/ad_objects/ad_campaign_activity.rb +176 -0
  51. data/lib/facebook_ads/ad_objects/ad_campaign_bid_constraint.rb +36 -0
  52. data/lib/facebook_ads/ad_objects/ad_campaign_delivery_estimate.rb +2 -2
  53. data/lib/facebook_ads/ad_objects/ad_campaign_delivery_stats.rb +42 -0
  54. data/lib/facebook_ads/ad_objects/ad_campaign_frequency_control_specs.rb +1 -2
  55. data/lib/facebook_ads/ad_objects/ad_campaign_group_activity.rb +99 -0
  56. data/lib/facebook_ads/ad_objects/ad_campaign_group_stats.rb +50 -0
  57. data/lib/facebook_ads/ad_objects/ad_campaign_learning_stage_info.rb +41 -0
  58. data/lib/facebook_ads/ad_objects/ad_campaign_metrics_metadata.rb +39 -0
  59. data/lib/facebook_ads/ad_objects/ad_campaign_optimization_event.rb +38 -0
  60. data/lib/facebook_ads/ad_objects/ad_campaign_paced_bid_info.rb +36 -0
  61. data/lib/facebook_ads/ad_objects/ad_campaign_stats.rb +58 -0
  62. data/lib/facebook_ads/ad_objects/ad_column_sizes.rb +43 -0
  63. data/lib/facebook_ads/ad_objects/ad_contract.rb +77 -0
  64. data/lib/facebook_ads/ad_objects/ad_conversion_values.rb +38 -0
  65. data/lib/facebook_ads/ad_objects/ad_conversions.rb +39 -0
  66. data/lib/facebook_ads/ad_objects/ad_creative.rb +43 -9
  67. data/lib/facebook_ads/ad_objects/ad_creative_collection_thumbnail_info.rb +1 -2
  68. data/lib/facebook_ads/ad_objects/ad_creative_link_data.rb +4 -4
  69. data/lib/facebook_ads/ad_objects/ad_creative_link_data_app_link_spec.rb +1 -2
  70. data/lib/facebook_ads/ad_objects/ad_creative_link_data_call_to_action.rb +2 -2
  71. data/lib/facebook_ads/ad_objects/ad_creative_link_data_call_to_action_value.rb +2 -2
  72. data/lib/facebook_ads/ad_objects/ad_creative_link_data_child_attachment.rb +2 -2
  73. data/lib/facebook_ads/ad_objects/ad_creative_link_data_custom_overlay_spec.rb +4 -2
  74. data/lib/facebook_ads/ad_objects/ad_creative_link_data_image_layer_spec.rb +100 -0
  75. data/lib/facebook_ads/ad_objects/ad_creative_link_data_image_overlay_spec.rb +1 -2
  76. data/lib/facebook_ads/ad_objects/ad_creative_link_data_sponsorship_info_spec.rb +37 -0
  77. data/lib/facebook_ads/ad_objects/ad_creative_link_data_template_video_spec.rb +38 -0
  78. data/lib/facebook_ads/ad_objects/ad_creative_object_story_spec.rb +1 -2
  79. data/lib/facebook_ads/ad_objects/ad_creative_photo_data.rb +1 -2
  80. data/lib/facebook_ads/ad_objects/ad_creative_place_data.rb +1 -2
  81. data/lib/facebook_ads/ad_objects/ad_creative_platform_customization.rb +36 -0
  82. data/lib/facebook_ads/ad_objects/ad_creative_portrait_customizations.rb +36 -0
  83. data/lib/facebook_ads/ad_objects/ad_creative_post_click_configuration.rb +1 -2
  84. data/lib/facebook_ads/ad_objects/ad_creative_recommender_settings.rb +37 -0
  85. data/lib/facebook_ads/ad_objects/ad_creative_static_fallback_spec.rb +41 -0
  86. data/lib/facebook_ads/ad_objects/ad_creative_template_url_spec.rb +42 -0
  87. data/lib/facebook_ads/ad_objects/ad_creative_text_data.rb +1 -2
  88. data/lib/facebook_ads/ad_objects/ad_creative_video_data.rb +3 -2
  89. data/lib/facebook_ads/ad_objects/ad_creative_video_data_custom_overlay_spec.rb +76 -0
  90. data/lib/facebook_ads/ad_objects/ad_custom_derived_metrics.rb +41 -0
  91. data/lib/facebook_ads/ad_objects/ad_customization_rule_spec.rb +43 -0
  92. data/lib/facebook_ads/ad_objects/ad_default_values.rb +36 -0
  93. data/lib/facebook_ads/ad_objects/ad_delivery_insights.rb +42 -0
  94. data/lib/facebook_ads/ad_objects/ad_draft.rb +47 -0
  95. data/lib/facebook_ads/ad_objects/ad_dynamic_creative.rb +36 -0
  96. data/lib/facebook_ads/ad_objects/ad_entity_target_spend.rb +40 -0
  97. data/lib/facebook_ads/ad_objects/ad_export_preset.rb +40 -0
  98. data/lib/facebook_ads/ad_objects/ad_image.rb +1 -0
  99. data/lib/facebook_ads/ad_objects/ad_keyword_stats.rb +0 -1
  100. data/lib/facebook_ads/ad_objects/ad_kpi_shift.rb +41 -0
  101. data/lib/facebook_ads/ad_objects/ad_label.rb +0 -4
  102. data/lib/facebook_ads/ad_objects/ad_light_adgroup.rb +35 -0
  103. data/lib/facebook_ads/ad_objects/ad_light_campaign.rb +35 -0
  104. data/lib/facebook_ads/ad_objects/ad_light_campaign_group.rb +35 -0
  105. data/lib/facebook_ads/ad_objects/ad_monetization_property.rb +133 -0
  106. data/lib/facebook_ads/ad_objects/ad_network_analytics_async_query_export.rb +39 -0
  107. data/lib/facebook_ads/ad_objects/ad_network_analytics_async_query_result.rb +1 -2
  108. data/lib/facebook_ads/ad_objects/ad_network_analytics_sync_query_result.rb +68 -2
  109. data/lib/facebook_ads/ad_objects/ad_place_page_set_invalid_location.rb +37 -0
  110. data/lib/facebook_ads/ad_objects/ad_place_page_set_metadata.rb +38 -0
  111. data/lib/facebook_ads/ad_objects/ad_preview.rb +7 -2
  112. data/lib/facebook_ads/ad_objects/ad_promoted_object.rb +14 -2
  113. data/lib/facebook_ads/ad_objects/ad_recommendation.rb +1 -2
  114. data/lib/facebook_ads/ad_objects/ad_recommendation_data.rb +1 -2
  115. data/lib/facebook_ads/ad_objects/ad_report_run.rb +9 -7
  116. data/lib/facebook_ads/ad_objects/ad_report_spec.rb +105 -0
  117. data/lib/facebook_ads/ad_objects/ad_rule.rb +9 -1
  118. data/lib/facebook_ads/ad_objects/ad_rule_aggregated_execution_history.rb +38 -0
  119. data/lib/facebook_ads/ad_objects/ad_rule_evaluation_spec.rb +1 -2
  120. data/lib/facebook_ads/ad_objects/ad_rule_execution_options.rb +1 -2
  121. data/lib/facebook_ads/ad_objects/ad_rule_execution_spec.rb +1 -2
  122. data/lib/facebook_ads/ad_objects/ad_rule_filters.rb +1 -2
  123. data/lib/facebook_ads/ad_objects/ad_rule_history.rb +1 -2
  124. data/lib/facebook_ads/ad_objects/ad_rule_history_result.rb +1 -2
  125. data/lib/facebook_ads/ad_objects/ad_rule_history_result_action.rb +1 -2
  126. data/lib/facebook_ads/ad_objects/ad_rule_schedule.rb +1 -2
  127. data/lib/facebook_ads/ad_objects/ad_rule_schedule_spec.rb +1 -2
  128. data/lib/facebook_ads/ad_objects/ad_rule_trigger.rb +1 -2
  129. data/lib/facebook_ads/ad_objects/ad_saved_location.rb +44 -0
  130. data/lib/facebook_ads/ad_objects/ad_saved_report.rb +52 -0
  131. data/lib/facebook_ads/ad_objects/ad_script.rb +45 -0
  132. data/lib/facebook_ads/ad_objects/ad_script_execution_history.rb +44 -0
  133. data/lib/facebook_ads/ad_objects/ad_set.rb +71 -26
  134. data/lib/facebook_ads/ad_objects/ad_study.rb +27 -13
  135. data/lib/facebook_ads/ad_objects/ad_study_ads_asset_user_permissions.rb +1 -2
  136. data/lib/facebook_ads/ad_objects/ad_study_cell.rb +12 -0
  137. data/lib/facebook_ads/ad_objects/ad_study_objective.rb +0 -7
  138. data/lib/facebook_ads/ad_objects/ad_study_objective_id.rb +37 -0
  139. data/lib/facebook_ads/ad_objects/ad_topline.rb +69 -0
  140. data/lib/facebook_ads/ad_objects/ad_topline_detail.rb +49 -0
  141. data/lib/facebook_ads/ad_objects/ad_video.rb +421 -0
  142. data/lib/facebook_ads/ad_objects/adgroup_activity.rb +128 -0
  143. data/lib/facebook_ads/ad_objects/adgroup_metadata.rb +37 -0
  144. data/lib/facebook_ads/ad_objects/adgroup_placement_specific_review_feedback.rb +10 -2
  145. data/lib/facebook_ads/ad_objects/adgroup_relevance_score.rb +1 -2
  146. data/lib/facebook_ads/ad_objects/adgroup_review_feedback.rb +1 -2
  147. data/lib/facebook_ads/ad_objects/ads_action_stats.rb +5 -2
  148. data/lib/facebook_ads/ad_objects/ads_creation_saved_state.rb +38 -0
  149. data/lib/facebook_ads/ad_objects/ads_data_partner.rb +6 -0
  150. data/lib/facebook_ads/ad_objects/ads_image_crops.rb +1 -2
  151. data/lib/facebook_ads/ad_objects/ads_insights.rb +58 -26
  152. data/lib/facebook_ads/ad_objects/ads_optimal_delivery_growth_opportunity.rb +38 -0
  153. data/lib/facebook_ads/ad_objects/ads_payment_cycle.rb +41 -0
  154. data/lib/facebook_ads/ad_objects/ads_pixel.rb +82 -3
  155. data/lib/facebook_ads/ad_objects/ads_pixel_domain_control_rule.rb +37 -0
  156. data/lib/facebook_ads/ad_objects/ads_pixel_domain_last_fired_time.rb +37 -0
  157. data/lib/facebook_ads/ad_objects/ads_pixel_event_last_fired_time.rb +37 -0
  158. data/lib/facebook_ads/ad_objects/ads_pixel_event_prediction.rb +38 -0
  159. data/lib/facebook_ads/ad_objects/ads_pixel_event_suggestion_rule.rb +43 -0
  160. data/lib/facebook_ads/ad_objects/ads_pixel_microdata_stats.rb +36 -0
  161. data/lib/facebook_ads/ad_objects/ads_pixel_raw_fires_result.rb +41 -0
  162. data/lib/facebook_ads/ad_objects/ads_pixel_real_time_event_log_result.rb +42 -0
  163. data/lib/facebook_ads/ad_objects/ads_pixel_recent_events_result.rb +37 -0
  164. data/lib/facebook_ads/ad_objects/ads_pixel_server_to_server_key.rb +37 -0
  165. data/lib/facebook_ads/ad_objects/ads_pixel_signals_iwl_nux.rb +40 -0
  166. data/lib/facebook_ads/ad_objects/ads_pixel_stats.rb +1 -2
  167. data/lib/facebook_ads/ad_objects/ads_pixel_stats_result.rb +1 -2
  168. data/lib/facebook_ads/ad_objects/ads_pixel_traffic_anomaly_config.rb +40 -0
  169. data/lib/facebook_ads/ad_objects/ads_post.rb +55 -0
  170. data/lib/facebook_ads/ad_objects/ads_report_builder.rb +37 -0
  171. data/lib/facebook_ads/ad_objects/ads_report_builder_saved_report.rb +63 -0
  172. data/lib/facebook_ads/ad_objects/ads_segments.rb +43 -0
  173. data/lib/facebook_ads/ad_objects/ads_tal_health_check_error.rb +37 -0
  174. data/lib/facebook_ads/ad_objects/ads_tal_nudge.rb +39 -0
  175. data/lib/facebook_ads/ad_objects/ads_targeting_insights.rb +45 -0
  176. data/lib/facebook_ads/ad_objects/ads_user_settings.rb +61 -0
  177. data/lib/facebook_ads/ad_objects/age_range.rb +37 -0
  178. data/lib/facebook_ads/ad_objects/agency_client_declaration.rb +1 -2
  179. data/lib/facebook_ads/ad_objects/album.rb +97 -28
  180. data/lib/facebook_ads/ad_objects/an_blocked_bi_category.rb +36 -0
  181. data/lib/facebook_ads/ad_objects/analytics_cohort_query_result.rb +39 -0
  182. data/lib/facebook_ads/ad_objects/analytics_config.rb +62 -0
  183. data/lib/facebook_ads/ad_objects/analytics_entity_user_config.rb +36 -0
  184. data/lib/facebook_ads/ad_objects/analytics_event_types.rb +39 -0
  185. data/lib/facebook_ads/ad_objects/analytics_funnel_query_result.rb +39 -0
  186. data/lib/facebook_ads/ad_objects/analytics_platform_metrics_config.rb +44 -0
  187. data/lib/facebook_ads/ad_objects/analytics_query_export_result.rb +39 -0
  188. data/lib/facebook_ads/ad_objects/analytics_query_result.rb +40 -0
  189. data/lib/facebook_ads/ad_objects/analytics_segment.rb +53 -0
  190. data/lib/facebook_ads/ad_objects/analytics_user_config.rb +37 -0
  191. data/lib/facebook_ads/ad_objects/android_app_link.rb +1 -2
  192. data/lib/facebook_ads/ad_objects/app_event_config.rb +62 -0
  193. data/lib/facebook_ads/ad_objects/app_publisher.rb +41 -0
  194. data/lib/facebook_ads/ad_objects/app_request.rb +42 -0
  195. data/lib/facebook_ads/ad_objects/app_request_former_recipient.rb +36 -0
  196. data/lib/facebook_ads/ad_objects/application.rb +801 -0
  197. data/lib/facebook_ads/ad_objects/application_third_party_payload.rb +38 -0
  198. data/lib/facebook_ads/ad_objects/async_request.rb +51 -0
  199. data/lib/facebook_ads/ad_objects/async_session.rb +49 -0
  200. data/lib/facebook_ads/ad_objects/atlas_campaign.rb +75 -0
  201. data/lib/facebook_ads/ad_objects/atlas_company.rb +47 -0
  202. data/lib/facebook_ads/ad_objects/atlas_url.rb +36 -0
  203. data/lib/facebook_ads/ad_objects/atlas_user.rb +52 -0
  204. data/lib/facebook_ads/ad_objects/attribution_spec.rb +1 -2
  205. data/lib/facebook_ads/ad_objects/audience_insights_rule.rb +44 -0
  206. data/lib/facebook_ads/ad_objects/audience_insights_study_spec.rb +43 -0
  207. data/lib/facebook_ads/ad_objects/audience_overlap.rb +38 -0
  208. data/lib/facebook_ads/ad_objects/audience_permission.rb +1 -2
  209. data/lib/facebook_ads/ad_objects/{custom_audience_permission.rb → audience_permission_for_actions.rb} +2 -3
  210. data/lib/facebook_ads/ad_objects/audience_sharing_account_valid.rb +40 -0
  211. data/lib/facebook_ads/ad_objects/audience_sharing_recipient_accounts.rb +41 -0
  212. data/lib/facebook_ads/ad_objects/audience_study.rb +46 -0
  213. data/lib/facebook_ads/ad_objects/audio_copyright.rb +6 -1
  214. data/lib/facebook_ads/ad_objects/audio_release.rb +48 -0
  215. data/lib/facebook_ads/ad_objects/auto.rb +41 -0
  216. data/lib/facebook_ads/ad_objects/auto_market.rb +38 -0
  217. data/lib/facebook_ads/ad_objects/auto_offer.rb +52 -0
  218. data/lib/facebook_ads/ad_objects/automotive_model.rb +58 -0
  219. data/lib/facebook_ads/ad_objects/big_data_upload_session.rb +38 -0
  220. data/lib/facebook_ads/ad_objects/billed_amount_details.rb +39 -0
  221. data/lib/facebook_ads/ad_objects/blind_pig.rb +135 -0
  222. data/lib/facebook_ads/ad_objects/blocked_user_info.rb +39 -0
  223. data/lib/facebook_ads/ad_objects/brand_audience.rb +44 -0
  224. data/lib/facebook_ads/ad_objects/brand_request.rb +54 -0
  225. data/lib/facebook_ads/ad_objects/brazil_credit_memo.rb +40 -0
  226. data/lib/facebook_ads/ad_objects/broad_targeting_categories.rb +0 -1
  227. data/lib/facebook_ads/ad_objects/business.rb +376 -111
  228. data/lib/facebook_ads/ad_objects/business_activity_log_event.rb +1 -2
  229. data/lib/facebook_ads/ad_objects/business_ad_account_request.rb +0 -1
  230. data/lib/facebook_ads/ad_objects/business_advertisable_applications_result.rb +1 -1
  231. data/lib/facebook_ads/ad_objects/business_agreement.rb +42 -0
  232. data/lib/facebook_ads/ad_objects/business_application_request.rb +1 -2
  233. data/lib/facebook_ads/ad_objects/business_asset_sharing_agreement.rb +46 -0
  234. data/lib/facebook_ads/ad_objects/business_matched_search_applications_edge_data.rb +1 -2
  235. data/lib/facebook_ads/ad_objects/business_object.rb +39 -0
  236. data/lib/facebook_ads/ad_objects/business_owned_object_on_behalf_of_request.rb +39 -0
  237. data/lib/facebook_ads/ad_objects/business_page_request.rb +0 -1
  238. data/lib/facebook_ads/ad_objects/business_persona.rb +47 -0
  239. data/lib/facebook_ads/ad_objects/business_pixel_tos.rb +36 -0
  240. data/lib/facebook_ads/ad_objects/business_product_catalog_tos.rb +37 -0
  241. data/lib/facebook_ads/ad_objects/business_project.rb +43 -2
  242. data/lib/facebook_ads/ad_objects/business_request.rb +43 -0
  243. data/lib/facebook_ads/ad_objects/business_resource_group.rb +36 -0
  244. data/lib/facebook_ads/ad_objects/business_role_request.rb +1 -0
  245. data/lib/facebook_ads/ad_objects/business_setting_logs_data.rb +40 -0
  246. data/lib/facebook_ads/ad_objects/business_tag.rb +36 -0
  247. data/lib/facebook_ads/ad_objects/business_unit.rb +38 -0
  248. data/lib/facebook_ads/ad_objects/business_user.rb +20 -0
  249. data/lib/facebook_ads/ad_objects/calibrator_existing_rule.rb +51 -0
  250. data/lib/facebook_ads/ad_objects/campaign.rb +45 -31
  251. data/lib/facebook_ads/ad_objects/campaign_group_brand_configuration.rb +38 -0
  252. data/lib/facebook_ads/ad_objects/canvas.rb +1 -1
  253. data/lib/facebook_ads/ad_objects/canvas_ad_settings.rb +42 -0
  254. data/lib/facebook_ads/ad_objects/canvas_body_element.rb +1 -2
  255. data/lib/facebook_ads/ad_objects/canvas_collection_thumbnail.rb +38 -0
  256. data/lib/facebook_ads/ad_objects/canvas_dynamic_setting.rb +37 -0
  257. data/lib/facebook_ads/ad_objects/canvas_template.rb +48 -0
  258. data/lib/facebook_ads/ad_objects/catalog_smart_pixel_settings.rb +48 -0
  259. data/lib/facebook_ads/ad_objects/check_batch_request_status.rb +1 -2
  260. data/lib/facebook_ads/ad_objects/child_event.rb +38 -0
  261. data/lib/facebook_ads/ad_objects/client_transparency_status.rb +39 -0
  262. data/lib/facebook_ads/ad_objects/column_suggestions.rb +39 -0
  263. data/lib/facebook_ads/ad_objects/comment.rb +115 -0
  264. data/lib/facebook_ads/ad_objects/commerce_merchant_settings.rb +55 -0
  265. data/lib/facebook_ads/ad_objects/commerce_merchant_settings_setup_status.rb +39 -0
  266. data/lib/facebook_ads/ad_objects/commerce_merchant_tos_acceptance.rb +36 -0
  267. data/lib/facebook_ads/ad_objects/commerce_order.rb +42 -0
  268. data/lib/facebook_ads/ad_objects/commerce_settings.rb +37 -0
  269. data/lib/facebook_ads/ad_objects/contacts_messenger_sync_config.rb +36 -0
  270. data/lib/facebook_ads/ad_objects/conversion_action_query.rb +1 -2
  271. data/lib/facebook_ads/ad_objects/copyright_attribution_insights.rb +1 -2
  272. data/lib/facebook_ads/ad_objects/copyright_reference_container.rb +45 -0
  273. data/lib/facebook_ads/ad_objects/cover_photo.rb +0 -1
  274. data/lib/facebook_ads/ad_objects/creative_history.rb +37 -0
  275. data/lib/facebook_ads/ad_objects/credit_card.rb +49 -0
  276. data/lib/facebook_ads/ad_objects/credit_partition_action_options.rb +38 -0
  277. data/lib/facebook_ads/ad_objects/crm_address.rb +48 -0
  278. data/lib/facebook_ads/ad_objects/currency.rb +41 -0
  279. data/lib/facebook_ads/ad_objects/currency_amount.rb +39 -0
  280. data/lib/facebook_ads/ad_objects/custom_audience.rb +91 -53
  281. data/lib/facebook_ads/ad_objects/custom_audience_ad_account.rb +0 -1
  282. data/lib/facebook_ads/ad_objects/custom_audience_capabilities.rb +36 -0
  283. data/lib/facebook_ads/ad_objects/custom_audience_data_source.rb +2 -2
  284. data/lib/facebook_ads/ad_objects/custom_audience_prefill_state.rb +1 -2
  285. data/lib/facebook_ads/ad_objects/custom_audience_session.rb +1 -2
  286. data/lib/facebook_ads/ad_objects/custom_audience_shared_account_campaign_info.rb +43 -0
  287. data/lib/facebook_ads/ad_objects/custom_audience_sharing_status.rb +37 -0
  288. data/lib/facebook_ads/ad_objects/custom_audience_status.rb +1 -2
  289. data/lib/facebook_ads/ad_objects/custom_audience_usage_history.rb +38 -0
  290. data/lib/facebook_ads/ad_objects/custom_audiences_tos.rb +0 -1
  291. data/lib/facebook_ads/ad_objects/custom_audienceshared_account_info.rb +40 -0
  292. data/lib/facebook_ads/ad_objects/custom_conversion.rb +10 -15
  293. data/lib/facebook_ads/ad_objects/custom_conversion_activities.rb +45 -0
  294. data/lib/facebook_ads/ad_objects/custom_conversion_stats_result.rb +1 -2
  295. data/lib/facebook_ads/ad_objects/custom_user_settings.rb +37 -0
  296. data/lib/facebook_ads/ad_objects/custom_voicemail.rb +37 -0
  297. data/lib/facebook_ads/ad_objects/da_check.rb +41 -0
  298. data/lib/facebook_ads/ad_objects/day_part.rb +1 -2
  299. data/lib/facebook_ads/ad_objects/delivery_check.rb +1 -2
  300. data/lib/facebook_ads/ad_objects/delivery_check_extra_info.rb +1 -2
  301. data/lib/facebook_ads/ad_objects/delivery_info.rb +82 -0
  302. data/lib/facebook_ads/ad_objects/destination.rb +47 -0
  303. data/lib/facebook_ads/ad_objects/destination_catalog_settings.rb +36 -0
  304. data/lib/facebook_ads/ad_objects/direct_deal.rb +4 -0
  305. data/lib/facebook_ads/ad_objects/direct_deal_available_advertisers.rb +38 -0
  306. data/lib/facebook_ads/ad_objects/direct_debit.rb +44 -0
  307. data/lib/facebook_ads/ad_objects/document_font.rb +40 -0
  308. data/lib/facebook_ads/ad_objects/dog_notification_settings.rb +36 -0
  309. data/lib/facebook_ads/ad_objects/draft_post.rb +50 -0
  310. data/lib/facebook_ads/ad_objects/dynamic_item_display_bundle.rb +41 -0
  311. data/lib/facebook_ads/ad_objects/dynamic_item_display_bundle_folder.rb +40 -0
  312. data/lib/facebook_ads/ad_objects/dynamic_item_quality_issue.rb +39 -0
  313. data/lib/facebook_ads/ad_objects/dynamic_post_child_attachment.rb +41 -0
  314. data/lib/facebook_ads/ad_objects/dynamic_price_config_by_date.rb +38 -0
  315. data/lib/facebook_ads/ad_objects/education_experience.rb +42 -0
  316. data/lib/facebook_ads/ad_objects/email_import.rb +39 -0
  317. data/lib/facebook_ads/ad_objects/engagement.rb +1 -2
  318. data/lib/facebook_ads/ad_objects/engagement_insights_rule.rb +39 -0
  319. data/lib/facebook_ads/ad_objects/ent_with_sponsor.rb +38 -0
  320. data/lib/facebook_ads/ad_objects/entity_at_text_range.rb +48 -0
  321. data/lib/facebook_ads/ad_objects/event.rb +314 -71
  322. data/lib/facebook_ads/ad_objects/event_external_ticket_info.rb +38 -0
  323. data/lib/facebook_ads/ad_objects/event_registration_setting.rb +38 -0
  324. data/lib/facebook_ads/ad_objects/event_source_group.rb +11 -2
  325. data/lib/facebook_ads/ad_objects/event_ticket_setting.rb +36 -0
  326. data/lib/facebook_ads/ad_objects/event_ticket_tier.rb +52 -0
  327. data/lib/facebook_ads/ad_objects/event_tour.rb +56 -0
  328. data/lib/facebook_ads/ad_objects/experience.rb +39 -0
  329. data/lib/facebook_ads/ad_objects/expirable_post.rb +53 -0
  330. data/lib/facebook_ads/ad_objects/export_ad_campaign.rb +37 -0
  331. data/lib/facebook_ads/ad_objects/export_ad_campaign_group.rb +37 -0
  332. data/lib/facebook_ads/ad_objects/export_adgroup.rb +37 -0
  333. data/lib/facebook_ads/ad_objects/extended_credit.rb +14 -9
  334. data/lib/facebook_ads/ad_objects/extended_credit_allocation_config.rb +1 -1
  335. data/lib/facebook_ads/ad_objects/extended_credit_application.rb +54 -0
  336. data/lib/facebook_ads/ad_objects/extended_credit_info.rb +37 -0
  337. data/lib/facebook_ads/ad_objects/external_event_source.rb +0 -1
  338. data/lib/facebook_ads/ad_objects/external_event_source_da_stats_result.rb +41 -0
  339. data/lib/facebook_ads/ad_objects/external_event_source_debugging.rb +41 -0
  340. data/lib/facebook_ads/ad_objects/external_event_source_pixel_helper_debugging_info.rb +38 -0
  341. data/lib/facebook_ads/ad_objects/external_merchant_settings.rb +44 -0
  342. data/lib/facebook_ads/ad_objects/f_plug_save.rb +37 -0
  343. data/lib/facebook_ads/ad_objects/fame_ad_campaign.rb +46 -0
  344. data/lib/facebook_ads/ad_objects/fame_ad_campaign_group.rb +43 -0
  345. data/lib/facebook_ads/ad_objects/fame_ad_group.rb +40 -0
  346. data/lib/facebook_ads/ad_objects/fame_export_config.rb +39 -0
  347. data/lib/facebook_ads/ad_objects/fame_kumo.rb +35 -0
  348. data/lib/facebook_ads/ad_objects/favorite_request.rb +69 -0
  349. data/lib/facebook_ads/ad_objects/fb_lite_to_nt_transitions.rb +36 -0
  350. data/lib/facebook_ads/ad_objects/finance_object.rb +37 -0
  351. data/lib/facebook_ads/ad_objects/flexible_targeting.rb +1 -2
  352. data/lib/facebook_ads/ad_objects/flight.rb +48 -0
  353. data/lib/facebook_ads/ad_objects/flight_catalog_settings.rb +36 -0
  354. data/lib/facebook_ads/ad_objects/food_drink_order.rb +53 -0
  355. data/lib/facebook_ads/ad_objects/friend_list.rb +53 -0
  356. data/lib/facebook_ads/ad_objects/funding_source_details.rb +0 -1
  357. data/lib/facebook_ads/ad_objects/funding_source_details_coupon.rb +1 -2
  358. data/lib/facebook_ads/ad_objects/fundraiser_person_to_charity.rb +56 -0
  359. data/lib/facebook_ads/ad_objects/game_item.rb +48 -0
  360. data/lib/facebook_ads/ad_objects/game_time.rb +44 -0
  361. data/lib/facebook_ads/ad_objects/games_persona.rb +37 -0
  362. data/lib/facebook_ads/ad_objects/games_stat.rb +38 -0
  363. data/lib/facebook_ads/ad_objects/generic_video_asset.rb +78 -0
  364. data/lib/facebook_ads/ad_objects/geo_area.rb +38 -0
  365. data/lib/facebook_ads/ad_objects/group.rb +553 -0
  366. data/lib/facebook_ads/ad_objects/hashed_user.rb +36 -0
  367. data/lib/facebook_ads/ad_objects/home_listing.rb +73 -0
  368. data/lib/facebook_ads/ad_objects/home_service_provider.rb +68 -0
  369. data/lib/facebook_ads/ad_objects/hotel.rb +67 -0
  370. data/lib/facebook_ads/ad_objects/hotel_catalog_settings.rb +35 -0
  371. data/lib/facebook_ads/ad_objects/hotel_room.rb +5 -0
  372. data/lib/facebook_ads/ad_objects/id_name.rb +0 -1
  373. data/lib/facebook_ads/ad_objects/insights_result.rb +4 -2
  374. data/lib/facebook_ads/ad_objects/instagram_business.rb +42 -0
  375. data/lib/facebook_ads/ad_objects/instagram_comment.rb +38 -0
  376. data/lib/facebook_ads/ad_objects/instagram_insights_result.rb +0 -2
  377. data/lib/facebook_ads/ad_objects/instagram_insights_value.rb +1 -2
  378. data/lib/facebook_ads/ad_objects/instagram_user.rb +67 -0
  379. data/lib/facebook_ads/ad_objects/instant_article.rb +8 -3
  380. data/lib/facebook_ads/ad_objects/instant_article_cta.rb +38 -0
  381. data/lib/facebook_ads/ad_objects/instant_article_insights_query_result.rb +1 -3
  382. data/lib/facebook_ads/ad_objects/instant_article_traffic_lift.rb +41 -0
  383. data/lib/facebook_ads/ad_objects/invoice_campaign.rb +43 -0
  384. data/lib/facebook_ads/ad_objects/ios_app_link.rb +1 -2
  385. data/lib/facebook_ads/ad_objects/ip_object.rb +37 -0
  386. data/lib/facebook_ads/ad_objects/iterative_split_test_config.rb +44 -0
  387. data/lib/facebook_ads/ad_objects/job_opening.rb +91 -0
  388. data/lib/facebook_ads/ad_objects/key_value.rb +37 -0
  389. data/lib/facebook_ads/ad_objects/lead.rb +2 -1
  390. data/lib/facebook_ads/ad_objects/lead_gen_appointment_booking_info.rb +38 -0
  391. data/lib/facebook_ads/ad_objects/lead_gen_conditional_questions_group.rb +2 -2
  392. data/lib/facebook_ads/ad_objects/lead_gen_conditional_questions_group_choices.rb +38 -0
  393. data/lib/facebook_ads/ad_objects/lead_gen_conditional_questions_group_questions.rb +38 -0
  394. data/lib/facebook_ads/ad_objects/lead_gen_context_card.rb +55 -0
  395. data/lib/facebook_ads/ad_objects/lead_gen_data_draft.rb +2 -1
  396. data/lib/facebook_ads/ad_objects/lead_gen_direct_crm_integration_third_party_app.rb +39 -0
  397. data/lib/facebook_ads/ad_objects/lead_gen_draft_question.rb +3 -4
  398. data/lib/facebook_ads/ad_objects/lead_gen_form_preview_details.rb +1 -2
  399. data/lib/facebook_ads/ad_objects/lead_gen_legal_content.rb +7 -0
  400. data/lib/facebook_ads/ad_objects/lead_gen_qualifier.rb +0 -1
  401. data/lib/facebook_ads/ad_objects/lead_gen_question.rb +2 -2
  402. data/lib/facebook_ads/ad_objects/lead_gen_question_option.rb +1 -2
  403. data/lib/facebook_ads/ad_objects/leadgen_form.rb +7 -5
  404. data/lib/facebook_ads/ad_objects/legacy_business_ad_account_request.rb +0 -1
  405. data/lib/facebook_ads/ad_objects/life_event.rb +27 -4
  406. data/lib/facebook_ads/ad_objects/link.rb +108 -0
  407. data/lib/facebook_ads/ad_objects/live_encoder.rb +44 -0
  408. data/lib/facebook_ads/ad_objects/live_video.rb +91 -23
  409. data/lib/facebook_ads/ad_objects/live_video_ad_break_config.rb +45 -0
  410. data/lib/facebook_ads/ad_objects/live_video_error.rb +39 -0
  411. data/lib/facebook_ads/ad_objects/live_video_input_stream.rb +41 -0
  412. data/lib/facebook_ads/ad_objects/live_video_targeting.rb +39 -0
  413. data/lib/facebook_ads/ad_objects/location.rb +1 -2
  414. data/lib/facebook_ads/ad_objects/lookalike_spec.rb +2 -2
  415. data/lib/facebook_ads/ad_objects/loom_config.rb +35 -0
  416. data/lib/facebook_ads/ad_objects/m_hub_terms_of_service.rb +37 -0
  417. data/lib/facebook_ads/ad_objects/marketing_area.rb +37 -0
  418. data/lib/facebook_ads/ad_objects/measurement_playground.rb +41 -0
  419. data/lib/facebook_ads/ad_objects/media_copyright_attribution.rb +48 -0
  420. data/lib/facebook_ads/ad_objects/media_fingerprint.rb +7 -0
  421. data/lib/facebook_ads/ad_objects/media_title.rb +67 -0
  422. data/lib/facebook_ads/ad_objects/menu.rb +37 -0
  423. data/lib/facebook_ads/ad_objects/merchant_report.rb +46 -0
  424. data/lib/facebook_ads/ad_objects/messaging_feature_review.rb +1 -2
  425. data/lib/facebook_ads/ad_objects/messaging_suggested_group.rb +39 -0
  426. data/lib/facebook_ads/ad_objects/messenger_ads_partial_automated_step_list.rb +40 -0
  427. data/lib/facebook_ads/ad_objects/messenger_destination_page_welcome_message.rb +40 -0
  428. data/lib/facebook_ads/ad_objects/messenger_platform_referral.rb +39 -0
  429. data/lib/facebook_ads/ad_objects/messenger_profile.rb +1 -13
  430. data/lib/facebook_ads/ad_objects/minimum_budget.rb +1 -2
  431. data/lib/facebook_ads/ad_objects/mobile_app_alert.rb +39 -0
  432. data/lib/facebook_ads/ad_objects/music_video_copyright.rb +47 -0
  433. data/lib/facebook_ads/ad_objects/native_megaphone.rb +39 -0
  434. data/lib/facebook_ads/ad_objects/native_offer.rb +17 -8
  435. data/lib/facebook_ads/ad_objects/native_offer_discount.rb +41 -0
  436. data/lib/facebook_ads/ad_objects/native_offer_view.rb +54 -0
  437. data/lib/facebook_ads/ad_objects/nota_fiscal.rb +40 -0
  438. data/lib/facebook_ads/ad_objects/null.rb +35 -0
  439. data/lib/facebook_ads/ad_objects/offer.rb +79 -0
  440. data/lib/facebook_ads/ad_objects/offline_conversion_data_set.rb +63 -17
  441. data/lib/facebook_ads/ad_objects/offsite_pixel.rb +1 -0
  442. data/lib/facebook_ads/ad_objects/open_graph_context.rb +16 -0
  443. data/lib/facebook_ads/ad_objects/open_graph_object.rb +159 -0
  444. data/lib/facebook_ads/ad_objects/oracle_transaction.rb +12 -2
  445. data/lib/facebook_ads/ad_objects/order_id_attributions.rb +44 -0
  446. data/lib/facebook_ads/ad_objects/outcome_prediction_point.rb +1 -2
  447. data/lib/facebook_ads/ad_objects/owned_domain.rb +12 -0
  448. data/lib/facebook_ads/ad_objects/page.rb +1010 -448
  449. data/lib/facebook_ads/ad_objects/page_admin_settings.rb +37 -0
  450. data/lib/facebook_ads/ad_objects/page_app_with_leads_access.rb +37 -0
  451. data/lib/facebook_ads/ad_objects/page_breaking_news_usage.rb +37 -0
  452. data/lib/facebook_ads/ad_objects/page_broadcast.rb +43 -0
  453. data/lib/facebook_ads/ad_objects/page_budget_recs.rb +43 -0
  454. data/lib/facebook_ads/ad_objects/page_call_to_action.rb +8 -2
  455. data/lib/facebook_ads/ad_objects/page_category.rb +0 -1
  456. data/lib/facebook_ads/ad_objects/page_customer_insights.rb +38 -0
  457. data/lib/facebook_ads/ad_objects/page_direct_integration_crm_with_leads_access.rb +37 -0
  458. data/lib/facebook_ads/ad_objects/page_feature_access_list.rb +36 -0
  459. data/lib/facebook_ads/ad_objects/page_insights_async_export_run.rb +4 -0
  460. data/lib/facebook_ads/ad_objects/page_label.rb +2 -1
  461. data/lib/facebook_ads/ad_objects/page_leads_access_config.rb +36 -0
  462. data/lib/facebook_ads/ad_objects/page_locations_breakdown.rb +44 -0
  463. data/lib/facebook_ads/ad_objects/page_message_responsiveness_metrics.rb +38 -0
  464. data/lib/facebook_ads/ad_objects/page_parking.rb +1 -2
  465. data/lib/facebook_ads/ad_objects/page_partner_with_leads_access.rb +38 -0
  466. data/lib/facebook_ads/ad_objects/page_payment_options.rb +1 -2
  467. data/lib/facebook_ads/ad_objects/page_post.rb +105 -3
  468. data/lib/facebook_ads/ad_objects/page_post_experiment.rb +46 -0
  469. data/lib/facebook_ads/ad_objects/page_publisher.rb +38 -0
  470. data/lib/facebook_ads/ad_objects/page_restaurant_services.rb +1 -2
  471. data/lib/facebook_ads/ad_objects/page_restaurant_specialties.rb +1 -2
  472. data/lib/facebook_ads/ad_objects/page_saved_filter.rb +6 -6
  473. data/lib/facebook_ads/ad_objects/page_settings.rb +1 -2
  474. data/lib/facebook_ads/ad_objects/page_start_info.rb +1 -2
  475. data/lib/facebook_ads/ad_objects/page_status_card.rb +42 -0
  476. data/lib/facebook_ads/ad_objects/page_store_visits_custom_audiences_eligible_countries.rb +38 -0
  477. data/lib/facebook_ads/ad_objects/page_store_visits_demographic_insights.rb +39 -0
  478. data/lib/facebook_ads/ad_objects/page_thread_owner.rb +36 -0
  479. data/lib/facebook_ads/ad_objects/page_user_message_thread_label.rb +44 -0
  480. data/lib/facebook_ads/ad_objects/page_user_with_leads_access.rb +39 -0
  481. data/lib/facebook_ads/ad_objects/page_videos_you_can_use.rb +0 -1
  482. data/lib/facebook_ads/ad_objects/pages_platform_component_flow.rb +38 -0
  483. data/lib/facebook_ads/ad_objects/pages_platform_component_flow_service_config.rb +38 -0
  484. data/lib/facebook_ads/ad_objects/partner_category.rb +0 -1
  485. data/lib/facebook_ads/ad_objects/partner_integration_linked.rb +69 -3
  486. data/lib/facebook_ads/ad_objects/partner_study.rb +60 -0
  487. data/lib/facebook_ads/ad_objects/payment_pricepoints.rb +36 -0
  488. data/lib/facebook_ads/ad_objects/permission.rb +42 -0
  489. data/lib/facebook_ads/ad_objects/persistent_stream_profile.rb +37 -0
  490. data/lib/facebook_ads/ad_objects/persona.rb +36 -0
  491. data/lib/facebook_ads/ad_objects/personal_ads_persona.rb +39 -0
  492. data/lib/facebook_ads/ad_objects/photo.rb +156 -15
  493. data/lib/facebook_ads/ad_objects/place.rb +38 -0
  494. data/lib/facebook_ads/ad_objects/place_tag.rb +37 -0
  495. data/lib/facebook_ads/ad_objects/place_topic.rb +0 -7
  496. data/lib/facebook_ads/ad_objects/platform_image_source.rb +38 -0
  497. data/lib/facebook_ads/ad_objects/platform_session_key.rb +35 -0
  498. data/lib/facebook_ads/ad_objects/playable_content.rb +39 -0
  499. data/lib/facebook_ads/ad_objects/post.rb +270 -0
  500. data/lib/facebook_ads/ad_objects/privacy.rb +41 -0
  501. data/lib/facebook_ads/ad_objects/product_catalog.rb +190 -87
  502. data/lib/facebook_ads/ad_objects/product_catalog_category.rb +42 -0
  503. data/lib/facebook_ads/ad_objects/product_catalog_example_feed.rb +36 -0
  504. data/lib/facebook_ads/ad_objects/product_catalog_facets.rb +37 -0
  505. data/lib/facebook_ads/ad_objects/product_catalog_hotel_rooms_batch.rb +1 -12
  506. data/lib/facebook_ads/ad_objects/product_catalog_image_settings.rb +1 -2
  507. data/lib/facebook_ads/ad_objects/product_catalog_image_settings_operation.rb +1 -2
  508. data/lib/facebook_ads/ad_objects/product_catalog_pricing_variables_batch.rb +1 -12
  509. data/lib/facebook_ads/ad_objects/product_catalog_product_sets_batch.rb +1 -2
  510. data/lib/facebook_ads/ad_objects/product_catalog_user_permissions.rb +45 -0
  511. data/lib/facebook_ads/ad_objects/product_da_event_samples_batch.rb +1 -2
  512. data/lib/facebook_ads/ad_objects/product_event_stat.rb +1 -2
  513. data/lib/facebook_ads/ad_objects/product_feed.rb +41 -3
  514. data/lib/facebook_ads/ad_objects/product_feed_missing_feed_item_replacement.rb +39 -0
  515. data/lib/facebook_ads/ad_objects/product_feed_rule.rb +46 -0
  516. data/lib/facebook_ads/ad_objects/product_feed_rule_preview_sample.rb +37 -0
  517. data/lib/facebook_ads/ad_objects/product_feed_rule_suggestion.rb +38 -0
  518. data/lib/facebook_ads/ad_objects/product_feed_schedule.rb +1 -2
  519. data/lib/facebook_ads/ad_objects/product_feed_upload_error.rb +3 -1
  520. data/lib/facebook_ads/ad_objects/product_feed_upload_error_sample.rb +37 -0
  521. data/lib/facebook_ads/ad_objects/product_feed_upload_progress.rb +40 -0
  522. data/lib/facebook_ads/ad_objects/product_group.rb +43 -25
  523. data/lib/facebook_ads/ad_objects/product_item.rb +33 -15
  524. data/lib/facebook_ads/ad_objects/product_item_commerce_insights.rb +1 -2
  525. data/lib/facebook_ads/ad_objects/product_item_insights.rb +40 -0
  526. data/lib/facebook_ads/ad_objects/product_item_offer.rb +38 -0
  527. data/lib/facebook_ads/ad_objects/product_set.rb +42 -1
  528. data/lib/facebook_ads/ad_objects/product_variant.rb +1 -2
  529. data/lib/facebook_ads/ad_objects/products_quality_issue.rb +1 -2
  530. data/lib/facebook_ads/ad_objects/profile.rb +14 -2
  531. data/lib/facebook_ads/ad_objects/profile_picture_source.rb +3 -5
  532. data/lib/facebook_ads/ad_objects/publisher_block_list.rb +54 -0
  533. data/lib/facebook_ads/ad_objects/rate_card.rb +38 -0
  534. data/lib/facebook_ads/ad_objects/raw_custom_audience.rb +36 -0
  535. data/lib/facebook_ads/ad_objects/reach_estimate.rb +26 -2
  536. data/lib/facebook_ads/ad_objects/reach_frequency_activity.rb +47 -0
  537. data/lib/facebook_ads/ad_objects/reach_frequency_ad_format.rb +37 -0
  538. data/lib/facebook_ads/ad_objects/reach_frequency_curve_lower_confidence_range.rb +41 -0
  539. data/lib/facebook_ads/ad_objects/reach_frequency_curve_upper_confidence_range.rb +41 -0
  540. data/lib/facebook_ads/ad_objects/reach_frequency_day_part.rb +38 -0
  541. data/lib/facebook_ads/ad_objects/reach_frequency_estimates_curve.rb +44 -0
  542. data/lib/facebook_ads/ad_objects/reach_frequency_estimates_demo_breakdown.rb +37 -0
  543. data/lib/facebook_ads/ad_objects/reach_frequency_estimates_placement_breakdown.rb +47 -0
  544. data/lib/facebook_ads/ad_objects/reach_frequency_prediction.rb +83 -10
  545. data/lib/facebook_ads/ad_objects/reach_frequency_spec.rb +3 -2
  546. data/lib/facebook_ads/ad_objects/read_only_analytics_user_property_config.rb +36 -0
  547. data/lib/facebook_ads/ad_objects/{open_graph_rating.rb → recommendation.rb} +3 -3
  548. data/lib/facebook_ads/ad_objects/referral.rb +43 -0
  549. data/lib/facebook_ads/ad_objects/report_stats_metadata.rb +45 -0
  550. data/lib/facebook_ads/ad_objects/request_history.rb +48 -0
  551. data/lib/facebook_ads/ad_objects/research_poll_study.rb +37 -0
  552. data/lib/facebook_ads/ad_objects/rev_share_policy.rb +1 -2
  553. data/lib/facebook_ads/ad_objects/rich_media_element.rb +38 -0
  554. data/lib/facebook_ads/ad_objects/robot.rb +42 -0
  555. data/lib/facebook_ads/ad_objects/rtb_dynamic_post.rb +18 -1
  556. data/lib/facebook_ads/ad_objects/saved_audience.rb +49 -0
  557. data/lib/facebook_ads/ad_objects/saved_message_response.rb +10 -0
  558. data/lib/facebook_ads/ad_objects/saved_message_response_macro.rb +38 -0
  559. data/lib/facebook_ads/ad_objects/scheduled_post.rb +50 -0
  560. data/lib/facebook_ads/ad_objects/scim_company_user_phone_number.rb +38 -0
  561. data/lib/facebook_ads/ad_objects/screen_name.rb +1 -2
  562. data/lib/facebook_ads/ad_objects/search_dialog_data.rb +41 -0
  563. data/lib/facebook_ads/ad_objects/security_settings.rb +36 -0
  564. data/lib/facebook_ads/ad_objects/shadow_ig_media.rb +0 -1
  565. data/lib/facebook_ads/ad_objects/shadow_ig_user.rb +5 -9
  566. data/lib/facebook_ads/ad_objects/signals_iwl_extractor.rb +70 -0
  567. data/lib/facebook_ads/ad_objects/simple_attribution_webhook.rb +38 -0
  568. data/lib/facebook_ads/ad_objects/smart_pixel_insights.rb +37 -0
  569. data/lib/facebook_ads/ad_objects/spaco_ds_data_collection.rb +42 -0
  570. data/lib/facebook_ads/ad_objects/split_test_config.rb +42 -0
  571. data/lib/facebook_ads/ad_objects/split_test_winner.rb +38 -0
  572. data/lib/facebook_ads/ad_objects/status.rb +94 -0
  573. data/lib/facebook_ads/ad_objects/stonehenge_subscription_publisher.rb +45 -0
  574. data/lib/facebook_ads/ad_objects/store_catalog_settings.rb +36 -0
  575. data/lib/facebook_ads/ad_objects/stream_filter.rb +38 -0
  576. data/lib/facebook_ads/ad_objects/streaming_reaction.rb +49 -0
  577. data/lib/facebook_ads/ad_objects/suggested_product_set.rb +38 -0
  578. data/lib/facebook_ads/ad_objects/system_user.rb +23 -0
  579. data/lib/facebook_ads/ad_objects/tab.rb +1 -2
  580. data/lib/facebook_ads/ad_objects/taggable_subject.rb +36 -0
  581. data/lib/facebook_ads/ad_objects/targeting.rb +4 -3
  582. data/lib/facebook_ads/ad_objects/targeting_dynamic_rule.rb +1 -2
  583. data/lib/facebook_ads/ad_objects/targeting_geo_location.rb +9 -2
  584. data/lib/facebook_ads/ad_objects/targeting_geo_location_city.rb +1 -2
  585. data/lib/facebook_ads/ad_objects/targeting_geo_location_custom_location.rb +1 -2
  586. data/lib/facebook_ads/ad_objects/targeting_geo_location_electoral_district.rb +1 -2
  587. data/lib/facebook_ads/ad_objects/targeting_geo_location_geo_entities.rb +40 -0
  588. data/lib/facebook_ads/ad_objects/targeting_geo_location_location_cluster.rb +36 -0
  589. data/lib/facebook_ads/ad_objects/targeting_geo_location_market.rb +1 -2
  590. data/lib/facebook_ads/ad_objects/targeting_geo_location_place.rb +1 -2
  591. data/lib/facebook_ads/ad_objects/targeting_geo_location_political_district.rb +1 -2
  592. data/lib/facebook_ads/ad_objects/targeting_geo_location_region.rb +1 -2
  593. data/lib/facebook_ads/ad_objects/targeting_geo_location_zip.rb +1 -2
  594. data/lib/facebook_ads/ad_objects/targeting_product_audience_spec.rb +1 -2
  595. data/lib/facebook_ads/ad_objects/targeting_product_audience_sub_spec.rb +1 -2
  596. data/lib/facebook_ads/ad_objects/targeting_prospecting_audience.rb +36 -0
  597. data/lib/facebook_ads/ad_objects/targeting_sentence_line.rb +0 -1
  598. data/lib/facebook_ads/ad_objects/tarot_digest.rb +46 -0
  599. data/lib/facebook_ads/ad_objects/text_with_entities.rb +36 -0
  600. data/lib/facebook_ads/ad_objects/thread_setting.rb +37 -0
  601. data/lib/facebook_ads/ad_objects/timezone_offset.rb +40 -0
  602. data/lib/facebook_ads/ad_objects/topic.rb +37 -0
  603. data/lib/facebook_ads/ad_objects/topic_discovery_response.rb +37 -0
  604. data/lib/facebook_ads/ad_objects/tracking_and_conversion_with_defaults.rb +39 -0
  605. data/lib/facebook_ads/ad_objects/transaction.rb +59 -0
  606. data/lib/facebook_ads/ad_objects/transaction_details.rb +36 -0
  607. data/lib/facebook_ads/ad_objects/trust_metrics.rb +38 -0
  608. data/lib/facebook_ads/ad_objects/unified_thread.rb +68 -0
  609. data/lib/facebook_ads/ad_objects/unique_ad_creative.rb +37 -0
  610. data/lib/facebook_ads/ad_objects/url.rb +1 -1
  611. data/lib/facebook_ads/ad_objects/user.rb +1025 -87
  612. data/lib/facebook_ads/ad_objects/user_context.rb +51 -0
  613. data/lib/facebook_ads/ad_objects/user_cover_photo.rb +38 -0
  614. data/lib/facebook_ads/ad_objects/user_device.rb +37 -0
  615. data/lib/facebook_ads/ad_objects/user_id_for_app.rb +36 -0
  616. data/lib/facebook_ads/ad_objects/user_id_for_page.rb +36 -0
  617. data/lib/facebook_ads/ad_objects/user_influence.rb +38 -0
  618. data/lib/facebook_ads/ad_objects/user_invitable_friend.rb +48 -0
  619. data/lib/facebook_ads/ad_objects/user_lead_gen_disclaimer_response.rb +1 -2
  620. data/lib/facebook_ads/ad_objects/user_lead_gen_field_data.rb +1 -2
  621. data/lib/facebook_ads/ad_objects/user_mobile_config.rb +37 -0
  622. data/lib/facebook_ads/ad_objects/user_notification_seen_state_data.rb +36 -0
  623. data/lib/facebook_ads/ad_objects/user_nux_statuses.rb +38 -0
  624. data/lib/facebook_ads/ad_objects/user_payment_methods_info.rb +42 -0
  625. data/lib/facebook_ads/ad_objects/user_payment_mobile_pricepoints.rb +39 -0
  626. data/lib/facebook_ads/ad_objects/user_payment_modules_options.rb +39 -0
  627. data/lib/facebook_ads/ad_objects/user_taggable_friend.rb +48 -0
  628. data/lib/facebook_ads/ad_objects/vault_deleted_image.rb +39 -0
  629. data/lib/facebook_ads/ad_objects/vault_device.rb +43 -0
  630. data/lib/facebook_ads/ad_objects/vault_image.rb +47 -0
  631. data/lib/facebook_ads/ad_objects/vehicle.rb +76 -0
  632. data/lib/facebook_ads/ad_objects/vehicle_offer.rb +57 -0
  633. data/lib/facebook_ads/ad_objects/video_asset.rb +85 -0
  634. data/lib/facebook_ads/ad_objects/video_copyright.rb +2 -2
  635. data/lib/facebook_ads/ad_objects/video_copyright_condition_group.rb +37 -0
  636. data/lib/facebook_ads/ad_objects/video_copyright_geo_gate.rb +37 -0
  637. data/lib/facebook_ads/ad_objects/video_copyright_match.rb +54 -0
  638. data/lib/facebook_ads/ad_objects/video_copyright_rule.rb +1 -1
  639. data/lib/facebook_ads/ad_objects/video_copyright_segment.rb +38 -0
  640. data/lib/facebook_ads/ad_objects/video_game_show.rb +52 -0
  641. data/lib/facebook_ads/ad_objects/video_group.rb +50 -0
  642. data/lib/facebook_ads/ad_objects/video_list.rb +19 -0
  643. data/lib/facebook_ads/ad_objects/video_metrics_report.rb +45 -0
  644. data/lib/facebook_ads/ad_objects/video_poll.rb +52 -0
  645. data/lib/facebook_ads/ad_objects/video_reference_match.rb +53 -0
  646. data/lib/facebook_ads/ad_objects/video_stats.rb +41 -0
  647. data/lib/facebook_ads/ad_objects/video_thumbnail.rb +0 -1
  648. data/lib/facebook_ads/ad_objects/video_upload_limits.rb +37 -0
  649. data/lib/facebook_ads/ad_objects/voip_info.rb +1 -2
  650. data/lib/facebook_ads/ad_objects/web_app_link.rb +1 -2
  651. data/lib/facebook_ads/ad_objects/web_publisher.rb +37 -0
  652. data/lib/facebook_ads/ad_objects/whats_app_business_account.rb +44 -0
  653. data/lib/facebook_ads/ad_objects/wifi_information.rb +40 -0
  654. data/lib/facebook_ads/ad_objects/windows_app_link.rb +1 -2
  655. data/lib/facebook_ads/ad_objects/windows_phone_app_link.rb +1 -2
  656. data/lib/facebook_ads/ad_objects/with_asset3_d.rb +35 -0
  657. data/lib/facebook_ads/ad_objects/work_experience.rb +44 -0
  658. data/lib/facebook_ads/version.rb +2 -2
  659. metadata +427 -4
@@ -92,46 +92,197 @@ module FacebookAds
92
92
  "Vietnamese",
93
93
  ]
94
94
 
95
- ROLE = [
96
- "MANAGER",
97
- "CONTENT_CREATOR",
98
- "MODERATOR",
99
- "ADVERTISER",
100
- "INSIGHTS_ANALYST",
95
+ SETTING = [
96
+ "POST_AS_SELF",
97
+ "EMAIL_NOTIF",
98
+ "MOBILE_NOTIF",
101
99
  ]
102
100
 
103
- LOCALE = [
104
- "EN_US",
105
- "IT_IT",
106
- "FR_FR",
107
- "ES_ES",
108
- "ES_LA",
109
- "DE_DE",
110
- "EN_GB",
111
- "PT_BR",
112
- "ZH_TW",
113
- "ZH_HK",
114
- "TR_TR",
115
- "AR_AR",
116
- "CS_CZ",
117
- "DA_DK",
118
- "FI_FI",
119
- "HE_IL",
120
- "HI_IN",
121
- "HU_HU",
122
- "ID_ID",
123
- "JA_JP",
124
- "KO_KR",
125
- "NB_NO",
126
- "NL_NL",
127
- "PL_PL",
128
- "PT_PT",
129
- "RO_RO",
130
- "RU_RU",
131
- "SV_SE",
132
- "TH_TH",
133
- "VI_VN",
134
- "ZH_CN",
101
+ AUDIENCE = [
102
+ "GROUPER",
103
+ "NCPP",
104
+ "CUSTOM_AUDIENCE",
105
+ "LOOKALIKE",
106
+ "FANS",
107
+ "LOCAL",
108
+ "IG_PROMOTED_POST_AUTO",
109
+ "SAVED_AUDIENCE",
110
+ "EVENT_ENGAGEMENT",
111
+ "DISTRICT",
112
+ "SMART_AUDIENCE",
113
+ "CREATE_NEW",
114
+ "AUTO_LOOKALIKE",
115
+ "MULT_CUSTOM_AUDIENCES",
116
+ "EVENT_CUSTOM_AUDIENCES",
117
+ ]
118
+
119
+ PERMITTED_TASKS = [
120
+ "MANAGE",
121
+ "CREATE_CONTENT",
122
+ "MODERATE",
123
+ "MODERATE_COMMUNITY",
124
+ "ADVERTISE",
125
+ "ANALYZE",
126
+ ]
127
+
128
+ TASKS = [
129
+ "MANAGE",
130
+ "CREATE_CONTENT",
131
+ "MODERATE",
132
+ "MODERATE_COMMUNITY",
133
+ "ADVERTISE",
134
+ "ANALYZE",
135
+ ]
136
+
137
+ MESSAGING_TYPE = [
138
+ "RESPONSE",
139
+ "UPDATE",
140
+ "MESSAGE_TAG",
141
+ ]
142
+
143
+ NOTIFICATION_TYPE = [
144
+ "REGULAR",
145
+ "SILENT_PUSH",
146
+ "NO_PUSH",
147
+ ]
148
+
149
+ PUBLISH_STATUS = [
150
+ "DRAFT",
151
+ "LIVE",
152
+ ]
153
+
154
+ SENDER_ACTION = [
155
+ "MARK_SEEN",
156
+ "TYPING_ON",
157
+ "TYPING_OFF",
158
+ ]
159
+
160
+ TYPE = [
161
+ "STANDARD",
162
+ "REF",
163
+ ]
164
+
165
+ MODEL = [
166
+ "ARABIC",
167
+ "CHINESE",
168
+ "CROATIAN",
169
+ "CUSTOM",
170
+ "DANISH",
171
+ "DUTCH",
172
+ "ENGLISH",
173
+ "FRENCH_STANDARD",
174
+ "GEORGIAN",
175
+ "GERMAN_STANDARD",
176
+ "GREEK",
177
+ "HEBREW",
178
+ "HUNGARIAN",
179
+ "IRISH",
180
+ "ITALIAN_STANDARD",
181
+ "KOREAN",
182
+ "NORWEGIAN_BOKMAL",
183
+ "POLISH",
184
+ "PORTUGUESE",
185
+ "ROMANIAN",
186
+ "SPANISH",
187
+ "SWEDISH",
188
+ "VIETNAMESE",
189
+ ]
190
+
191
+ FILTERING = [
192
+ "groups",
193
+ "groups_social",
194
+ "ema",
195
+ ]
196
+
197
+ SUBSCRIBED_FIELDS = [
198
+ "feed",
199
+ "mention",
200
+ "name",
201
+ "picture",
202
+ "category",
203
+ "description",
204
+ "conversations",
205
+ "branded_camera",
206
+ "feature_access_list",
207
+ "standby",
208
+ "messages",
209
+ "messaging_account_linking",
210
+ "messaging_checkout_updates",
211
+ "message_echoes",
212
+ "message_deliveries",
213
+ "messaging_game_plays",
214
+ "messaging_optins",
215
+ "messaging_optouts",
216
+ "messaging_payments",
217
+ "messaging_postbacks",
218
+ "messaging_pre_checkouts",
219
+ "message_reads",
220
+ "messaging_referrals",
221
+ "messaging_handovers",
222
+ "messaging_policy_enforcement",
223
+ "messaging_page_feedback",
224
+ "messaging_appointments",
225
+ "founded",
226
+ "company_overview",
227
+ "mission",
228
+ "products",
229
+ "general_info",
230
+ "leadgen",
231
+ "leadgen_fat",
232
+ "location",
233
+ "hours",
234
+ "parking",
235
+ "public_transit",
236
+ "phone",
237
+ "email",
238
+ "website",
239
+ "ratings",
240
+ "attire",
241
+ "payment_options",
242
+ "culinary_team",
243
+ "general_manager",
244
+ "price_range",
245
+ "awards",
246
+ "hometown",
247
+ "current_location",
248
+ "bio",
249
+ "affiliation",
250
+ "birthday",
251
+ "personal_info",
252
+ "personal_interests",
253
+ "publisher_subscriptions",
254
+ "members",
255
+ "checkins",
256
+ "page_upcoming_change",
257
+ "page_change_proposal",
258
+ "merchant_review",
259
+ "product_review",
260
+ "videos",
261
+ "live_videos",
262
+ "registration",
263
+ ]
264
+
265
+ DOMAIN_ACTION_TYPE = [
266
+ "ADD",
267
+ "REMOVE",
268
+ ]
269
+
270
+ PAYMENT_DEV_MODE_ACTION = [
271
+ "ADD",
272
+ "REMOVE",
273
+ ]
274
+
275
+ SETTING_TYPE = [
276
+ "ACCOUNT_LINKING",
277
+ "CALL_TO_ACTIONS",
278
+ "GREETING",
279
+ "DOMAIN_WHITELISTING",
280
+ "PAYMENT",
281
+ ]
282
+
283
+ THREAD_STATE = [
284
+ "NEW_THREAD",
285
+ "EXISTING_THREAD",
135
286
  ]
136
287
 
137
288
 
@@ -175,7 +326,7 @@ module FacebookAds
175
326
  field :emails, { list: 'string' }
176
327
  field :engagement, 'Engagement'
177
328
  field :fan_count, 'int'
178
- field :featured_video, 'object'
329
+ field :featured_video, 'AdVideo'
179
330
  field :features, 'string'
180
331
  field :food_styles, { list: 'string' }
181
332
  field :founded, 'string'
@@ -183,8 +334,10 @@ module FacebookAds
183
334
  field :general_manager, 'string'
184
335
  field :genre, 'string'
185
336
  field :global_brand_page_name, 'string'
337
+ field :global_brand_parent_page, 'Page'
186
338
  field :global_brand_root_id, 'string'
187
339
  field :has_added_app, 'bool'
340
+ field :has_whatsapp_business_number, 'bool'
188
341
  field :has_whatsapp_number, 'bool'
189
342
  field :hometown, 'string'
190
343
  field :hours, 'hash'
@@ -218,7 +371,7 @@ module FacebookAds
218
371
  field :merchant_id, 'string'
219
372
  field :merchant_review_status, 'string'
220
373
  field :messenger_ads_default_icebreakers, { list: 'string' }
221
- field :messenger_ads_default_page_welcome_message, 'object'
374
+ field :messenger_ads_default_page_welcome_message, 'MessengerDestinationPageWelcomeMessage'
222
375
  field :messenger_ads_default_quick_replies, { list: 'string' }
223
376
  field :messenger_ads_quick_replies_type, 'string'
224
377
  field :mission, 'string'
@@ -276,33 +429,88 @@ module FacebookAds
276
429
  field :were_here_count, 'int'
277
430
  field :whatsapp_number, 'string'
278
431
  field :written_by, 'string'
279
- field :ig_password, 'string'
280
- field :page_id, 'int'
281
432
  has_no_delete
282
433
 
434
+ has_edge :activities do |edge|
435
+ edge.post 'Page' do |api|
436
+ api.has_param :page_scoped_user_id, 'int'
437
+ api.has_param :user_ref, 'string'
438
+ api.has_param :advertiser_tracking_enabled, 'bool'
439
+ api.has_param :custom_events, { list: 'object' }
440
+ api.has_param :app_id, 'object'
441
+ end
442
+ end
443
+
283
444
  has_edge :admin_notes do |edge|
445
+ edge.get 'PageAdminNote'
284
446
  edge.post 'PageAdminNote' do |api|
285
447
  api.has_param :body, 'string'
286
448
  api.has_param :user_id, 'int'
287
449
  end
288
450
  end
289
451
 
452
+ has_edge :admin_settings do |edge|
453
+ edge.post 'Page' do |api|
454
+ api.has_param :setting, { enum: -> { Page::SETTING }}
455
+ api.has_param :value, 'bool'
456
+ end
457
+ end
458
+
459
+ has_edge :admins do |edge|
460
+ edge.delete do |api|
461
+ api.has_param :trusted, 'bool'
462
+ api.has_param :admin_id, 'int'
463
+ end
464
+ edge.post 'User' do |api|
465
+ api.has_param :trusted, 'bool'
466
+ api.has_param :admin_id, 'int'
467
+ api.has_param :tasks, { list: { enum: -> { User::TASKS }} }
468
+ end
469
+ end
470
+
471
+ has_edge :adminstickysettings do |edge|
472
+ edge.post 'Page' do |api|
473
+ api.has_param :budget, 'int'
474
+ api.has_param :currency, 'string'
475
+ api.has_param :ad_account_id, 'string'
476
+ api.has_param :audience, { enum: -> { Page::AUDIENCE }}
477
+ api.has_param :targeting, 'Targeting'
478
+ api.has_param :campaign_length, 'datetime'
479
+ end
480
+ end
481
+
482
+ has_edge :agencies do |edge|
483
+ edge.delete do |api|
484
+ api.has_param :business, 'string'
485
+ end
486
+ edge.get 'Business'
487
+ edge.post 'Page' do |api|
488
+ api.has_param :business, 'string'
489
+ api.has_param :permitted_tasks, { list: { enum: -> { Page::PERMITTED_TASKS }} }
490
+ end
491
+ end
492
+
290
493
  has_edge :albums do |edge|
494
+ edge.get 'Album'
291
495
  edge.post 'Album' do |api|
292
- api.has_param :contributors, { list: 'int' }
293
- api.has_param :description, 'string'
294
496
  api.has_param :is_default, 'bool'
295
- api.has_param :location, 'string'
296
- api.has_param :make_shared_album, 'bool'
297
- api.has_param :message, 'string'
298
497
  api.has_param :name, 'string'
299
- api.has_param :place, 'object'
498
+ api.has_param :description, 'string'
499
+ api.has_param :contributors, { list: 'int' }
500
+ api.has_param :make_shared_album, 'bool'
501
+ api.has_param :location, 'string'
502
+ api.has_param :visible, 'string'
300
503
  api.has_param :privacy, 'object'
504
+ api.has_param :place, 'object'
301
505
  api.has_param :tags, { list: 'int' }
302
- api.has_param :visible, 'string'
506
+ api.has_param :message, 'string'
303
507
  end
304
508
  end
305
509
 
510
+ has_edge :asset3ds do |edge|
511
+ edge.get 'WithAsset3D'
512
+ end
513
+
306
514
  has_edge :assigned_users do |edge|
307
515
  edge.delete do |api|
308
516
  api.has_param :user, 'int'
@@ -311,8 +519,8 @@ module FacebookAds
311
519
  api.has_param :business, 'string'
312
520
  end
313
521
  edge.post 'Page' do |api|
314
- api.has_param :role, { enum: -> { Page::ROLE }}
315
522
  api.has_param :user, 'int'
523
+ api.has_param :tasks, { list: { enum: -> { Page::TASKS }} }
316
524
  end
317
525
  end
318
526
 
@@ -326,18 +534,39 @@ module FacebookAds
326
534
 
327
535
  has_edge :blocked do |edge|
328
536
  edge.delete do |api|
329
- api.has_param :asid, 'int'
330
537
  api.has_param :uid, 'int'
331
538
  api.has_param :user, 'int'
539
+ api.has_param :asid, 'int'
332
540
  end
333
541
  edge.get 'Profile' do |api|
334
542
  api.has_param :uid, 'int'
335
543
  api.has_param :user, 'int'
336
544
  end
337
545
  edge.post do |api|
338
- api.has_param :asid, 'object'
339
- api.has_param :uid, { list: 'string' }
340
546
  api.has_param :user, { list: 'string' }
547
+ api.has_param :uid, { list: 'string' }
548
+ api.has_param :asid, 'object'
549
+ end
550
+ end
551
+
552
+ has_edge :broadcast_messages do |edge|
553
+ edge.get 'PageBroadcast'
554
+ edge.post 'Page' do |api|
555
+ api.has_param :message_creative_id, 'string'
556
+ api.has_param :notification_type, { enum: -> { Page::NOTIFICATION_TYPE }}
557
+ api.has_param :tag, 'object'
558
+ api.has_param :messaging_type, { enum: -> { Page::MESSAGING_TYPE }}
559
+ api.has_param :targeting, 'object'
560
+ api.has_param :custom_label_id, 'int'
561
+ api.has_param :schedule_time, 'object'
562
+ api.has_param :schedule_local_time, 'string'
563
+ end
564
+ end
565
+
566
+ has_edge :broadcast_reach_estimations do |edge|
567
+ edge.post 'Page' do |api|
568
+ api.has_param :custom_label_id, 'int'
569
+ api.has_param :targeting, 'object'
341
570
  end
342
571
  end
343
572
 
@@ -347,37 +576,56 @@ module FacebookAds
347
576
  end
348
577
  end
349
578
 
579
+ has_edge :businesses do |edge|
580
+ edge.post 'Business' do |api|
581
+ api.has_param :business, 'string'
582
+ end
583
+ end
584
+
585
+ has_edge :businessprojects do |edge|
586
+ edge.get 'BusinessProject' do |api|
587
+ api.has_param :business, 'object'
588
+ end
589
+ end
590
+
591
+ has_edge :businesssettinglogs do |edge|
592
+ edge.get 'BusinessSettingLogsData'
593
+ end
594
+
350
595
  has_edge :call_to_actions do |edge|
596
+ edge.get 'PageCallToAction'
351
597
  edge.post 'PageCallToAction' do |api|
598
+ api.has_param :type, { enum: -> { PageCallToAction::TYPE }}
599
+ api.has_param :web_destination_type, { enum: -> { PageCallToAction::WEB_DESTINATION_TYPE }}
600
+ api.has_param :android_destination_type, { enum: -> { PageCallToAction::ANDROID_DESTINATION_TYPE }}
601
+ api.has_param :iphone_destination_type, { enum: -> { PageCallToAction::IPHONE_DESTINATION_TYPE }}
602
+ api.has_param :intl_number_with_plus, 'string'
603
+ api.has_param :web_url, 'string'
352
604
  api.has_param :android_app_id, 'int'
353
605
  api.has_param :android_deeplink, 'string'
354
- api.has_param :android_destination_type, { enum: -> { PageCallToAction::ANDROID_DESTINATION_TYPE }}
355
606
  api.has_param :android_package_name, 'string'
356
607
  api.has_param :android_url, 'string'
357
- api.has_param :email_address, 'string'
358
- api.has_param :intl_number_with_plus, 'string'
359
608
  api.has_param :iphone_app_id, 'int'
360
609
  api.has_param :iphone_deeplink, 'string'
361
- api.has_param :iphone_destination_type, { enum: -> { PageCallToAction::IPHONE_DESTINATION_TYPE }}
362
610
  api.has_param :iphone_url, 'string'
363
- api.has_param :type, { enum: -> { PageCallToAction::TYPE }}
364
- api.has_param :web_destination_type, { enum: -> { PageCallToAction::WEB_DESTINATION_TYPE }}
365
- api.has_param :web_url, 'string'
611
+ api.has_param :email_address, 'string'
366
612
  end
367
613
  end
368
614
 
369
615
  has_edge :canvas_elements do |edge|
616
+ edge.get 'CanvasBodyElement'
370
617
  edge.post 'CanvasBodyElement' do |api|
618
+ api.has_param :canvas_photo, 'object'
619
+ api.has_param :canvas_video, 'object'
620
+ api.has_param :canvas_text, 'object'
371
621
  api.has_param :canvas_button, 'object'
372
- api.has_param :canvas_carousel, 'object'
373
622
  api.has_param :canvas_footer, 'object'
623
+ api.has_param :canvas_carousel, 'object'
374
624
  api.has_param :canvas_header, 'object'
375
- api.has_param :canvas_photo, 'object'
376
625
  api.has_param :canvas_product_list, 'object'
377
626
  api.has_param :canvas_product_set, 'object'
378
627
  api.has_param :canvas_store_locator, 'object'
379
- api.has_param :canvas_text, 'object'
380
- api.has_param :canvas_video, 'object'
628
+ api.has_param :canvas_lead_form, 'object'
381
629
  end
382
630
  end
383
631
 
@@ -386,183 +634,253 @@ module FacebookAds
386
634
  api.has_param :is_published, 'bool'
387
635
  end
388
636
  edge.post 'Canvas' do |api|
389
- api.has_param :background_color, 'string'
390
637
  api.has_param :body_element_ids, { list: 'string' }
391
- api.has_param :is_hidden, 'bool'
638
+ api.has_param :background_color, 'string'
392
639
  api.has_param :is_published, 'bool'
640
+ api.has_param :is_hidden, 'bool'
393
641
  api.has_param :name, 'string'
394
642
  end
395
643
  end
396
644
 
397
- has_edge :change_proposals do |edge|
398
- edge.get 'PageChangeProposal'
399
- end
400
-
401
645
  has_edge :claimed_urls do |edge|
402
646
  edge.delete do |api|
403
647
  api.has_param :url, 'string'
404
648
  end
405
- edge.post 'Url' do |api|
406
- api.has_param :url, 'string'
407
- end
408
649
  end
409
650
 
410
651
  has_edge :conversations do |edge|
411
652
  edge.get 'UnifiedThread' do |api|
412
- api.has_param :folder, 'string'
413
653
  api.has_param :tags, { list: 'string' }
654
+ api.has_param :folder, 'string'
414
655
  end
415
656
  end
416
657
 
417
658
  has_edge :copyright_manual_claims do |edge|
418
- edge.post do |api|
419
- api.has_param :action, { enum: %w{MANUAL_REVIEW MONITOR BLOCK CLAIM_AD_EARNINGS REQUEST_TAKEDOWN }}
420
- api.has_param :countries, 'object'
421
- api.has_param :match_content_type, { enum: %w{VIDEO_AND_AUDIO VIDEO_ONLY AUDIO_ONLY }}
422
- api.has_param :matched_asset_id, 'string'
659
+ edge.post 'VideoCopyrightMatch' do |api|
423
660
  api.has_param :reference_asset_id, 'string'
661
+ api.has_param :matched_asset_id, 'string'
662
+ api.has_param :match_content_type, { enum: -> { VideoCopyrightMatch::MATCH_CONTENT_TYPE }}
663
+ api.has_param :action, { enum: -> { VideoCopyrightMatch::ACTION }}
664
+ api.has_param :countries, 'object'
665
+ end
666
+ end
667
+
668
+ has_edge :copyright_whitelisted_ig_partners do |edge|
669
+ edge.delete do |api|
670
+ api.has_param :usernames, { list: 'string' }
671
+ end
672
+ edge.post do |api|
673
+ api.has_param :usernames, { list: 'string' }
674
+ end
675
+ end
676
+
677
+ has_edge :copyright_whitelisted_partners do |edge|
678
+ edge.delete do |api|
679
+ api.has_param :partner_ids, { list: 'object' }
680
+ api.has_param :urls, { list: 'string' }
681
+ end
682
+ edge.get 'Profile'
683
+ edge.post do |api|
684
+ api.has_param :partner_ids, { list: 'object' }
685
+ api.has_param :urls, { list: 'string' }
686
+ end
687
+ end
688
+
689
+ has_edge :crosspost_pending_approval_pages do |edge|
690
+ edge.get 'Page'
691
+ end
692
+
693
+ has_edge :crosspost_whitelisted_pages do |edge|
694
+ edge.get 'Page'
695
+ end
696
+
697
+ has_edge :custom_labels do |edge|
698
+ edge.get 'PageUserMessageThreadLabel'
699
+ edge.post 'PageUserMessageThreadLabel' do |api|
700
+ api.has_param :name, 'string'
424
701
  end
425
702
  end
426
703
 
427
704
  has_edge :events do |edge|
428
705
  edge.get 'Event' do |api|
429
- api.has_param :event_state_filter, { list: { enum: -> { Event::EVENT_STATE_FILTER }} }
706
+ api.has_param :type, { enum: -> { Event::TYPE }}
430
707
  api.has_param :include_canceled, 'bool'
431
708
  api.has_param :time_filter, { enum: -> { Event::TIME_FILTER }}
432
- api.has_param :type, { enum: -> { Event::TYPE }}
709
+ api.has_param :event_state_filter, { list: { enum: -> { Event::EVENT_STATE_FILTER }} }
710
+ end
711
+ edge.post 'Event' do |api|
712
+ api.has_param :event_info, 'object'
713
+ api.has_param :action_context, 'object'
714
+ api.has_param :app_context, 'object'
433
715
  end
434
716
  end
435
717
 
718
+ has_edge :expired_posts do |edge|
719
+ edge.get 'ExpirablePost'
720
+ end
721
+
722
+ has_edge :expiring_posts do |edge|
723
+ edge.get 'ExpirablePost'
724
+ end
725
+
726
+ has_edge :featured_videos_collection do |edge|
727
+ edge.get 'AdVideo'
728
+ end
729
+
436
730
  has_edge :feed do |edge|
437
731
  edge.get 'PagePost' do |api|
438
732
  api.has_param :include_hidden, 'bool'
439
- api.has_param :show_expired, 'bool'
440
733
  api.has_param :with, { enum: -> { PagePost::WITH }}
734
+ api.has_param :show_expired, 'bool'
441
735
  end
442
736
  edge.post 'PagePost' do |api|
443
- api.has_param :actions, 'object'
444
- api.has_param :adaptive_type, 'string'
445
- api.has_param :album_id, 'string'
446
- api.has_param :android_key_hash, 'string'
447
- api.has_param :animated_effect_id, 'int'
448
- api.has_param :application_id, 'string'
449
- api.has_param :asked_fun_fact_prompt_id, 'int'
450
- api.has_param :asset3d_id, 'int'
451
- api.has_param :associated_id, 'string'
452
- api.has_param :attach_place_suggestion, 'bool'
453
- api.has_param :attached_media, { list: 'object' }
454
- api.has_param :audience_exp, 'bool'
455
- api.has_param :backdated_time, 'datetime'
456
- api.has_param :backdated_time_granularity, { enum: -> { PagePost::BACKDATED_TIME_GRANULARITY }}
457
- api.has_param :call_to_action, 'object'
737
+ api.has_param :picture, 'string'
738
+ api.has_param :name, 'string'
739
+ api.has_param :link, 'string'
458
740
  api.has_param :caption, 'string'
459
- api.has_param :checkin_entry_point, { enum: -> { PagePost::CHECKIN_ENTRY_POINT }}
460
- api.has_param :child_attachments, { list: 'object' }
461
- api.has_param :client_mutation_id, 'string'
462
- api.has_param :composer_entry_picker, 'string'
463
- api.has_param :composer_entry_point, 'string'
464
- api.has_param :composer_entry_time, 'int'
465
- api.has_param :composer_session_events_log, 'string'
466
- api.has_param :composer_session_id, 'string'
467
- api.has_param :composer_source_surface, 'string'
468
- api.has_param :composer_type, 'string'
469
- api.has_param :connection_class, 'string'
470
- api.has_param :content_attachment, 'string'
471
- api.has_param :coordinates, 'object'
472
- api.has_param :cta_link, 'string'
473
- api.has_param :cta_type, 'string'
474
741
  api.has_param :description, 'string'
475
- api.has_param :direct_share_status, 'int'
476
- api.has_param :enforce_link_ownership, 'bool'
742
+ api.has_param :quote, 'string'
743
+ api.has_param :source, 'string'
744
+ api.has_param :properties, 'object'
745
+ api.has_param :object_attachment, 'string'
746
+ api.has_param :height, 'int'
747
+ api.has_param :width, 'int'
477
748
  api.has_param :expanded_height, 'int'
478
749
  api.has_param :expanded_width, 'int'
479
- api.has_param :feed_targeting, 'object'
480
- api.has_param :formatting, { enum: -> { PagePost::FORMATTING }}
481
- api.has_param :fun_fact_prompt_id, 'string'
482
- api.has_param :fun_fact_toastee_id, 'int'
483
- api.has_param :has_nickname, 'bool'
484
- api.has_param :height, 'int'
485
- api.has_param :holiday_card, 'string'
486
- api.has_param :home_checkin_city_id, 'object'
750
+ api.has_param :referral_id, 'string'
751
+ api.has_param :thumbnail, 'file'
487
752
  api.has_param :image_crops, 'hash'
488
- api.has_param :implicit_with_tags, { list: 'int' }
489
- api.has_param :instant_game_entry_point_data, 'string'
490
- api.has_param :ios_bundle_id, 'string'
491
- api.has_param :is_backout_draft, 'bool'
492
- api.has_param :is_boost_intended, 'bool'
753
+ api.has_param :call_to_action, 'object'
754
+ api.has_param :time_since_original_post, 'int'
755
+ api.has_param :client_mutation_id, 'string'
756
+ api.has_param :privacy, 'object'
757
+ api.has_param :composer_session_id, 'string'
758
+ api.has_param :content_attachment, 'string'
759
+ api.has_param :actions, 'object'
760
+ api.has_param :targeting, 'object'
761
+ api.has_param :feed_targeting, 'object'
762
+ api.has_param :ref, { list: 'string' }
763
+ api.has_param :tags, { list: 'int' }
764
+ api.has_param :place, 'object'
493
765
  api.has_param :is_explicit_location, 'bool'
494
- api.has_param :is_explicit_share, 'bool'
495
- api.has_param :is_group_linking_post, 'bool'
496
- api.has_param :is_photo_container, 'bool'
497
- api.has_param :link, 'string'
498
- api.has_param :location_source_id, 'string'
499
- api.has_param :manual_privacy, 'bool'
500
- api.has_param :message, 'string'
501
- api.has_param :multi_share_end_card, 'bool'
502
- api.has_param :multi_share_optimized, 'bool'
503
- api.has_param :name, 'string'
504
- api.has_param :nectar_module, 'string'
505
- api.has_param :object_attachment, 'string'
506
- api.has_param :offer_like_post_id, 'string'
507
766
  api.has_param :og_action_type_id, 'string'
508
- api.has_param :og_hide_object_attachment, 'bool'
509
- api.has_param :og_icon_id, 'string'
510
767
  api.has_param :og_object_id, 'string'
511
768
  api.has_param :og_phrase, 'string'
769
+ api.has_param :og_icon_id, 'string'
512
770
  api.has_param :og_set_profile_badge, 'bool'
513
771
  api.has_param :og_suggestion_mechanism, 'string'
514
- api.has_param :page_recommendation, 'string'
515
- api.has_param :picture, 'string'
516
- api.has_param :place, 'object'
517
- api.has_param :place_attachment_setting, { enum: -> { PagePost::PLACE_ATTACHMENT_SETTING }}
518
- api.has_param :place_list, 'string'
519
- api.has_param :place_list_data, 'object'
520
- api.has_param :post_surfaces_blacklist, { list: { enum: -> { PagePost::POST_SURFACES_BLACKLIST }} }
772
+ api.has_param :og_hide_object_attachment, 'bool'
773
+ api.has_param :backdated_time, 'datetime'
774
+ api.has_param :backdated_time_granularity, { enum: -> { PagePost::BACKDATED_TIME_GRANULARITY }}
775
+ api.has_param :published, 'bool'
776
+ api.has_param :scheduled_publish_time, 'datetime'
777
+ api.has_param :unpublished_content_type, { enum: -> { PagePost::UNPUBLISHED_CONTENT_TYPE }}
778
+ api.has_param :application_id, 'string'
779
+ api.has_param :proxied_app_id, 'string'
780
+ api.has_param :ios_bundle_id, 'string'
781
+ api.has_param :android_key_hash, 'string'
782
+ api.has_param :user_selected_tags, 'bool'
783
+ api.has_param :nectar_module, 'string'
784
+ api.has_param :manual_privacy, 'bool'
785
+ api.has_param :audience_exp, 'bool'
786
+ api.has_param :coordinates, 'object'
787
+ api.has_param :is_explicit_share, 'bool'
788
+ api.has_param :is_photo_container, 'bool'
789
+ api.has_param :implicit_with_tags, { list: 'int' }
790
+ api.has_param :child_attachments, { list: 'object' }
791
+ api.has_param :suggested_place_id, 'object'
792
+ api.has_param :attach_place_suggestion, 'bool'
793
+ api.has_param :viewer_coordinates, 'object'
794
+ api.has_param :album_id, 'string'
795
+ api.has_param :multi_share_optimized, 'bool'
796
+ api.has_param :multi_share_end_card, 'bool'
797
+ api.has_param :title, 'string'
798
+ api.has_param :attached_media, { list: 'object' }
799
+ api.has_param :home_checkin_city_id, 'object'
800
+ api.has_param :text_only_place, 'string'
801
+ api.has_param :connection_class, 'string'
802
+ api.has_param :associated_id, 'string'
521
803
  api.has_param :posting_to_redspace, { enum: -> { PagePost::POSTING_TO_REDSPACE }}
522
- api.has_param :privacy, 'object'
804
+ api.has_param :place_attachment_setting, { enum: -> { PagePost::PLACE_ATTACHMENT_SETTING }}
805
+ api.has_param :checkin_entry_point, { enum: -> { PagePost::CHECKIN_ENTRY_POINT }}
806
+ api.has_param :is_backout_draft, 'bool'
807
+ api.has_param :sponsor_id, 'string'
808
+ api.has_param :direct_share_status, 'int'
809
+ api.has_param :sponsor_relationship, 'int'
810
+ api.has_param :referenceable_image_ids, { list: 'string' }
523
811
  api.has_param :prompt_id, 'string'
524
812
  api.has_param :prompt_tracking_string, 'string'
525
- api.has_param :properties, 'object'
526
- api.has_param :proxied_app_id, 'string'
813
+ api.has_param :post_surfaces_blacklist, { list: { enum: -> { PagePost::POST_SURFACES_BLACKLIST }} }
814
+ api.has_param :tracking_info, 'string'
815
+ api.has_param :text_format_preset_id, 'string'
816
+ api.has_param :cta_link, 'string'
817
+ api.has_param :cta_type, 'string'
818
+ api.has_param :place_list_data, 'object'
819
+ api.has_param :formatting, { enum: -> { PagePost::FORMATTING }}
820
+ api.has_param :target_surface, { enum: -> { PagePost::TARGET_SURFACE }}
821
+ api.has_param :adaptive_type, 'string'
822
+ api.has_param :animated_effect_id, 'int'
823
+ api.has_param :asked_fun_fact_prompt_id, 'int'
824
+ api.has_param :asset3d_id, 'int'
825
+ api.has_param :composer_entry_picker, 'string'
826
+ api.has_param :composer_entry_point, 'string'
827
+ api.has_param :composer_entry_time, 'int'
828
+ api.has_param :composer_session_events_log, 'string'
829
+ api.has_param :composer_source_surface, 'string'
830
+ api.has_param :composer_type, 'string'
831
+ api.has_param :fun_fact_prompt_id, 'string'
832
+ api.has_param :fun_fact_toastee_id, 'int'
833
+ api.has_param :is_group_linking_post, 'bool'
834
+ api.has_param :has_nickname, 'bool'
835
+ api.has_param :holiday_card, 'string'
836
+ api.has_param :instant_game_entry_point_data, 'string'
837
+ api.has_param :is_boost_intended, 'bool'
838
+ api.has_param :location_source_id, 'string'
839
+ api.has_param :message, 'string'
840
+ api.has_param :offer_like_post_id, 'string'
841
+ api.has_param :page_recommendation, 'string'
842
+ api.has_param :place_list, 'string'
527
843
  api.has_param :publish_event_id, 'int'
528
- api.has_param :published, 'bool'
529
- api.has_param :quote, 'string'
530
844
  api.has_param :react_mode_metadata, 'string'
531
- api.has_param :ref, { list: 'string' }
532
- api.has_param :referenceable_image_ids, { list: 'string' }
533
845
  api.has_param :sales_promo_id, 'int'
534
- api.has_param :scheduled_publish_time, 'datetime'
535
- api.has_param :source, 'string'
536
- api.has_param :sponsor_id, 'string'
537
- api.has_param :sponsor_relationship, 'int'
538
- api.has_param :suggested_place_id, 'object'
539
- api.has_param :tags, { list: 'int' }
540
- api.has_param :target_surface, { enum: -> { PagePost::TARGET_SURFACE }}
541
- api.has_param :targeting, 'object'
542
846
  api.has_param :text_format_metadata, 'string'
543
- api.has_param :text_format_preset_id, 'string'
544
- api.has_param :text_only_place, 'string'
545
847
  api.has_param :throwback_camera_roll_media, 'string'
546
- api.has_param :thumbnail, 'file'
547
- api.has_param :time_since_original_post, 'int'
548
- api.has_param :title, 'string'
549
- api.has_param :tracking_info, 'string'
550
- api.has_param :unpublished_content_type, { enum: -> { PagePost::UNPUBLISHED_CONTENT_TYPE }}
551
- api.has_param :user_selected_tags, 'bool'
552
848
  api.has_param :video_start_time_ms, 'int'
553
- api.has_param :viewer_coordinates, 'object'
554
- api.has_param :width, 'int'
849
+ api.has_param :enforce_link_ownership, 'bool'
555
850
  end
556
851
  end
557
852
 
853
+ has_edge :flags do |edge|
854
+ edge.post 'Page' do |api|
855
+ api.has_param :page_id, 'int'
856
+ api.has_param :page_ids, { list: 'int' }
857
+ api.has_param :flag, 'string'
858
+ api.has_param :value, 'bool'
859
+ api.has_param :entry_point, 'string'
860
+ api.has_param :endpoint, 'string'
861
+ end
862
+ end
863
+
864
+ has_edge :global_brand_children do |edge|
865
+ edge.get 'Page'
866
+ end
867
+
868
+ has_edge :indexed_video_copyrights do |edge|
869
+ edge.get 'VideoCopyright'
870
+ end
871
+
872
+ has_edge :indexed_videos do |edge|
873
+ edge.get 'AdVideo'
874
+ end
875
+
558
876
  has_edge :insights do |edge|
559
877
  edge.get 'InsightsResult' do |api|
560
- api.has_param :date_preset, { enum: -> { InsightsResult::DATE_PRESET }}
878
+ api.has_param :since, 'datetime'
879
+ api.has_param :until, 'datetime'
561
880
  api.has_param :metric, { list: 'object' }
562
881
  api.has_param :period, { enum: -> { InsightsResult::PERIOD }}
563
882
  api.has_param :show_description_from_api_doc, 'bool'
564
- api.has_param :since, 'datetime'
565
- api.has_param :until, 'datetime'
883
+ api.has_param :date_preset, { enum: -> { InsightsResult::DATE_PRESET }}
566
884
  end
567
885
  end
568
886
 
@@ -578,99 +896,125 @@ module FacebookAds
578
896
  api.has_param :development_mode, 'bool'
579
897
  end
580
898
  edge.post 'InstantArticle' do |api|
581
- api.has_param :development_mode, 'bool'
582
899
  api.has_param :html_source, 'string'
583
- api.has_param :published, 'bool'
900
+ api.has_param :development_mode, 'bool'
584
901
  api.has_param :take_live, 'bool'
902
+ api.has_param :published, 'bool'
585
903
  end
586
904
  end
587
905
 
588
906
  has_edge :instant_articles_insights do |edge|
589
907
  edge.get 'InstantArticleInsightsQueryResult' do |api|
590
- api.has_param :breakdown, { enum: -> { InstantArticleInsightsQueryResult::BREAKDOWN }}
591
908
  api.has_param :metric, { list: 'object' }
592
909
  api.has_param :period, { enum: -> { InstantArticleInsightsQueryResult::PERIOD }}
593
910
  api.has_param :since, 'datetime'
594
911
  api.has_param :until, 'datetime'
912
+ api.has_param :breakdown, { enum: -> { InstantArticleInsightsQueryResult::BREAKDOWN }}
595
913
  end
596
914
  end
597
915
 
598
916
  has_edge :instant_articles_publish do |edge|
599
- edge.post do |api|
917
+ edge.post 'Page' do |api|
600
918
  api.has_param :canonical_url, 'string'
601
- api.has_param :publish_status, { enum: %w{DRAFT LIVE }}
919
+ api.has_param :publish_status, { enum: -> { Page::PUBLISH_STATUS }}
602
920
  end
603
921
  end
604
922
 
605
923
  has_edge :labels do |edge|
924
+ edge.get 'PageLabel'
606
925
  edge.post 'PageLabel' do |api|
607
926
  api.has_param :name, 'string'
608
927
  end
609
928
  end
610
929
 
611
930
  has_edge :leadgen_conditional_questions_group do |edge|
612
- edge.post do |api|
931
+ edge.get 'LeadGenConditionalQuestionsGroup'
932
+ edge.post 'LeadGenConditionalQuestionsGroup' do |api|
613
933
  api.has_param :conditional_questions_group_csv, 'file'
614
934
  end
615
935
  end
616
936
 
617
937
  has_edge :leadgen_context_cards do |edge|
618
- edge.post do |api|
619
- api.has_param :button_text, 'string'
938
+ edge.get 'LeadGenContextCard'
939
+ edge.post 'LeadGenContextCard' do |api|
940
+ api.has_param :title, 'string'
941
+ api.has_param :style, { enum: -> { LeadGenContextCard::STYLE }}
620
942
  api.has_param :content, { list: 'string' }
943
+ api.has_param :button_text, 'string'
621
944
  api.has_param :cover_photo, 'file'
622
945
  api.has_param :cover_photo_id, 'string'
623
- api.has_param :status, { enum: %w{ACTIVE ARCHIVED DELETED DRAFT }}
624
- api.has_param :style, { enum: %w{LIST_STYLE PARAGRAPH_STYLE }}
625
- api.has_param :title, 'string'
946
+ api.has_param :status, { enum: -> { LeadGenContextCard::STATUS }}
626
947
  end
627
948
  end
628
949
 
629
950
  has_edge :leadgen_draft_forms do |edge|
630
- edge.post 'Page' do |api|
951
+ edge.get 'LeadGenDataDraft'
952
+ edge.post 'LeadGenDataDraft' do |api|
953
+ api.has_param :name, 'string'
954
+ api.has_param :locale, { enum: -> { LeadGenDataDraft::LOCALE }}
631
955
  api.has_param :allow_organic_lead_retrieval, 'bool'
632
956
  api.has_param :block_display_for_non_targeted_viewer, 'bool'
633
- api.has_param :context_card, 'object'
634
- api.has_param :context_card_id, 'string'
635
- api.has_param :custom_disclaimer, 'object'
636
957
  api.has_param :follow_up_action_url, 'string'
637
- api.has_param :is_optimized_for_quality, 'bool'
638
958
  api.has_param :legal_content_id, 'string'
639
- api.has_param :locale, { enum: -> { Page::LOCALE }}
640
- api.has_param :name, 'string'
641
- api.has_param :privacy_policy, 'object'
642
- api.has_param :question_page_custom_headline, 'string'
959
+ api.has_param :context_card_id, 'string'
643
960
  api.has_param :questions, { list: 'object' }
644
- api.has_param :thank_you_page, 'object'
961
+ api.has_param :privacy_policy, 'hash'
962
+ api.has_param :custom_disclaimer, 'object'
963
+ api.has_param :context_card, 'object'
964
+ api.has_param :thank_you_page, 'hash'
965
+ api.has_param :tracking_parameters, 'object'
966
+ api.has_param :question_page_custom_headline, 'string'
967
+ api.has_param :is_optimized_for_quality, 'bool'
645
968
  end
646
969
  end
647
970
 
648
971
  has_edge :leadgen_forms do |edge|
649
- edge.post 'Page' do |api|
972
+ edge.get 'LeadgenForm'
973
+ edge.post 'LeadgenForm' do |api|
974
+ api.has_param :name, 'string'
975
+ api.has_param :locale, { enum: -> { LeadgenForm::LOCALE }}
650
976
  api.has_param :allow_organic_lead_retrieval, 'bool'
651
977
  api.has_param :block_display_for_non_targeted_viewer, 'bool'
978
+ api.has_param :follow_up_action_url, 'object'
979
+ api.has_param :legal_content_id, 'object'
980
+ api.has_param :context_card_id, 'object'
981
+ api.has_param :thank_you_page_id, 'object'
982
+ api.has_param :questions, { list: 'object' }
983
+ api.has_param :privacy_policy, 'object'
984
+ api.has_param :custom_disclaimer, 'object'
652
985
  api.has_param :context_card, 'object'
653
- api.has_param :context_card_id, 'string'
986
+ api.has_param :thank_you_page, 'object'
987
+ api.has_param :tracking_parameters, 'object'
654
988
  api.has_param :cover_photo, 'file'
655
- api.has_param :custom_disclaimer, 'object'
656
- api.has_param :follow_up_action_url, 'string'
657
- api.has_param :is_optimized_for_quality, 'bool'
658
- api.has_param :legal_content_id, 'string'
659
- api.has_param :locale, { enum: -> { Page::LOCALE }}
660
- api.has_param :name, 'string'
661
- api.has_param :privacy_policy, 'object'
662
989
  api.has_param :question_page_custom_headline, 'string'
663
- api.has_param :questions, { list: 'object' }
664
- api.has_param :thank_you_page, 'object'
665
- api.has_param :thank_you_page_id, 'string'
990
+ api.has_param :is_optimized_for_quality, 'bool'
991
+ api.has_param :is_for_canvas, 'bool'
666
992
  end
667
993
  end
668
994
 
669
995
  has_edge :leadgen_legal_content do |edge|
670
- edge.post do |api|
671
- api.has_param :custom_disclaimer, 'object'
996
+ edge.get 'LeadGenLegalContent'
997
+ edge.post 'LeadGenLegalContent' do |api|
672
998
  api.has_param :privacy_policy, 'object'
673
- api.has_param :status, { enum: %w{ACTIVE ARCHIVED DELETED DRAFT }}
999
+ api.has_param :custom_disclaimer, 'object'
1000
+ api.has_param :status, { enum: -> { LeadGenLegalContent::STATUS }}
1001
+ end
1002
+ end
1003
+
1004
+ has_edge :leadgen_qualifiers do |edge|
1005
+ edge.get 'LeadGenQualifier'
1006
+ end
1007
+
1008
+ has_edge :leadgen_thank_you_page do |edge|
1009
+ edge.post do |api|
1010
+ api.has_param :body, 'string'
1011
+ api.has_param :business_phone_number, 'string'
1012
+ api.has_param :button_text, 'string'
1013
+ api.has_param :button_type, { enum: %w{VIEW_WEBSITE CALL_BUSINESS MESSAGE_BUSINESS DOWNLOAD }}
1014
+ api.has_param :country_code, 'string'
1015
+ api.has_param :enable_messenger, 'bool'
1016
+ api.has_param :title, 'string'
1017
+ api.has_param :website_url, 'string'
674
1018
  end
675
1019
  end
676
1020
 
@@ -678,7 +1022,8 @@ module FacebookAds
678
1022
  edge.delete do |api|
679
1023
  api.has_param :user_id, 'string'
680
1024
  end
681
- edge.post 'User' do |api|
1025
+ edge.get 'User'
1026
+ edge.post 'Page' do |api|
682
1027
  api.has_param :user_id, 'int'
683
1028
  end
684
1029
  end
@@ -689,48 +1034,57 @@ module FacebookAds
689
1034
  end
690
1035
  end
691
1036
 
692
- has_edge :live_encoders do |edge|
693
- edge.post do |api|
694
- api.has_param :brand, 'string'
695
- api.has_param :device_id, 'string'
696
- api.has_param :model, 'string'
697
- api.has_param :name, 'string'
698
- api.has_param :version, 'string'
1037
+ has_edge :links do |edge|
1038
+ edge.post 'Link' do |api|
1039
+ api.has_param :link, 'string'
1040
+ api.has_param :message, 'string'
1041
+ api.has_param :image, 'string'
1042
+ api.has_param :tags, { list: 'int' }
1043
+ api.has_param :place, 'object'
1044
+ api.has_param :published, 'bool'
1045
+ api.has_param :scheduled_publish_time, 'int'
1046
+ api.has_param :unpublished_content_type, { enum: -> { Link::UNPUBLISHED_CONTENT_TYPE }}
1047
+ api.has_param :targeting, 'object'
1048
+ api.has_param :privacy, 'object'
1049
+ api.has_param :application_id, 'string'
1050
+ api.has_param :is_explicit_share, 'bool'
699
1051
  end
700
1052
  end
701
1053
 
702
1054
  has_edge :live_videos do |edge|
703
1055
  edge.get 'LiveVideo' do |api|
704
- api.has_param :broadcast_status, { list: { enum: -> { LiveVideo::BROADCAST_STATUS }} }
705
1056
  api.has_param :type, { enum: -> { LiveVideo::TYPE }}
1057
+ api.has_param :source, { enum: -> { LiveVideo::SOURCE }}
1058
+ api.has_param :broadcast_status, { list: { enum: -> { LiveVideo::BROADCAST_STATUS }} }
706
1059
  end
707
1060
  edge.post 'LiveVideo' do |api|
708
- api.has_param :attribution_app_id, 'string'
709
- api.has_param :content_tags, { list: 'string' }
710
- api.has_param :crossposting_actions, { list: 'hash' }
711
- api.has_param :custom_labels, { list: 'string' }
1061
+ api.has_param :title, 'string'
712
1062
  api.has_param :description, 'string'
713
- api.has_param :encoding_settings, 'string'
714
- api.has_param :fisheye_video_cropped, 'bool'
715
- api.has_param :front_z_rotation, 'double'
716
- api.has_param :game_show, 'hash'
1063
+ api.has_param :save_vod, 'bool'
1064
+ api.has_param :published, 'bool'
1065
+ api.has_param :status, { enum: -> { LiveVideo::STATUS }}
1066
+ api.has_param :privacy, 'object'
1067
+ api.has_param :stop_on_delete_stream, 'bool'
1068
+ api.has_param :stream_type, { enum: -> { LiveVideo::STREAM_TYPE }}
1069
+ api.has_param :content_tags, { list: 'string' }
717
1070
  api.has_param :is_spherical, 'bool'
718
- api.has_param :live_encoders, { list: 'string' }
719
- api.has_param :original_fov, 'int'
1071
+ api.has_param :is_audio_only, 'bool'
720
1072
  api.has_param :planned_start_time, 'int'
721
- api.has_param :privacy, 'object'
722
- api.has_param :product_items, { list: 'string' }
723
- api.has_param :projection, { enum: -> { LiveVideo::PROJECTION }}
724
- api.has_param :published, 'bool'
725
- api.has_param :save_vod, 'bool'
726
1073
  api.has_param :schedule_custom_profile_image, 'file'
1074
+ api.has_param :projection, { enum: -> { LiveVideo::PROJECTION }}
727
1075
  api.has_param :spatial_audio_format, { enum: -> { LiveVideo::SPATIAL_AUDIO_FORMAT }}
728
- api.has_param :status, { enum: -> { LiveVideo::STATUS }}
1076
+ api.has_param :encoding_settings, 'string'
1077
+ api.has_param :live_encoders, { list: 'string' }
1078
+ api.has_param :original_fov, 'int'
1079
+ api.has_param :fisheye_video_cropped, 'bool'
1080
+ api.has_param :front_z_rotation, 'double'
1081
+ api.has_param :attribution_app_id, 'string'
729
1082
  api.has_param :stereoscopic_mode, { enum: -> { LiveVideo::STEREOSCOPIC_MODE }}
730
- api.has_param :stop_on_delete_stream, 'bool'
731
- api.has_param :stream_type, { enum: -> { LiveVideo::STREAM_TYPE }}
1083
+ api.has_param :custom_labels, { list: 'string' }
732
1084
  api.has_param :targeting, 'object'
733
- api.has_param :title, 'string'
1085
+ api.has_param :product_items, { list: 'string' }
1086
+ api.has_param :crossposting_actions, { list: 'hash' }
1087
+ api.has_param :game_show, 'hash'
734
1088
  end
735
1089
  end
736
1090
 
@@ -740,33 +1094,37 @@ module FacebookAds
740
1094
  api.has_param :store_number, 'int'
741
1095
  end
742
1096
  edge.get 'Page'
743
- edge.post 'Location' do |api|
744
- api.has_param :always_open, 'bool'
745
- api.has_param :hours, 'hash'
746
- api.has_param :ignore_warnings, 'bool'
1097
+ edge.post 'Page' do |api|
1098
+ api.has_param :store_number, 'int'
747
1099
  api.has_param :location, 'object'
748
- api.has_param :location_page_id, 'object'
749
- api.has_param :old_store_number, 'int'
1100
+ api.has_param :place_topics, { list: 'string' }
1101
+ api.has_param :phone, 'string'
1102
+ api.has_param :store_name, 'string'
1103
+ api.has_param :hours, 'hash'
750
1104
  api.has_param :page_username, 'string'
1105
+ api.has_param :old_store_number, 'int'
751
1106
  api.has_param :permanently_closed, 'bool'
752
- api.has_param :phone, 'string'
753
- api.has_param :place_topics, { list: 'string' }
754
1107
  api.has_param :price_range, 'string'
755
- api.has_param :store_code, 'string'
756
1108
  api.has_param :store_location_descriptor, 'string'
757
- api.has_param :store_name, 'string'
758
- api.has_param :store_number, 'int'
1109
+ api.has_param :location_page_id, 'object'
1110
+ api.has_param :ignore_warnings, 'bool'
759
1111
  api.has_param :website, 'object'
1112
+ api.has_param :always_open, 'bool'
1113
+ api.has_param :store_code, 'string'
760
1114
  end
761
1115
  end
762
1116
 
763
1117
  has_edge :media_fingerprints do |edge|
1118
+ edge.get 'MediaFingerprint' do |api|
1119
+ api.has_param :universal_content_id, 'string'
1120
+ api.has_param :fingerprint_validity, { enum: -> { MediaFingerprint::FINGERPRINT_VALIDITY }}
1121
+ end
764
1122
  edge.post 'MediaFingerprint' do |api|
765
1123
  api.has_param :fingerprint_content_type, { enum: -> { MediaFingerprint::FINGERPRINT_CONTENT_TYPE }}
766
- api.has_param :metadata, 'object'
767
- api.has_param :source, 'string'
768
1124
  api.has_param :title, 'string'
1125
+ api.has_param :metadata, 'object'
769
1126
  api.has_param :universal_content_id, 'string'
1127
+ api.has_param :source, 'string'
770
1128
  end
771
1129
  end
772
1130
 
@@ -776,15 +1134,21 @@ module FacebookAds
776
1134
  end
777
1135
  end
778
1136
 
1137
+ has_edge :message_creatives do |edge|
1138
+ edge.post 'Page' do |api|
1139
+ api.has_param :messages, { list: 'object' }
1140
+ end
1141
+ end
1142
+
779
1143
  has_edge :messages do |edge|
780
- edge.post do |api|
781
- api.has_param :message, 'object'
782
- api.has_param :messaging_type, { enum: %w{RESPONSE UPDATE MESSAGE_TAG }}
783
- api.has_param :notification_type, { enum: %w{REGULAR SILENT_PUSH NO_PUSH }}
784
- api.has_param :persona_id, 'object'
1144
+ edge.post 'Page' do |api|
785
1145
  api.has_param :recipient, 'object'
786
- api.has_param :sender_action, { enum: %w{MARK_SEEN TYPING_ON TYPING_OFF }}
1146
+ api.has_param :message, 'object'
1147
+ api.has_param :sender_action, { enum: -> { Page::SENDER_ACTION }}
1148
+ api.has_param :notification_type, { enum: -> { Page::NOTIFICATION_TYPE }}
787
1149
  api.has_param :tag, 'object'
1150
+ api.has_param :messaging_type, { enum: -> { Page::MESSAGING_TYPE }}
1151
+ api.has_param :persona_id, 'object'
788
1152
  end
789
1153
  end
790
1154
 
@@ -792,197 +1156,225 @@ module FacebookAds
792
1156
  edge.get 'MessagingFeatureReview'
793
1157
  end
794
1158
 
1159
+ has_edge :messenger_ads_page_welcome_messages do |edge|
1160
+ edge.get 'MessengerDestinationPageWelcomeMessage'
1161
+ end
1162
+
795
1163
  has_edge :messenger_codes do |edge|
796
- edge.post do |api|
1164
+ edge.post 'Page' do |api|
1165
+ api.has_param :type, { enum: -> { Page::TYPE }}
797
1166
  api.has_param :data, 'string'
798
1167
  api.has_param :image_size, 'int'
799
- api.has_param :type, { enum: %w{STANDARD REF }}
800
1168
  end
801
1169
  end
802
1170
 
803
1171
  has_edge :messenger_profile do |edge|
804
1172
  edge.delete do |api|
805
- api.has_param :fields, { list: { enum: -> { MessengerProfile::FIELDS }} }
1173
+ api.has_param :fields, { list: { enum: %w{GET_STARTED PERSISTENT_MENU TARGET_AUDIENCE WHITELISTED_DOMAINS GREETING ACCOUNT_LINKING_URL PAYMENT_SETTINGS HOME_URL }} }
806
1174
  end
807
- edge.post 'MessengerProfile' do |api|
808
- api.has_param :account_linking_url, 'string'
1175
+ edge.get 'MessengerProfile'
1176
+ edge.post 'Page' do |api|
809
1177
  api.has_param :get_started, 'object'
810
- api.has_param :greeting, { list: 'object' }
811
- api.has_param :home_url, 'object'
812
- api.has_param :payment_settings, 'object'
813
1178
  api.has_param :persistent_menu, { list: 'object' }
814
1179
  api.has_param :target_audience, 'object'
815
1180
  api.has_param :whitelisted_domains, { list: 'string' }
1181
+ api.has_param :greeting, { list: 'object' }
1182
+ api.has_param :account_linking_url, 'string'
1183
+ api.has_param :payment_settings, 'object'
1184
+ api.has_param :home_url, 'object'
816
1185
  end
817
1186
  end
818
1187
 
819
1188
  has_edge :milestones do |edge|
1189
+ edge.get 'LifeEvent'
820
1190
  edge.post 'LifeEvent' do |api|
1191
+ api.has_param :title, 'string'
821
1192
  api.has_param :description, 'string'
822
1193
  api.has_param :start_time, 'datetime'
823
- api.has_param :title, 'string'
824
1194
  end
825
1195
  end
826
1196
 
1197
+ has_edge :music_video_copyrights do |edge|
1198
+ edge.get 'MusicVideoCopyright'
1199
+ end
1200
+
1201
+ has_edge :music_video_media_copyrights do |edge|
1202
+ edge.get 'MusicVideoCopyright'
1203
+ end
1204
+
827
1205
  has_edge :nativeoffers do |edge|
828
1206
  edge.get 'NativeOffer'
829
1207
  edge.post 'NativeOffer' do |api|
830
- api.has_param :barcode_type, { enum: -> { NativeOffer::BARCODE_TYPE }}
831
- api.has_param :barcode_value, 'string'
832
- api.has_param :details, 'string'
833
- api.has_param :disable_location, 'bool'
834
1208
  api.has_param :discounts, { list: 'object' }
835
- api.has_param :expiration_time, 'datetime'
836
- api.has_param :instore_code, 'string'
837
- api.has_param :location_type, { enum: -> { NativeOffer::LOCATION_TYPE }}
1209
+ api.has_param :details, 'string'
1210
+ api.has_param :terms, 'string'
1211
+ api.has_param :redemption_code, 'string'
1212
+ api.has_param :redemption_link, 'string'
838
1213
  api.has_param :max_save_count, 'int'
839
1214
  api.has_param :online_code, 'string'
1215
+ api.has_param :instore_code, 'string'
1216
+ api.has_param :expiration_time, 'datetime'
1217
+ api.has_param :location_type, { enum: -> { NativeOffer::LOCATION_TYPE }}
1218
+ api.has_param :barcode_type, { enum: -> { NativeOffer::BARCODE_TYPE }}
1219
+ api.has_param :barcode_value, 'string'
1220
+ api.has_param :barcode_photo, 'int'
1221
+ api.has_param :unique_codes, 'int'
1222
+ api.has_param :unique_barcodes, 'int'
1223
+ api.has_param :block_reshares, 'bool'
1224
+ api.has_param :disable_location, 'bool'
1225
+ api.has_param :commerce_store, 'string'
1226
+ api.has_param :commerce_store_collection, 'string'
1227
+ api.has_param :commerce_product_item, 'string'
840
1228
  api.has_param :page_set_id, 'string'
841
- api.has_param :redemption_link, 'string'
842
- api.has_param :terms, 'string'
843
1229
  end
844
1230
  end
845
1231
 
846
1232
  has_edge :nlp_configs do |edge|
847
- edge.post do |api|
1233
+ edge.post 'Page' do |api|
1234
+ api.has_param :nlp_enabled, 'bool'
1235
+ api.has_param :model, { enum: -> { Page::MODEL }}
848
1236
  api.has_param :custom_token, 'string'
849
- api.has_param :model, { enum: %w{ARABIC CHINESE CROATIAN CUSTOM DANISH DUTCH ENGLISH FRENCH_STANDARD GERMAN_STANDARD GREEK HEBREW HUNGARIAN IRISH ITALIAN_STANDARD KOREAN NORWEGIAN_BOKMAL POLISH PORTUGUESE ROMANIAN SPANISH SWEDISH VIETNAMESE }}
850
1237
  api.has_param :n_best, 'int'
851
- api.has_param :nlp_enabled, 'bool'
852
1238
  api.has_param :verbose, 'bool'
853
1239
  end
854
1240
  end
855
1241
 
856
- has_edge :offers_v3 do |edge|
1242
+ has_edge :notes do |edge|
857
1243
  edge.post do |api|
858
- api.has_param :availability_location, { enum: %w{both offline online }}
859
- api.has_param :description, 'string'
860
- api.has_param :destination_uri, 'string'
861
- api.has_param :discount_code, 'string'
862
- api.has_param :expiration_time, 'datetime'
863
- api.has_param :hidden, 'bool'
864
- api.has_param :photo_uris, { list: 'string' }
865
- api.has_param :referrer, 'string'
866
- api.has_param :schedule_time, 'datetime'
867
- api.has_param :start_time, 'datetime'
868
- api.has_param :terms_and_conditions, 'string'
869
- api.has_param :video_ids, { list: 'string' }
1244
+ api.has_param :message, 'string'
1245
+ api.has_param :subject, 'string'
1246
+ api.has_param :privacy, 'object'
1247
+ end
1248
+ end
1249
+
1250
+ has_edge :notifications do |edge|
1251
+ edge.post 'Page' do |api|
1252
+ api.has_param :seen, 'bool'
1253
+ api.has_param :read, 'bool'
1254
+ api.has_param :notif_ids, { list: 'string' }
1255
+ api.has_param :filtering, { list: { enum: -> { Page::FILTERING }} }
1256
+ api.has_param :template, 'object'
1257
+ api.has_param :href, 'object'
1258
+ api.has_param :ref, 'string'
1259
+ api.has_param :type, { enum: -> { Page::TYPE }}
870
1260
  end
871
1261
  end
872
1262
 
873
1263
  has_edge :page_backed_instagram_accounts do |edge|
874
- edge.post
1264
+ edge.post 'InstagramUser'
875
1265
  end
876
1266
 
877
1267
  has_edge :pass_thread_control do |edge|
878
- edge.post do |api|
879
- api.has_param :metadata, 'string'
1268
+ edge.post 'Page' do |api|
880
1269
  api.has_param :recipient, 'object'
881
1270
  api.has_param :target_app_id, 'int'
1271
+ api.has_param :metadata, 'string'
882
1272
  end
883
1273
  end
884
1274
 
885
- has_edge :pending_users do |edge|
886
- edge.delete do |api|
887
- api.has_param :request_id, 'int'
888
- end
889
- edge.get 'BusinessRoleRequest' do |api|
890
- api.has_param :business, 'int'
891
- end
892
- edge.post 'Page' do |api|
893
- api.has_param :request_id, 'int'
894
- api.has_param :role, { enum: -> { Page::ROLE }}
1275
+ has_edge :personas do |edge|
1276
+ edge.get 'Persona'
1277
+ edge.post 'Persona' do |api|
1278
+ api.has_param :name, 'string'
1279
+ api.has_param :profile_picture_url, 'object'
895
1280
  end
896
1281
  end
897
1282
 
898
1283
  has_edge :photos do |edge|
899
1284
  edge.get 'Photo' do |api|
1285
+ api.has_param :type, { enum: -> { Photo::TYPE }}
900
1286
  api.has_param :biz_tag_id, 'int'
901
1287
  api.has_param :business_id, 'string'
902
- api.has_param :type, { enum: -> { Photo::TYPE }}
903
1288
  end
904
1289
  edge.post 'Photo' do |api|
905
1290
  api.has_param :aid, 'string'
906
- api.has_param :allow_spherical_photo, 'bool'
907
- api.has_param :application_id, 'string'
908
- api.has_param :attempt, 'int'
909
- api.has_param :audience_exp, 'bool'
910
- api.has_param :backdated_time, 'datetime'
911
- api.has_param :backdated_time_granularity, { enum: -> { Photo::BACKDATED_TIME_GRANULARITY }}
912
1291
  api.has_param :caption, 'string'
913
- api.has_param :composer_session_id, 'string'
914
- api.has_param :direct_share_status, 'int'
915
- api.has_param :feed_targeting, 'object'
916
- api.has_param :filter_type, 'int'
917
- api.has_param :full_res_is_coming_later, 'bool'
918
- api.has_param :initial_view_heading_override_degrees, 'int'
919
- api.has_param :initial_view_pitch_override_degrees, 'int'
920
- api.has_param :initial_view_vertical_fov_override_degrees, 'int'
921
- api.has_param :is_explicit_location, 'bool'
1292
+ api.has_param :url, 'string'
1293
+ api.has_param :uid, 'int'
1294
+ api.has_param :profile_id, 'int'
1295
+ api.has_param :target_id, 'int'
1296
+ api.has_param :checkin_id, 'object'
1297
+ api.has_param :vault_image_id, 'string'
1298
+ api.has_param :tags, { list: 'object' }
1299
+ api.has_param :place, 'object'
922
1300
  api.has_param :is_explicit_place, 'bool'
923
- api.has_param :location_source_id, 'string'
924
- api.has_param :manual_privacy, 'bool'
925
- api.has_param :message, 'string'
926
- api.has_param :name, 'string'
927
- api.has_param :nectar_module, 'string'
928
- api.has_param :no_story, 'bool'
929
- api.has_param :offline_id, 'int'
1301
+ api.has_param :is_explicit_location, 'bool'
930
1302
  api.has_param :og_action_type_id, 'string'
931
- api.has_param :og_icon_id, 'string'
932
1303
  api.has_param :og_object_id, 'string'
933
1304
  api.has_param :og_phrase, 'string'
934
- api.has_param :og_set_profile_badge, 'bool'
1305
+ api.has_param :og_icon_id, 'string'
935
1306
  api.has_param :og_suggestion_mechanism, 'string'
936
- api.has_param :place, 'object'
1307
+ api.has_param :og_set_profile_badge, 'bool'
937
1308
  api.has_param :privacy, 'object'
938
- api.has_param :profile_id, 'int'
1309
+ api.has_param :targeting, 'object'
1310
+ api.has_param :feed_targeting, 'object'
1311
+ api.has_param :no_story, 'bool'
939
1312
  api.has_param :published, 'bool'
940
- api.has_param :qn, 'string'
1313
+ api.has_param :offline_id, 'int'
1314
+ api.has_param :attempt, 'int'
1315
+ api.has_param :backdated_time, 'datetime'
1316
+ api.has_param :backdated_time_granularity, { enum: -> { Photo::BACKDATED_TIME_GRANULARITY }}
1317
+ api.has_param :time_since_original_post, 'int'
1318
+ api.has_param :filter_type, 'int'
941
1319
  api.has_param :scheduled_publish_time, 'int'
1320
+ api.has_param :unpublished_content_type, { enum: -> { Photo::UNPUBLISHED_CONTENT_TYPE }}
1321
+ api.has_param :nectar_module, 'string'
1322
+ api.has_param :full_res_is_coming_later, 'bool'
1323
+ api.has_param :composer_session_id, 'string'
1324
+ api.has_param :qn, 'string'
1325
+ api.has_param :manual_privacy, 'bool'
1326
+ api.has_param :audience_exp, 'bool'
1327
+ api.has_param :proxied_app_id, 'string'
1328
+ api.has_param :ios_bundle_id, 'string'
1329
+ api.has_param :android_key_hash, 'string'
1330
+ api.has_param :user_selected_tags, 'bool'
1331
+ api.has_param :allow_spherical_photo, 'bool'
942
1332
  api.has_param :spherical_metadata, 'hash'
1333
+ api.has_param :initial_view_heading_override_degrees, 'int'
1334
+ api.has_param :initial_view_pitch_override_degrees, 'int'
1335
+ api.has_param :initial_view_vertical_fov_override_degrees, 'int'
943
1336
  api.has_param :sponsor_id, 'string'
1337
+ api.has_param :direct_share_status, 'int'
944
1338
  api.has_param :sponsor_relationship, 'int'
945
- api.has_param :tags, { list: 'object' }
946
- api.has_param :target_id, 'int'
947
- api.has_param :targeting, 'object'
1339
+ api.has_param :application_id, 'string'
1340
+ api.has_param :name, 'string'
1341
+ api.has_param :message, 'string'
948
1342
  api.has_param :temporary, 'bool'
949
- api.has_param :unpublished_content_type, { enum: -> { Photo::UNPUBLISHED_CONTENT_TYPE }}
950
- api.has_param :url, 'string'
951
- api.has_param :vault_image_id, 'string'
1343
+ api.has_param :location_source_id, 'string'
952
1344
  end
953
1345
  end
954
-
955
- has_edge :picture do |edge|
956
- edge.get 'ProfilePictureSource' do |api|
957
- api.has_param :height, 'int'
958
- api.has_param :redirect, 'bool'
959
- api.has_param :type, { enum: -> { ProfilePictureSource::TYPE }}
960
- api.has_param :width, 'int'
961
- end
962
- edge.post 'ProfilePictureSource' do |api|
963
- api.has_param :android_key_hash, 'string'
964
- api.has_param :caption, 'string'
965
- api.has_param :composer_session_id, 'string'
966
- api.has_param :has_umg, 'bool'
967
- api.has_param :height, 'int'
968
- api.has_param :ios_bundle_id, 'string'
969
- api.has_param :media_effect_ids, { list: 'int' }
970
- api.has_param :media_effect_source_object_id, 'int'
971
- api.has_param :msqrd_mask_id, 'string'
972
- api.has_param :photo, 'string'
973
- api.has_param :picture, 'string'
974
- api.has_param :profile_pic_method, 'string'
975
- api.has_param :profile_pic_source, 'string'
976
- api.has_param :proxied_app_id, 'int'
1346
+
1347
+ has_edge :picture do |edge|
1348
+ edge.get 'ProfilePictureSource' do |api|
1349
+ api.has_param :height, 'int'
1350
+ api.has_param :width, 'int'
1351
+ api.has_param :type, { enum: -> { ProfilePictureSource::TYPE }}
1352
+ api.has_param :redirect, 'bool'
1353
+ end
1354
+ edge.post 'ProfilePictureSource' do |api|
1355
+ api.has_param :composer_session_id, 'string'
977
1356
  api.has_param :qn, 'string'
1357
+ api.has_param :photo, 'string'
978
1358
  api.has_param :reuse, 'bool'
1359
+ api.has_param :x, 'int'
1360
+ api.has_param :y, 'int'
1361
+ api.has_param :width, 'int'
1362
+ api.has_param :height, 'int'
979
1363
  api.has_param :scaled_crop_rect, 'object'
980
- api.has_param :set_profile_photo_shield, 'string'
1364
+ api.has_param :profile_pic_source, 'string'
1365
+ api.has_param :profile_pic_method, 'string'
981
1366
  api.has_param :sticker_id, 'int'
1367
+ api.has_param :caption, 'string'
982
1368
  api.has_param :sticker_source_object_id, 'int'
983
- api.has_param :width, 'int'
984
- api.has_param :x, 'int'
985
- api.has_param :y, 'int'
1369
+ api.has_param :msqrd_mask_id, 'string'
1370
+ api.has_param :media_effect_ids, { list: 'int' }
1371
+ api.has_param :media_effect_source_object_id, 'int'
1372
+ api.has_param :set_profile_photo_shield, 'string'
1373
+ api.has_param :has_umg, 'bool'
1374
+ api.has_param :android_key_hash, 'string'
1375
+ api.has_param :ios_bundle_id, 'string'
1376
+ api.has_param :proxied_app_id, 'int'
1377
+ api.has_param :picture, 'string'
986
1378
  end
987
1379
  end
988
1380
 
@@ -993,9 +1385,9 @@ module FacebookAds
993
1385
  has_edge :posts do |edge|
994
1386
  edge.get 'PagePost' do |api|
995
1387
  api.has_param :include_hidden, 'bool'
996
- api.has_param :q, 'string'
997
- api.has_param :show_expired, 'bool'
998
1388
  api.has_param :with, { enum: -> { PagePost::WITH }}
1389
+ api.has_param :show_expired, 'bool'
1390
+ api.has_param :q, 'string'
999
1391
  end
1000
1392
  end
1001
1393
 
@@ -1006,11 +1398,23 @@ module FacebookAds
1006
1398
  has_edge :promotable_posts do |edge|
1007
1399
  edge.get 'PagePost' do |api|
1008
1400
  api.has_param :include_hidden, 'bool'
1009
- api.has_param :include_inline, 'bool'
1010
- api.has_param :is_published, 'bool'
1011
- api.has_param :q, 'string'
1012
- api.has_param :show_expired, 'bool'
1013
1401
  api.has_param :with, { enum: -> { PagePost::WITH }}
1402
+ api.has_param :show_expired, 'bool'
1403
+ api.has_param :q, 'string'
1404
+ api.has_param :is_published, 'bool'
1405
+ api.has_param :include_inline, 'bool'
1406
+ end
1407
+ end
1408
+
1409
+ has_edge :promotions do |edge|
1410
+ edge.post do |api|
1411
+ api.has_param :budget, 'int'
1412
+ api.has_param :ad_account_id, 'string'
1413
+ api.has_param :geo_level, 'string'
1414
+ api.has_param :gender, 'int'
1415
+ api.has_param :min_age, 'int'
1416
+ api.has_param :max_age, 'int'
1417
+ api.has_param :duration, 'string'
1014
1418
  end
1015
1419
  end
1016
1420
 
@@ -1021,32 +1425,63 @@ module FacebookAds
1021
1425
  end
1022
1426
  end
1023
1427
 
1024
- has_edge :request_thread_control do |edge|
1428
+ has_edge :questions do |edge|
1025
1429
  edge.post do |api|
1026
- api.has_param :metadata, 'string'
1430
+ api.has_param :question, 'string'
1431
+ api.has_param :options, { list: 'string' }
1432
+ api.has_param :allow_new_options, 'bool'
1433
+ api.has_param :choose_multiple_options, 'bool'
1434
+ api.has_param :ranked_poll, 'bool'
1435
+ api.has_param :published, 'bool'
1436
+ api.has_param :scheduled_publish_time, 'int'
1437
+ end
1438
+ end
1439
+
1440
+ has_edge :ratings do |edge|
1441
+ edge.get 'Recommendation'
1442
+ end
1443
+
1444
+ has_edge :request_thread_control do |edge|
1445
+ edge.post 'Page' do |api|
1027
1446
  api.has_param :recipient, 'object'
1447
+ api.has_param :metadata, 'string'
1028
1448
  end
1029
1449
  end
1030
1450
 
1451
+ has_edge :restaurant_orders do |edge|
1452
+ edge.get 'FoodDrinkOrder'
1453
+ end
1454
+
1031
1455
  has_edge :roles do |edge|
1032
1456
  edge.get 'User' do |api|
1033
- api.has_param :uid, 'int'
1457
+ api.has_param :uid, 'object'
1458
+ api.has_param :include_deactivated, 'bool'
1034
1459
  end
1035
1460
  end
1036
1461
 
1462
+ has_edge :rtb_dynamic_posts do |edge|
1463
+ edge.get 'RtbDynamicPost'
1464
+ end
1465
+
1037
1466
  has_edge :saved_filters do |edge|
1038
1467
  edge.get 'PageSavedFilter' do |api|
1039
1468
  api.has_param :section, { enum: -> { PageSavedFilter::SECTION }}
1040
1469
  end
1470
+ edge.post 'PageSavedFilter' do |api|
1471
+ api.has_param :display_name, 'string'
1472
+ api.has_param :section, { enum: -> { PageSavedFilter::SECTION }}
1473
+ api.has_param :filters, { list: 'object' }
1474
+ end
1041
1475
  end
1042
1476
 
1043
1477
  has_edge :saved_message_responses do |edge|
1478
+ edge.get 'SavedMessageResponse'
1044
1479
  edge.post 'SavedMessageResponse' do |api|
1480
+ api.has_param :message, 'string'
1045
1481
  api.has_param :category, { enum: -> { SavedMessageResponse::CATEGORY }}
1046
- api.has_param :image, 'string'
1047
1482
  api.has_param :is_enabled, 'bool'
1048
- api.has_param :message, 'string'
1049
1483
  api.has_param :title, 'string'
1484
+ api.has_param :image, 'string'
1050
1485
  end
1051
1486
  end
1052
1487
 
@@ -1054,15 +1489,47 @@ module FacebookAds
1054
1489
  edge.get 'PagePost'
1055
1490
  end
1056
1491
 
1492
+ has_edge :screennames do |edge|
1493
+ edge.get 'ScreenName'
1494
+ end
1495
+
1496
+ has_edge :seasons do |edge|
1497
+ edge.get 'VideoList'
1498
+ end
1499
+
1500
+ has_edge :secondary_receivers do |edge|
1501
+ edge.get 'Application'
1502
+ end
1503
+
1057
1504
  has_edge :settings do |edge|
1058
- edge.post do |api|
1505
+ edge.get 'PageSettings'
1506
+ edge.post 'Page' do |api|
1507
+ api.has_param :setting, { enum: -> { Page::SETTING }}
1508
+ api.has_param :value, 'bool'
1059
1509
  api.has_param :option, 'object'
1060
1510
  end
1061
1511
  end
1062
1512
 
1513
+ has_edge :show_playlists do |edge|
1514
+ edge.get 'VideoList'
1515
+ end
1516
+
1063
1517
  has_edge :subscribed_apps do |edge|
1064
1518
  edge.delete
1065
- edge.post
1519
+ edge.get 'Application'
1520
+ edge.post 'Page' do |api|
1521
+ api.has_param :subscribed_fields, { list: { enum: -> { Page::SUBSCRIBED_FIELDS }} }
1522
+ end
1523
+ end
1524
+
1525
+ has_edge :subscriptions do |edge|
1526
+ edge.post do |api|
1527
+ api.has_param :object, 'string'
1528
+ api.has_param :fields, { list: 'string' }
1529
+ api.has_param :callback_url, 'object'
1530
+ api.has_param :verify_token, 'string'
1531
+ api.has_param :include_values, 'bool'
1532
+ end
1066
1533
  end
1067
1534
 
1068
1535
  has_edge :tabs do |edge|
@@ -1072,13 +1539,13 @@ module FacebookAds
1072
1539
  edge.get 'Tab' do |api|
1073
1540
  api.has_param :tab, { list: 'string' }
1074
1541
  end
1075
- edge.post 'Tab' do |api|
1542
+ edge.post 'Page' do |api|
1076
1543
  api.has_param :app_id, 'int'
1077
- api.has_param :custom_image_url, 'string'
1544
+ api.has_param :tab, 'string'
1545
+ api.has_param :position, 'int'
1078
1546
  api.has_param :custom_name, 'string'
1547
+ api.has_param :custom_image_url, 'string'
1079
1548
  api.has_param :is_non_connection_landing_tab, 'bool'
1080
- api.has_param :position, 'int'
1081
- api.has_param :tab, 'string'
1082
1549
  end
1083
1550
  end
1084
1551
 
@@ -1086,43 +1553,83 @@ module FacebookAds
1086
1553
  edge.get 'PagePost'
1087
1554
  end
1088
1555
 
1556
+ has_edge :take_thread_control do |edge|
1557
+ edge.post 'Page' do |api|
1558
+ api.has_param :recipient, 'object'
1559
+ api.has_param :metadata, 'string'
1560
+ end
1561
+ end
1562
+
1563
+ has_edge :thread_owner do |edge|
1564
+ edge.get 'PageThreadOwner' do |api|
1565
+ api.has_param :recipient, 'object'
1566
+ end
1567
+ end
1568
+
1089
1569
  has_edge :thread_settings do |edge|
1090
- edge.post do |api|
1091
- api.has_param :account_linking_url, 'string'
1570
+ edge.delete do |api|
1571
+ api.has_param :setting_type, { enum: -> { Page::SETTING_TYPE }}
1572
+ api.has_param :thread_state, { enum: -> { Page::THREAD_STATE }}
1573
+ end
1574
+ edge.get 'ThreadSetting'
1575
+ edge.post 'Page' do |api|
1576
+ api.has_param :setting_type, { enum: -> { Page::SETTING_TYPE }}
1577
+ api.has_param :thread_state, { enum: -> { Page::THREAD_STATE }}
1092
1578
  api.has_param :call_to_actions, { list: 'object' }
1093
- api.has_param :domain_action_type, { enum: %w{ADD REMOVE }}
1094
1579
  api.has_param :greeting, 'object'
1095
- api.has_param :payment_dev_mode_action, { enum: %w{ADD REMOVE }}
1580
+ api.has_param :account_linking_url, 'string'
1096
1581
  api.has_param :payment_privacy_url, 'string'
1582
+ api.has_param :whitelisted_domains, { list: 'string' }
1583
+ api.has_param :domain_action_type, { enum: -> { Page::DOMAIN_ACTION_TYPE }}
1097
1584
  api.has_param :payment_public_key, 'string'
1585
+ api.has_param :payment_dev_mode_action, { enum: -> { Page::PAYMENT_DEV_MODE_ACTION }}
1098
1586
  api.has_param :payment_testers, { list: 'string' }
1099
- api.has_param :setting_type, { enum: %w{ACCOUNT_LINKING CALL_TO_ACTIONS GREETING DOMAIN_WHITELISTING PAYMENT }}
1100
- api.has_param :thread_state, { enum: %w{NEW_THREAD EXISTING_THREAD }}
1101
- api.has_param :whitelisted_domains, { list: 'string' }
1102
1587
  end
1103
1588
  end
1104
1589
 
1105
1590
  has_edge :threads do |edge|
1106
1591
  edge.get 'UnifiedThread' do |api|
1107
- api.has_param :folder, 'string'
1108
1592
  api.has_param :tags, { list: 'string' }
1593
+ api.has_param :folder, 'string'
1594
+ end
1595
+ end
1596
+
1597
+ has_edge :tours do |edge|
1598
+ edge.get 'EventTour'
1599
+ end
1600
+
1601
+ has_edge :unlink_accounts do |edge|
1602
+ edge.post 'Page' do |api|
1603
+ api.has_param :psid, 'string'
1109
1604
  end
1110
1605
  end
1111
1606
 
1112
- has_edge :upcoming_changes do |edge|
1113
- edge.get 'PageUpcomingChange' do |api|
1114
- api.has_param :include_inactive, 'bool'
1607
+ has_edge :userpermissions do |edge|
1608
+ edge.delete do |api|
1609
+ api.has_param :user, 'int'
1610
+ api.has_param :email, 'string'
1611
+ api.has_param :business, 'string'
1612
+ end
1613
+ edge.post 'Page' do |api|
1614
+ api.has_param :user, 'int'
1615
+ api.has_param :email, 'string'
1616
+ api.has_param :business, 'string'
1617
+ api.has_param :tasks, { list: { enum: -> { Page::TASKS }} }
1115
1618
  end
1116
1619
  end
1117
1620
 
1621
+ has_edge :video_broadcasts do |edge|
1622
+ edge.get 'LiveVideo'
1623
+ end
1624
+
1118
1625
  has_edge :video_copyright_rules do |edge|
1119
1626
  edge.get 'VideoCopyrightRule' do |api|
1120
- api.has_param :selected_rule_id, 'string'
1121
1627
  api.has_param :source, { enum: -> { VideoCopyrightRule::SOURCE }}
1628
+ api.has_param :selected_rule_id, 'string'
1122
1629
  end
1123
1630
  edge.post 'VideoCopyrightRule' do |api|
1124
- api.has_param :condition_groups, { list: 'object' }
1125
1631
  api.has_param :name, 'string'
1632
+ api.has_param :condition_groups, { list: 'object' }
1126
1633
  end
1127
1634
  end
1128
1635
 
@@ -1131,19 +1638,19 @@ module FacebookAds
1131
1638
  api.has_param :use_fallback, 'bool'
1132
1639
  end
1133
1640
  edge.post 'VideoCopyright' do |api|
1134
- api.has_param :attribution_id, 'string'
1135
- api.has_param :content_category, { enum: -> { VideoCopyright::CONTENT_CATEGORY }}
1136
- api.has_param :copyright_content_id, 'string'
1137
- api.has_param :excluded_ownership_countries, { list: 'string' }
1138
- api.has_param :excluded_ownership_segments, { list: 'object' }
1139
- api.has_param :fingerprint_id, 'string'
1140
- api.has_param :is_reference_disabled, 'bool'
1141
- api.has_param :is_reference_video, 'bool'
1142
1641
  api.has_param :monitoring_type, { enum: -> { VideoCopyright::MONITORING_TYPE }}
1143
- api.has_param :ownership_countries, { list: 'string' }
1144
1642
  api.has_param :rule_id, 'string'
1145
1643
  api.has_param :whitelisted_ids, { list: 'string' }
1146
1644
  api.has_param :whitelisted_ig_user_ids, { list: 'string' }
1645
+ api.has_param :ownership_countries, { list: 'string' }
1646
+ api.has_param :excluded_ownership_countries, { list: 'string' }
1647
+ api.has_param :excluded_ownership_segments, { list: 'object' }
1648
+ api.has_param :is_reference_disabled, 'bool'
1649
+ api.has_param :content_category, { enum: -> { VideoCopyright::CONTENT_CATEGORY }}
1650
+ api.has_param :attribution_id, 'string'
1651
+ api.has_param :copyright_content_id, 'string'
1652
+ api.has_param :is_reference_video, 'bool'
1653
+ api.has_param :fingerprint_id, 'string'
1147
1654
  end
1148
1655
  end
1149
1656
 
@@ -1151,9 +1658,10 @@ module FacebookAds
1151
1658
  edge.delete do |api|
1152
1659
  api.has_param :video_list_id, 'string'
1153
1660
  end
1154
- edge.post 'VideoList' do |api|
1155
- api.has_param :description, 'string'
1661
+ edge.get 'VideoList'
1662
+ edge.post 'Page' do |api|
1156
1663
  api.has_param :title, 'string'
1664
+ api.has_param :description, 'string'
1157
1665
  end
1158
1666
  end
1159
1667
 
@@ -1162,67 +1670,121 @@ module FacebookAds
1162
1670
  end
1163
1671
 
1164
1672
  has_edge :videos do |edge|
1165
- edge.get do |api|
1166
- api.has_param :type, { enum: %w{tagged uploaded }}
1673
+ edge.get 'AdVideo' do |api|
1674
+ api.has_param :type, { enum: -> { AdVideo::TYPE }}
1167
1675
  end
1168
- edge.post do |api|
1169
- api.has_param :ad_breaks, 'object'
1170
- api.has_param :audio_story_wave_animation_handle, 'string'
1171
- api.has_param :backdated_post, 'object'
1172
- api.has_param :content_category, { enum: %w{BEAUTY_FASHION BUSINESS CARS_TRUCKS COMEDY CUTE_ANIMALS ENTERTAINMENT FAMILY FOOD_HEALTH HOME LIFESTYLE MUSIC NEWS POLITICS SCIENCE SPORTS TECHNOLOGY VIDEO_GAMING OTHER }}
1173
- api.has_param :content_tags, { list: 'string' }
1174
- api.has_param :crossposted_video_id, 'string'
1175
- api.has_param :custom_labels, { list: 'string' }
1176
- api.has_param :description, 'string'
1177
- api.has_param :direct_share_status, 'int'
1178
- api.has_param :embeddable, 'bool'
1179
- api.has_param :end_offset, 'int'
1180
- api.has_param :expiration, 'object'
1181
- api.has_param :feed_targeting, 'object'
1182
- api.has_param :file_size, 'int'
1676
+ edge.post 'AdVideo' do |api|
1677
+ api.has_param :title, 'string'
1678
+ api.has_param :source, 'string'
1679
+ api.has_param :unpublished_content_type, { enum: -> { AdVideo::UNPUBLISHED_CONTENT_TYPE }}
1680
+ api.has_param :time_since_original_post, 'int'
1183
1681
  api.has_param :file_url, 'string'
1184
- api.has_param :fisheye_video_cropped, 'bool'
1185
- api.has_param :fov, 'int'
1186
- api.has_param :front_z_rotation, 'double'
1187
- api.has_param :guide, { list: { list: 'int' } }
1188
- api.has_param :guide_enabled, 'bool'
1682
+ api.has_param :composer_session_id, 'string'
1683
+ api.has_param :waterfall_id, 'string'
1684
+ api.has_param :og_action_type_id, 'string'
1685
+ api.has_param :og_object_id, 'string'
1686
+ api.has_param :og_phrase, 'string'
1687
+ api.has_param :og_icon_id, 'string'
1688
+ api.has_param :og_suggestion_mechanism, 'string'
1689
+ api.has_param :manual_privacy, 'bool'
1690
+ api.has_param :is_explicit_share, 'bool'
1691
+ api.has_param :thumb, 'file'
1692
+ api.has_param :spherical, 'bool'
1693
+ api.has_param :original_projection_type, { enum: -> { AdVideo::ORIGINAL_PROJECTION_TYPE }}
1189
1694
  api.has_param :initial_heading, 'int'
1190
1695
  api.has_param :initial_pitch, 'int'
1191
- api.has_param :is_voice_clip, 'bool'
1192
- api.has_param :no_story, 'bool'
1696
+ api.has_param :fov, 'int'
1193
1697
  api.has_param :original_fov, 'int'
1194
- api.has_param :original_projection_type, { enum: %w{equirectangular cubemap equiangular_cubemap half_equirectangular }}
1195
- api.has_param :published, 'bool'
1698
+ api.has_param :fisheye_video_cropped, 'bool'
1699
+ api.has_param :front_z_rotation, 'double'
1700
+ api.has_param :guide_enabled, 'bool'
1701
+ api.has_param :guide, { list: { list: 'int' } }
1702
+ api.has_param :audio_story_wave_animation_handle, 'string'
1703
+ api.has_param :adaptive_type, 'string'
1704
+ api.has_param :animated_effect_id, 'int'
1705
+ api.has_param :asked_fun_fact_prompt_id, 'int'
1706
+ api.has_param :composer_entry_picker, 'string'
1707
+ api.has_param :composer_entry_point, 'string'
1708
+ api.has_param :composer_entry_time, 'int'
1709
+ api.has_param :composer_session_events_log, 'string'
1710
+ api.has_param :composer_source_surface, 'string'
1711
+ api.has_param :composer_type, 'string'
1712
+ api.has_param :formatting, { enum: -> { AdVideo::FORMATTING }}
1713
+ api.has_param :fun_fact_prompt_id, 'string'
1714
+ api.has_param :fun_fact_toastee_id, 'int'
1715
+ api.has_param :is_group_linking_post, 'bool'
1716
+ api.has_param :has_nickname, 'bool'
1717
+ api.has_param :holiday_card, 'string'
1718
+ api.has_param :instant_game_entry_point_data, 'string'
1719
+ api.has_param :is_boost_intended, 'bool'
1720
+ api.has_param :location_source_id, 'string'
1721
+ api.has_param :description, 'string'
1722
+ api.has_param :offer_like_post_id, 'string'
1723
+ api.has_param :publish_event_id, 'int'
1196
1724
  api.has_param :react_mode_metadata, 'string'
1197
- api.has_param :reference_only, 'bool'
1725
+ api.has_param :sales_promo_id, 'int'
1726
+ api.has_param :text_format_metadata, 'string'
1727
+ api.has_param :throwback_camera_roll_media, 'string'
1728
+ api.has_param :video_start_time_ms, 'int'
1729
+ api.has_param :application_id, 'string'
1730
+ api.has_param :upload_phase, { enum: -> { AdVideo::UPLOAD_PHASE }}
1731
+ api.has_param :file_size, 'int'
1732
+ api.has_param :start_offset, 'int'
1733
+ api.has_param :end_offset, 'int'
1734
+ api.has_param :video_file_chunk, 'string'
1735
+ api.has_param :fbuploader_video_file_chunk, 'string'
1736
+ api.has_param :upload_session_id, 'string'
1737
+ api.has_param :is_voice_clip, 'bool'
1738
+ api.has_param :attribution_app_id, 'string'
1739
+ api.has_param :content_category, { enum: -> { AdVideo::CONTENT_CATEGORY }}
1740
+ api.has_param :embeddable, 'bool'
1741
+ api.has_param :slideshow_spec, 'hash'
1742
+ api.has_param :upload_setting_properties, 'string'
1743
+ api.has_param :transcode_setting_properties, 'string'
1744
+ api.has_param :container_type, { enum: -> { AdVideo::CONTAINER_TYPE }}
1198
1745
  api.has_param :referenced_sticker_id, 'string'
1199
1746
  api.has_param :replace_video_id, 'string'
1747
+ api.has_param :swap_mode, { enum: -> { AdVideo::SWAP_MODE }}
1748
+ api.has_param :ad_breaks, 'object'
1749
+ api.has_param :backdated_time, 'datetime'
1750
+ api.has_param :backdated_time_granularity, { enum: -> { AdVideo::BACKDATED_TIME_GRANULARITY }}
1751
+ api.has_param :backdated_post, 'object'
1752
+ api.has_param :custom_labels, { list: 'string' }
1753
+ api.has_param :call_to_action, 'object'
1754
+ api.has_param :expiration, 'object'
1755
+ api.has_param :feed_targeting, 'object'
1756
+ api.has_param :published, 'bool'
1200
1757
  api.has_param :scheduled_publish_time, 'int'
1758
+ api.has_param :targeting, 'object'
1759
+ api.has_param :no_story, 'bool'
1201
1760
  api.has_param :secret, 'bool'
1202
- api.has_param :slideshow_spec, 'hash'
1203
1761
  api.has_param :social_actions, 'bool'
1204
- api.has_param :source, 'string'
1205
- api.has_param :spherical, 'bool'
1206
1762
  api.has_param :sponsor_id, 'string'
1763
+ api.has_param :direct_share_status, 'int'
1207
1764
  api.has_param :sponsor_relationship, 'int'
1208
- api.has_param :start_offset, 'int'
1209
- api.has_param :swap_mode, { enum: %w{replace }}
1210
- api.has_param :targeting, 'object'
1211
- api.has_param :thumb, 'file'
1212
- api.has_param :title, 'string'
1765
+ api.has_param :content_tags, { list: 'string' }
1766
+ api.has_param :reference_only, 'bool'
1767
+ api.has_param :video_asset_id, 'string'
1213
1768
  api.has_param :universal_video_id, 'string'
1214
- api.has_param :unpublished_content_type, { enum: %w{SCHEDULED DRAFT ADS_POST INLINE_CREATED PUBLISHED }}
1215
- api.has_param :upload_phase, { enum: %w{start transfer finish cancel }}
1216
- api.has_param :upload_session_id, 'string'
1217
- api.has_param :video_file_chunk, 'string'
1769
+ api.has_param :multilingual_data, { list: 'object' }
1770
+ api.has_param :specified_dialect, 'string'
1771
+ api.has_param :crossposted_video_id, 'string'
1218
1772
  end
1219
1773
  end
1220
1774
 
1775
+ has_edge :videos_you_can_use do |edge|
1776
+ edge.get 'PageVideosYouCanUse'
1777
+ end
1778
+
1221
1779
  has_edge :visitor_posts do |edge|
1222
1780
  edge.get 'PagePost' do |api|
1223
1781
  api.has_param :include_hidden, 'bool'
1224
1782
  end
1225
1783
  end
1226
1784
 
1785
+ has_edge :workflows do |edge|
1786
+ edge.get 'PagesPlatformComponentFlowServiceConfig'
1787
+ end
1788
+
1227
1789
  end
1228
1790
  end