facebookbusiness 0.8.0.3 → 0.9.0.3

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 (88) hide show
  1. checksums.yaml +4 -4
  2. data/lib/facebook_ads/ad_objects/ad.rb +3 -0
  3. data/lib/facebook_ads/ad_objects/ad_account.rb +22 -23
  4. data/lib/facebook_ads/ad_objects/ad_account_ad_volume.rb +1 -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 +6 -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 +7 -0
  14. data/lib/facebook_ads/ad_objects/ad_creative_link_data_call_to_action.rb +5 -0
  15. data/lib/facebook_ads/ad_objects/{offline_terms_of_service.rb → ad_creative_omnichannel_link_spec.rb} +5 -4
  16. data/lib/facebook_ads/ad_objects/ad_preview.rb +4 -0
  17. data/lib/facebook_ads/ad_objects/ad_report_run.rb +1 -0
  18. data/lib/facebook_ads/ad_objects/ad_rule_execution_spec.rb +4 -0
  19. data/lib/facebook_ads/ad_objects/ad_set.rb +5 -1
  20. data/lib/facebook_ads/ad_objects/ad_study.rb +0 -12
  21. data/lib/facebook_ads/ad_objects/ad_study_objective.rb +1 -4
  22. data/lib/facebook_ads/ad_objects/ad_video.rb +7 -11
  23. data/lib/facebook_ads/ad_objects/adgroup_activity.rb +2 -0
  24. data/lib/facebook_ads/ad_objects/adgroup_placement_specific_review_feedback.rb +1 -0
  25. data/lib/facebook_ads/ad_objects/adoptable_pet.rb +7 -0
  26. data/lib/facebook_ads/ad_objects/ads_action_stats.rb +2 -0
  27. data/lib/facebook_ads/ad_objects/ads_insights.rb +2 -0
  28. data/lib/facebook_ads/ad_objects/ads_pixel.rb +5 -0
  29. data/lib/facebook_ads/ad_objects/album.rb +0 -10
  30. data/lib/facebook_ads/ad_objects/application.rb +2 -10
  31. data/lib/facebook_ads/ad_objects/automotive_model.rb +25 -0
  32. data/lib/facebook_ads/ad_objects/business.rb +29 -3
  33. data/lib/facebook_ads/ad_objects/business_asset_group.rb +1 -1
  34. data/lib/facebook_ads/ad_objects/business_role_request.rb +4 -4
  35. data/lib/facebook_ads/ad_objects/business_unit.rb +0 -1
  36. data/lib/facebook_ads/ad_objects/business_user.rb +4 -4
  37. data/lib/facebook_ads/ad_objects/campaign.rb +10 -1
  38. data/lib/facebook_ads/ad_objects/catalog_item_channels_to_integrity_status.rb +38 -0
  39. data/lib/facebook_ads/ad_objects/catalog_sub_vertical_list.rb +3 -0
  40. data/lib/facebook_ads/ad_objects/comment.rb +1 -0
  41. data/lib/facebook_ads/ad_objects/commerce_merchant_settings.rb +3 -24
  42. data/lib/facebook_ads/ad_objects/commerce_merchant_settings_setup_status.rb +1 -0
  43. data/lib/facebook_ads/ad_objects/{ad_creative_instagram_branded_content.rb → contextual_bundling_spec.rb} +2 -1
  44. data/lib/facebook_ads/ad_objects/custom_audience.rb +8 -0
  45. data/lib/facebook_ads/ad_objects/extended_credit.rb +0 -1
  46. data/lib/facebook_ads/ad_objects/group.rb +26 -22
  47. data/lib/facebook_ads/ad_objects/hotel_room.rb +1 -0
  48. data/lib/facebook_ads/ad_objects/ig_media.rb +0 -1
  49. data/lib/facebook_ads/ad_objects/ig_user.rb +6 -1
  50. data/lib/facebook_ads/ad_objects/image_copyright.rb +302 -0
  51. data/lib/facebook_ads/ad_objects/link.rb +0 -4
  52. data/lib/facebook_ads/ad_objects/live_video.rb +12 -12
  53. data/lib/facebook_ads/ad_objects/messenger_profile.rb +1 -0
  54. data/lib/facebook_ads/ad_objects/page.rb +43 -15
  55. data/lib/facebook_ads/ad_objects/page_call_to_action.rb +3 -0
  56. data/lib/facebook_ads/ad_objects/{friend_list.rb → page_commerce_eligibility.rb} +5 -5
  57. data/lib/facebook_ads/ad_objects/page_post.rb +0 -10
  58. data/lib/facebook_ads/ad_objects/{event_tour.rb → payment_engine_payment.rb} +35 -18
  59. data/lib/facebook_ads/ad_objects/payment_subscription.rb +3 -3
  60. data/lib/facebook_ads/ad_objects/photo.rb +0 -10
  61. data/lib/facebook_ads/ad_objects/playable_content.rb +1 -0
  62. data/lib/facebook_ads/ad_objects/post.rb +46 -29
  63. data/lib/facebook_ads/ad_objects/product_catalog.rb +18 -9
  64. data/lib/facebook_ads/ad_objects/product_feed.rb +3 -1
  65. data/lib/facebook_ads/ad_objects/product_feed_schedule.rb +2 -0
  66. data/lib/facebook_ads/ad_objects/product_item.rb +8 -1
  67. data/lib/facebook_ads/ad_objects/{user_payment_methods_info.rb → product_item_ar_data.rb} +23 -8
  68. data/lib/facebook_ads/ad_objects/referral.rb +2 -0
  69. data/lib/facebook_ads/ad_objects/server_side/action_source.rb +48 -0
  70. data/lib/facebook_ads/ad_objects/server_side/content.rb +23 -4
  71. data/lib/facebook_ads/ad_objects/server_side/event.rb +32 -6
  72. data/lib/facebook_ads/ad_objects/server_side/event_request.rb +1 -1
  73. data/lib/facebook_ads/ad_objects/server_side/util.rb +14 -1
  74. data/lib/facebook_ads/ad_objects/system_user.rb +4 -4
  75. data/lib/facebook_ads/ad_objects/targeting.rb +0 -2
  76. data/lib/facebook_ads/ad_objects/third_party_measurement_report_dataset.rb +0 -1
  77. data/lib/facebook_ads/ad_objects/unified_thread.rb +0 -1
  78. data/lib/facebook_ads/ad_objects/user.rb +31 -18
  79. data/lib/facebook_ads/ad_objects/vehicle.rb +1 -0
  80. data/lib/facebook_ads/ad_objects/whats_app_business_account.rb +3 -0
  81. data/lib/facebook_ads/ad_objects/{read_only_analytics_user_property_config.rb → whats_app_business_profile.rb} +2 -3
  82. data/lib/facebook_ads/edge.rb +2 -1
  83. data/lib/facebook_ads/session.rb +1 -1
  84. data/lib/facebook_ads/version.rb +2 -2
  85. metadata +12 -12
  86. data/lib/facebook_ads/ad_objects/ad_account_creation_request.rb +0 -71
  87. data/lib/facebook_ads/ad_objects/ad_account_roas.rb +0 -65
  88. data/lib/facebook_ads/ad_objects/user_payment_modules_options.rb +0 -40
