facebookbusiness 25.0.3 → 26.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +60 -0
  3. data/lib/facebook_ads/ad_objects/ad.rb +1 -0
  4. data/lib/facebook_ads/ad_objects/ad_account.rb +10 -2
  5. data/lib/facebook_ads/ad_objects/ad_account_ad_volume.rb +5 -0
  6. data/lib/facebook_ads/ad_objects/ad_account_business_constraints.rb +1 -0
  7. data/lib/facebook_ads/ad_objects/ad_account_delivery_estimate.rb +0 -2
  8. data/lib/facebook_ads/ad_objects/ad_account_insights_feature_settings.rb +36 -0
  9. data/lib/facebook_ads/ad_objects/{ig_shopping_review_status.rb → ad_account_insights_feature_settings_list_features.rb} +3 -4
  10. data/lib/facebook_ads/ad_objects/ad_account_insights_feature_settings_post.rb +24 -0
  11. data/lib/facebook_ads/ad_objects/ad_account_targeting_unified.rb +1 -0
  12. data/lib/facebook_ads/ad_objects/ad_account_user_settings.rb +1 -0
  13. data/lib/facebook_ads/ad_objects/ad_activity.rb +7 -0
  14. data/lib/facebook_ads/ad_objects/ad_campaign_delivery_estimate.rb +0 -2
  15. data/lib/facebook_ads/ad_objects/ad_campaign_goal.rb +36 -0
  16. data/lib/facebook_ads/ad_objects/ad_creative_media_sourcing_spec.rb +1 -0
  17. data/lib/facebook_ads/ad_objects/ad_creative_object_story_spec.rb +1 -0
  18. data/lib/facebook_ads/ad_objects/ad_creative_sourcing_spec.rb +1 -0
  19. data/lib/facebook_ads/ad_objects/ad_set.rb +6 -0
  20. data/lib/facebook_ads/ad_objects/ad_video.rb +1 -0
  21. data/lib/facebook_ads/ad_objects/ads_action_stats.rb +3 -0
  22. data/lib/facebook_ads/ad_objects/ads_histogram_stats.rb +3 -0
  23. data/lib/facebook_ads/ad_objects/ads_insights.rb +12 -5
  24. data/lib/facebook_ads/ad_objects/ads_value_adjustment_rule_collection.rb +1 -0
  25. data/lib/facebook_ads/ad_objects/album.rb +1 -0
  26. data/lib/facebook_ads/ad_objects/application.rb +3 -0
  27. data/lib/facebook_ads/ad_objects/audio_copyright.rb +1 -0
  28. data/lib/facebook_ads/ad_objects/audio_isrc.rb +1 -0
  29. data/lib/facebook_ads/ad_objects/audio_visual_reference_match.rb +2 -2
  30. data/lib/facebook_ads/ad_objects/brand_safety_campaign_config.rb +3 -0
  31. data/lib/facebook_ads/ad_objects/business.rb +2 -0
  32. data/lib/facebook_ads/ad_objects/comment.rb +1 -0
  33. data/lib/facebook_ads/ad_objects/commerce_merchant_settings.rb +0 -13
  34. data/lib/facebook_ads/ad_objects/commerce_order.rb +0 -17
  35. data/lib/facebook_ads/ad_objects/copyright_audio_asset.rb +2 -0
  36. data/lib/facebook_ads/ad_objects/copyright_ownership_transfer.rb +2 -2
  37. data/lib/facebook_ads/ad_objects/cpas_collaboration_request.rb +1 -0
  38. data/lib/facebook_ads/ad_objects/custom_audience.rb +1 -5
  39. data/lib/facebook_ads/ad_objects/group.rb +4 -2
  40. data/lib/facebook_ads/ad_objects/ig_media.rb +2 -0
  41. data/lib/facebook_ads/ad_objects/ig_media_for_ig_only_api.rb +1 -0
  42. data/lib/facebook_ads/ad_objects/ig_user.rb +11 -1
  43. data/lib/facebook_ads/ad_objects/ig_user_export_for_cam.rb +11 -0
  44. data/lib/facebook_ads/ad_objects/ig_user_for_ig_only_api.rb +20 -3
  45. data/lib/facebook_ads/ad_objects/image_reference_match.rb +2 -2
  46. data/lib/facebook_ads/ad_objects/insights_result.rb +0 -1
  47. data/lib/facebook_ads/ad_objects/instagram_insights_result.rb +0 -1
  48. data/lib/facebook_ads/ad_objects/lead_gen_form_preview_details.rb +1 -0
  49. data/lib/facebook_ads/ad_objects/open_bridge_configuration.rb +2 -0
  50. data/lib/facebook_ads/ad_objects/page.rb +18 -0
  51. data/lib/facebook_ads/ad_objects/product_catalog.rb +7 -7
  52. data/lib/facebook_ads/ad_objects/product_catalog_hotel_rooms_batch.rb +10 -0
  53. data/lib/facebook_ads/ad_objects/product_item.rb +1 -0
  54. data/lib/facebook_ads/ad_objects/third_party_partner_viewability_request.rb +1 -0
  55. data/lib/facebook_ads/ad_objects/user.rb +2 -0
  56. data/lib/facebook_ads/ad_objects/whats_app_business_account.rb +8 -1
  57. data/lib/facebook_ads/version.rb +2 -2
  58. metadata +6 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a10e421eaa016e4fd2ba9b81ea6a2e6894db11cc6a25ed1d6ac3e360694efb0a
