facebookbusiness 0.8.0.3 → 0.9.0.3

Sign up to get free protection for your applications and to get access to all the features.
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'