facebookbusiness 0.3.2.4 → 0.3.2.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (109) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -0
  3. data/lib/facebook_ads/ad_objects/ad.rb +3 -2
  4. data/lib/facebook_ads/ad_objects/ad_account.rb +14 -2
  5. data/lib/facebook_ads/ad_objects/ad_account_ad_rules_history.rb +5 -0
  6. data/lib/facebook_ads/ad_objects/ad_place_page_set.rb +12 -0
  7. data/lib/facebook_ads/ad_objects/ad_preview.rb +14 -14
  8. data/lib/facebook_ads/ad_objects/ad_set.rb +1 -0
  9. data/lib/facebook_ads/ad_objects/ad_study_objective.rb +4 -0
  10. data/lib/facebook_ads/ad_objects/ad_video.rb +1 -0
  11. data/lib/facebook_ads/ad_objects/ads_pixel.rb +0 -12
  12. data/lib/facebook_ads/ad_objects/application.rb +6 -35
  13. data/lib/facebook_ads/ad_objects/business.rb +22 -0
  14. data/lib/facebook_ads/ad_objects/campaign.rb +3 -2
  15. data/lib/facebook_ads/ad_objects/check_batch_request_status.rb +1 -0
  16. data/lib/facebook_ads/ad_objects/{ads_segments.rb → creative_democracy_run.rb} +44 -9
  17. data/lib/facebook_ads/ad_objects/group.rb +0 -1
  18. data/lib/facebook_ads/ad_objects/link.rb +0 -4
  19. data/lib/facebook_ads/ad_objects/live_video.rb +1 -0
  20. data/lib/facebook_ads/ad_objects/lookalike_spec.rb +2 -0
  21. data/lib/facebook_ads/ad_objects/{ad_account_custom_audience_limits.rb → measurement_upload_event.rb} +17 -7
  22. data/lib/facebook_ads/ad_objects/page.rb +1 -0
  23. data/lib/facebook_ads/ad_objects/page_call_to_action.rb +2 -0
  24. data/lib/facebook_ads/ad_objects/page_saved_filter.rb +13 -0
  25. data/lib/facebook_ads/ad_objects/product_catalog.rb +1 -0
  26. data/lib/facebook_ads/ad_objects/product_feed_upload.rb +5 -0
  27. data/lib/facebook_ads/ad_objects/{ads_pixel_domain_control_rule.rb → product_feed_upload_error_report.rb} +3 -3
  28. data/lib/facebook_ads/ad_objects/publisher_block_list.rb +4 -4
  29. data/lib/facebook_ads/ad_objects/shadow_ig_user.rb +16 -0
  30. data/lib/facebook_ads/version.rb +1 -1
  31. metadata +5 -83
  32. data/lib/facebook_ads/ad_objects/ad_account_placement_usage.rb +0 -38
  33. data/lib/facebook_ads/ad_objects/ad_account_user_permissions.rb +0 -45
  34. data/lib/facebook_ads/ad_objects/ad_campaign_group_stats.rb +0 -51
  35. data/lib/facebook_ads/ad_objects/ad_campaign_metrics_metadata.rb +0 -40
  36. data/lib/facebook_ads/ad_objects/ad_campaign_stats.rb +0 -59
  37. data/lib/facebook_ads/ad_objects/ad_conversion_values.rb +0 -39
  38. data/lib/facebook_ads/ad_objects/ad_conversions.rb +0 -40
  39. data/lib/facebook_ads/ad_objects/ad_delivery_insights.rb +0 -43
  40. data/lib/facebook_ads/ad_objects/ad_kpi_shift.rb +0 -42
  41. data/lib/facebook_ads/ad_objects/ad_network_analytics_async_query_export.rb +0 -40
  42. data/lib/facebook_ads/ad_objects/ad_place_page_set_invalid_location.rb +0 -38
  43. data/lib/facebook_ads/ad_objects/ad_script_execution_history.rb +0 -45
  44. data/lib/facebook_ads/ad_objects/ads_pixel_domain_last_fired_time.rb +0 -38
  45. data/lib/facebook_ads/ad_objects/ads_pixel_event_last_fired_time.rb +0 -38
  46. data/lib/facebook_ads/ad_objects/ads_pixel_microdata_stats.rb +0 -37
  47. data/lib/facebook_ads/ad_objects/ads_pixel_raw_fires_result.rb +0 -42
  48. data/lib/facebook_ads/ad_objects/ads_pixel_real_time_event_log_result.rb +0 -44
  49. data/lib/facebook_ads/ad_objects/ads_pixel_recent_events_result.rb +0 -38
  50. data/lib/facebook_ads/ad_objects/ads_pixel_server_to_server_key.rb +0 -38
  51. data/lib/facebook_ads/ad_objects/ads_pixel_signals_iwl_nux.rb +0 -41
  52. data/lib/facebook_ads/ad_objects/ads_post.rb +0 -56
  53. data/lib/facebook_ads/ad_objects/ads_report_builder.rb +0 -38
  54. data/lib/facebook_ads/ad_objects/ads_tal_nudge.rb +0 -40
  55. data/lib/facebook_ads/ad_objects/an_blocked_bi_category.rb +0 -37
  56. data/lib/facebook_ads/ad_objects/analytics_cohort_query_result.rb +0 -40
  57. data/lib/facebook_ads/ad_objects/analytics_event_types.rb +0 -40
  58. data/lib/facebook_ads/ad_objects/analytics_funnel_query_result.rb +0 -40
  59. data/lib/facebook_ads/ad_objects/analytics_query_export_result.rb +0 -40
  60. data/lib/facebook_ads/ad_objects/analytics_query_result.rb +0 -41
  61. data/lib/facebook_ads/ad_objects/app_publisher.rb +0 -42
  62. data/lib/facebook_ads/ad_objects/audience_overlap.rb +0 -39
  63. data/lib/facebook_ads/ad_objects/blocked_user_info.rb +0 -40
  64. data/lib/facebook_ads/ad_objects/column_suggestions.rb +0 -40
  65. data/lib/facebook_ads/ad_objects/contacts_messenger_sync_config.rb +0 -37
  66. data/lib/facebook_ads/ad_objects/custom_audience_capabilities.rb +0 -37
  67. data/lib/facebook_ads/ad_objects/custom_audience_shared_account_campaign_info.rb +0 -44
  68. data/lib/facebook_ads/ad_objects/custom_audience_usage_history.rb +0 -39
  69. data/lib/facebook_ads/ad_objects/direct_deal_available_advertisers.rb +0 -39
  70. data/lib/facebook_ads/ad_objects/draft_post.rb +0 -51
  71. data/lib/facebook_ads/ad_objects/dynamic_item_quality_issue.rb +0 -40
  72. data/lib/facebook_ads/ad_objects/email_import.rb +0 -40
  73. data/lib/facebook_ads/ad_objects/engagement_insights_rule.rb +0 -40
  74. data/lib/facebook_ads/ad_objects/external_event_source_da_stats_result.rb +0 -42
  75. data/lib/facebook_ads/ad_objects/external_event_source_debugging.rb +0 -44
  76. data/lib/facebook_ads/ad_objects/external_event_source_pixel_helper_debugging_info.rb +0 -39
  77. data/lib/facebook_ads/ad_objects/fb_lite_to_nt_transitions.rb +0 -37
  78. data/lib/facebook_ads/ad_objects/finance_object.rb +0 -38
  79. data/lib/facebook_ads/ad_objects/instant_article_cta.rb +0 -39
  80. data/lib/facebook_ads/ad_objects/instant_article_traffic_lift.rb +0 -42
  81. data/lib/facebook_ads/ad_objects/merchant_compliance.rb +0 -41
  82. data/lib/facebook_ads/ad_objects/merchant_report.rb +0 -52
  83. data/lib/facebook_ads/ad_objects/mobile_app_alert.rb +0 -40
  84. data/lib/facebook_ads/ad_objects/native_megaphone.rb +0 -40
  85. data/lib/facebook_ads/ad_objects/order_id_attributions.rb +0 -45
  86. data/lib/facebook_ads/ad_objects/page_about_story.rb +0 -39
  87. data/lib/facebook_ads/ad_objects/page_admin_settings.rb +0 -38
  88. data/lib/facebook_ads/ad_objects/page_budget_recs.rb +0 -44
  89. data/lib/facebook_ads/ad_objects/page_feature_access_list.rb +0 -37
  90. data/lib/facebook_ads/ad_objects/page_locations_breakdown.rb +0 -45
  91. data/lib/facebook_ads/ad_objects/page_locations_health_summary.rb +0 -39
  92. data/lib/facebook_ads/ad_objects/page_publisher.rb +0 -40
  93. data/lib/facebook_ads/ad_objects/page_store_visits_demographic_insights.rb +0 -40
  94. data/lib/facebook_ads/ad_objects/product_catalog_example_feed.rb +0 -37
  95. data/lib/facebook_ads/ad_objects/product_catalog_facets.rb +0 -38
  96. data/lib/facebook_ads/ad_objects/product_feed_upload_progress.rb +0 -41
  97. data/lib/facebook_ads/ad_objects/product_item_insights.rb +0 -41
  98. data/lib/facebook_ads/ad_objects/products_quality_issue.rb +0 -42
  99. data/lib/facebook_ads/ad_objects/report_stats_metadata.rb +0 -46
  100. data/lib/facebook_ads/ad_objects/scheduled_post.rb +0 -51
  101. data/lib/facebook_ads/ad_objects/scim_company_user_phone_number.rb +0 -39
  102. data/lib/facebook_ads/ad_objects/signals_iwl_extractor.rb +0 -71
  103. data/lib/facebook_ads/ad_objects/smart_pixel_insights.rb +0 -38
  104. data/lib/facebook_ads/ad_objects/text_with_entities.rb +0 -37
  105. data/lib/facebook_ads/ad_objects/topic_discovery_response.rb +0 -38
  106. data/lib/facebook_ads/ad_objects/user_mobile_config.rb +0 -38
  107. data/lib/facebook_ads/ad_objects/user_notification_seen_state_data.rb +0 -37
  108. data/lib/facebook_ads/ad_objects/user_nux_statuses.rb +0 -39
  109. data/lib/facebook_ads/ad_objects/web_publisher.rb +0 -38
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 92d8e6150a41c991f5284f79653ac1876701468cb7b086e26177de237fe66072
4
- data.tar.gz: cbbade9f87de5e8c6cf4eeb63636059a724330285bab6d1d9db27edc2616a8e1
3
+ metadata.gz: cf63dff5203faf0fcf1674e0bbb48adc93344766bed806659c3e8bd29dbe55d7
4
+ data.tar.gz: e5d2572335703d5958e5bf1c3104cb151687f0da46fbd10617c877eeb75c9b88
5
5
  SHA512:
