facebookbusiness 0.7.0.3 → 0.10.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (127) hide show
  1. checksums.yaml +4 -4
  2. data/lib/facebook_ads/ad_objects/ad.rb +4 -1
  3. data/lib/facebook_ads/ad_objects/ad_account.rb +33 -46
  4. data/lib/facebook_ads/ad_objects/ad_account_ad_volume.rb +24 -0
  5. data/lib/facebook_ads/ad_objects/ad_account_delivery_estimate.rb +1 -0
  6. data/lib/facebook_ads/ad_objects/ad_account_matched_search_applications_edge_data.rb +1 -0
  7. data/lib/facebook_ads/ad_objects/ad_account_targeting_unified.rb +22 -5
  8. data/lib/facebook_ads/ad_objects/ad_activity.rb +0 -1
  9. data/lib/facebook_ads/ad_objects/ad_asset_feed_spec.rb +8 -0
  10. data/lib/facebook_ads/ad_objects/ad_async_request.rb +2 -0
  11. data/lib/facebook_ads/ad_objects/ad_campaign_activity.rb +10 -2
  12. data/lib/facebook_ads/ad_objects/ad_campaign_delivery_estimate.rb +1 -0
  13. data/lib/facebook_ads/ad_objects/ad_creative.rb +8 -0
  14. data/lib/facebook_ads/ad_objects/ad_creative_interactive_components_spec.rb +1 -0
  15. data/lib/facebook_ads/ad_objects/ad_creative_link_data_call_to_action.rb +6 -0
  16. data/lib/facebook_ads/ad_objects/{offline_terms_of_service.rb → ad_creative_omnichannel_link_spec.rb} +5 -4
  17. data/lib/facebook_ads/ad_objects/ad_network_analytics_sync_query_result.rb +1 -0
  18. data/lib/facebook_ads/ad_objects/ad_place_page_set.rb +6 -0
  19. data/lib/facebook_ads/ad_objects/ad_preview.rb +4 -0
  20. data/lib/facebook_ads/ad_objects/ad_report_run.rb +1 -0
  21. data/lib/facebook_ads/ad_objects/ad_report_spec.rb +0 -1
  22. data/lib/facebook_ads/ad_objects/ad_rule_evaluation_spec.rb +1 -2
  23. data/lib/facebook_ads/ad_objects/ad_rule_execution_spec.rb +4 -0
  24. data/lib/facebook_ads/ad_objects/ad_set.rb +6 -2
  25. data/lib/facebook_ads/ad_objects/ad_study.rb +1 -12
  26. data/lib/facebook_ads/ad_objects/ad_study_objective.rb +1 -4
  27. data/lib/facebook_ads/ad_objects/ad_video.rb +8 -6
  28. data/lib/facebook_ads/ad_objects/adgroup_activity.rb +2 -0
  29. data/lib/facebook_ads/ad_objects/adgroup_placement_specific_review_feedback.rb +1 -0
  30. data/lib/facebook_ads/ad_objects/adoptable_pet.rb +8 -0
  31. data/lib/facebook_ads/ad_objects/ads_action_stats.rb +2 -0
  32. data/lib/facebook_ads/ad_objects/ads_insights.rb +3 -1
  33. data/lib/facebook_ads/ad_objects/ads_pixel.rb +8 -0
  34. data/lib/facebook_ads/ad_objects/album.rb +0 -10
  35. data/lib/facebook_ads/ad_objects/application.rb +18 -4
  36. data/lib/facebook_ads/ad_objects/atlas_campaign.rb +1 -1
  37. data/lib/facebook_ads/ad_objects/automotive_model.rb +26 -0
  38. data/lib/facebook_ads/ad_objects/business.rb +77 -2
  39. data/lib/facebook_ads/ad_objects/business_asset_group.rb +2 -0
  40. data/lib/facebook_ads/ad_objects/business_role_request.rb +4 -0
  41. data/lib/facebook_ads/ad_objects/business_unit.rb +1 -2
  42. data/lib/facebook_ads/ad_objects/business_user.rb +4 -0
  43. data/lib/facebook_ads/ad_objects/campaign.rb +11 -2
  44. data/lib/facebook_ads/ad_objects/{friend_list.rb → catalog_item_channels_to_integrity_status.rb} +5 -5
  45. data/lib/facebook_ads/ad_objects/catalog_sub_vertical_list.rb +91 -0
  46. data/lib/facebook_ads/ad_objects/comment.rb +1 -0
  47. data/lib/facebook_ads/ad_objects/commerce_merchant_settings.rb +17 -19
  48. data/lib/facebook_ads/ad_objects/commerce_merchant_settings_setup_status.rb +1 -0
  49. data/lib/facebook_ads/ad_objects/commerce_order.rb +6 -0
  50. data/lib/facebook_ads/ad_objects/commerce_order_transaction_detail.rb +4 -0
  51. data/lib/facebook_ads/ad_objects/{work_meeting_link.rb → connections_targeting.rb} +3 -2
  52. data/lib/facebook_ads/ad_objects/{atlas_url.rb → contextual_bundling_spec.rb} +2 -2
  53. data/lib/facebook_ads/ad_objects/{iterative_split_test_config.rb → cpas_advertiser_partnership_recommendation.rb} +9 -9
  54. data/lib/facebook_ads/ad_objects/cpas_collaboration_request.rb +50 -0
  55. data/lib/facebook_ads/ad_objects/custom_audience.rb +8 -10
  56. data/lib/facebook_ads/ad_objects/custom_audience_data_source.rb +1 -0
  57. data/lib/facebook_ads/ad_objects/da_check.rb +7 -0
  58. data/lib/facebook_ads/ad_objects/destination.rb +1 -0
  59. data/lib/facebook_ads/ad_objects/event.rb +1 -1
  60. data/lib/facebook_ads/ad_objects/extended_credit.rb +7 -1
  61. data/lib/facebook_ads/ad_objects/flight.rb +1 -0
  62. data/lib/facebook_ads/ad_objects/group.rb +29 -23
  63. data/lib/facebook_ads/ad_objects/home_listing.rb +1 -0
  64. data/lib/facebook_ads/ad_objects/hotel.rb +1 -0
  65. data/lib/facebook_ads/ad_objects/hotel_room.rb +1 -0
  66. data/lib/facebook_ads/ad_objects/ig_media.rb +0 -1
  67. data/lib/facebook_ads/ad_objects/ig_user.rb +6 -1
  68. data/lib/facebook_ads/ad_objects/image_copyright.rb +302 -0
  69. data/lib/facebook_ads/ad_objects/insights_result.rb +1 -1
  70. data/lib/facebook_ads/ad_objects/instagram_user.rb +0 -3
  71. data/lib/facebook_ads/ad_objects/life_event.rb +0 -4
  72. data/lib/facebook_ads/ad_objects/link.rb +0 -10
  73. data/lib/facebook_ads/ad_objects/live_video.rb +0 -4
  74. data/lib/facebook_ads/ad_objects/messenger_profile.rb +1 -0
  75. data/lib/facebook_ads/ad_objects/native_offer_view.rb +0 -1
  76. data/lib/facebook_ads/ad_objects/oracle_transaction.rb +0 -7
  77. data/lib/facebook_ads/ad_objects/page.rb +76 -72
  78. data/lib/facebook_ads/ad_objects/page_call_to_action.rb +3 -0
  79. data/lib/facebook_ads/ad_objects/page_commerce_eligibility.rb +38 -0
  80. data/lib/facebook_ads/ad_objects/page_post.rb +0 -8
  81. data/lib/facebook_ads/ad_objects/{user_taggable_friend.rb → payment_engine_payment.rb} +36 -13
  82. data/lib/facebook_ads/ad_objects/payment_subscription.rb +3 -3
  83. data/lib/facebook_ads/ad_objects/photo.rb +0 -4
  84. data/lib/facebook_ads/ad_objects/playable_content.rb +1 -0
  85. data/lib/facebook_ads/ad_objects/post.rb +46 -27
  86. data/lib/facebook_ads/ad_objects/product_catalog.rb +57 -9
  87. data/lib/facebook_ads/ad_objects/product_feed.rb +32 -1
  88. data/lib/facebook_ads/ad_objects/product_feed_schedule.rb +2 -0
  89. data/lib/facebook_ads/ad_objects/product_group.rb +1 -0
  90. data/lib/facebook_ads/ad_objects/product_item.rb +11 -1
  91. data/lib/facebook_ads/ad_objects/{user_payment_methods_info.rb → product_item_ar_data.rb} +23 -8
  92. data/lib/facebook_ads/ad_objects/product_set.rb +1 -0
  93. data/lib/facebook_ads/ad_objects/product_set_metadata.rb +1 -0
  94. data/lib/facebook_ads/ad_objects/publisher_block_list.rb +6 -0
  95. data/lib/facebook_ads/ad_objects/referral.rb +2 -0
  96. data/lib/facebook_ads/ad_objects/security_settings.rb +0 -1
  97. data/lib/facebook_ads/ad_objects/server_side/action_source.rb +48 -0
  98. data/lib/facebook_ads/ad_objects/server_side/batch_processor.rb +73 -0
  99. data/lib/facebook_ads/ad_objects/server_side/content.rb +23 -4
  100. data/lib/facebook_ads/ad_objects/server_side/custom_data.rb +21 -0
  101. data/lib/facebook_ads/ad_objects/server_side/delivery_category.rb +33 -0
  102. data/lib/facebook_ads/ad_objects/server_side/event.rb +32 -6
  103. data/lib/facebook_ads/ad_objects/server_side/event_request.rb +61 -14
  104. data/lib/facebook_ads/ad_objects/server_side/event_request_async.rb +43 -0
  105. data/lib/facebook_ads/ad_objects/server_side/http_method.rb +28 -0
  106. data/lib/facebook_ads/ad_objects/{page_about_story.rb → server_side/http_service_interface.rb} +10 -16
  107. data/lib/facebook_ads/ad_objects/server_side/http_util.rb +31 -0
  108. data/lib/facebook_ads/ad_objects/server_side/user_data.rb +20 -1
  109. data/lib/facebook_ads/ad_objects/server_side/util.rb +27 -1
  110. data/lib/facebook_ads/ad_objects/system_user.rb +4 -4
  111. data/lib/facebook_ads/ad_objects/targeting.rb +3 -5
  112. data/lib/facebook_ads/ad_objects/third_party_measurement_report_dataset.rb +0 -1
  113. data/lib/facebook_ads/ad_objects/user.rb +35 -32
  114. data/lib/facebook_ads/ad_objects/vehicle.rb +2 -0
  115. data/lib/facebook_ads/ad_objects/vehicle_offer.rb +1 -0
  116. data/lib/facebook_ads/ad_objects/whats_app_business_account.rb +25 -0
  117. data/lib/facebook_ads/ad_objects/{read_only_analytics_user_property_config.rb → whats_app_business_profile.rb} +2 -3
  118. data/lib/facebook_ads/edge.rb +2 -1
  119. data/lib/facebook_ads/errors.rb +1 -1
  120. data/lib/facebook_ads/session.rb +1 -1
  121. data/lib/facebook_ads/version.rb +2 -2
  122. metadata +47 -28
  123. data/lib/facebook_ads/ad_objects/ad_account_creation_request.rb +0 -71
  124. data/lib/facebook_ads/ad_objects/ad_account_roas.rb +0 -65
  125. data/lib/facebook_ads/ad_objects/event_tour.rb +0 -56
  126. data/lib/facebook_ads/ad_objects/split_test_config.rb +0 -41
  127. data/lib/facebook_ads/ad_objects/user_payment_modules_options.rb +0 -40
