facebookbusiness 16.0.2 → 17.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/facebook_ads/ad_objects/ad.rb +7 -0
- data/lib/facebook_ads/ad_objects/ad_account.rb +35 -4
- data/lib/facebook_ads/ad_objects/ad_account_ad_volume.rb +22 -0
- data/lib/facebook_ads/ad_objects/{instant_article_insights_query_result.rb → ad_account_business_constraints.rb} +2 -26
- data/lib/facebook_ads/ad_objects/ad_account_delivery_estimate.rb +2 -1
- data/lib/facebook_ads/ad_objects/ad_account_matched_search_applications_edge_data.rb +2 -0
- data/lib/facebook_ads/ad_objects/ad_account_targeting_unified.rb +259 -0
- data/lib/facebook_ads/ad_objects/ad_asset_feed_spec.rb +3 -0
- data/lib/facebook_ads/ad_objects/ad_campaign_delivery_estimate.rb +2 -1
- data/lib/facebook_ads/ad_objects/ad_campaign_delivery_stats_unsupported_reasons.rb +1 -1
- data/lib/facebook_ads/ad_objects/ad_creative.rb +6 -0
- data/lib/facebook_ads/ad_objects/ad_creative_branded_content_ads.rb +41 -0
- data/lib/facebook_ads/ad_objects/ad_creative_facebook_branded_content.rb +39 -0
- data/lib/facebook_ads/ad_objects/ad_creative_insights.rb +1 -1
- data/lib/facebook_ads/ad_objects/{commerce_merchant_tos_acceptance.rb → ad_creative_instagram_branded_content.rb} +4 -3
- data/lib/facebook_ads/ad_objects/ad_creative_link_data_call_to_action.rb +2 -0
- data/lib/facebook_ads/ad_objects/ad_creative_link_data_template_video_spec.rb +1 -1
- data/lib/facebook_ads/ad_objects/ad_preview.rb +6 -1
- data/lib/facebook_ads/ad_objects/ad_promoted_object.rb +2 -0
- data/lib/facebook_ads/ad_objects/ad_rule.rb +4 -0
- data/lib/facebook_ads/ad_objects/ad_set.rb +4 -2
- data/lib/facebook_ads/ad_objects/ad_study_objective.rb +8 -0
- data/lib/facebook_ads/ad_objects/ad_video.rb +8 -0
- data/lib/facebook_ads/ad_objects/ads_insights.rb +8 -2
- data/lib/facebook_ads/ad_objects/ads_optimal_delivery_growth_opportunity.rb +1 -1
- data/lib/facebook_ads/ad_objects/ads_pixel.rb +4 -0
- data/lib/facebook_ads/ad_objects/application.rb +7 -1
- data/lib/facebook_ads/ad_objects/brand_request.rb +55 -0
- data/lib/facebook_ads/ad_objects/business.rb +25 -0
- data/lib/facebook_ads/ad_objects/campaign.rb +0 -3
- data/lib/facebook_ads/ad_objects/catalog_item_appeal_status.rb +9 -1
- data/lib/facebook_ads/ad_objects/commerce_merchant_settings.rb +2 -2
- data/lib/facebook_ads/ad_objects/cpas_business_setup_config.rb +2 -2
- data/lib/facebook_ads/ad_objects/cpas_merchant_config.rb +2 -2
- data/lib/facebook_ads/ad_objects/custom_audience.rb +3 -0
- data/lib/facebook_ads/ad_objects/custom_audience_data_source.rb +2 -0
- data/lib/facebook_ads/ad_objects/{ad_account_custom_audience.rb → custom_audience_group.rb} +1 -1
- data/lib/facebook_ads/ad_objects/extended_credit_invoice_group.rb +0 -1
- data/lib/facebook_ads/ad_objects/group.rb +0 -7
- data/lib/facebook_ads/ad_objects/ig_user.rb +1 -0
- data/lib/facebook_ads/ad_objects/instant_articles_stats.rb +3 -3
- data/lib/facebook_ads/ad_objects/job_opening.rb +91 -0
- data/lib/facebook_ads/ad_objects/lead.rb +1 -0
- data/lib/facebook_ads/ad_objects/leadgen_form.rb +1 -1
- data/lib/facebook_ads/ad_objects/offline_conversion_data_set.rb +0 -11
- data/lib/facebook_ads/ad_objects/open_bridge_configuration.rb +39 -0
- data/lib/facebook_ads/ad_objects/page.rb +24 -42
- data/lib/facebook_ads/ad_objects/page_post_experiment.rb +1 -1
- data/lib/facebook_ads/ad_objects/product_catalog.rb +3 -22
- data/lib/facebook_ads/ad_objects/product_catalog_category.rb +1 -1
- data/lib/facebook_ads/ad_objects/product_feed_rule.rb +1 -1
- data/lib/facebook_ads/ad_objects/product_feed_rule_suggestion.rb +1 -1
- data/lib/facebook_ads/ad_objects/product_feed_schedule.rb +1 -11
- data/lib/facebook_ads/ad_objects/product_item.rb +10 -5
- data/lib/facebook_ads/ad_objects/reach_frequency_estimates_placement_breakdown.rb +3 -0
- data/lib/facebook_ads/ad_objects/reach_frequency_prediction.rb +4 -4
- data/lib/facebook_ads/ad_objects/saved_audience.rb +0 -1
- data/lib/facebook_ads/ad_objects/server_side/event.rb +23 -3
- data/lib/facebook_ads/ad_objects/split_test_winner.rb +1 -1
- data/lib/facebook_ads/ad_objects/targeting_geo_location_electoral_district.rb +1 -0
- data/lib/facebook_ads/ad_objects/unified_thread.rb +1 -0
- data/lib/facebook_ads/ad_objects/url.rb +0 -2
- data/lib/facebook_ads/ad_objects/user.rb +3 -2
- data/lib/facebook_ads/ad_objects/vehicle_offer.rb +8 -0
- data/lib/facebook_ads/ad_objects/whats_app_business_account.rb +18 -0
- data/lib/facebook_ads/ad_objects/{instant_article.rb → whats_app_business_pre_verified_phone_number.rb} +21 -16
- data/lib/facebook_ads/field_types/datetime.rb +1 -1
- data/lib/facebook_ads/helpers/shortcuts.rb +1 -1
- data/lib/facebook_ads/version.rb +2 -2
- metadata +11 -7
- data/lib/facebook_ads/ad_objects/jobs_job.rb +0 -85
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ea0e8d070321c91fb8b1fec0c476fbecd5fc1da115d3a2d319ce41477d1fac09
|
4
|
+
data.tar.gz: aeabd1ac2204722d7b085770d4cbd9c344cb90f043b52484d3d2f8a08a903294
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c6ab2202da52dc9005c470250691cf371b474e79323c2020cf80baae31a02de88802d99bf2cba5e12d87732a6af2074fb80abf234f48c64ad1535e6ff0ff126e
|
7
|
+
data.tar.gz: 0d23d40e35c05226cf2d907e5d5aa123af0345a7f521df3eae20d7029eb412f265cbd03c75da55d42f407034cd10d2833b586c58bee2ef29fcd60e0496efd87b
|
@@ -92,6 +92,11 @@ module FacebookAds
|
|
92
92
|
"validate_only",
|
93
93
|
]
|
94
94
|
|
95
|
+
META_REWARD_ADGROUP_STATUS = [
|
96
|
+
"ACTIVE",
|
97
|
+
"INACTIVE",
|
98
|
+
]
|
99
|
+
|
95
100
|
OPERATOR = [
|
96
101
|
"ALL",
|
97
102
|
"ANY",
|
@@ -127,6 +132,7 @@ module FacebookAds
|
|
127
132
|
field :id, 'string'
|
128
133
|
field :issues_info, { list: 'AdgroupIssuesInfo' }
|
129
134
|
field :last_updated_by_app_id, 'string'
|
135
|
+
field :meta_reward_adgroup_status, 'string'
|
130
136
|
field :name, 'string'
|
131
137
|
field :preview_shareable_link, 'string'
|
132
138
|
field :priority, 'int'
|
@@ -232,6 +238,7 @@ module FacebookAds
|
|
232
238
|
has_edge :previews do |edge|
|
233
239
|
edge.get 'AdPreview' do |api|
|
234
240
|
api.has_param :ad_format, { enum: -> { AdPreview::AD_FORMAT }}
|
241
|
+
api.has_param :creative_feature, { enum: -> { AdPreview::CREATIVE_FEATURE }}
|
235
242
|
api.has_param :dynamic_asset_label, 'string'
|
236
243
|
api.has_param :dynamic_creative_spec, 'object'
|
237
244
|
api.has_param :dynamic_customization, 'object'
|
@@ -122,6 +122,7 @@ module FacebookAds
|
|
122
122
|
SUBTYPE = [
|
123
123
|
"APP",
|
124
124
|
"BAG_OF_ACCOUNTS",
|
125
|
+
"BIDDING",
|
125
126
|
"CLAIM",
|
126
127
|
"CUSTOM",
|
127
128
|
"ENGAGEMENT",
|
@@ -131,6 +132,7 @@ module FacebookAds
|
|
131
132
|
"MEASUREMENT",
|
132
133
|
"OFFLINE_CONVERSION",
|
133
134
|
"PARTNER",
|
135
|
+
"PRIMARY",
|
134
136
|
"REGULATED_CATEGORIES_AUDIENCE",
|
135
137
|
"STUDY_RULE_AUDIENCE",
|
136
138
|
"VIDEO",
|
@@ -163,7 +165,7 @@ module FacebookAds
|
|
163
165
|
field :capabilities, { list: 'string' }
|
164
166
|
field :created_time, 'datetime'
|
165
167
|
field :currency, 'string'
|
166
|
-
field :custom_audience_info, '
|
168
|
+
field :custom_audience_info, 'CustomAudienceGroup'
|
167
169
|
field :disable_reason, 'int'
|
168
170
|
field :end_advertiser, 'string'
|
169
171
|
field :end_advertiser_name, 'string'
|
@@ -173,7 +175,6 @@ module FacebookAds
|
|
173
175
|
field :fb_entity, 'int'
|
174
176
|
field :funding_source, 'string'
|
175
177
|
field :funding_source_details, 'FundingSourceDetails'
|
176
|
-
field :has_advertiser_opted_in_odax, 'bool'
|
177
178
|
field :has_migrated_permissions, 'bool'
|
178
179
|
field :has_page_authorized_adaccount, 'bool'
|
179
180
|
field :id, 'string'
|
@@ -212,6 +213,13 @@ module FacebookAds
|
|
212
213
|
field :viewable_business, 'Business'
|
213
214
|
has_no_delete
|
214
215
|
|
216
|
+
has_edge :account_controls do |edge|
|
217
|
+
edge.get 'AdAccountBusinessConstraints'
|
218
|
+
edge.post 'AdAccountBusinessConstraints' do |api|
|
219
|
+
api.has_param :audience_controls, 'object'
|
220
|
+
end
|
221
|
+
end
|
222
|
+
|
215
223
|
has_edge :activities do |edge|
|
216
224
|
edge.get 'AdActivity' do |api|
|
217
225
|
api.has_param :add_children, 'bool'
|
@@ -270,6 +278,7 @@ module FacebookAds
|
|
270
278
|
api.has_param :asset_feed_spec, 'object'
|
271
279
|
api.has_param :authorization_category, { enum: -> { AdCreative::AUTHORIZATION_CATEGORY }}
|
272
280
|
api.has_param :body, 'string'
|
281
|
+
api.has_param :branded_content, 'hash'
|
273
282
|
api.has_param :branded_content_sponsor_page_id, 'string'
|
274
283
|
api.has_param :bundle_folder_id, 'string'
|
275
284
|
api.has_param :call_to_action, 'object'
|
@@ -279,11 +288,13 @@ module FacebookAds
|
|
279
288
|
api.has_param :destination_set_id, 'string'
|
280
289
|
api.has_param :dynamic_ad_voice, { enum: -> { AdCreative::DYNAMIC_AD_VOICE }}
|
281
290
|
api.has_param :enable_launch_instant_app, 'bool'
|
291
|
+
api.has_param :facebook_branded_content, 'hash'
|
282
292
|
api.has_param :image_crops, 'hash'
|
283
293
|
api.has_param :image_file, 'string'
|
284
294
|
api.has_param :image_hash, 'string'
|
285
295
|
api.has_param :image_url, 'string'
|
286
296
|
api.has_param :instagram_actor_id, 'string'
|
297
|
+
api.has_param :instagram_branded_content, 'hash'
|
287
298
|
api.has_param :instagram_permalink_url, 'string'
|
288
299
|
api.has_param :instagram_user_id, 'string'
|
289
300
|
api.has_param :interactive_components_spec, 'hash'
|
@@ -403,6 +414,7 @@ module FacebookAds
|
|
403
414
|
api.has_param :engagement_audience, 'bool'
|
404
415
|
api.has_param :execution_options, { list: { enum: -> { Ad::EXECUTION_OPTIONS }} }
|
405
416
|
api.has_param :include_demolink_hashes, 'bool'
|
417
|
+
api.has_param :meta_reward_adgroup_status, { enum: -> { Ad::META_REWARD_ADGROUP_STATUS }}
|
406
418
|
api.has_param :name, 'string'
|
407
419
|
api.has_param :priority, 'int'
|
408
420
|
api.has_param :source_ad_id, 'string'
|
@@ -412,6 +424,14 @@ module FacebookAds
|
|
412
424
|
end
|
413
425
|
end
|
414
426
|
|
427
|
+
has_edge :ads_conversion_goal do |edge|
|
428
|
+
edge.post do |api|
|
429
|
+
api.has_param :description, 'string'
|
430
|
+
api.has_param :goal_name, 'string'
|
431
|
+
api.has_param :single_channel_conversion_events, { list: 'hash' }
|
432
|
+
end
|
433
|
+
end
|
434
|
+
|
415
435
|
has_edge :ads_reporting_mmm_reports do |edge|
|
416
436
|
edge.get do |api|
|
417
437
|
api.has_param :filtering, { list: 'hash' }
|
@@ -443,6 +463,7 @@ module FacebookAds
|
|
443
463
|
api.has_param :effective_status, { list: { enum: -> { AdSet::EFFECTIVE_STATUS }} }
|
444
464
|
api.has_param :is_completed, 'bool'
|
445
465
|
api.has_param :time_range, 'object'
|
466
|
+
api.has_param :updated_since, 'int'
|
446
467
|
end
|
447
468
|
edge.post 'AdSet' do |api|
|
448
469
|
api.has_param :adlabels, { list: 'object' }
|
@@ -462,6 +483,8 @@ module FacebookAds
|
|
462
483
|
api.has_param :daily_spend_cap, 'int'
|
463
484
|
api.has_param :date_format, 'string'
|
464
485
|
api.has_param :destination_type, { enum: -> { AdSet::DESTINATION_TYPE }}
|
486
|
+
api.has_param :dsa_beneficiary, 'string'
|
487
|
+
api.has_param :dsa_payor, 'string'
|
465
488
|
api.has_param :end_time, 'datetime'
|
466
489
|
api.has_param :execution_options, { list: { enum: -> { AdSet::EXECUTION_OPTIONS }} }
|
467
490
|
api.has_param :existing_customer_budget_percentage, 'int'
|
@@ -491,7 +514,6 @@ module FacebookAds
|
|
491
514
|
api.has_param :time_stop, 'datetime'
|
492
515
|
api.has_param :topline_id, 'string'
|
493
516
|
api.has_param :tune_for_category, { enum: -> { AdSet::TUNE_FOR_CATEGORY }}
|
494
|
-
api.has_param :upstream_events, 'hash'
|
495
517
|
end
|
496
518
|
end
|
497
519
|
|
@@ -717,7 +739,6 @@ module FacebookAds
|
|
717
739
|
api.has_param :status, { enum: -> { Campaign::STATUS }}
|
718
740
|
api.has_param :stop_time, 'datetime'
|
719
741
|
api.has_param :topline_id, 'string'
|
720
|
-
api.has_param :upstream_events, 'hash'
|
721
742
|
end
|
722
743
|
end
|
723
744
|
|
@@ -732,9 +753,14 @@ module FacebookAds
|
|
732
753
|
edge.get 'IgUser'
|
733
754
|
end
|
734
755
|
|
756
|
+
has_edge :conversion_goals do |edge|
|
757
|
+
edge.get
|
758
|
+
end
|
759
|
+
|
735
760
|
has_edge :customaudiences do |edge|
|
736
761
|
edge.get 'CustomAudience' do |api|
|
737
762
|
api.has_param :business_id, 'string'
|
763
|
+
api.has_param :fetch_primary_audience, 'bool'
|
738
764
|
api.has_param :fields, { list: 'string' }
|
739
765
|
api.has_param :filtering, { list: 'object' }
|
740
766
|
api.has_param :pixel_id, 'string'
|
@@ -772,6 +798,7 @@ module FacebookAds
|
|
772
798
|
api.has_param :rule, 'string'
|
773
799
|
api.has_param :rule_aggregation, 'string'
|
774
800
|
api.has_param :subtype, { enum: -> { CustomAudience::SUBTYPE }}
|
801
|
+
api.has_param :use_in_campaigns, 'bool'
|
775
802
|
api.has_param :video_group_ids, { list: 'string' }
|
776
803
|
end
|
777
804
|
end
|
@@ -815,6 +842,7 @@ module FacebookAds
|
|
815
842
|
edge.get 'AdPreview' do |api|
|
816
843
|
api.has_param :ad_format, { enum: -> { AdPreview::AD_FORMAT }}
|
817
844
|
api.has_param :creative, 'AdCreative'
|
845
|
+
api.has_param :creative_feature, { enum: -> { AdPreview::CREATIVE_FEATURE }}
|
818
846
|
api.has_param :dynamic_asset_label, 'string'
|
819
847
|
api.has_param :dynamic_creative_spec, 'object'
|
820
848
|
api.has_param :dynamic_customization, 'object'
|
@@ -1059,6 +1087,7 @@ module FacebookAds
|
|
1059
1087
|
api.has_param :is_exclusion, 'bool'
|
1060
1088
|
api.has_param :limit_type, { enum: -> { AdAccountTargetingUnified::LIMIT_TYPE }}
|
1061
1089
|
api.has_param :regulated_categories, { list: { enum: -> { AdAccountTargetingUnified::REGULATED_CATEGORIES }} }
|
1090
|
+
api.has_param :regulated_countries, { list: { enum: -> { AdAccountTargetingUnified::REGULATED_COUNTRIES }} }
|
1062
1091
|
api.has_param :whitelisted_types, { list: { enum: -> { AdAccountTargetingUnified::WHITELISTED_TYPES }} }
|
1063
1092
|
end
|
1064
1093
|
end
|
@@ -1074,6 +1103,7 @@ module FacebookAds
|
|
1074
1103
|
api.has_param :promoted_object, 'object'
|
1075
1104
|
api.has_param :q, 'string'
|
1076
1105
|
api.has_param :regulated_categories, { list: { enum: -> { AdAccountTargetingUnified::REGULATED_CATEGORIES }} }
|
1106
|
+
api.has_param :regulated_countries, { list: { enum: -> { AdAccountTargetingUnified::REGULATED_COUNTRIES }} }
|
1077
1107
|
api.has_param :session_id, 'int'
|
1078
1108
|
api.has_param :targeting_list, { list: 'object' }
|
1079
1109
|
api.has_param :whitelisted_types, { list: { enum: -> { AdAccountTargetingUnified::WHITELISTED_TYPES }} }
|
@@ -1098,6 +1128,7 @@ module FacebookAds
|
|
1098
1128
|
api.has_param :objective, { enum: -> { AdAccountTargetingUnified::OBJECTIVE }}
|
1099
1129
|
api.has_param :objects, 'object'
|
1100
1130
|
api.has_param :regulated_categories, { list: { enum: -> { AdAccountTargetingUnified::REGULATED_CATEGORIES }} }
|
1131
|
+
api.has_param :regulated_countries, { list: { enum: -> { AdAccountTargetingUnified::REGULATED_COUNTRIES }} }
|
1101
1132
|
api.has_param :session_id, 'int'
|
1102
1133
|
api.has_param :targeting_list, { list: 'object' }
|
1103
1134
|
api.has_param :whitelisted_types, { list: { enum: -> { AdAccountTargetingUnified::WHITELISTED_TYPES }} }
|
@@ -27,7 +27,12 @@ module FacebookAds
|
|
27
27
|
|
28
28
|
class AdAccountAdVolume < AdObject
|
29
29
|
RECOMMENDATION_TYPE = [
|
30
|
+
"AB_TEST",
|
30
31
|
"ACO_TOGGLE",
|
32
|
+
"ADS_REPORTING",
|
33
|
+
"ADVANTAGE_PLUS_CREATIVE",
|
34
|
+
"AD_OBJECTIVE",
|
35
|
+
"AEM_V2_INELIGIBLE",
|
31
36
|
"AGGREGATED_BID_LIMITED",
|
32
37
|
"AGGREGATED_BUDGET_LIMITED",
|
33
38
|
"AGGREGATED_COST_LIMITED",
|
@@ -36,25 +41,42 @@ module FacebookAds
|
|
36
41
|
"AUDIENCE_EXPANSION",
|
37
42
|
"AUTOFLOW_OPT_IN",
|
38
43
|
"AUTOMATIC_PLACEMENTS",
|
44
|
+
"AUTO_BID",
|
45
|
+
"BROAD_TARGETING",
|
39
46
|
"CAPI",
|
47
|
+
"CONNECT_FACEBOOK_PAGE_TO_INSTAGRAM",
|
48
|
+
"CONNECT_FACEBOOK_PAGE_TO_WHATSAPP",
|
40
49
|
"COST_GOAL",
|
41
50
|
"COST_GOAL_BUDGET_LIMITED",
|
42
51
|
"COST_GOAL_CPA_LIMITED",
|
43
52
|
"CREATIVE_BADGE",
|
44
53
|
"CREATIVE_FATIGUE",
|
54
|
+
"CREATIVE_FATIGUE_HOURLY",
|
45
55
|
"CREATIVE_LIMITED",
|
56
|
+
"CREATIVE_LIMITED_HOURLY",
|
46
57
|
"DEAD_LINK",
|
47
58
|
"ECOSYSTEM_BID_REDUCE_L1_CARDINALITY",
|
48
59
|
"FRAGMENTATION",
|
60
|
+
"GES_TEST",
|
49
61
|
"LEARNING_LIMITED",
|
50
62
|
"LOW_OUTCOME",
|
51
63
|
"MMT_CAROUSEL_TO_VIDEO",
|
64
|
+
"MOBILE_FIRST_VIDEO",
|
52
65
|
"MULTI_TEXT",
|
53
66
|
"MUSIC",
|
67
|
+
"OPTIMAL_SPEND",
|
68
|
+
"PAYMENT_METHOD",
|
69
|
+
"PFR_L1_INLINE_MMT",
|
54
70
|
"PREDICTIVE_CREATIVE_LIMITED",
|
71
|
+
"PREDICTIVE_CREATIVE_LIMITED_HOURLY",
|
55
72
|
"REVERT",
|
73
|
+
"SCALE_GOOD_CAMPAIGN",
|
56
74
|
"SEMANTIC_BASED_AUDIENCE_EXPANSION",
|
75
|
+
"SETUP_PIXEL",
|
76
|
+
"SHOPS_ADS",
|
57
77
|
"SIGNALS_GROWTH_CAPI",
|
78
|
+
"SIX_PLUS_MANUAL_PLACEMENTS",
|
79
|
+
"SPEND_LIMIT",
|
58
80
|
"SYD_TEST_MODE",
|
59
81
|
"TOP_ADSETS_WITH_ADS_UNDER_CAP",
|
60
82
|
"TOP_CAMPAIGNS_WITH_ADS_UNDER_CAP",
|
@@ -25,33 +25,9 @@ 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
|
29
|
-
BREAKDOWN = [
|
30
|
-
"age",
|
31
|
-
"country",
|
32
|
-
"gender",
|
33
|
-
"gender_and_age",
|
34
|
-
"is_organic",
|
35
|
-
"is_shared_by_ia_owner",
|
36
|
-
"no_breakdown",
|
37
|
-
"platform",
|
38
|
-
"region",
|
39
|
-
]
|
28
|
+
class AdAccountBusinessConstraints < AdObject
|
40
29
|
|
41
|
-
|
42
|
-
"day",
|
43
|
-
"days_28",
|
44
|
-
"lifetime",
|
45
|
-
"month",
|
46
|
-
"total_over_range",
|
47
|
-
"week",
|
48
|
-
]
|
49
|
-
|
50
|
-
|
51
|
-
field :breakdowns, 'hash'
|
52
|
-
field :name, 'string'
|
53
|
-
field :time, 'datetime'
|
54
|
-
field :value, 'string'
|
30
|
+
field :audience_controls, 'object'
|
55
31
|
has_no_id
|
56
32
|
has_no_get
|
57
33
|
has_no_post
|
@@ -48,6 +48,7 @@ module FacebookAds
|
|
48
48
|
"QUALITY_CALL",
|
49
49
|
"QUALITY_LEAD",
|
50
50
|
"REACH",
|
51
|
+
"SUBSCRIBERS",
|
51
52
|
"THRUPLAY",
|
52
53
|
"VALUE",
|
53
54
|
"VISIT_INSTAGRAM_PROFILE",
|
@@ -59,7 +60,7 @@ module FacebookAds
|
|
59
60
|
field :estimate_mau_lower_bound, 'int'
|
60
61
|
field :estimate_mau_upper_bound, 'int'
|
61
62
|
field :estimate_ready, 'bool'
|
62
|
-
field :targeting_optimization_types, 'hash'
|
63
|
+
field :targeting_optimization_types, { list: 'hash' }
|
63
64
|
has_no_id
|
64
65
|
has_no_get
|
65
66
|
has_no_post
|
@@ -64,16 +64,273 @@ module FacebookAds
|
|
64
64
|
"ONLINE_GAMBLING_AND_GAMING",
|
65
65
|
]
|
66
66
|
|
67
|
+
REGULATED_COUNTRIES = [
|
68
|
+
"AD",
|
69
|
+
"AE",
|
70
|
+
"AF",
|
71
|
+
"AG",
|
72
|
+
"AI",
|
73
|
+
"AL",
|
74
|
+
"AM",
|
75
|
+
"AN",
|
76
|
+
"AO",
|
77
|
+
"AQ",
|
78
|
+
"AR",
|
79
|
+
"AS",
|
80
|
+
"AT",
|
81
|
+
"AU",
|
82
|
+
"AW",
|
83
|
+
"AX",
|
84
|
+
"AZ",
|
85
|
+
"BA",
|
86
|
+
"BB",
|
87
|
+
"BD",
|
88
|
+
"BE",
|
89
|
+
"BF",
|
90
|
+
"BG",
|
91
|
+
"BH",
|
92
|
+
"BI",
|
93
|
+
"BJ",
|
94
|
+
"BL",
|
95
|
+
"BM",
|
96
|
+
"BN",
|
97
|
+
"BO",
|
98
|
+
"BQ",
|
99
|
+
"BR",
|
100
|
+
"BS",
|
101
|
+
"BT",
|
102
|
+
"BV",
|
103
|
+
"BW",
|
104
|
+
"BY",
|
105
|
+
"BZ",
|
106
|
+
"CA",
|
107
|
+
"CC",
|
108
|
+
"CD",
|
109
|
+
"CF",
|
110
|
+
"CG",
|
111
|
+
"CH",
|
112
|
+
"CI",
|
113
|
+
"CK",
|
114
|
+
"CL",
|
115
|
+
"CM",
|
116
|
+
"CN",
|
117
|
+
"CO",
|
118
|
+
"CR",
|
119
|
+
"CU",
|
120
|
+
"CV",
|
121
|
+
"CW",
|
122
|
+
"CX",
|
123
|
+
"CY",
|
124
|
+
"CZ",
|
125
|
+
"DE",
|
126
|
+
"DJ",
|
127
|
+
"DK",
|
128
|
+
"DM",
|
129
|
+
"DO",
|
130
|
+
"DZ",
|
131
|
+
"EC",
|
132
|
+
"EE",
|
133
|
+
"EG",
|
134
|
+
"EH",
|
135
|
+
"ER",
|
136
|
+
"ES",
|
137
|
+
"ET",
|
138
|
+
"FI",
|
139
|
+
"FJ",
|
140
|
+
"FK",
|
141
|
+
"FM",
|
142
|
+
"FO",
|
143
|
+
"FR",
|
144
|
+
"GA",
|
145
|
+
"GB",
|
146
|
+
"GD",
|
147
|
+
"GE",
|
148
|
+
"GF",
|
149
|
+
"GG",
|
150
|
+
"GH",
|
151
|
+
"GI",
|
152
|
+
"GL",
|
153
|
+
"GM",
|
154
|
+
"GN",
|
155
|
+
"GP",
|
156
|
+
"GQ",
|
157
|
+
"GR",
|
158
|
+
"GS",
|
159
|
+
"GT",
|
160
|
+
"GU",
|
161
|
+
"GW",
|
162
|
+
"GY",
|
163
|
+
"HK",
|
164
|
+
"HM",
|
165
|
+
"HN",
|
166
|
+
"HR",
|
167
|
+
"HT",
|
168
|
+
"HU",
|
169
|
+
"ID",
|
170
|
+
"IE",
|
171
|
+
"IL",
|
172
|
+
"IM",
|
173
|
+
"IN",
|
174
|
+
"IO",
|
175
|
+
"IQ",
|
176
|
+
"IR",
|
177
|
+
"IS",
|
178
|
+
"IT",
|
179
|
+
"JE",
|
180
|
+
"JM",
|
181
|
+
"JO",
|
182
|
+
"JP",
|
183
|
+
"KE",
|
184
|
+
"KG",
|
185
|
+
"KH",
|
186
|
+
"KI",
|
187
|
+
"KM",
|
188
|
+
"KN",
|
189
|
+
"KP",
|
190
|
+
"KR",
|
191
|
+
"KW",
|
192
|
+
"KY",
|
193
|
+
"KZ",
|
194
|
+
"LA",
|
195
|
+
"LB",
|
196
|
+
"LC",
|
197
|
+
"LI",
|
198
|
+
"LK",
|
199
|
+
"LR",
|
200
|
+
"LS",
|
201
|
+
"LT",
|
202
|
+
"LU",
|
203
|
+
"LV",
|
204
|
+
"LY",
|
205
|
+
"MA",
|
206
|
+
"MC",
|
207
|
+
"MD",
|
208
|
+
"ME",
|
209
|
+
"MF",
|
210
|
+
"MG",
|
211
|
+
"MH",
|
212
|
+
"MK",
|
213
|
+
"ML",
|
214
|
+
"MM",
|
215
|
+
"MN",
|
216
|
+
"MO",
|
217
|
+
"MP",
|
218
|
+
"MQ",
|
219
|
+
"MR",
|
220
|
+
"MS",
|
221
|
+
"MT",
|
222
|
+
"MU",
|
223
|
+
"MV",
|
224
|
+
"MW",
|
225
|
+
"MX",
|
226
|
+
"MY",
|
227
|
+
"MZ",
|
228
|
+
"NA",
|
229
|
+
"NC",
|
230
|
+
"NE",
|
231
|
+
"NF",
|
232
|
+
"NG",
|
233
|
+
"NI",
|
234
|
+
"NL",
|
235
|
+
"NO",
|
236
|
+
"NP",
|
237
|
+
"NR",
|
238
|
+
"NU",
|
239
|
+
"NZ",
|
240
|
+
"OM",
|
241
|
+
"PA",
|
242
|
+
"PE",
|
243
|
+
"PF",
|
244
|
+
"PG",
|
245
|
+
"PH",
|
246
|
+
"PK",
|
247
|
+
"PL",
|
248
|
+
"PM",
|
249
|
+
"PN",
|
250
|
+
"PR",
|
251
|
+
"PS",
|
252
|
+
"PT",
|
253
|
+
"PW",
|
254
|
+
"PY",
|
255
|
+
"QA",
|
256
|
+
"RE",
|
257
|
+
"RO",
|
258
|
+
"RS",
|
259
|
+
"RU",
|
260
|
+
"RW",
|
261
|
+
"SA",
|
262
|
+
"SB",
|
263
|
+
"SC",
|
264
|
+
"SD",
|
265
|
+
"SE",
|
266
|
+
"SG",
|
267
|
+
"SH",
|
268
|
+
"SI",
|
269
|
+
"SJ",
|
270
|
+
"SK",
|
271
|
+
"SL",
|
272
|
+
"SM",
|
273
|
+
"SN",
|
274
|
+
"SO",
|
275
|
+
"SR",
|
276
|
+
"SS",
|
277
|
+
"ST",
|
278
|
+
"SV",
|
279
|
+
"SX",
|
280
|
+
"SY",
|
281
|
+
"SZ",
|
282
|
+
"TC",
|
283
|
+
"TD",
|
284
|
+
"TF",
|
285
|
+
"TG",
|
286
|
+
"TH",
|
287
|
+
"TJ",
|
288
|
+
"TK",
|
289
|
+
"TL",
|
290
|
+
"TM",
|
291
|
+
"TN",
|
292
|
+
"TO",
|
293
|
+
"TR",
|
294
|
+
"TT",
|
295
|
+
"TV",
|
296
|
+
"TW",
|
297
|
+
"TZ",
|
298
|
+
"UA",
|
299
|
+
"UG",
|
300
|
+
"UM",
|
301
|
+
"US",
|
302
|
+
"UY",
|
303
|
+
"UZ",
|
304
|
+
"VA",
|
305
|
+
"VC",
|
306
|
+
"VE",
|
307
|
+
"VG",
|
308
|
+
"VI",
|
309
|
+
"VN",
|
310
|
+
"VU",
|
311
|
+
"WF",
|
312
|
+
"WS",
|
313
|
+
"XK",
|
314
|
+
"YE",
|
315
|
+
"YT",
|
316
|
+
"ZA",
|
317
|
+
"ZM",
|
318
|
+
"ZW",
|
319
|
+
]
|
320
|
+
|
67
321
|
WHITELISTED_TYPES = [
|
68
322
|
"adgroup_id",
|
69
323
|
"age_max",
|
70
324
|
"age_min",
|
325
|
+
"age_range",
|
71
326
|
"alternate_auto_targeting_option",
|
72
327
|
"app_install_state",
|
73
328
|
"audience_network_positions",
|
74
329
|
"behaviors",
|
75
330
|
"brand_safety_content_filter_levels",
|
76
331
|
"brand_safety_content_severity_levels",
|
332
|
+
"cafe_ca_contraction_targeting_signal",
|
333
|
+
"cafe_ca_expansion_targeting_signal",
|
77
334
|
"catalog_based_targeting",
|
78
335
|
"cities",
|
79
336
|
"city_keys",
|
@@ -205,6 +462,8 @@ module FacebookAds
|
|
205
462
|
"instant_game",
|
206
463
|
"itunes",
|
207
464
|
"itunes_ipad",
|
465
|
+
"neon_android_store",
|
466
|
+
"none",
|
208
467
|
"oculus_app_store",
|
209
468
|
"oppo",
|
210
469
|
"roku_channel_store",
|
@@ -51,9 +51,11 @@ module FacebookAds
|
|
51
51
|
"GET_DIRECTIONS",
|
52
52
|
"GET_OFFER",
|
53
53
|
"GET_OFFER_VIEW",
|
54
|
+
"GET_PROMOTIONS",
|
54
55
|
"GET_QUOTE",
|
55
56
|
"GET_SHOWTIMES",
|
56
57
|
"GET_STARTED",
|
58
|
+
"INQUIRE_NOW",
|
57
59
|
"INSTALL_APP",
|
58
60
|
"INSTALL_MOBILE_APP",
|
59
61
|
"LEARN_MORE",
|
@@ -104,6 +106,7 @@ module FacebookAds
|
|
104
106
|
|
105
107
|
field :ad_formats, { list: 'string' }
|
106
108
|
field :additional_data, 'object'
|
109
|
+
field :app_product_page_id, 'string'
|
107
110
|
field :asset_customization_rules, { list: 'object' }
|
108
111
|
field :autotranslate, { list: 'string' }
|
109
112
|
field :bodies, { list: 'AdAssetFeedSpecBody' }
|
@@ -48,6 +48,7 @@ module FacebookAds
|
|
48
48
|
"QUALITY_CALL",
|
49
49
|
"QUALITY_LEAD",
|
50
50
|
"REACH",
|
51
|
+
"SUBSCRIBERS",
|
51
52
|
"THRUPLAY",
|
52
53
|
"VALUE",
|
53
54
|
"VISIT_INSTAGRAM_PROFILE",
|
@@ -59,7 +60,7 @@ module FacebookAds
|
|
59
60
|
field :estimate_mau_lower_bound, 'int'
|
60
61
|
field :estimate_mau_upper_bound, 'int'
|
61
62
|
field :estimate_ready, 'bool'
|
62
|
-
field :targeting_optimization_types, 'hash'
|
63
|
+
field :targeting_optimization_types, { list: 'hash' }
|
63
64
|
has_no_id
|
64
65
|
has_no_get
|
65
66
|
has_no_post
|