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
@@ -113,6 +113,8 @@ module FacebookAds
113
113
  field :stop_time_old, 'datetime'
114
114
  field :target_spec_id_new, 'string'
115
115
  field :target_spec_id_old, 'string'
116
+ field :targets_spec_new, 'object'
117
+ field :targets_spec_old, 'object'
116
118
  field :tracking_pixel_ids_new, { list: 'string' }
117
119
  field :tracking_pixel_ids_old, { list: 'string' }
118
120
  field :tracking_specs_new, { list: 'object' }
@@ -44,6 +44,7 @@ module FacebookAds
44
44
  field :facebook_pages_live_shopping, 'hash'
45
45
  field :instagram, 'hash'
46
46
  field :instagram_shop, 'hash'
47
+ field :job_search, 'hash'
47
48
  field :lead_gen_honeypot, 'hash'
48
49
  field :marketplace, 'hash'
49
50
  field :marketplace_home_rentals, 'hash'
@@ -35,17 +35,25 @@ module FacebookAds
35
35
  field :applinks, 'CatalogItemAppLinks'
36
36
  field :availability, 'string'
37
37
  field :breed, 'string'
38
+ field :category_specific_fields, 'CatalogSubVerticalList'
39
+ field :coat_length, 'string'
40
+ field :color, 'string'
38
41
  field :currency, 'string'
39
42
  field :description, 'string'
43
+ field :features, { list: 'string' }
40
44
  field :gender, 'string'
41
45
  field :id, 'string'
42
46
  field :images, { list: 'string' }
43
47
  field :name, 'string'
44
48
  field :price, 'string'
45
49
  field :sanitized_images, { list: 'string' }
50
+ field :secondary_color, 'string'
51
+ field :shelter_email, 'string'
46
52
  field :shelter_name, 'string'
47
53
  field :shelter_page_id, 'Page'
54
+ field :shelter_phone, 'string'
48
55
  field :size, 'string'
56
+ field :tertiary_color, 'string'
49
57
  field :url, 'string'
50
58
  has_no_post
51
59
  has_no_delete
@@ -33,10 +33,12 @@ module FacebookAds
33
33
  field :_28d_view, 'string'
34
34
  field :_7d_click, 'string'
35
35
  field :_7d_view, 'string'
36
+ field :action_brand, 'string'
36
37
  field :action_canvas_component_id, 'string'
37
38
  field :action_canvas_component_name, 'string'
38
39
  field :action_carousel_card_id, 'string'
39
40
  field :action_carousel_card_name, 'string'
41
+ field :action_category, 'string'
40
42
  field :action_converted_product_id, 'string'
41
43
  field :action_destination, 'string'
42
44
  field :action_device, 'string'
@@ -53,6 +53,7 @@ module FacebookAds
53
53
  ACTION_REPORT_TIME = [
54
54
  "conversion",
55
55
  "impression",
56
+ "mixed",
56
57
  ]
57
58
 
58
59
  BREAKDOWNS = [
@@ -92,7 +93,7 @@ module FacebookAds
92
93
  "last_week_mon_sun",
93
94
  "last_week_sun_sat",
94
95
  "last_year",
95
- "lifetime",
96
+ "maximum",
96
97
  "this_month",
97
98
  "this_quarter",
98
99
  "this_week_mon_today",
@@ -145,6 +146,7 @@ module FacebookAds
145
146
  field :adset_name, 'string'
146
147
  field :adset_start, 'string'
147
148
  field :age_targeting, 'string'
149
+ field :attribution_setting, 'string'
148
150
  field :auction_bid, 'string'
149
151
  field :auction_competitiveness, 'string'
150
152
  field :auction_max_competitor_bid, 'string'
@@ -32,8 +32,11 @@ module FacebookAds
32
32
  ]
33
33
 