@@ -38,7 +38,7 @@ module FacebookAds
38
38
  "last_week_mon_sun",
39
39
  "last_week_sun_sat",
40
40
  "last_year",
41
- "lifetime",
41
+ "maximum",
42
42
  "this_month",
43
43
  "this_quarter",
44
44
  "this_week_mon_today",
@@ -40,9 +40,6 @@ module FacebookAds
40
40
  has_no_delete
41
41
 
42
42
  has_edge :agencies do |edge|
43
- edge.delete do |api|
44
- api.has_param :business, 'string'
45
- end
46
43
  edge.get 'Business'
47
44
  end
48
45
 
@@ -51,9 +51,5 @@ module FacebookAds
51
51
  edge.get 'Profile'
52
52
  end
53
53
 
54
- has_edge :photos do |edge|
55
- edge.get 'Photo'
56
- end
57
-
58
54
  end
59
55
  end
@@ -64,15 +64,5 @@ module FacebookAds
64
64
  edge.get 'Profile'
65
65
  end
66
66
 
67
- has_edge :reactions do |edge|
68
- edge.get 'Profile' do |api|
69
- api.has_param :type, { enum: -> { Profile::TYPE }}
70
- end
71
- end
72
-
73
- has_edge :sharedposts do |edge|
74
- edge.get 'Post'
75
- end
76
-
77
67
  end