6
- metadata.gz: 2b995fa21002d8885821e79f846fecc4f65459e572710086b8e097298efa2b3d096d8ef8c8d3e59ade7b219b5313221038a1f34500418fb9035a03c0e272c283
7
- data.tar.gz: cd1430916889b4104b88dd0639c56692aa3bfe3d2fcc159bebbb8536c567d2058c18535c537011583276d19518462ccac06713ad808fb758b8df7fca0db196e5
6
+ metadata.gz: b9a1c7effe67b71622face91fb617b4f6f34695e9679825a936b728f73fda3649c6e2d671dc2362c9a2b8fe98ccbca2304fe322d767205ff117e8081c9f4a2c3
7
+ data.tar.gz: f9067cf46af560fc7e6455ad973941a2d27dea1ac710c8dd06c055e216b0d87c516baa5af946ade39dfee86a3fd5e19f162e8065148b9878629c58defcae9b44
data/README.md CHANGED
@@ -254,3 +254,6 @@ end
254
254
 
255
255
  ## Reporting Bugs/Feedback
256
256
  Please raise any issue on GitHub.
257
+
258
+ ## License
259
+ Facebook Business SDK for Ruby is licensed under the LICENSE file in the root directory of this source tree.
@@ -52,6 +52,7 @@ module FacebookAds
52
52
  "CAMPAIGN_PAUSED",