@@ -67,6 +67,7 @@ module FacebookAds
67
67
  "PLAY_GAME",
68
68
  "PURCHASE_GIFT_CARDS",
69
69
  "RECORD_NOW",
70
+ "REFER_FRIENDS",
70
71
  "REQUEST_TIME",
71
72
  "SAY_THANKS",
72
73
  "SEE_MORE",
@@ -76,11 +77,15 @@ module FacebookAds
76
77
  "SHOP_NOW",
77
78
  "SIGN_UP",
78
79
  "SOTTO_SUBSCRIBE",
80
+ "START_ORDER",
79
81
  "SUBSCRIBE",
82
+ "SWIPE_UP_PRODUCT",
83
+ "SWIPE_UP_SHOP",
80
84
  "UPDATE_APP",
81
85
  "USE_APP",
82
86
  "USE_MOBILE_APP",
83
87
  "VIDEO_ANNOTATION",
88
+ "VIDEO_CALL",
84
89
  "VISIT_PAGES_FEED",
85
90
  "WATCH_MORE",
86
91
  "WATCH_VIDEO",
@@ -25,11 +25,12 @@ module FacebookAds
25
25
  # on github and we'll fix in our codegen framework. We'll not be able to accept
26
26
  # pull request for this class.
27
27
 
28
- class OfflineTermsOfService < AdObject
28
+ class AdCreativeOmnichannelLinkSpec < AdObject
29
29
 