78
68
  end
@@ -141,10 +141,6 @@ module FacebookAds
141
141
  edge.post 'LiveVideoInputStream'
142
142
  end
143
143
 
144
- has_edge :likes do |edge|
145
- edge.get 'Profile'
146
- end
147
-
148
144
  has_edge :polls do |edge|
149
145
  edge.get 'VideoPoll'
150
146
  edge.post 'VideoPoll' do |api|
@@ -33,6 +33,7 @@ module FacebookAds
33
33
  field :ice_breakers, { list: 'object' }
34
34
  field :payment_settings, 'object'
35
35
  field :persistent_menu, { list: 'object' }
36
+ field :subject_to_new_eu_privacy_rules, 'bool'
36
37
  field :target_audience, 'object'
37
38
  field :whitelisted_domains, { list: 'string' }
38
39
  has_no_id
@@ -33,7 +33,6 @@ module FacebookAds
33
33
  has_no_delete
34
34
 
35
35
  has_edge :photos do |edge|
36
- edge.get 'Photo'
37
36
  edge.post 'NativeOfferView' do |api|
38
37
  api.has_param :ad_account, 'string'
39
38
  api.has_param :ad_image_hashes, { list: 'string' }
@@ -37,7 +37,6 @@ module FacebookAds
37
37
  field :amount_due, 'CurrencyAmount'