53
53
  "ARCHIVED",
54
54
  "ADSET_PAUSED",
55
+ "WITH_ISSUES",
55
56
  ]
56
57
 
57
58
  STATUS = [
@@ -147,11 +148,11 @@ module FacebookAds
147
148
  has_edge :adlabels do |edge|
148
149
  edge.delete do |api|
149
150
  api.has_param :adlabels, { list: 'object' }
150
- api.has_param :execution_options, { list: { enum: %w{validate_only }} }
151
+ api.has_param :execution_options, { list: { enum: -> { Ad::EXECUTION_OPTIONS }} }
151
152
  end
152
153
  edge.post 'Ad' do |api|
153
154
  api.has_param :adlabels, { list: 'object' }
154
- api.has_param :execution_options, { list: { enum: %w{validate_only }} }
155
+ api.has_param :execution_options, { list: { enum: -> { Ad::EXECUTION_OPTIONS }} }
155
156
  end
156
157
  end
157
158
 
@@ -213,6 +213,16 @@ module FacebookAds
213
213
  end
214
214
  end
215
215
 
216
+ has_edge :ad_place_page_sets do |edge|
217
+ edge.get 'AdPlacePageSet'
218
+ edge.post 'AdPlacePageSet' do |api|
219
+ api.has_param :name, 'string'
220
+ api.has_param :location_types, { list: { enum: -> { AdPlacePageSet::LOCATION_TYPES }} }
221
+ api.has_param :parent_page, 'string'
222
+ api.has_param :targeted_area_type, { enum: -> { AdPlacePageSet::TARGETED_AREA_TYPE }}
223
+ end
224
+ end
225
+
216
226
  has_edge :ad_studies do |edge|
217
227
  edge.get 'AdStudy'
218
228
  end
@@ -268,7 +278,7 @@ module FacebookAds
268
278
  api.has_param :image_url, 'string'
269
279
  api.has_param :instagram_actor_id, 'string'
270
280
  api.has_param :instagram_permalink_url, 'string'
271
- api.has_param :instagram_story_id, 'int'
281
+ api.has_param :portrait_customizations, 'hash'
272
282
  api.has_param :link_og_id, 'string'
273
283
  api.has_param :link_url, 'string'
274
284
  api.has_param :name, 'string'
@@ -423,6 +433,7 @@ module FacebookAds
423
433
  api.has_param :object_id, 'string'
424
434
  api.has_param :action, { enum: -> { AdAccountAdRulesHistory::ACTION }}
425
435
  api.has_param :hide_no_changes, 'bool'
436
+ api.has_param :evaluation_type, { enum: -> { AdAccountAdRulesHistory::EVALUATION_TYPE }}
426
437
  end
427
438
  end
428
439
 
@@ -796,6 +807,7 @@ module FacebookAds
796
807
  api.has_param :effective_status, { list: { enum: -> { Campaign::EFFECTIVE_STATUS }} }
797
808
  api.has_param :date_preset, { enum: -> { Campaign::DATE_PRESET }}
798
809
  api.has_param :is_completed, 'bool'
810
+ api.has_param :time_range, 'object'
799
811
  end
800
812
  edge.post 'Campaign' do |api|
801
813
  api.has_param :name, 'string'
@@ -942,7 +954,7 @@ module FacebookAds
942
954
  end
943
955
 
944
956
  has_edge :emailimport do |edge|
945
- edge.post 'EmailImport' do |api|
957
+ edge.post do |api|
946
958
  api.has_param :name, 'string'
947
959
  api.has_param :third_party_data, 'string'
948
960
  end
@@ -40,6 +40,11 @@ module FacebookAds
40
40
  "UNPAUSED",
41
41
  ]