30
- field :accept_time, 'int'
31
- field :id, 'string'
32
- field :signed_by_user, 'User'
30
+ field :app, 'object'
31
+ field :web, 'object'
32
+ has_no_id
33
+ has_no_get
33
34
  has_no_post
34
35
  has_no_delete
35
36
 
@@ -35,10 +35,13 @@ module FacebookAds
35
35
  "FACEBOOK_STORY_MOBILE",
36
36
  "INSTAGRAM_EXPLORE_CONTEXTUAL",
37
37
  "INSTAGRAM_EXPLORE_IMMERSIVE",
38
+ "INSTAGRAM_REELS",
38
39
  "INSTAGRAM_STANDARD",
39
40
  "INSTAGRAM_STORY",
40
41
  "INSTANT_ARTICLE_RECIRCULATION_AD",
41
42
  "INSTANT_ARTICLE_STANDARD",
43
+ "INSTREAM_BANNER_DESKTOP",
44
+ "INSTREAM_BANNER_MOBILE",
42
45
  "INSTREAM_VIDEO_DESKTOP",
43
46
  "INSTREAM_VIDEO_IMAGE",
44
47
  "INSTREAM_VIDEO_MOBILE",
@@ -57,6 +60,7 @@ module FacebookAds
57
60
  "RIGHT_COLUMN_STANDARD",
58
61
  "SUGGESTED_VIDEO_DESKTOP",
59
62
  "SUGGESTED_VIDEO_MOBILE",
63
+ "WATCH_FEED_HOME",
60
64
  "WATCH_FEED_MOBILE",
61
65
  ]
62
66
 
@@ -60,6 +60,7 @@ module FacebookAds
60
60
  field :time_range, 'object'
61
61
  field :time_ranges, { list: 'object' }
62
62
  field :use_account_attribution_setting, 'bool'
63
+ field :use_unified_attribution_setting, 'bool'
63
64
  has_no_post
64
65
  has_no_delete
65
66
 
@@ -27,15 +27,19 @@ module FacebookAds
27
27
 
28
28
  class AdRuleExecutionSpec < AdObject
29
29
  EXECUTION_TYPE = [
30
+ "ADD_INTEREST_RELAXATION",
31
+ "ADD_QUESTIONNAIRE_INTERESTS",
30
32
  "CHANGE_BID",
31
33
  "CHANGE_BUDGET",
32
34
  "CHANGE_CAMPAIGN_BUDGET",
35
+ "INCREASE_RADIUS",
33
36
  "NOTIFICATION",
34
37
  "PAUSE",
35
38
  "PING_ENDPOINT",
36
39
  "REBALANCE_BUDGET",
37
40
  "ROTATE",
38
41
  "UNPAUSE",
42
+ "UPDATE_CREATIVE",
39
43
  ]
40
44
 
41
45
 
@@ -30,7 +30,6 @@ module FacebookAds
30
30
  "COST_CAP",
31
31
  "LOWEST_COST_WITHOUT_CAP",
32
32
  "LOWEST_COST_WITH_BID_CAP",
33
- "TARGET_COST",
34
33
  ]
35
34
 
36
35
  BILLING_EVENT = [
@@ -38,10 +37,12 @@ module FacebookAds
38
37
  "CLICKS",
39
38
  "IMPRESSIONS",
40
39
  "LINK_CLICKS",
40
+ "LISTING_INTERACTION",
41
41
  "NONE",
42
42
  "OFFER_CLAIMS",
43
43
  "PAGE_LIKES",
44
44
  "POST_ENGAGEMENT",
45
+ "PURCHASE",
45
46
  "THRUPLAY",
46
47
  ]