38
38
  field :billed_amount_details, 'BilledAmountDetails'
39
39
  field :billing_period, 'string'
40
- field :campaign, 'AtlasCampaign'
41
40
  field :cdn_download_uri, 'string'
42
41
  field :currency, 'string'
43
42
  field :download_uri, 'string'
@@ -58,11 +57,5 @@ module FacebookAds
58
57
  edge.get 'InvoiceCampaign'
59
58
  end
60
59
 
61
- has_edge :data do |edge|
62
- edge.get 'AtlasUrl' do |api|
63
- api.has_param :redirect, 'bool'
64
- end
65
- end
66
-
67
60
  end
68
61
  end
@@ -92,6 +92,12 @@ module FacebookAds
92
92
  "Vietnamese",
93
93
  ]
94
94
 
95
+ PICKUP_OPTIONS = [
96
+ "CURBSIDE",
97
+ "IN_STORE",
98
+ "OTHER",
99
+ ]
100
+
95
101
  TEMPORARY_STATUS = [
96
102
  "DIFFERENTLY_OPEN",
97
103
  "NO_DATA",
@@ -107,6 +113,7 @@ module FacebookAds
107
113
  "MANAGE",
108
114
  "MANAGE_JOBS",
109
115
  "MANAGE_LEADS",
116
+ "MESSAGING",
110
117
  "MODERATE",
111
118
  "MODERATE_COMMUNITY",
112
119
  "PAGES_MESSAGING",
@@ -129,6 +136,7 @@ module FacebookAds
129
136
  "MANAGE",
130
137
  "MANAGE_JOBS",
131
138
  "MANAGE_LEADS",
139
+ "MESSAGING",
132
140
  "MODERATE",
133
141
  "MODERATE_COMMUNITY",
134
142
  "PAGES_MESSAGING",
@@ -276,6 +284,7 @@ module FacebookAds
276
284
  "leadgen",
277
285
  "leadgen_fat",
278
286
  "live_videos",
287
+ "local_delivery",
279
288
  "location",
280
289
  "mcom_invoice_change",
281
290
  "members",
@@ -328,29 +337,6 @@ module FacebookAds
328
337
  "website",
329
338
  ]