42
42
 
43
+ EVALUATION_TYPE = [
44
+ "SCHEDULE",
45
+ "TRIGGER",
46
+ ]
47
+
43
48
 
44
49
  field :evaluation_spec, 'AdRuleEvaluationSpec'
45
50
  field :exception_code, 'int'
@@ -26,6 +26,17 @@ module FacebookAds
26
26
  # pull request for this class.
27
27
 
28
28
  class AdPlacePageSet < AdObject
29
+ LOCATION_TYPES = [
30
+ "recent",
31
+ "home",
32
+ ]
33
+
34
+ TARGETED_AREA_TYPE = [
35
+ "CUSTOM_RADIUS",
36
+ "MARKETING_AREA",
37
+ "NONE",
38
+ ]
39
+
29
40
 
30
41
  field :account_id, 'string'
31
42
  field :id, 'string'
@@ -33,6 +44,7 @@ module FacebookAds
33
44
  field :name, 'string'
34
45
  field :pages_count, 'int'
35
46
  field :parent_page, 'Page'
47
+ field :targeted_area_type, { enum: -> { TARGETED_AREA_TYPE }}
36
48
  has_no_delete
37
49
 
38
50
  end
@@ -27,29 +27,29 @@ module FacebookAds
27
27
 
28
28
  class AdPreview < AdObject