47
48
 
@@ -81,6 +82,7 @@ module FacebookAds
81
82
  "PAGE_ENGAGEMENT",
82
83
  "PAGE_LIKES",
83
84
  "POST_ENGAGEMENT",
85
+ "QUALITY_CALL",
84
86
  "QUALITY_LEAD",
85
87
  "REACH",
86
88
  "REPLIES",
@@ -355,6 +357,7 @@ module FacebookAds
355
357
  api.has_param :time_range, 'object'
356
358
  api.has_param :time_ranges, { list: 'object' }
357
359
  api.has_param :use_account_attribution_setting, 'bool'
360
+ api.has_param :use_unified_attribution_setting, 'bool'
358
361
  end
359
362
  edge.post 'AdReportRun' do |api|
360
363
  api.has_param :action_attribution_windows, { list: { enum: -> { AdsInsights::ACTION_ATTRIBUTION_WINDOWS }} }
@@ -377,6 +380,7 @@ module FacebookAds
377
380
  api.has_param :time_range, 'object'
378
381
  api.has_param :time_ranges, { list: 'object' }
379
382
  api.has_param :use_account_attribution_setting, 'bool'
383
+ api.has_param :use_unified_attribution_setting, 'bool'
380
384
  end
381
385
  end
382
386
 
@@ -62,18 +62,6 @@ module FacebookAds
62
62
 
63
63
  has_edge :objectives do |edge|
64
64
  edge.get 'AdStudyObjective'
65
- edge.post 'AdStudyObjective' do |api|
66
- api.has_param :adspixels, { list: 'object' }
67
- api.has_param :applications, { list: 'object' }
68
- api.has_param :customconversions, { list: 'object' }
69
- api.has_param :is_primary, 'bool'
70
- api.has_param :name, 'string'
71
- api.has_param :offline_conversion_data_sets, { list: 'object' }
72
- api.has_param :offsitepixels, { list: 'object' }
73
- api.has_param :product_catalogs, { list: 'object' }
74
- api.has_param :product_sets, { list: 'object' }
75
- api.has_param :type, { enum: -> { AdStudyObjective::TYPE }}
76
- end
77
65
  end
78
66
 
79
67
  end
@@ -45,6 +45,7 @@ module FacebookAds
45
45
  field :name, 'string'
46
46
  field :results, { list: 'string' }
47
47
  field :type, 'string'
48
+ has_no_delete
48
49
 
49
50
  has_edge :ad_place_page_sets do |edge|
50
51
  edge.get 'AdPlacePageSet'
@@ -66,10 +67,6 @@ module FacebookAds
66
67
  edge.get 'OfflineConversionDataSet'
67
68
  end
68
69
 
69
- has_edge :offsitepixels do |edge|
70
- edge.get 'OffsitePixel'
71
- end
72
-
73
70
  has_edge :partnerstudies do |edge|
74
71
  edge.get 'PartnerStudy'
75
72
  end
@@ -27,6 +27,7 @@ module FacebookAds
27
27
 
28
28
  class AdVideo < AdObject