330
339
 
331
- DOMAIN_ACTION_TYPE = [
332
- "ADD",
333
- "REMOVE",
334
- ]
335
-
336
- PAYMENT_DEV_MODE_ACTION = [
337
- "ADD",
338
- "REMOVE",
339
- ]
340
-
341
- SETTING_TYPE = [
342
- "ACCOUNT_LINKING",
343
- "CALL_TO_ACTIONS",
344
- "DOMAIN_WHITELISTING",
345
- "GREETING",
346
- "PAYMENT",
347
- ]
348
-
349
- THREAD_STATE = [
350
- "EXISTING_THREAD",
351
- "NEW_THREAD",
352
- ]
353
-
354
340
 
355
341
  field :about, 'string'
356
342
  field :access_token, 'string'
@@ -375,6 +361,7 @@ module FacebookAds
375
361
  field :checkins, 'int'
376
362
  field :company_overview, 'string'
377
363
  field :connected_instagram_account, 'IgUser'
364
+ field :connected_page_backed_instagram_account, 'IgUser'
378
365
  field :contact_address, 'MailingAddress'
379
366
  field :copyright_whitelisted_ig_partners, { list: 'string' }
380
367
  field :country_page_likes, 'int'
@@ -393,6 +380,7 @@ module FacebookAds
393
380
  field :fan_count, 'int'
394
381
  field :featured_video, 'AdVideo'
395
382
  field :features, 'string'
383
+ field :followers_count, 'int'
396
384
  field :food_styles, { list: 'string' }
397
385
  field :founded, 'string'
398
386
  field :general_info, 'string'
@@ -443,7 +431,6 @@ module FacebookAds
443
431
  field :new_like_count, 'int'
444
432
  field :offer_eligible, 'bool'
445
433
  field :overall_star_rating, 'double'
446
- field :page_about_story, 'PageAboutStory'
447
434
  field :page_token, 'string'
448
435
  field :parent_page, 'Page'
449
436
  field :parking, 'PageParking'
@@ -452,6 +439,7 @@ module FacebookAds
452
439
  field :personal_interests, 'string'
453
440
  field :pharma_safety_info, 'string'
454
441
  field :phone, 'string'
442
+ field :pickup_options, { list: 'string' }
455
443
  field :place_type, 'string'
456
444
  field :plot_outline, 'string'
457
445
  field :preferred_audience, 'Targeting'
@@ -558,6 +546,20 @@ module FacebookAds
558
546
  end
559
547
  end
560
548
 
549
+ has_edge :business_data do |edge|
550
+ edge.delete do |api|
551
+ api.has_param :email, 'string'
552
+ api.has_param :external_id, 'string'
553
+ api.has_param :object_name, { enum: %w{contact order order_item }}
554
+ api.has_param :order_id, 'string'
555
+ api.has_param :order_item_id, 'string'
556
+ end
557
+ edge.post 'Page' do |api|
558
+ api.has_param :data, { list: 'string' }
559
+ api.has_param :partner_agent, 'string'
560
+ end
561
+ end
562
+
561
563
  has_edge :call_to_actions do |edge|
562
564
  edge.get 'PageCallToAction'
563
565
  end
@@ -595,13 +597,11 @@ module FacebookAds
595
597
  end
596
598
 
597
599
  has_edge :claimed_urls do |edge|