29
29
  AD_FORMAT = [
30
- "RIGHT_COLUMN_STANDARD",
31
- "DESKTOP_FEED_STANDARD",
32
- "MOBILE_FEED_STANDARD",
33
- "MOBILE_FEED_BASIC",
34
- "MOBILE_INTERSTITIAL",
35
- "MOBILE_BANNER",
36
- "MOBILE_MEDIUM_RECTANGLE",
37
- "MOBILE_FULLWIDTH",
38
- "MOBILE_NATIVE",
39
- "INSTAGRAM_STANDARD",
40
- "INSTAGRAM_STORY",
41
30
  "AUDIENCE_NETWORK_INSTREAM_VIDEO",
42
- "AUDIENCE_NETWORK_OUTSTREAM_VIDEO",
43
31
  "AUDIENCE_NETWORK_INSTREAM_VIDEO_MOBILE",
32
+ "AUDIENCE_NETWORK_OUTSTREAM_VIDEO",
44
33
  "AUDIENCE_NETWORK_REWARDED_VIDEO",
34
+ "DESKTOP_FEED_STANDARD",
35
+ "FACEBOOK_STORY_MOBILE",
36
+ "INSTAGRAM_STANDARD",
37
+ "INSTAGRAM_STORY",
45
38
  "INSTANT_ARTICLE_STANDARD",
46
39
  "INSTREAM_VIDEO_DESKTOP",
47
40
  "INSTREAM_VIDEO_MOBILE",
41
+ "MARKETPLACE_MOBILE",
48
42
  "MESSENGER_MOBILE_INBOX_MEDIA",
43
+ "MOBILE_BANNER",
44
+ "MOBILE_FEED_BASIC",
45
+ "MOBILE_FEED_STANDARD",
46
+ "MOBILE_FULLWIDTH",
47
+ "MOBILE_INTERSTITIAL",
48
+ "MOBILE_MEDIUM_RECTANGLE",
49
+ "MOBILE_NATIVE",
50
+ "RIGHT_COLUMN_STANDARD",
49
51
  "SUGGESTED_VIDEO_DESKTOP",
50
52
  "SUGGESTED_VIDEO_MOBILE",
51
- "MARKETPLACE_MOBILE",
52
- "FACEBOOK_STORY_MOBILE",
53
53
  "WATCH_FEED_MOBILE",
54
54
  ]