34
34
  AUTOMATIC_MATCHING_FIELDS = [
35
+ "country",
35
36
  "ct",
37
+ "db",
36
38
  "em",
39
+ "external_id",
37
40
  "fn",
38
41
  "ge",
39
42
  "ln",
@@ -90,6 +93,7 @@ module FacebookAds
90
93
  has_edge :da_checks do |edge|
91
94
  edge.get 'DaCheck' do |api|
92
95
  api.has_param :checks, { list: 'string' }
96
+ api.has_param :connection_method, { enum: -> { DaCheck::CONNECTION_METHOD }}
93
97
  end
94
98
  end
95
99
 
@@ -106,6 +110,10 @@ module FacebookAds
106
110
  end
107
111
  end
108
112
 
113
+ has_edge :shadowtraffichelper do |edge|
114
+ edge.post
115
+ end
116
+
109
117
  has_edge :shared_accounts do |edge|
110
118
  edge.delete do |api|
111
119
  api.has_param :account_id, 'string'
@@ -152,15 +152,5 @@ module FacebookAds
152
152
  end
153
153
  end
154
154
 
155
- has_edge :reactions do |edge|
156
- edge.get 'Profile' do |api|
157
- api.has_param :type, { enum: -> { Profile::TYPE }}
158
- end
159
- end
160
-
161
- has_edge :sharedposts do |edge|
162
- edge.get 'Post'
163
- end
164
-
165
155
  end
166
156
  end
@@ -36,6 +36,7 @@ module FacebookAds
36
36
  "IPHONE",
37
37
  "MOBILE_WEB",
38
38
  "OCULUS",
39
+ "SAMSUNG",
39
40
  "SUPPLEMENTARY_IMAGES",
40
41
  "WEB",
41
42
  "WINDOWS",
@@ -100,6 +101,7 @@ module FacebookAds
100
101
  field :android_key_hash, { list: 'string' }
101
102
  field :android_sdk_error_categories, { list: 'object' }
102
103
  field :app_domains, { list: 'string' }
104
+ field :app_events_config, 'object'
103
105
  field :app_events_feature_bitmask, 'int'
104
106
  field :app_events_session_timeout, 'int'
105
107
  field :app_install_tracked, 'bool'
@@ -227,6 +229,7 @@ module FacebookAds
227
229
  api.has_param :bundle_id, 'string'
228
230
  api.has_param :bundle_short_version, 'string'
229
231
  api.has_param :bundle_version, 'string'
232
+ api.has_param :click_id, 'string'
230
233
  api.has_param :consider_views, 'bool'
231
234
  api.has_param :custom_events, { list: 'object' }
232
235
  api.has_param :custom_events_file, 'file'
@@ -239,6 +242,7 @@ module FacebookAds
239
242
  api.has_param :include_dwell_data, 'bool'
240
243
  api.has_param :include_video_data, 'bool'
241
244
  api.has_param :install_referrer, 'string'
245
+ api.has_param :install_timestamp, 'int'
242
246
  api.has_param :installer_package, 'string'
243
247
  api.has_param :limited_data_use, 'bool'
244
248
  api.has_param :migration_bundle, 'string'
@@ -288,6 +292,18 @@ module FacebookAds
288
292
  edge.get 'Business'
289
293
  end
290
294
 
295
+ has_edge :aggregate_revenue do |edge|
296
+ edge.post do |api|
297
+ api.has_param :ecpms, { list: 'string' }
298
+ api.has_param :query_ids, { list: 'string' }
299
+ api.has_param :request_id, 'string'
300
+ end
301
+ end
302
+
303
+ has_edge :android_dialog_configs do |edge|
304
+ edge.get
305
+ end
306
+
291
307
  has_edge :app_event_types do |edge|
292
308
  edge.get
293
309
  end
@@ -389,6 +405,7 @@ module FacebookAds
389
405
  has_edge :da_checks do |edge|
390
406
  edge.get 'DaCheck' do |api|
391
407
  api.has_param :checks, { list: 'string' }
408
+ api.has_param :connection_method, { enum: -> { DaCheck::CONNECTION_METHOD }}
392
409
  end
393
410
  end
394
411
 
@@ -478,6 +495,7 @@ module FacebookAds
478
495
  edge.get do |api|
479
496
  api.has_param :device_id, 'string'
480
497
  api.has_param :extinfo, 'object'
498
+ api.has_param :os_version, 'string'
481
499
  api.has_param :platform, { enum: %w{ANDROID IOS }}
482
500
  api.has_param :sdk_version, 'string'
483
501
  end
@@ -490,10 +508,6 @@ module FacebookAds
490
508
  end
491
509
  end
492
510
 
493
- has_edge :ozone_release do |edge|
494
- edge.get
495
- end
496
-
497
511
  has_edge :page_activities do |edge|
498
512
  edge.post 'Application' do |api|
499
513
  api.has_param :advertiser_tracking_enabled, 'bool'
@@ -145,7 +145,7 @@ module FacebookAds
145
145
  api.has_param :dimensions, { list: { enum: %w{AD_ID AD_SET_ID CAMPAIGN_ID DEVICE_TYPE SOURCE_CHANNEL }} }
146
146
  api.has_param :granularity, { enum: %w{DAY HOUR MONTH WEEK_SUNDAY YEAR }}
147
147
  api.has_param :metric_scope, 'hash'
148
- api.has_param :order_by, { list: 'string' }
148
+ api.has_param :order_by, { list: 'hash' }
149
149
  end
150
150
  end
151
151
 
@@ -26,11 +26,37 @@ module FacebookAds
26
26
  # pull request for this class.
27
27
 
28
28
  class AutomotiveModel < AdObject
29
+ BODY_STYLE = [
30
+ "CONVERTIBLE",
31
+ "COUPE",
32
+ "CROSSOVER",
33
+ "ESTATE",
34
+ "GRANDTOURER",
35
+ "HATCHBACK",
36
+ "MINIBUS",
37
+ "MINIVAN",
38
+ "MPV",
39
+ "NONE",
40
+ "OTHER",
41
+ "PICKUP",
42
+ "ROADSTER",
43
+ "SALOON",
44
+ "SEDAN",
45
+ "SPORTSCAR",
46
+ "SUPERCAR",
47
+ "SUPERMINI",
48
+ "SUV",
49
+ "TRUCK",
50
+ "VAN",
51
+ "WAGON",
52
+ ]
53
+
29
54
 
30
55
  field :applinks, 'CatalogItemAppLinks'
31
56
  field :automotive_model_id, 'string'
32
57
  field :availability, 'string'
33
58
  field :body_style, 'string'
59
+ field :category_specific_fields, 'CatalogSubVerticalList'
34
60
  field :currency, 'string'
35
61
  field :custom_label_0, 'string'
36
62
  field :description, 'string'
@@ -60,6 +60,7 @@ module FacebookAds
60
60
  PERMITTED_TASKS = [
61
61
  "ADVERTISE",
62
62
  "ANALYZE",
63
+ "DRAFT",
63
64
  "MANAGE",
64
65
  ]
65
66
 
@@ -78,6 +79,7 @@ module FacebookAds
78
79
  "MANAGE",
79
80
  "MANAGE_JOBS",
80
81
  "MANAGE_LEADS",
82
+ "MESSAGING",
81
83
  "MODERATE",
82
84
  "MODERATE_COMMUNITY",
83
85
  "PAGES_MESSAGING",
@@ -117,11 +119,18 @@ module FacebookAds
117
119
  has_edge :access_token do |edge|
118
120
  edge.post 'Business' do |api|
119
121
  api.has_param :app_id, 'string'
122
+ api.has_param :fbe_external_business_id, 'string'
120
123
  api.has_param :scope, { list: 'Permission' }
121
124
  api.has_param :system_user_name, 'string'
122
125
  end
123
126
  end
124
127
 
128
+ has_edge :ad_accounts do |edge|
129
+ edge.delete do |api|
130
+ api.has_param :adaccount_id, 'string'
131
+ end
132
+ end
133
+
125
134
  has_edge :ad_studies do |edge|
126
135
  edge.get 'AdStudy'
127
136
  edge.post 'AdStudy' do |api|
@@ -207,6 +216,14 @@ module FacebookAds
207
216
  edge.get 'Business'
208
217
  end
209
218
 
219
+ has_edge :aggregate_revenue do |edge|
220
+ edge.post do |api|
221
+ api.has_param :ecpms, { list: 'string' }
222
+ api.has_param :query_ids, { list: 'string' }
223
+ api.has_param :request_id, 'string'
224
+ end
225
+ end
226
+
210
227
  has_edge :an_placements do |edge|
211
228
  edge.get 'AdPlacement'
212
229
  end
@@ -285,6 +302,10 @@ module FacebookAds
285
302
  edge.get 'ProductCatalog'
286
303
  end
287
304
 
305
+ has_edge :client_whatsapp_business_accounts do |edge|
306
+ edge.get 'WhatsAppBusinessAccount'
307
+ end
308
+
288
309
  has_edge :clients do |edge|
289
310
  edge.delete do |api|
290
311
  api.has_param :business, 'string'
@@ -292,6 +313,26 @@ module FacebookAds
292
313
  edge.get 'Business'
293
314
  end
294
315
 
316
+ has_edge :collaborative_ads_collaboration_requests do |edge|
317
+ edge.get 'CpasCollaborationRequest' do |api|
318
+ api.has_param :status, 'string'
319
+ end
320
+ edge.post 'CpasCollaborationRequest' do |api|
321
+ api.has_param :brands, { list: 'string' }
322
+ api.has_param :contact_email, 'string'
323
+ api.has_param :contact_first_name, 'string'
324
+ api.has_param :contact_last_name, 'string'
325
+ api.has_param :phone_number, 'string'
326
+ api.has_param :receiver_business, 'string'
327
+ api.has_param :requester_agency_or_brand, { enum: -> { CpasCollaborationRequest::REQUESTER_AGENCY_OR_BRAND }}
328
+ api.has_param :sender_client_business, 'string'
329
+ end
330
+ end
331
+
332
+ has_edge :collaborative_ads_suggested_partners do |edge|
333
+ edge.get 'CpasAdvertiserPartnershipRecommendation'
334
+ end
335
+
295
336
  has_edge :commerce_merchant_settings do |edge|
296
337
  edge.get 'CommerceMerchantSettings'
297
338
  end
@@ -307,6 +348,14 @@ module FacebookAds
307
348
  end
308
349
  end
309
350
 
351
+ has_edge :create_and_apply_publisher_block_list do |edge|
352
+ edge.post do |api|
353
+ api.has_param :is_auto_blocking_on, 'bool'
354
+ api.has_param :name, 'string'
355
+ api.has_param :publisher_urls, { list: 'string' }
356
+ end
357
+ end
358
+
310
359
  has_edge :customconversions do |edge|
311
360
  edge.post 'CustomConversion' do |api|
312
361
  api.has_param :advanced_rule, 'string'
@@ -333,6 +382,20 @@ module FacebookAds
333
382
  end
334
383
  end
335
384
 
385
+ has_edge :franchise_programs do |edge|
386
+ edge.post do |api|
387
+ api.has_param :business_asset_group, 'string'
388
+ api.has_param :creative_folder, 'string'
389
+ api.has_param :creative_spec_template_data, 'hash'
390
+ api.has_param :description, 'string'
391
+ api.has_param :end_date, 'datetime'
392
+ api.has_param :name, 'string'
393
+ api.has_param :program_approval_type, { enum: %w{APPROVAL PUBLIC }}
394
+ api.has_param :shared_custom_audience, 'string'
395
+ api.has_param :start_date, 'datetime'
396
+ end
397
+ end
398
+
336
399
  has_edge :initiated_audience_sharing_requests do |edge|
337
400
  edge.get 'BusinessAssetSharingAgreement' do |api|
338
401
  api.has_param :recipient_id, 'string'
@@ -354,11 +417,16 @@ module FacebookAds
354
417
  edge.get 'InstagramUser'
355
418
  end
356
419
 
420
+ has_edge :instagram_business_accounts do |edge|
421
+ edge.get 'IgUser'
422
+ end
423
+
357
424
  has_edge :managed_businesses do |edge|
358
425
  edge.delete do |api|
359
426
  api.has_param :existing_client_business_id, 'string'
360
427
  end
361
428
  edge.post 'Business' do |api|
429
+ api.has_param :child_business_external_id, 'string'
362
430
  api.has_param :existing_client_business_id, 'string'
363
431
  api.has_param :name, 'string'
364
432
  api.has_param :sales_rep_email, 'string'
@@ -407,9 +475,11 @@ module FacebookAds
407
475
  api.has_param :client_id, 'string'
408
476
  end
409
477
  edge.get 'Business' do |api|
478
+ api.has_param :child_business_external_id, 'string'
410
479
  api.has_param :client_user_id, 'int'
411
480
  end
412
481
  edge.post 'Business' do |api|
482
+ api.has_param :child_business_external_id, 'string'
413
483
  api.has_param :name, 'string'
414
484
  api.has_param :page_permitted_tasks, { list: { enum: -> { Business::PAGE_PERMITTED_TASKS }} }
415
485
  api.has_param :sales_rep_email, 'string'
@@ -441,17 +511,22 @@ module FacebookAds
441
511
  has_edge :owned_product_catalogs do |edge|
442
512
  edge.get 'ProductCatalog'
443
513
  edge.post 'ProductCatalog' do |api|
444
- api.has_param :commerce_merchant_settings, 'object'
514
+ api.has_param :catalog_segment_filter, 'object'
515
+ api.has_param :catalog_segment_product_set_id, 'string'
445
516
  api.has_param :da_display_settings, 'object'
446
517
  api.has_param :destination_catalog_settings, 'hash'
447
518
  api.has_param :flight_catalog_settings, 'hash'
448
519
  api.has_param :name, 'string'
449
- api.has_param :onsite_commerce_merchant, 'object'
520
+ api.has_param :parent_catalog_id, 'string'
450
521
  api.has_param :store_catalog_settings, 'hash'
451
522
  api.has_param :vertical, { enum: -> { ProductCatalog::VERTICAL }}
452
523
  end
453
524
  end
454
525
 
526
+ has_edge :owned_whatsapp_business_accounts do |edge|
527
+ edge.get 'WhatsAppBusinessAccount'
528
+ end
529
+
455
530
  has_edge :pages do |edge|
456
531
  edge.delete do |api|
457
532
  api.has_param :page_id, 'int'
@@ -29,6 +29,7 @@ module FacebookAds
29
29
  ADACCOUNT_TASKS = [
30
30
  "ADVERTISE",
31
31
  "ANALYZE",
32
+ "DRAFT",
32
33
  "MANAGE",
33
34
  ]
34
35
 
@@ -47,6 +48,7 @@ module FacebookAds
47
48
  "MANAGE",
48
49
  "MANAGE_JOBS",
49
50
  "MANAGE_LEADS",
51
+ "MESSAGING",
50
52
  "MODERATE",
51
53
  "MODERATE_COMMUNITY",
52
54
  "PAGES_MESSAGING",
@@ -29,10 +29,14 @@ module FacebookAds
29
29
  ROLE = [
30
30
  "ADMIN",
31
31
  "ADS_RIGHTS_REVIEWER",
32
+ "DEFAULT",
32
33
  "DEVELOPER",
33
34
  "EMPLOYEE",
34
35
  "FINANCE_ANALYST",
36
+ "FINANCE_EDIT",
35
37
  "FINANCE_EDITOR",
38
+ "FINANCE_VIEW",
39
+ "MANAGE",
36
40
  "PARTNER_CENTER_ADMIN",
37
41
  "PARTNER_CENTER_ANALYST",
38
42
  "PARTNER_CENTER_EDUCATION",