598
- edge.delete do |api|
599
- api.has_param :url, 'string'
600
- end
601
600
  edge.get 'Url'
602
- edge.post 'Page' do |api|
603
- api.has_param :url, 'string'
604
- end
601
+ end
602
+
603
+ has_edge :commerce_eligibility do |edge|
604
+ edge.get 'PageCommerceEligibility'
605
605
  end
606
606
 
607
607
  has_edge :commerce_merchant_settings do |edge|
@@ -689,6 +689,13 @@ module FacebookAds
689
689
  end
690
690
  end
691
691
 
692
+ has_edge :extend_thread_control do |edge|
693
+ edge.post 'Page' do |api|
694
+ api.has_param :duration, 'int'
695
+ api.has_param :recipient, 'object'
696
+ end
697
+ end
698
+
692
699
  has_edge :feed do |edge|
693
700
  edge.get 'PagePost' do |api|
694
701
  api.has_param :include_hidden, 'bool'
@@ -817,6 +824,21 @@ module FacebookAds
817
824
  edge.get 'Page'
818
825
  end
819
826
 
827
+ has_edge :image_copyrights do |edge|
828
+ edge.get 'ImageCopyright'
829
+ edge.post 'ImageCopyright' do |api|
830
+ api.has_param :artist, 'string'
831
+ api.has_param :creator, 'string'
832
+ api.has_param :custom_id, 'string'
833
+ api.has_param :description, 'string'
834
+ api.has_param :filename, 'string'
835
+ api.has_param :geo_ownership, { list: { enum: -> { ImageCopyright::GEO_OWNERSHIP }} }
836
+ api.has_param :original_content_creation_date, 'int'
837
+ api.has_param :reference_photo, 'string'
838
+ api.has_param :title, 'string'
839
+ end
840
+ end
841
+
820
842
  has_edge :indexed_videos do |edge|
821
843
  edge.get 'AdVideo'
822
844
  end
@@ -913,6 +935,7 @@ module FacebookAds
913
935
  api.has_param :crossposting_actions, { list: 'hash' }
914
936
  api.has_param :custom_labels, { list: 'string' }
915
937
  api.has_param :description, 'string'
938
+ api.has_param :enable_backup_ingest, 'bool'
916
939
  api.has_param :encoding_settings, 'string'
917
940
  api.has_param :fisheye_video_cropped, 'bool'
918
941
  api.has_param :front_z_rotation, 'double'
@@ -925,7 +948,6 @@ module FacebookAds
925
948
  api.has_param :privacy, 'string'
926
949
  api.has_param :projection, { enum: -> { LiveVideo::PROJECTION }}
927
950
  api.has_param :published, 'bool'
928
- api.has_param :save_vod, 'bool'
929
951
  api.has_param :schedule_custom_profile_image, 'file'
930
952
  api.has_param :spatial_audio_format, { enum: -> { LiveVideo::SPATIAL_AUDIO_FORMAT }}
931
953
  api.has_param :status, { enum: -> { LiveVideo::STATUS }}
@@ -955,6 +977,7 @@ module FacebookAds
955
977
  api.has_param :page_username, 'string'
956
978
  api.has_param :permanently_closed, 'bool'
957
979
  api.has_param :phone, 'string'
980
+ api.has_param :pickup_options, { list: { enum: -> { Page::PICKUP_OPTIONS }} }
958
981
  api.has_param :place_topics, { list: 'string' }
959
982
  api.has_param :price_range, 'string'
960
983
  api.has_param :store_code, 'string'
@@ -1001,13 +1024,9 @@ module FacebookAds
1001
1024
  edge.get 'MessagingFeatureReview'
1002
1025
  end
1003
1026
 
1004
- has_edge :messenger_ads_page_welcome_messages do |edge|
1005
- edge.get 'MessengerDestinationPageWelcomeMessage'
1006
- end
1007
-
1008
1027
  has_edge :messenger_profile do |edge|
1009
1028
  edge.delete do |api|