55
55
 
@@ -63,6 +63,7 @@ module FacebookAds
63
63
  "CAMPAIGN_PAUSED",
64
64
  "ARCHIVED",
65
65
  "ADSET_PAUSED",
66
+ "WITH_ISSUES",
66
67
  ]
67
68
 
68
69
  OPTIMIZATION_GOAL = [
@@ -47,6 +47,10 @@ module FacebookAds
47
47
  field :results, { list: 'string' }
48
48
  field :type, 'string'
49
49
 
50
+ has_edge :ad_place_page_sets do |edge|
51
+ edge.get 'AdPlacePageSet'
52
+ end
53
+
50
54
  has_edge :adspixels do |edge|
51
55
  edge.get 'AdsPixel'
52
56
  end
@@ -114,6 +114,7 @@ module FacebookAds
114
114
  "CIVIC_PROPOSAL_COVER_VIDEO",
115
115
  "HEURISTIC_CLUSTER_VIDEO",
116
116
  "DCO_AUTOGEN_VIDEO",
117
+ "SOTTO_CONTENT",
117
118
  ]
118
119
 
119
120
  CONTENT_CATEGORY = [
@@ -119,18 +119,6 @@ module FacebookAds
119
119
  end
120
120
  end
121
121
 
122
- has_edge :extractors do |edge|
123
- edge.get 'SignalsIwlExtractor' do |api|
124
- api.has_param :current_domain, 'object'
125
- end
126
- edge.post 'SignalsIwlExtractor' do |api|
127
- api.has_param :domain_uri, 'object'
128
- api.has_param :event_type, { enum: -> { SignalsIWLExtractor::EVENT_TYPE }}
129
- api.has_param :extractor_config, 'hash'
130
- api.has_param :extractor_type, { enum: -> { SignalsIWLExtractor::EXTRACTOR_TYPE }}
131
- end
132
- end
133
-
134
122
  has_edge :pending_shared_agencies do |edge|
135
123
  edge.get 'Business'
136
124
  end
@@ -136,6 +136,11 @@ module FacebookAds
136
136
  "DELETE",
137
137
  ]
138
138
 