4
- data.tar.gz: bd1178acf2856eacab6143bfe998b87fcc03678486a001b8f7ea663f14300f2c
3
+ metadata.gz: '02592592c6b10e463bb2f21fe2b2a143088fbce2d718535df1021c0451f5a398'
4
+ data.tar.gz: e739ed3b1a92b1a32ba02810cf83c84e927c73f4f5cbfcf2f6570056b62ec9ef
5
5
  SHA512:
6
- metadata.gz: c319d0bda77716e2f857f684408cbc28f8ff566de91109dec1fff9fd73f950efb305c0607d4db2735d22a2d18064fa87c1162d074cbcfcfafbbd258dd33be926
7
- data.tar.gz: 435ba7bdc74c109906f91989f9db7c124488890179e7f6afb099715112188dc465069bcca592f980d6c51f59c4a38e635244e60ef0cea75ffbfb3bda9c29d2c5
6
+ metadata.gz: 4a82a4b120f8b23dc8b829d7d4139c3cc0185175cf9daa19bb668ece7b7d4f6d25f133626d3595a0061166d7a66c54653c868e8fd944fcbbecf307c5a282951b
7
+ data.tar.gz: 9dab08b13effeac1ce6d062635794f75bf0c860d07e976f9182f3fde190f2202bca6141927a5be1c3b7d2e82f32d47eeb5963e214a993d5c8acff21e37f03b6f
data/README.md CHANGED
@@ -256,6 +256,66 @@ FacebookAds.configure do |config|
256
256
  end