1010
- api.has_param :fields, { list: { enum: %w{ACCOUNT_LINKING_URL GET_STARTED GREETING HOME_URL ICE_BREAKERS PAYMENT_SETTINGS PERSISTENT_MENU TARGET_AUDIENCE WHITELISTED_DOMAINS }} }
1029
+ api.has_param :fields, { list: { enum: %w{ACCOUNT_LINKING_URL GET_STARTED GREETING HOME_URL ICE_BREAKERS PAYMENT_SETTINGS PERSISTENT_MENU PLATFORM SUBJECT_TO_NEW_EU_PRIVACY_RULES TARGET_AUDIENCE WHITELISTED_DOMAINS }} }
1011
1030
  end
1012
1031
  edge.get 'MessengerProfile'
1013
1032
  edge.post 'Page' do |api|
@@ -1061,16 +1080,6 @@ module FacebookAds
1061
1080
  end
1062
1081
  end
1063
1082
 
1064
- has_edge :page_about_story do |edge|
1065
- edge.post 'Page' do |api|
1066
- api.has_param :composed_text, { list: 'hash' }
1067
- api.has_param :cover_photo, 'hash'
1068
- api.has_param :entity_map, { list: 'hash' }
1069
- api.has_param :is_published, 'bool'
1070
- api.has_param :title, 'string'
1071
- end
1072
- end
1073
-
1074
1083
  has_edge :page_backed_instagram_accounts do |edge|
1075
1084
  edge.get 'InstagramUser'
1076
1085
  edge.post 'InstagramUser'
@@ -1091,6 +1100,14 @@ module FacebookAds
1091
1100
  end
1092
1101
  end
1093
1102
 
1103
+ has_edge :pass_thread_metadata do |edge|
1104
+ edge.post 'Page' do |api|
1105
+ api.has_param :metadata, 'string'
1106
+ api.has_param :recipient, 'object'
1107
+ api.has_param :target_app_id, 'int'
1108
+ end
1109
+ end
1110
+
1094
1111
  has_edge :personas do |edge|
1095
1112
  edge.get 'Persona'
1096
1113
  edge.post 'Persona' do |api|
@@ -1175,6 +1192,7 @@ module FacebookAds
1175
1192
  end
1176
1193
  edge.post 'ProfilePictureSource' do |api|
1177
1194
  api.has_param :android_key_hash, 'string'
1195
+ api.has_param :burn_media_effect, 'bool'
1178
1196
  api.has_param :caption, 'string'
1179
1197
  api.has_param :composer_session_id, 'string'
1180
1198
  api.has_param :has_umg, 'bool'
@@ -1201,10 +1219,6 @@ module FacebookAds
1201
1219
  end
1202
1220
  end
1203
1221
 
1204
- has_edge :place_topics do |edge|
1205
- edge.get 'PlaceTopic'
1206
- end
1207
-
1208
1222
  has_edge :posts do |edge|
1209
1223
  edge.get 'PagePost' do |api|
1210
1224
  api.has_param :include_hidden, 'bool'
@@ -1230,6 +1244,12 @@ module FacebookAds
1230
1244
  edge.get 'Recommendation'
1231
1245
  end
1232
1246
 
1247
+ has_edge :release_thread_control do |edge|
1248
+ edge.post 'Page' do |api|
1249
+ api.has_param :recipient, 'object'
1250
+ end
1251
+ end
1252
+
1233
1253
  has_edge :request_thread_control do |edge|
1234
1254
  edge.post 'Page' do |api|
1235
1255
  api.has_param :metadata, 'string'
@@ -1309,26 +1329,6 @@ module FacebookAds
1309
1329
  end
1310
1330
  end
1311
1331
 