139
+ POST_METHOD = [
140
+ "EYMT",
141
+ "CODELESS",
142
+ ]
143
+
139
144
  SCORE_TYPE = [
140
145
  "CUSTOM",
141
146
  "NUMERIC",
@@ -178,7 +183,6 @@ module FacebookAds
178
183
  field :auto_event_mapping_android, { list: 'object' }
179
184
  field :auto_event_mapping_ios, { list: 'object' }
180
185
  field :auto_event_setup_enabled, 'bool'
181
- field :business, 'Business'
182
186
  field :canvas_fluid_height, 'bool'
183
187
  field :canvas_fluid_width, 'int'
184
188
  field :canvas_url, 'string'
@@ -351,29 +355,6 @@ module FacebookAds
351
355
  end
352
356
  end
353
357
 
354
- has_edge :ads_app_insights do |edge|
355
- edge.get do |api|
356
- api.has_param :metric, { enum: %w{ads_api_call ads_api_error ads_api_error_rate }}
357
- api.has_param :since, 'datetime'
358
- api.has_param :until, 'datetime'
359
- api.has_param :details, { enum: %w{daily hourly }}
360
- api.has_param :filters, 'object'
361
- api.has_param :breakdowns, { list: { enum: %w{none ad_account_id method version error }} }
362
- api.has_param :limit, 'int'
363
- api.has_param :timeseries, 'bool'
364
- end
365
- end
366
-
367
- has_edge :ads_app_insights_dimensions do |edge|
368
- edge.get do |api|
369
- api.has_param :dimension, { enum: %w{ad_account_id method version }}
370
- api.has_param :since, 'datetime'
371
- api.has_param :until, 'datetime'
372
- api.has_param :details, { enum: %w{daily hourly }}
373
- api.has_param :limit, 'int'
374
- end
375
- end
376
-
377
358
  has_edge :agencies do |edge|
378
359
  edge.get 'Business'
379
360
  end
@@ -517,6 +498,7 @@ module FacebookAds
517
498
  edge.post 'Application' do |api|
518
499
  api.has_param :mutation_method, { enum: -> { Application::MUTATION_METHOD }}
519
500
  api.has_param :platform, { enum: -> { Application::PLATFORM }}
501
+ api.has_param :post_method, { enum: -> { Application::POST_METHOD }}
520
502
  api.has_param :mappings, { list: 'hash' }
521
503
  end
522
504
  end
@@ -782,10 +764,6 @@ module FacebookAds
782
764
  end
783
765
  end
784
766
 
785
- has_edge :pixel_helper_debugging_info do |edge|
786
- edge.get 'ExternalEventSourcePixelHelperDebuggingInfo'
787
- end
788
-
789
767
  has_edge :products do |edge|
790
768
  edge.get do |api|
791
769
  api.has_param :product_ids, { list: 'string' }
@@ -798,13 +776,6 @@ module FacebookAds
798
776
  end
799
777
  end
800
778
 
801
- has_edge :recent_debuggings do |edge|
802
- edge.get 'ExternalEventSourceDebugging' do |api|
803
- api.has_param :event_name, 'string'
804
- api.has_param :diagnostic, 'string'
805
- end
806
- end
807
-
808
779
  has_edge :roles do |edge|
809
780
  edge.delete do |api|
810
781
  api.has_param :user, 'int'
@@ -428,6 +428,17 @@ module FacebookAds
428
428
  end
429
429
  end
430
430
 
431
+ has_edge :creative_compass_study do |edge|
432
+ edge.get 'CreativeDemocracyRun'
433
+ edge.post 'CreativeDemocracyRun' do |api|
434
+ api.has_param :campaign_id, { list: 'string' }
435
+ api.has_param :creative_id, { list: 'string' }
436
+ api.has_param :description, 'string'
437
+ api.has_param :name, 'string'
438
+ api.has_param :placement, { enum: -> { CreativeDemocracyRun::PLACEMENT }}
439
+ end
440
+ end
441
+
431
442
  has_edge :customconversions do |edge|
432
443
  edge.get 'CustomConversion'
433
444
  edge.post 'CustomConversion' do |api|
@@ -750,6 +761,17 @@ module FacebookAds
750
761
  end
751
762
  end
752
763
 
764
+ has_edge :upload_event do |edge|
765
+ edge.get 'MeasurementUploadEvent'
766
+ edge.post 'MeasurementUploadEvent' do |api|
767
+ api.has_param :group, { enum: -> { MeasurementUploadEvent::GROUP }}
768
+ api.has_param :upload_end_time, 'object'
769
+ api.has_param :upload_start_time, 'object'
770
+ api.has_param :upload_tag, 'string'
771
+ api.has_param :version, { enum: -> { MeasurementUploadEvent::VERSION }}
772
+ end
773
+ end
774
+
753
775
  has_edge :user_invitations do |edge|
754
776
  edge.delete do |api|
755
777
  api.has_param :email, 'string'
@@ -50,6 +50,7 @@ module FacebookAds
50
50
  "CAMPAIGN_PAUSED",
51
51
  "ARCHIVED",
52
52
  "ADSET_PAUSED",
53
+ "WITH_ISSUES",
53
54
  ]
54
55
 