29
29
  CONTAINER_TYPE = [
30
+ "ACO_AUTOEXTRACTED_VIDEO",
30
31
  "ACO_VIDEO_VARIATION",
31
32
  "AD_BREAK_PREVIEW",
32
33
  "AD_DERIVATIVE",
@@ -43,6 +44,7 @@ module FacebookAds
43
44
  "CANDIDATE_VIDEOS",
44
45
  "CANVAS",
45
46
  "CFC_VIDEO",
47
+ "CMS_MEDIA_MANAGER",
46
48
  "CONTAINED_POST_ATTACHMENT",
47
49
  "CONTAINED_POST_AUDIO_BROADCAST",
48
50
  "CONTAINED_POST_BROADCAST",
@@ -63,6 +65,8 @@ module FacebookAds
63
65
  "EVENT_TOUR",
64
66
  "FACECAST_DVR",
65
67
  "FB_SHORTS",
68
+ "FB_SHORTS_GROUP_POST",
69
+ "FB_SHORTS_POST",
66
70
  "FUNDRAISER_COVER_VIDEO",
67
71
  "GAME_CLIP",
68
72
  "GAMING_UPDATE_VIDEO",
@@ -77,6 +81,7 @@ module FacebookAds
77
81
  "HEURISTIC_CLUSTER_VIDEO",
78
82
  "HEURISTIC_PREVIEW",
79
83
  "HIGHLIGHT_CLIP_VIDEO",
84
+ "IG_REELS_XPV",
80
85
  "IG_STORIES_READER",
81
86
  "INSPIRATION_VIDEO",
82
87
  "INSTAGRAM_VIDEO_COPY",
@@ -129,6 +134,7 @@ module FacebookAds
129
134
  "STORYLINE_WITH_EXTERNAL_MUSIC",
130
135
  "STORY_ARCHIVE_VIDEO",
131
136
  "STORY_CARD_TEMPLATE",
137
+ "STREAM_HIGHLIGHTS_VIDEO",
132
138
  "TAROT_DIGEST",
133
139
  "TEMP_MULTIMEDIA_POST",
134
140
  "UNLISTED",
@@ -253,7 +259,6 @@ module FacebookAds
253
259
  field :animated_effect_id, 'int'
254
260
  field :application_id, 'string'
255
261
  field :asked_fun_fact_prompt_id, 'int'
256
- field :attribution_app_id, 'string'
257
262
  field :audio_story_wave_animation_handle, 'string'
258
263
  field :chunk_session_id, 'string'
259
264
  field :composer_entry_picker, 'string'
@@ -301,6 +306,7 @@ module FacebookAds
301
306
  field :replace_video_id, 'string'
302
307
  field :sales_promo_id, 'int'
303
308
  field :slideshow_spec, 'hash'
309
+ field :source_instagram_media_id, 'string'
304
310
  field :start_offset, 'int'
305
311
  field :swap_mode, { enum: -> { SWAP_MODE }}
306
312
  field :text_format_metadata, 'string'
@@ -381,16 +387,6 @@ module FacebookAds
381
387
  end
382
388
  end
383
389
 
384
- has_edge :reactions do |edge|
385
- edge.get 'Profile' do |api|
386
- api.has_param :type, { enum: -> { Profile::TYPE }}
387
- end
388
- end
389
-
390
- has_edge :sharedposts do |edge|
391
- edge.get 'Post'
392
- end
393
-
394
390
  has_edge :sponsor_tags do |edge|
395
391
  edge.get 'Page'
396
392
  end
@@ -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'
@@ -36,17 +36,24 @@ module FacebookAds
36
36
  field :availability, 'string'
37
37
  field :breed, 'string'
38
38
  field :category_specific_fields, 'CatalogSubVerticalList'
39
+ field :coat_length, 'string'
40
+ field :color, 'string'
39
41
  field :currency, 'string'
40
42
  field :description, 'string'
43
+ field :features, { list: 'string' }
41
44
  field :gender, 'string'
42
45
  field :id, 'string'
43
46
  field :images, { list: 'string' }
44
47
  field :name, 'string'
45
48
  field :price, 'string'
46
49
  field :sanitized_images, { list: 'string' }
50
+ field :secondary_color, 'string'
51
+ field :shelter_email, 'string'
47
52
  field :shelter_name, 'string'
48
53
  field :shelter_page_id, 'Page'
54
+ field :shelter_phone, 'string'
49
55
  field :size, 'string'
56
+ field :tertiary_color, 'string'
50
57
  field :url, 'string'
51
58
  has_no_post
52
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 = [
@@ -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'
@@ -36,6 +36,7 @@ module FacebookAds
36
36
  "ct",
37
37
  "db",
38
38
  "em",
39
+ "external_id",
39
40
  "fn",
40
41
  "ge",
41
42
  "ln",
@@ -109,6 +110,10 @@ module FacebookAds
109
110
  end
110
111
  end
111
112
 
113
+ has_edge :shadowtraffichelper do |edge|
114
+ edge.post
115
+ end
116
+
112
117
  has_edge :shared_accounts do |edge|
113
118
  edge.delete do |api|
114
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'
@@ -470,12 +472,6 @@ module FacebookAds
470
472
  end
471
473
  end
472
474
 
473
- has_edge :live_videos do |edge|
474
- edge.get 'LiveVideo' do |api|
475
- api.has_param :broadcast_status, { enum: -> { LiveVideo::BROADCAST_STATUS }}
476
- end
477
- end
478
-
479
475
  has_edge :mmp_auditing do |edge|
480
476
  edge.post do |api|
481
477
  api.has_param :advertiser_id, 'string'
@@ -512,10 +508,6 @@ module FacebookAds
512
508
  end
513
509
  end
514
510
 
515
- has_edge :ozone_release do |edge|
516
- edge.get
517
- end
518
-
519
511
  has_edge :page_activities do |edge|
520
512
  edge.post 'Application' do |api|
521
513
  api.has_param :advertiser_tracking_enabled, 'bool'
@@ -26,6 +26,31 @@ 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'
@@ -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
 
@@ -86,7 +87,6 @@ module FacebookAds
86
87
  "PROFILE_PLUS_ADVERTISE",
87
88
  "PROFILE_PLUS_ANALYZE",
88
89
  "PROFILE_PLUS_CREATE_CONTENT",
89
- "PROFILE_PLUS_LIVE_STREAM_MODERATION",
90
90
  "PROFILE_PLUS_MANAGE",
91
91
  "PROFILE_PLUS_MESSAGING",
92
92
  "PROFILE_PLUS_MODERATE",
@@ -125,6 +125,12 @@ module FacebookAds
125
125
  end
126
126
  end
127
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
+
128
134
  has_edge :ad_studies do |edge|
129
135
  edge.get 'AdStudy'
130
136
  edge.post 'AdStudy' do |api|
@@ -376,6 +382,20 @@ module FacebookAds
376
382
  end
377
383
  end
378
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
+
379
399
  has_edge :initiated_audience_sharing_requests do |edge|
380
400
  edge.get 'BusinessAssetSharingAgreement' do |api|
381
401
  api.has_param :recipient_id, 'string'
@@ -397,6 +417,10 @@ module FacebookAds
397
417
  edge.get 'InstagramUser'
398
418
  end
399
419
 
420
+ has_edge :instagram_business_accounts do |edge|
421
+ edge.get 'IgUser'
422
+ end
423
+
400
424
  has_edge :managed_businesses do |edge|
401
425
  edge.delete do |api|
402
426
  api.has_param :existing_client_business_id, 'string'
@@ -489,18 +513,20 @@ module FacebookAds
489
513
  edge.post 'ProductCatalog' do |api|
490
514
  api.has_param :catalog_segment_filter, 'object'
491
515
  api.has_param :catalog_segment_product_set_id, 'string'
492
- api.has_param :commerce_merchant_settings, 'object'
493
516
  api.has_param :da_display_settings, 'object'
494
517
  api.has_param :destination_catalog_settings, 'hash'
495
518
  api.has_param :flight_catalog_settings, 'hash'
496
519
  api.has_param :name, 'string'
497
- api.has_param :onsite_commerce_merchant, 'object'
498
520
  api.has_param :parent_catalog_id, 'string'
499
521
  api.has_param :store_catalog_settings, 'hash'
500
522
  api.has_param :vertical, { enum: -> { ProductCatalog::VERTICAL }}
501
523
  end
502
524
  end
503
525
 
526
+ has_edge :owned_whatsapp_business_accounts do |edge|
527
+ edge.get 'WhatsAppBusinessAccount'
528
+ end
529
+
504
530
  has_edge :pages do |edge|
505
531
  edge.delete do |api|
506
532
  api.has_param :page_id, 'int'