1312
- has_edge :thread_settings do |edge|
1313
- edge.delete do |api|
1314
- api.has_param :setting_type, { enum: -> { Page::SETTING_TYPE }}
1315
- api.has_param :thread_state, { enum: -> { Page::THREAD_STATE }}
1316
- end
1317
- edge.post 'Page' do |api|
1318
- api.has_param :account_linking_url, 'string'
1319
- api.has_param :call_to_actions, { list: 'object' }
1320
- api.has_param :domain_action_type, { enum: -> { Page::DOMAIN_ACTION_TYPE }}
1321
- api.has_param :greeting, 'object'
1322
- api.has_param :payment_dev_mode_action, { enum: -> { Page::PAYMENT_DEV_MODE_ACTION }}
1323
- api.has_param :payment_privacy_url, 'string'
1324
- api.has_param :payment_public_key, 'string'
1325
- api.has_param :payment_testers, { list: 'string' }
1326
- api.has_param :setting_type, { enum: -> { Page::SETTING_TYPE }}
1327
- api.has_param :thread_state, { enum: -> { Page::THREAD_STATE }}
1328
- api.has_param :whitelisted_domains, { list: 'string' }
1329
- end
1330
- end
1331
-
1332
1332
  has_edge :threads do |edge|
1333
1333
  edge.get 'UnifiedThread' do |api|
1334
1334
  api.has_param :folder, 'string'
@@ -1338,7 +1338,7 @@ module FacebookAds
1338
1338
  end
1339
1339
 
1340
1340
  has_edge :tours do |edge|
1341
- edge.get 'EventTour'
1341
+ edge.get
1342
1342
  end
1343
1343
 
1344
1344
  has_edge :unlink_accounts do |edge|
@@ -1352,6 +1352,10 @@ module FacebookAds
1352
1352
  api.has_param :selected_rule_id, 'string'
1353
1353
  api.has_param :source, { enum: -> { VideoCopyrightRule::SOURCE }}
1354
1354
  end
1355
+ edge.post 'VideoCopyrightRule' do |api|
1356
+ api.has_param :condition_groups, { list: 'object' }
1357
+ api.has_param :name, 'string'
1358
+ end
1355
1359
  end
1356
1360
 
1357
1361
  has_edge :video_copyrights do |edge|
@@ -1386,7 +1390,6 @@ module FacebookAds
1386
1390
  api.has_param :animated_effect_id, 'int'
1387
1391
  api.has_param :application_id, 'string'
1388
1392
  api.has_param :asked_fun_fact_prompt_id, 'int'
1389
- api.has_param :attribution_app_id, 'string'
1390
1393
  api.has_param :audio_story_wave_animation_handle, 'string'
1391
1394
  api.has_param :backdated_post, { list: 'string' }
1392
1395
  api.has_param :call_to_action, 'object'
@@ -1453,6 +1456,7 @@ module FacebookAds
1453
1456
  api.has_param :slideshow_spec, 'hash'
1454
1457
  api.has_param :social_actions, 'bool'
1455
1458
  api.has_param :source, 'string'
1459
+ api.has_param :source_instagram_media_id, 'string'
1456
1460
  api.has_param :specified_dialect, 'string'
1457
1461
  api.has_param :spherical, 'bool'
1458
1462
  api.has_param :sponsor_id, 'string'
@@ -35,6 +35,7 @@ module FacebookAds
35
35
  "MARKETPLACE_INVENTORY_PAGE",
36
36
  "MESSENGER",
37
37
  "MINI_SHOP",
38
+ "MOBILE_CENTER",
38
39
  "NONE",
39
40
  "PHONE_CALL",
40
41
  "SHOP_ON_FACEBOOK",
@@ -75,6 +76,7 @@ module FacebookAds
75
76
  "LISTEN",
76
77
  "LOCAL_DEV_PLATFORM",
77
78
  "MESSAGE",
79
+ "MOBILE_CENTER",
78
80
  "OPEN_APP",
79
81
  "ORDER_FOOD",
80
82
  "PLAY_MUSIC",
@@ -98,6 +100,7 @@ module FacebookAds
98
100
  "EMAIL",
99
101
  "FOLLOW",
100
102
  "MESSENGER",
103
+ "MOBILE_CENTER",
101
104
  "NONE",
102
105
  "SHOP_ON_FACEBOOK",
103
106
  "WEBSITE",