257
257
  ```
258
258
 
259
+ ## Conversions API
260
+
261
+ The Business SDK includes a server-side client for the [Conversions API](https://developers.facebook.com/docs/marketing-api/conversions-api), used to send web, app, and offline events to Meta directly from your server.
262
+
263
+ ```ruby
264
+ require 'facebook_ads'
265
+
266
+ FacebookAds.configure { |config| config.access_token = '<ACCESS_TOKEN>' }
267
+
268
+ user_data = FacebookAds::ServerSide::UserData.new(
269
+ email: 'joe@eg.com',
270
+ client_ip_address: request.remote_ip,
271
+ client_user_agent: request.user_agent
272
+ )
273
+ custom_data = FacebookAds::ServerSide::CustomData.new(
274
+ currency: 'usd',
275
+ value: 123.45
276
+ )
277
+ event = FacebookAds::ServerSide::Event.new(
278
+ event_name: 'Purchase',
279
+ event_time: Time.now.to_i,
280
+ user_data: user_data,
281
+ custom_data: custom_data,
282
+ event_source_url: 'http://jaspers-market.com/product/123',
283
+ action_source: 'website'
284
+ )
285
+ response = FacebookAds::ServerSide::EventRequest.new(
286
+ pixel_id: '<PIXEL_ID>',
287
+ events: [event]
288
+ ).execute
289
+ print "#{response}\n"
290
+ ```
291
+
292
+ For advanced features — asynchronous requests, concurrent batching, and a custom HTTP service — see [Meta Business SDK Features for Conversions API](https://developers.facebook.com/documentation/ads-commerce/conversions-api/guides/business-sdk-features/).
293
+
294
+ ### Conversions API Parameter Builder integration
295
+
296
+ The SDK bundles the [Conversions API Parameter Builder](https://github.com/facebook/capi-param-builder) ([Ruby README](https://github.com/facebook/capi-param-builder/blob/main/ruby/README.md)) so it can auto-fill key event parameters straight from the incoming HTTP request. Call `set_request_context` on an event and pass the incoming request — see [Framework support](https://github.com/facebook/capi-param-builder/blob/main/ruby/README.md#framework-support) for exactly what to pass for your framework (e.g. a Rails `ActionDispatch::Request`, a Sinatra request, or any Rack `env`). At send time the SDK runs the Parameter Builder and fills in any of these fields you left empty:
297
+
298
+ - `user_data.fbc`, `user_data.fbp`
299
+ - `event_source_url`, `referrer_url`
300
+
301
+ ```ruby
302
+ event = FacebookAds::ServerSide::Event.new(
303
+ event_name: 'Purchase',
304
+ event_time: Time.now.to_i,
305
+ user_data: FacebookAds::ServerSide::UserData.new(email: 'joe@eg.com'),
306
+ action_source: 'website'
307
+ )
308
+ event.set_request_context(request)
309
+
310
+ # Optional: gate which fields may be auto-filled (all default true).
311
+ # event.set_request_context(
312
+ # request,
313
+ # preference: FacebookAds::ServerSide::Preference.new(is_event_source_url_allowed: false)
314
+ # )
315
+ ```
316
+
317
+ Auto-fill is **gated** by the optional `Preference` allowlist, **non-destructive** (a value you set yourself is never overwritten), and **order-independent**. Note that in Ruby, `client_ip_address` is not auto-derived yet — keep setting it (and `client_user_agent`) yourself.
318
+
259
319
  ## SDK Codegen
260
320
  Our SDK is autogenerated from [SDK Codegen](https://github.com/facebook/facebook-business-sdk-codegen). If you want to learn more about how our SDK code is generated, please check this repository.
261
321
 
@@ -135,6 +135,7 @@ module FacebookAds
135
135
  field :updated_time, 'datetime'
136
136
  field :adset_spec, 'AdSet'
137
137
  field :audience_id, 'string'
138
+ field :dataset_split_specs, { list: 'hash' }
138
139
  field :date_format, 'string'
139
140
  field :draft_adgroup_id, 'string'
140
141
  field :execution_options, { list: { enum: -> { EXECUTION_OPTIONS }} }
@@ -98,6 +98,7 @@ module FacebookAds
98
98
  "FEED_DNM",
99
99
  "FEED_NESTED_DNM",
100
100
  "FEED_RELAXED",
101
+ "FEED_SELECT",
101
102
  "FEED_STANDARD",
102
103
  "FEED_STRICT",
103
104
  "UNINITIALIZED",
@@ -242,6 +243,7 @@ module FacebookAds
242
243
  edge.post 'AdAccountBusinessConstraints' do |api|
243
244
  api.has_param :audience_controls, 'object'
244
245
  api.has_param :placement_controls, 'object'
246
+ api.has_param :placement_controls_per_objective, 'object'
245
247
  end
246
248
  end
247
249
 
@@ -451,6 +453,7 @@ module FacebookAds
451
453
  api.has_param :creative, 'AdCreative'
452
454
  api.has_param :creative_asset_groups_spec, 'object'
453
455
  api.has_param :creative_automation_spec, 'object'
456
+ api.has_param :dataset_split_specs, { list: 'hash' }
454
457
  api.has_param :date_format, 'string'
455
458
  api.has_param :display_sequence, 'int'
456
459
  api.has_param :draft_adgroup_id, 'string'
@@ -500,6 +503,7 @@ module FacebookAds
500
503
  api.has_param :updated_since, 'int'
501
504
  end
502
505
  edge.post 'AdSet' do |api|
506
+ api.has_param :ad_set_goal, 'hash'
503
507
  api.has_param :adlabels, { list: 'object' }
504
508
  api.has_param :adset_schedule, { list: 'object' }
505
509
  api.has_param :attribution_count_type, { enum: -> { AdSet::ATTRIBUTION_COUNT_TYPE }}
@@ -510,6 +514,7 @@ module FacebookAds
510
514
  api.has_param :bid_constraints, 'hash'
511
515
  api.has_param :bid_strategy, { enum: -> { AdSet::BID_STRATEGY }}
512
516
  api.has_param :billing_event, { enum: -> { AdSet::BILLING_EVENT }}
517
+ api.has_param :brand_safety_config, 'hash'
513
518
  api.has_param :budget_schedule_specs, { list: 'object' }
514
519
  api.has_param :budget_source, { enum: -> { AdSet::BUDGET_SOURCE }}
515
520
  api.has_param :budget_split_set_id, 'string'
@@ -538,6 +543,7 @@ module FacebookAds
538
543
  api.has_param :is_dynamic_creative, 'bool'
539
544
  api.has_param :is_incremental_attribution_enabled, 'bool'
540
545
  api.has_param :is_sac_cfca_terms_certified, 'bool'
546
+ api.has_param :is_sequenced_conversion_creation, 'bool'
541
547
  api.has_param :lifetime_budget, 'int'
542
548
  api.has_param :lifetime_imps, 'int'
543
549
  api.has_param :lifetime_min_spend_target, 'int'
@@ -647,6 +653,7 @@ module FacebookAds
647
653
  api.has_param :initial_heading, 'int'
648
654
  api.has_param :initial_pitch, 'int'
649
655
  api.has_param :instant_game_entry_point_data, 'string'
656
+ api.has_param :is_ai_generated, 'bool'
650
657
  api.has_param :is_boost_intended, 'bool'
651
658
  api.has_param :is_group_linking_post, 'bool'
652
659
  api.has_param :is_partnership_ad, 'bool'
@@ -1061,12 +1068,12 @@ module FacebookAds
1061
1068
  edge.post do |api|
1062
1069
  api.has_param :bid_amount, 'int'
1063
1070
  api.has_param :daily_budget, 'int'
1064
- api.has_param :end_time, 'int'
1071
+ api.has_param :end_time, 'datetime'
1065
1072
  api.has_param :lifetime_budget, 'int'
1066
1073
  api.has_param :name, 'string'
1067
1074
  api.has_param :page_id, 'string'
1068
1075
  api.has_param :pixel_id, 'int'
1069
- api.has_param :start_time, 'int'
1076
+ api.has_param :start_time, 'datetime'
1070
1077
  end
1071
1078
  end
1072
1079
 
@@ -1346,6 +1353,7 @@ module FacebookAds
1346
1353
  end
1347
1354
  edge.post 'AdVideo' do |api|
1348
1355
  api.has_param :description, 'string'
1356
+ api.has_param :is_ai_generated, 'bool'
1349
1357
  api.has_param :privacy, 'string'
1350
1358
  api.has_param :title, 'string'
1351
1359
  api.has_param :upload_phase, { enum: -> { AdVideo::UPLOAD_PHASE }}
@@ -24,6 +24,7 @@ module FacebookAds
24
24
  "ACO_TOGGLE",
25
25
  "ADD_FUNDS_TO_RUN_CAMPAIGN",
26
26
  "ADOPT_CATALOG_TO_RUN_PRODUCT_CENTRIC_ADS",
27
+ "ADOPT_CLICK_TO_FLOWS",
27
28
  "ADOPT_CREATIVE_AUDIENCE_PAIRING",
28
29
  "ADOPT_CREATIVE_MEDIA_SOURCING_BUNDLE",
29
30
  "ADOPT_CTX_RECOMMENDED_TEMPLATE_BUNDLE",
@@ -149,6 +150,7 @@ module FacebookAds
149
150
  "CAPI_PENETRATION",
150
151
  "CAPI_PERFORMANCE_MATCH_KEY",
151
152
  "CAPI_PERFORMANCE_MATCH_KEY_V2",
153
+ "CAPI_PERFORMANCE_MATCH_KEY_V3",
152
154
  "CASH_REWARDS_OPT_IN",
153
155
  "CATALOG_DYNAMIC_MEDIA",
154
156
  "CATALOG_MATCH_RATE",
@@ -165,6 +167,8 @@ module FacebookAds
165
167
  "CONVERSION_LEADS_OPTIMIZATION_V2",
166
168
  "CONVERSION_LEAD_ADS",
167
169
  "CONVERT_APP_WEB_FALLBACK_TO_A_DESTINATION",
170
+ "CONVERT_CTX_REPLIES_TO_CTX_LEADS",
171
+ "CONVERT_CTX_REPLIES_TO_CTX_PURCHASE",
168
172
  "CONVERT_IG_PROFILE_VISIT_TO_PTWA",
169
173
  "COST_GOAL",
170
174
  "COST_GOAL_BUDGET_LIMITED",
@@ -311,6 +315,7 @@ module FacebookAds
311
315
  "OPTIMAL_BAU",
312
316
  "OPT_INTO_CHAT_ON_WHATSAPP_POST_LEAD",
313
317
  "OPT_INTO_NUDGE_FOLLOW_UP_MESSAGES_CTM",
318
+ "OPT_INTO_REELS_GEN_AI_VIDEO_EXPANSION",
314
319
  "OPT_INTO_SINGLE_MEDIA_TO_COLLECTION_ADS",
315
320
  "OUTCOME_FORECASTER_BID_RECOMMENDATION",
316
321
  "OUTCOME_FORECASTER_BUDGET_RECOMMENDATION",
@@ -25,6 +25,7 @@ module FacebookAds
25
25
  field :campaigns_with_error, { list: 'string' }
26
26
  field :is_age_restriction_enabled, 'bool'
27
27
  field :placement_controls, 'object'
28
+ field :placement_controls_per_objective, 'object'
28
29
  field :status, { enum: -> { STATUS }}
29
30
  has_no_id
30
31
  has_no_get
@@ -51,8 +51,6 @@ module FacebookAds
51
51
  ]
52
52
 
53
53
 
54
- field :daily_outcomes_curve, { list: 'OutcomePredictionPoint' }
55
- field :estimate_dau, 'int'
56
54
  field :estimate_mau_lower_bound, 'int'
57
55
  field :estimate_mau_upper_bound, 'int'
58
56
  field :estimate_ready, 'bool'
@@ -0,0 +1,36 @@
1
+ # Copyright (c) Meta Platforms, Inc. and affiliates.
2
+ # All rights reserved.
3
+
4
+ # This source code is licensed under the license found in the
5
+ # LICENSE file in the root directory of this source tree.
6
+
7
+ # FB:AUTOGEN
8
+
9
+ module FacebookAds
10
+ # This class is auto-generated.
11
+
12
+ # For any issues or feature requests related to this class, please let us know
13
+ # on github and we'll fix in our codegen framework. We'll not be able to accept
14
+ # pull request for this class.
15
+
16
+ class AdAccountInsightsFeatureSettings < AdObject
17
+
18
+ field :id, 'string'
19
+ has_no_get
20
+ has_no_post
21
+ has_no_delete
22
+
23
+ has_edge :insights&#x2F;feature-settings&#x2F;list-features do |edge|
24
+ edge.get 'AdAccountInsightsFeatureSettingsListFeatures' do |api|
25
+ api.has_param :after, 'string'
26
+ api.has_param :before, 'string'
27
+ api.has_param :limit, 'int'
28
+ end
29
+ end
30
+
31
+ has_edge :insights&#x2F;feature-settings do |edge|
32
+ edge.post 'AdAccountInsightsFeatureSettingsPost'
33
+ end
34
+
35
+ end
36
+ end
@@ -13,11 +13,10 @@ module FacebookAds
13
13
  # on github and we'll fix in our codegen framework. We'll not be able to accept
14
14
  # pull request for this class.
15
15
 
16
- class IgShoppingReviewStatus < AdObject
16
+ class AdAccountInsightsFeatureSettingsListFeatures < AdObject
17
17
 
18
- field :onsite_eligibility, 'IgShoppingReviewStatusOnsiteEligibility'
19
- field :reasons, { list: 'IgShoppingReviewStatusReasonWithHelpMessage' }
20
- field :status, 'string'
18
+ field :data, { list: 'object' }
19
+ field :paging, 'object'
21
20
  has_no_id
22
21
  has_no_get
23
22
  has_no_post
@@ -0,0 +1,24 @@
1
+ # Copyright (c) Meta Platforms, Inc. and affiliates.
2
+ # All rights reserved.
3
+
4
+ # This source code is licensed under the license found in the
5
+ # LICENSE file in the root directory of this source tree.
6
+
7
+ # FB:AUTOGEN
8
+
9
+ module FacebookAds
10
+ # This class is auto-generated.
11
+
12
+ # For any issues or feature requests related to this class, please let us know
13
+ # on github and we'll fix in our codegen framework. We'll not be able to accept
14
+ # pull request for this class.
15
+
16
+ class AdAccountInsightsFeatureSettingsPost < AdObject
17
+
18
+ field :id, 'string'
19
+ has_no_get
20
+ has_no_post
21
+ has_no_delete
22
+
23
+ end
24
+ end
@@ -420,6 +420,7 @@ module FacebookAds
420
420
  "product_audience_specs",
421
421
  "prospecting_audience",
422
422
  "publisher_platforms",
423
+ "purchase_intent",
423
424
  "radius",
424
425
  "region_keys",
425
426
  "regions",
@@ -48,6 +48,7 @@ module FacebookAds
48
48
  field :ads_manager_footer_row_toast_impressions, 'int'
49
49
  field :auto_review_video_caption, 'bool'
50
50
  field :budget_optimization_quick_view_created, 'bool'
51
+ field :budget_pool_qv_created, 'bool'
51
52
  field :campaign_overview_columns, { list: 'string' }
52
53
  field :column_suggestion_status, 'string'
53
54
  field :conditional_formatting_rules, { list: 'string' }
@@ -79,6 +79,9 @@ module FacebookAds
79
79
  "update_ad_set_bid_strategy",
80
80
  "update_ad_set_bidding",
81
81
  "update_ad_set_budget",
82
+ "update_ad_set_budget_scaling_cost_target",
83
+ "update_ad_set_budget_scaling_extra_budget",
84
+ "update_ad_set_budget_scaling_status",
82
85
  "update_ad_set_cost_bidding_mode",
83
86
  "update_ad_set_duration",
84
87
  "update_ad_set_learning_stage_status",
@@ -105,6 +108,9 @@ module FacebookAds
105
108
  "update_campaign_delivery_type",
106
109
  "update_campaign_group_ad_scheduling",
107
110
  "update_campaign_group_agency_fee",
111
+ "update_campaign_group_budget_scaling_cost_target",
112
+ "update_campaign_group_budget_scaling_extra_budget",
113
+ "update_campaign_group_budget_scaling_status",
108
114
  "update_campaign_group_budget_scheduling_state",
109
115
  "update_campaign_group_delivery_type",
110
116
  "update_campaign_group_high_demand_periods",
@@ -150,6 +156,7 @@ module FacebookAds
150
156
  field :object_id, 'string'
151
157
  field :object_name, 'string'
152
158
  field :object_type, 'string'
159
+ field :tool, 'string'
153
160
  field :translated_event_type, 'string'
154
161
  has_no_id
155
162
  has_no_get
@@ -51,8 +51,6 @@ module FacebookAds
51
51
  ]
52
52
 
53
53
 
54
- field :daily_outcomes_curve, { list: 'OutcomePredictionPoint' }
55
- field :estimate_dau, 'int'
56
54
  field :estimate_mau_lower_bound, 'int'
57
55
  field :estimate_mau_upper_bound, 'int'
58
56
  field :estimate_ready, 'bool'
@@ -0,0 +1,36 @@
1
+ # Copyright (c) Meta Platforms, Inc. and affiliates.
2
+ # All rights reserved.
3
+
4
+ # This source code is licensed under the license found in the
5
+ # LICENSE file in the root directory of this source tree.
6
+
7
+ # FB:AUTOGEN
8
+
9
+ module FacebookAds
10
+ # This class is auto-generated.
11
+
12
+ # For any issues or feature requests related to this class, please let us know
13
+ # on github and we'll fix in our codegen framework. We'll not be able to accept
14
+ # pull request for this class.
15
+
16
+ class AdCampaignGoal < AdObject
17
+
18
+ field :engaged_audiences_audience_label_exclusions, { list: 'string' }
19
+ field :engaged_audiences_audience_label_inclusions, { list: 'string' }
20
+ field :engaged_audiences_exclusions, { list: 'string' }
21
+ field :engaged_audiences_inclusions, { list: 'string' }
22
+ field :existing_customers_audience_label_exclusions, { list: 'string' }
23
+ field :existing_customers_audience_label_inclusions, { list: 'string' }
24
+ field :existing_customers_exclusions, { list: 'string' }
25
+ field :existing_customers_inclusions, { list: 'string' }
26
+ field :is_ca_expansion_enabled, 'bool'
27
+ field :is_lookalike_inclusion_enabled, 'bool'
28
+ field :lookalike_inclusions, { list: 'string' }
29
+ field :type, 'int'
30
+ has_no_id
31
+ has_no_get
32
+ has_no_post
33
+ has_no_delete
34
+
35
+ end
36
+ end
@@ -17,6 +17,7 @@ module FacebookAds
17
17
 
18
18
  field :bodies, { list: 'object' }
19
19
  field :descriptions, { list: 'object' }
20
+ field :destinations, { list: 'object' }
20
21
  field :images, { list: 'object' }
21
22
  field :push_metadata_ids, { list: 'string' }
22
23
  field :related_media, 'object'
@@ -23,6 +23,7 @@ module FacebookAds
23
23
  field :template_data, 'AdCreativeLinkData'
24
24
  field :text_data, 'AdCreativeTextData'
25
25
  field :video_data, 'AdCreativeVideoData'
26
+ field :whats_app_business_phone_number, 'string'
26
27
  has_no_id
27
28
  has_no_get
28
29
  has_no_post
@@ -24,6 +24,7 @@ module FacebookAds
24
24
  field :enable_social_feedback_preservation, 'bool'
25
25
  field :featured_offering_spec, 'object'
26
26
  field :intent, 'object'
27
+ field :ncs_testimonial, 'object'
27
28
  field :pca_spec, 'object'
28
29
  field :product_media_metadata_spec, 'object'
29
30
  field :promotion_metadata_spec, { list: 'AdCreativePromotionMetadataSpec' }
@@ -224,6 +224,9 @@ module FacebookAds
224
224
  "17",
225
225
  "18",
226
226
  "19",
227
+ "20",
228
+ "21",
229
+ "22",
227
230
  ]
228
231
 
229
232
  TUNE_FOR_CATEGORY = [
@@ -249,8 +252,10 @@ module FacebookAds
249
252
 
250
253
 
251
254
  field :account_id, 'string'
255
+ field :ad_set_goal, 'AdCampaignGoal'
252
256
  field :adlabels, { list: 'AdLabel' }
253
257
  field :adset_schedule, { list: 'DayPart' }
258
+ field :anchor_event_attribution_window_days, 'int'
254
259
  field :asset_feed_id, 'string'
255
260
  field :attribution_count_type, 'string'
256
261
  field :attribution_spec, { list: 'AttributionSpec' }
@@ -293,6 +298,7 @@ module FacebookAds
293
298
  field :is_dynamic_creative, 'bool'
294
299
  field :is_incremental_attribution_enabled, 'bool'
295
300
  field :is_organic_ad_joint_optimized, 'bool'
301
+ field :is_sequenced_conversion_creation, 'bool'
296
302
  field :issues_info, { list: 'AdCampaignIssuesInfo' }
297
303
  field :learning_stage_info, 'AdCampaignLearningStageInfo'
298
304
  field :lifetime_budget, 'string'
@@ -345,6 +345,7 @@ module FacebookAds
345
345
  field :initial_heading, 'int'
346
346
  field :initial_pitch, 'int'
347
347
  field :instant_game_entry_point_data, 'string'
348
+ field :is_ai_generated, 'bool'
348
349
  field :is_boost_intended, 'bool'
349
350
  field :is_group_linking_post, 'bool'
350
351
  field :is_partnership_ad, 'bool'
@@ -22,6 +22,7 @@ module FacebookAds
22
22
  field :_1d_ev_all_conversions, 'string'
23
23
  field :_1d_ev_first_conversion, 'string'
24
24
  field :_1d_passback, 'string'
25
+ field :_1d_sequenced, 'string'
25
26
  field :_1d_view, 'string'
26
27
  field :_1d_view_all_conversions, 'string'
27
28
  field :_1d_view_first_conversion, 'string'
@@ -29,6 +30,7 @@ module FacebookAds
29
30
  field :_28d_click_all_conversions, 'string'
30
31
  field :_28d_click_first_conversion, 'string'
31
32
  field :_28d_passback, 'string'
33
+ field :_28d_sequenced, 'string'
32
34
  field :_28d_view, 'string'
33
35
  field :_28d_view_all_conversions, 'string'
34
36
  field :_28d_view_first_conversion, 'string'
@@ -36,6 +38,7 @@ module FacebookAds
36
38
  field :_7d_click_all_conversions, 'string'
37
39
  field :_7d_click_first_conversion, 'string'
38
40
  field :_7d_passback, 'string'
41
+ field :_7d_sequenced, 'string'
39
42
  field :_7d_view, 'string'
40
43
  field :_7d_view_all_conversions, 'string'
41
44
  field :_7d_view_first_conversion, 'string'
@@ -22,6 +22,7 @@ module FacebookAds
22
22
  field :_1d_ev_all_conversions, { list: 'int' }
23
23
  field :_1d_ev_first_conversion, { list: 'int' }
24
24
  field :_1d_passback, { list: 'int' }
25
+ field :_1d_sequenced, { list: 'int' }
25
26
  field :_1d_view, { list: 'int' }
26
27
  field :_1d_view_all_conversions, { list: 'int' }
27
28
  field :_1d_view_first_conversion, { list: 'int' }
@@ -29,6 +30,7 @@ module FacebookAds
29
30
  field :_28d_click_all_conversions, { list: 'int' }
30
31
  field :_28d_click_first_conversion, { list: 'int' }
31
32
  field :_28d_passback, { list: 'int' }
33
+ field :_28d_sequenced, { list: 'int' }
32
34
  field :_28d_view, { list: 'int' }
33
35
  field :_28d_view_all_conversions, { list: 'int' }
34
36
  field :_28d_view_first_conversion, { list: 'int' }
@@ -36,6 +38,7 @@ module FacebookAds
36
38
  field :_7d_click_all_conversions, { list: 'int' }
37
39
  field :_7d_click_first_conversion, { list: 'int' }
38
40
  field :_7d_passback, { list: 'int' }
41
+ field :_7d_sequenced, { list: 'int' }
39
42
  field :_7d_view, { list: 'int' }
40
43
  field :_7d_view_all_conversions, { list: 'int' }
41
44
  field :_7d_view_first_conversion, { list: 'int' }
@@ -17,17 +17,24 @@ module FacebookAds
17
17
  ACTION_ATTRIBUTION_WINDOWS = [
18
18
  "1d_click",
19
19
  "1d_ev",
20
+ "1d_sequenced",
20
21
  "1d_view",
21
22
  "28d_click",
23
+ "28d_sequenced",
22
24
  "28d_view",
23
25
  "28d_view_all_conversions",
24
26
  "28d_view_first_conversion",
25
27
  "7d_click",
28
+ "7d_sequenced",
26
29
  "7d_view",
27
30
  "7d_view_all_conversions",
28
31
  "7d_view_first_conversion",
32
+ "custom",
29
33
  "dda",
30
34
  "default",
35
+ "incrementality",
36
+ "incrementality_all_conversions",
37
+ "incrementality_first_conversion",
31
38
  "skan_click",
32
39
  "skan_click_second_postback",
33
40
  "skan_click_third_postback",
@@ -302,6 +309,8 @@ module FacebookAds
302
309
  field :creative_diversity_data, { list: 'object' }
303
310
  field :creative_diversity_label, 'string'
304
311
  field :creative_diversity_score, 'string'
312
+ field :creative_fatigue_summary, { list: 'object' }
313
+ field :creative_fatigued_ads, { list: 'object' }
305
314
  field :creative_media_type, 'string'
306
315
  field :ctr, 'string'
307
316
  field :date_start, 'string'
@@ -323,6 +332,7 @@ module FacebookAds
323
332
  field :inline_link_click_ctr, 'string'
324
333
  field :inline_link_clicks, 'string'
325
334
  field :inline_post_engagement, 'string'
335
+ field :instagram_profile_follow, 'string'
326
336
  field :instagram_profile_visits, 'string'
327
337
  field :instagram_upcoming_event_reminders_set, 'string'
328
338
  field :instant_experience_clicks_to_open, 'string'
@@ -352,10 +362,6 @@ module FacebookAds
352
362
  field :marketing_messages_sent, 'string'
353
363
  field :marketing_messages_spend, 'string'
354
364
  field :marketing_messages_spend_currency, 'string'
355
- field :marketing_messages_website_add_to_cart, 'string'
356
- field :marketing_messages_website_initiate_checkout, 'string'
357
- field :marketing_messages_website_purchase, 'string'
358
- field :marketing_messages_website_purchase_values, 'string'
359
365
  field :messages_delivered, 'string'
360
366
  field :messages_delivered_ctr, 'string'
361
367
  field :mobile_app_purchase_roas, { list: 'AdsActionStats' }
@@ -369,6 +375,8 @@ module FacebookAds
369
375
  field :outbound_clicks, { list: 'AdsActionStats' }
370
376
  field :outbound_clicks_ctr, { list: 'AdsActionStats' }
371
377
  field :place_page_name, 'string'
378
+ field :playable_average_game_length, 'string'
379
+ field :playable_game_start_rate, 'string'
372
380
  field :product_group_retailer_id, 'string'
373
381
  field :product_retailer_id, 'string'
374
382
  field :product_views, 'string'
@@ -382,7 +390,6 @@ module FacebookAds
382
390
  field :result_rate, { list: 'object' }
383
391
  field :result_values_performance_indicator, 'string'
384
392
  field :results, { list: 'object' }
385
- field :shop_clicks, 'string'
386
393
  field :shops_assisted_purchases, 'string'
387
394
  field :social_spend, 'string'
388
395
  field :spend, 'string'
@@ -16,6 +16,7 @@ module FacebookAds
16
16
  class AdsValueAdjustmentRuleCollection < AdObject
17
17
  ENTRY_POINT = [
18
18
  "ADVERTISING_SETTINGS",
19
+ "L2_AUDIENCE",
19
20
  "L2_CONVERSION_LOCATION",
20
21
  "L2_GLOBAL",
21
22
  "L2_NCA_GOAL",
@@ -115,6 +115,7 @@ module FacebookAds
115
115
  api.has_param :privacy, 'string'
116
116
  api.has_param :profile_id, 'int'
117
117
  api.has_param :provenance_info, 'hash'
118
+ api.has_param :provenance_metadata, 'hash'
118
119
  api.has_param :proxied_app_id, 'string'
119
120
  api.has_param :published, 'bool'
120
121
  api.has_param :qn, 'string'
@@ -258,6 +258,9 @@ module FacebookAds
258
258
  api.has_param :installer_package, 'string'
259
259
  api.has_param :is_circuit_breaker_active, 'bool'
260
260
  api.has_param :is_fb, 'bool'
261
+ api.has_param :is_redownload, 'bool'
262
+ api.has_param :last_new_install_time, 'int'
263
+ api.has_param :last_session_time, 'int'
261
264
  api.has_param :limited_data_use, 'bool'
262
265
  api.has_param :meta_install_referrer, 'string'
263
266
  api.has_param :migration_bundle, 'string'
@@ -15,6 +15,7 @@ module FacebookAds
15
15
 
16
16
  class AudioCopyright < AdObject
17
17
 
18
+ field :audio_asset, 'AudioAsset'
18
19
  field :creation_time, 'datetime'
19
20
  field :displayed_matches_count, 'int'
20
21
  field :id, 'string'
@@ -18,6 +18,7 @@ module FacebookAds
18
18
  field :all_kg_featured_artists, 'string'
19
19
  field :all_kg_main_artists, 'string'
20
20
  field :artist_profile_picture_url, 'string'
21
+ field :canonical_audio_asset, 'AudioAsset'
21
22
  field :id, 'string'
22
23
  field :isrc, 'string'
23
24
  field :publishing_rights_data, 'object'
@@ -32,13 +32,13 @@ module FacebookAds
32
32
  field :match_state, 'string'
33
33
  field :matched_overlap_percentage, 'double'
34
34
  field :matched_owner_match_duration_in_sec, 'double'
35
- field :matched_reference_owner, 'Profile'
35
+ field :matched_reference_owner_v2, 'object'
36
36
  field :modification_history, { list: 'object' }
37
37
  field :num_matches_on_matched_side, 'int'
38
38
  field :num_matches_on_ref_side, 'int'
39
39
  field :ref_owner_match_duration_in_sec, 'double'
40
40
  field :reference_overlap_percentage, 'double'
41
- field :reference_owner, 'Profile'
41
+ field :reference_owner_v2, 'object'
42
42
  field :rejection_form_data_entries_with_translations, { list: 'object' }
43
43
  field :resolution_details, 'string'
44
44
  field :resolution_reason, 'string'
@@ -16,6 +16,9 @@ module FacebookAds
16
16
  class BrandSafetyCampaignConfig < AdObject
17
17
 
18
18
  field :comment_moderation_filter, 'string'
19
+ field :fb_comment_moderation_filter, 'string'
20
+ field :ig_comment_moderation_filter, 'string'
21
+ field :threads_comment_moderation_filter, 'string'
19
22
  has_no_id
20
23
  has_no_get
21
24
  has_no_post