55
56
  STATUS = [
@@ -162,11 +163,11 @@ module FacebookAds
162
163
  has_edge :adlabels do |edge|
163
164
  edge.delete do |api|
164
165
  api.has_param :adlabels, { list: 'object' }
165
- api.has_param :execution_options, { list: { enum: %w{validate_only }} }
166
+ api.has_param :execution_options, { list: { enum: -> { Campaign::EXECUTION_OPTIONS }} }
166
167
  end
167
168
  edge.post 'Campaign' do |api|
168
169
  api.has_param :adlabels, { list: 'object' }
169
- api.has_param :execution_options, { list: { enum: %w{validate_only }} }
170
+ api.has_param :execution_options, { list: { enum: -> { Campaign::EXECUTION_OPTIONS }} }
170
171
  end
171
172
  end
172
173
 
@@ -30,6 +30,7 @@ module FacebookAds
30
30
  field :errors, { list: 'object' }
31
31
  field :errors_total_count, 'int'
32
32
  field :handle, 'string'
33
+ field :invalid_item_ids, { list: 'string' }
33
34
  field :status, 'string'
34
35
  field :id, 'string'
35
36
  has_no_get
@@ -25,20 +25,55 @@ 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 AdsSegments < AdObject
28
+ class CreativeDemocracyRun < AdObject
29
+ PLACEMENT = [
30
+ "AUDIENCE_NETWORK_INSTREAM_VIDEO",
31
+ "AUDIENCE_NETWORK_INSTREAM_VIDEO_MOBILE",
32
+ "AUDIENCE_NETWORK_OUTSTREAM_VIDEO",
33
+ "AUDIENCE_NETWORK_REWARDED_VIDEO",
34
+ "DESKTOP_FEED_STANDARD",
35
+ "FACEBOOK_STORY_MOBILE",
36
+ "INSTAGRAM_STANDARD",
37
+ "INSTAGRAM_STORY",
38
+ "INSTANT_ARTICLE_STANDARD",
39
+ "INSTREAM_VIDEO_DESKTOP",
40
+ "INSTREAM_VIDEO_MOBILE",
41
+ "MARKETPLACE_MOBILE",
42
+ "MESSENGER_MOBILE_INBOX_MEDIA",
43
+ "MOBILE_BANNER",
44
+ "MOBILE_FEED_BASIC",
45
+ "MOBILE_FEED_STANDARD",
46
+ "MOBILE_FULLWIDTH",
47
+ "MOBILE_INTERSTITIAL",
48
+ "MOBILE_MEDIUM_RECTANGLE",
49
+ "MOBILE_NATIVE",
50
+ "RIGHT_COLUMN_STANDARD",
51
+ "SUGGESTED_VIDEO_DESKTOP",
52
+ "SUGGESTED_VIDEO_MOBILE",
53
+ "WATCH_FEED_MOBILE",
54
+ ]
55
+
29
56
 
30
- field :daily_audience_size, 'int'
31
- field :daily_impressions, 'int'
32
57
  field :description, 'string'
58
+ field :end_date, 'string'
33
59
  field :id, 'string'
34
60
  field :name, 'string'
35
- field :path, { list: 'string' }
36
- field :popularity, 'double'
37
- field :projected_cpm, 'int'
38
- field :projected_daily_revenue, 'int'
39
- has_no_get
40
- has_no_post
61
+ field :placement, 'string'
62
+ field :report_data, { list: { list: 'object' } }
63
+ field :report_files, { list: 'object' }
64
+ field :start_date, 'string'
65
+ field :status, 'string'
66
+ field :campaign_id, { list: 'string' }
67
+ field :creative_id, { list: 'string' }
41
68
  has_no_delete
42
69
 
70
+ has_edge :campaign_id do |edge|
71
+ edge.get 'Campaign'
72
+ end
73
+
74
+ has_edge :creative_id do |edge|
75
+ edge.get 'AdCreative'
76
+ end
77
+
43
78
  end
44
79
  end
@@ -126,7 +126,6 @@ module FacebookAds
126
126
  field :subdomain, 'string'
127
127
  field :updated_time, 'datetime'
128
128
  field :venue, 'Location'
129
- has_no_post
130
129
  has_no_delete
131
130
 
132
131
  has_edge :admins do |edge|