facebookbusiness 0.3.3.3 → 0.3.3.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (43) hide show
  1. checksums.yaml +4 -4
  2. data/lib/facebook_ads/ad_objects/ad.rb +2 -0
  3. data/lib/facebook_ads/ad_objects/ad_account.rb +12 -33
  4. data/lib/facebook_ads/ad_objects/{reach_estimate.rb → ad_account_reach_estimate.rb} +1 -2
  5. data/lib/facebook_ads/ad_objects/ad_account_targeting_unified.rb +1 -0
  6. data/lib/facebook_ads/ad_objects/ad_activity.rb +1 -0
  7. data/lib/facebook_ads/ad_objects/ad_preview.rb +1 -0
  8. data/lib/facebook_ads/ad_objects/ad_report_run.rb +0 -4
  9. data/lib/facebook_ads/ad_objects/ad_set.rb +17 -12
  10. data/lib/facebook_ads/ad_objects/ad_study_objective.rb +4 -0
  11. data/lib/facebook_ads/ad_objects/ad_video.rb +2 -0
  12. data/lib/facebook_ads/ad_objects/adgroup_placement_specific_review_feedback.rb +1 -0
  13. data/lib/facebook_ads/ad_objects/ads_insights.rb +100 -0
  14. data/lib/facebook_ads/ad_objects/ads_pixel.rb +1 -2
  15. data/lib/facebook_ads/ad_objects/application.rb +5 -0
  16. data/lib/facebook_ads/ad_objects/business.rb +103 -4
  17. data/lib/facebook_ads/ad_objects/business_creative.rb +46 -0
  18. data/lib/facebook_ads/ad_objects/business_creative_folder.rb +76 -0
  19. data/lib/facebook_ads/ad_objects/business_image.rb +46 -0
  20. data/lib/facebook_ads/ad_objects/{ad_creative_optimization_spec.rb → collaborative_ads_share_settings.rb} +7 -7
  21. data/lib/facebook_ads/ad_objects/event.rb +6 -16
  22. data/lib/facebook_ads/ad_objects/event_source_group.rb +0 -18
  23. data/lib/facebook_ads/ad_objects/extended_credit_invoice_group.rb +3 -0
  24. data/lib/facebook_ads/ad_objects/group.rb +1 -1
  25. data/lib/facebook_ads/ad_objects/lead.rb +2 -0
  26. data/lib/facebook_ads/ad_objects/lead_gen_question.rb +1 -0
  27. data/lib/facebook_ads/ad_objects/leadgen_form.rb +1 -0
  28. data/lib/facebook_ads/ad_objects/live_encoder.rb +14 -0
  29. data/lib/facebook_ads/ad_objects/offline_conversion_data_set.rb +1 -3
  30. data/lib/facebook_ads/ad_objects/oracle_transaction.rb +1 -0
  31. data/lib/facebook_ads/ad_objects/page.rb +6 -15
  32. data/lib/facebook_ads/ad_objects/partner_study.rb +56 -0
  33. data/lib/facebook_ads/ad_objects/post.rb +5 -1
  34. data/lib/facebook_ads/ad_objects/product_catalog.rb +7 -2
  35. data/lib/facebook_ads/ad_objects/reach_frequency_prediction.rb +0 -1
  36. data/lib/facebook_ads/ad_objects/targeting.rb +1 -0
  37. data/lib/facebook_ads/ad_objects/targeting_geo_location.rb +1 -0
  38. data/lib/facebook_ads/ad_objects/{null_node.rb → targeting_geo_location_location_expansion.rb} +2 -1
  39. data/lib/facebook_ads/ad_objects/user.rb +35 -53
  40. data/lib/facebook_ads/ad_objects/video_poll.rb +7 -1
  41. data/lib/facebook_ads/ad_objects/whats_app_business_account.rb +3 -1
  42. data/lib/facebook_ads/version.rb +1 -1
  43. metadata +67 -63
@@ -70,6 +70,7 @@ module FacebookAds
70
70
  field :first_party_cookie_status, 'string'
71
71
  field :id, 'string'
72
72
  field :is_created_by_business, 'bool'
73
+ field :is_unavailable, 'bool'
73
74
  field :last_fired_time, 'datetime'
74
75
  field :name, 'string'
75
76
  field :owner_ad_account, 'AdAccount'
@@ -78,14 +79,12 @@ module FacebookAds
78
79
 
79
80
  has_edge :assigned_users do |edge|
80
81
  edge.delete do |api|
81
- api.has_param :business, 'string'
82
82
  api.has_param :user, 'int'
83
83
  end
84
84
  edge.get 'AssignedUser' do |api|
85
85
  api.has_param :business, 'string'
86
86
  end
87
87
  edge.post 'AdsPixel' do |api|
88
- api.has_param :business, 'string'
89
88
  api.has_param :tasks, { list: { enum: -> { AdsPixel::TASKS }} }
90
89
  api.has_param :user, 'int'
91
90
  end
@@ -170,6 +170,7 @@ module FacebookAds
170
170
  field :property_id, 'string'
171
171
  field :real_time_mode_devices, { list: 'string' }
172
172
  field :restrictions, 'object'
173
+ field :restrictive_data_filter_params, 'string'
173
174
  field :restrictive_data_filter_rules, 'string'
174
175
  field :sdk_update_message, 'string'
175
176
  field :seamless_login, 'int'
@@ -277,6 +278,10 @@ module FacebookAds
277
278
  end
278
279
  end
279
280
 
281
+ has_edge :agencies do |edge|
282
+ edge.get 'Business'
283
+ end
284
+
280
285
  has_edge :app_event_types do |edge|
281
286
  edge.get
282
287
  end
@@ -60,6 +60,8 @@ module FacebookAds
60
60
  PERMITTED_TASKS = [
61
61
  "ADVERTISE",
62
62
  "ANALYZE",
63
+ "CREATIVE",
64
+ "FB_EMPLOYEE_DSO_ADVERTISE",
63
65
  "MANAGE",
64
66
  ]
65
67
 
@@ -317,6 +319,19 @@ module FacebookAds
317
319
  edge.get 'Business'
318
320
  end
319
321
 
322
+ has_edge :creative_folders do |edge|
323
+ edge.get 'BusinessCreativeFolder'
324
+ edge.post 'BusinessCreativeFolder' do |api|
325
+ api.has_param :name, 'string'
326
+ end
327
+ end
328
+
329
+ has_edge :creatives do |edge|
330
+ edge.get 'BusinessCreative' do |api|
331
+ api.has_param :creative_folder_id, 'string'
332
+ end
333
+ end
334
+
320
335
  has_edge :customconversions do |edge|
321
336
  edge.get 'CustomConversion' do |api|
322
337
  api.has_param :include_archived, 'bool'
@@ -354,6 +369,14 @@ module FacebookAds
354
369
  edge.get 'ExtendedCredit'
355
370
  end
356
371
 
372
+ has_edge :images do |edge|
373
+ edge.post do |api|
374
+ api.has_param :bytes, 'object'
375
+ api.has_param :creative_folder_id, 'string'
376
+ api.has_param :name, 'string'
377
+ end
378
+ end
379
+
357
380
  has_edge :initiated_sharing_agreements do |edge|
358
381
  edge.get 'BusinessAgreement' do |api|
359
382
  api.has_param :receiving_business_id, 'string'
@@ -469,10 +492,6 @@ module FacebookAds
469
492
  end
470
493
  end
471
494
 
472
- has_edge :partners do |edge|
473
- edge.get 'Business'
474
- end
475
-
476
495
  has_edge :pending_client_ad_accounts do |edge|
477
496
  edge.get 'BusinessAdAccountRequest'
478
497
  end
@@ -497,6 +516,10 @@ module FacebookAds
497
516
  edge.get 'BusinessPageRequest'
498
517
  end
499
518
 
519
+ has_edge :pending_shared_creative_folders do |edge|
520
+ edge.get 'BusinessCreativeFolder'
521
+ end
522
+
500
523
  has_edge :pending_shared_pixels do |edge|
501
524
  edge.get 'AdsPixel'
502
525
  end
@@ -578,5 +601,81 @@ module FacebookAds
578
601
  end
579
602
  end
580
603
 
604
+ has_edge :videos do |edge|
605
+ edge.post 'AdVideo' do |api|
606
+ api.has_param :adaptive_type, 'string'
607
+ api.has_param :animated_effect_id, 'int'
608
+ api.has_param :application_id, 'string'
609
+ api.has_param :asked_fun_fact_prompt_id, 'int'
610
+ api.has_param :attribution_app_id, 'string'
611
+ api.has_param :audio_story_wave_animation_handle, 'string'
612
+ api.has_param :chunk_session_id, 'string'
613
+ api.has_param :composer_entry_picker, 'string'
614
+ api.has_param :composer_entry_point, 'string'
615
+ api.has_param :composer_entry_time, 'int'
616
+ api.has_param :composer_session_events_log, 'string'
617
+ api.has_param :composer_session_id, 'string'
618
+ api.has_param :composer_source_surface, 'string'
619
+ api.has_param :composer_type, 'string'
620
+ api.has_param :container_type, { enum: -> { AdVideo::CONTAINER_TYPE }}
621
+ api.has_param :content_category, { enum: -> { AdVideo::CONTENT_CATEGORY }}
622
+ api.has_param :creative_folder_id, 'string'
623
+ api.has_param :description, 'string'
624
+ api.has_param :embeddable, 'bool'
625
+ api.has_param :end_offset, 'int'
626
+ api.has_param :fbuploader_video_file_chunk, 'string'
627
+ api.has_param :file_size, 'int'
628
+ api.has_param :file_url, 'string'
629
+ api.has_param :fisheye_video_cropped, 'bool'
630
+ api.has_param :formatting, { enum: -> { AdVideo::FORMATTING }}
631
+ api.has_param :fov, 'int'
632
+ api.has_param :front_z_rotation, 'double'
633
+ api.has_param :fun_fact_prompt_id, 'int'
634
+ api.has_param :fun_fact_toastee_id, 'int'
635
+ api.has_param :guide, { list: { list: 'int' } }
636
+ api.has_param :guide_enabled, 'bool'
637
+ api.has_param :has_nickname, 'bool'
638
+ api.has_param :holiday_card, 'string'
639
+ api.has_param :initial_heading, 'int'
640
+ api.has_param :initial_pitch, 'int'
641
+ api.has_param :instant_game_entry_point_data, 'string'
642
+ api.has_param :is_boost_intended, 'bool'
643
+ api.has_param :is_group_linking_post, 'bool'
644
+ api.has_param :is_voice_clip, 'bool'
645
+ api.has_param :location_source_id, 'string'
646
+ api.has_param :offer_like_post_id, 'int'
647
+ api.has_param :og_action_type_id, 'string'
648
+ api.has_param :og_icon_id, 'string'
649
+ api.has_param :og_object_id, 'string'
650
+ api.has_param :og_phrase, 'string'
651
+ api.has_param :og_suggestion_mechanism, 'string'
652
+ api.has_param :original_fov, 'int'
653
+ api.has_param :original_projection_type, { enum: -> { AdVideo::ORIGINAL_PROJECTION_TYPE }}
654
+ api.has_param :publish_event_id, 'int'
655
+ api.has_param :react_mode_metadata, 'string'
656
+ api.has_param :referenced_sticker_id, 'string'
657
+ api.has_param :replace_video_id, 'string'
658
+ api.has_param :sales_promo_id, 'int'
659
+ api.has_param :slideshow_spec, 'hash'
660
+ api.has_param :source, 'string'
661
+ api.has_param :spherical, 'bool'
662
+ api.has_param :start_offset, 'int'
663
+ api.has_param :swap_mode, { enum: -> { AdVideo::SWAP_MODE }}
664
+ api.has_param :text_format_metadata, 'string'
665
+ api.has_param :throwback_camera_roll_media, 'string'
666
+ api.has_param :thumb, 'file'
667
+ api.has_param :time_since_original_post, 'int'
668
+ api.has_param :title, 'string'
669
+ api.has_param :transcode_setting_properties, 'string'
670
+ api.has_param :unpublished_content_type, { enum: -> { AdVideo::UNPUBLISHED_CONTENT_TYPE }}
671
+ api.has_param :upload_phase, { enum: -> { AdVideo::UPLOAD_PHASE }}
672
+ api.has_param :upload_session_id, 'string'
673
+ api.has_param :upload_setting_properties, 'string'
674
+ api.has_param :video_file_chunk, 'string'
675
+ api.has_param :video_start_time_ms, 'int'
676
+ api.has_param :waterfall_id, 'string'
677
+ end
678
+ end
679
+
581
680
  end
582
681
  end
@@ -0,0 +1,46 @@
1
+ # Copyright (c) 2017-present, Facebook, Inc. All rights reserved.
2
+ #
3
+ # You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
4
+ # copy, modify, and distribute this software in source code or binary form for use
5
+ # in connection with the web services and APIs provided by Facebook.
6
+ #
7
+ # As with any software that integrates with the Facebook platform, your use of
8
+ # this software is subject to the Facebook Platform Policy
9
+ # [http://developers.facebook.com/policy/]. This copyright notice shall be
10
+ # included in all copies or substantial portions of the software.
11
+ #
12
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
13
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
14
+ # FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
15
+ # COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
16
+ # IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
17
+ # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
18
+
19
+ # FB:AUTOGEN
20
+
21
+ module FacebookAds
22
+ # This class is auto-generated.
23
+
24
+ # For any issues or feature requests related to this class, please let us know
25
+ # on github and we'll fix in our codegen framework. We'll not be able to accept
26
+ # pull request for this class.
27
+
28
+ class BusinessCreative < AdObject
29
+
30
+ field :creation_time, 'datetime'
31
+ field :duration, 'int'
32
+ field :hash, 'string'
33
+ field :height, 'int'
34
+ field :id, 'string'
35
+ field :name, 'string'
36
+ field :thumbnail, 'string'
37
+ field :type, 'string'
38
+ field :url, 'string'
39
+ field :video_id, 'string'
40
+ field :width, 'int'
41
+ has_no_get
42
+ has_no_post
43
+ has_no_delete
44
+
45
+ end
46
+ end
@@ -0,0 +1,76 @@
1
+ # Copyright (c) 2017-present, Facebook, Inc. All rights reserved.
2
+ #
3
+ # You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
4
+ # copy, modify, and distribute this software in source code or binary form for use
5
+ # in connection with the web services and APIs provided by Facebook.
6
+ #
7
+ # As with any software that integrates with the Facebook platform, your use of
8
+ # this software is subject to the Facebook Platform Policy
9
+ # [http://developers.facebook.com/policy/]. This copyright notice shall be
10
+ # included in all copies or substantial portions of the software.
11
+ #
12
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
13
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
14
+ # FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
15
+ # COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
16
+ # IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
17
+ # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
18
+
19
+ # FB:AUTOGEN
20
+
21
+ module FacebookAds
22
+ # This class is auto-generated.
23
+
24
+ # For any issues or feature requests related to this class, please let us know
25
+ # on github and we'll fix in our codegen framework. We'll not be able to accept
26
+ # pull request for this class.
27
+
28
+ class BusinessCreativeFolder < AdObject
29
+ PERMITTED_TASKS = [
30
+ "CREATE_CONTENT",
31
+ "MANAGE_CONTENT",
32
+ "MANAGE_PERMISSIONS",
33
+ "VIEW_CONTENT",
34
+ "VIEW_INSIGHTS",
35
+ ]
36
+
37
+ TASKS = [
38
+ "CREATE_CONTENT",
39
+ "MANAGE_CONTENT",
40
+ "MANAGE_PERMISSIONS",
41
+ "VIEW_CONTENT",
42
+ "VIEW_INSIGHTS",
43
+ ]
44
+
45
+
46
+ field :business, 'Business'
47
+ field :creation_time, 'datetime'
48
+ field :id, 'string'
49
+ field :name, 'string'
50
+
51
+ has_edge :agencies do |edge|
52
+ edge.delete do |api|
53
+ api.has_param :business, 'string'
54
+ end
55
+ edge.get 'Business'
56
+ edge.post 'BusinessCreativeFolder' do |api|
57
+ api.has_param :business, 'string'
58
+ api.has_param :permitted_tasks, { list: { enum: -> { BusinessCreativeFolder::PERMITTED_TASKS }} }
59
+ end
60
+ end
61
+
62
+ has_edge :assigned_users do |edge|
63
+ edge.delete do |api|
64
+ api.has_param :user, 'int'
65
+ end
66
+ edge.get 'AssignedUser' do |api|
67
+ api.has_param :business, 'string'
68
+ end
69
+ edge.post 'BusinessCreativeFolder' do |api|
70
+ api.has_param :tasks, { list: { enum: -> { BusinessCreativeFolder::TASKS }} }
71
+ api.has_param :user, 'int'
72
+ end
73
+ end
74
+
75
+ end
76
+ end
@@ -0,0 +1,46 @@
1
+ # Copyright (c) 2017-present, Facebook, Inc. All rights reserved.
2
+ #
3
+ # You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
4
+ # copy, modify, and distribute this software in source code or binary form for use
5
+ # in connection with the web services and APIs provided by Facebook.
6
+ #
7
+ # As with any software that integrates with the Facebook platform, your use of
8
+ # this software is subject to the Facebook Platform Policy
9
+ # [http://developers.facebook.com/policy/]. This copyright notice shall be
10
+ # included in all copies or substantial portions of the software.
11
+ #
12
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
13
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
14
+ # FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
15
+ # COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
16
+ # IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
17
+ # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
18
+
19
+ # FB:AUTOGEN
20
+
21
+ module FacebookAds
22
+ # This class is auto-generated.
23
+
24
+ # For any issues or feature requests related to this class, please let us know
25
+ # on github and we'll fix in our codegen framework. We'll not be able to accept
26
+ # pull request for this class.
27
+
28
+ class BusinessImage < AdObject
29
+
30
+ field :business, 'Business'
31
+ field :creation_time, 'datetime'
32
+ field :hash, 'string'
33
+ field :height, 'int'
34
+ field :id, 'string'
35
+ field :name, 'string'
36
+ field :url, 'string'
37
+ field :url_128, 'string'
38
+ field :width, 'int'
39
+ has_no_post
40
+
41
+ has_edge :insights do |edge|
42
+ edge.get
43
+ end
44
+
45
+ end
46
+ end
@@ -25,14 +25,14 @@ 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 AdCreativeOptimizationSpec < AdObject
28
+ class CollaborativeAdsShareSettings < AdObject
29
29
 
30
- field :bodies, { list: 'string' }
31
- field :descriptions, { list: 'string' }
32
- field :titles, { list: 'string' }
33
- has_no_id
34
- has_no_get
35
- has_no_post
30
+ field :agency_business, 'Business'
31
+ field :id, 'string'
32
+ field :product_catalog_proxy_id, 'string'
33
+ field :utm_campaign, 'string'
34
+ field :utm_medium, 'string'
35
+ field :utm_source, 'string'
36
36
  has_no_delete
37
37
 
38
38
  end
@@ -89,12 +89,7 @@ module FacebookAds
89
89
  edge.get 'Profile'
90
90
  end
91
91
 
92
- has_edge :comments do |edge|
93
- edge.get 'NullNode'
94
- end
95
-
96
92
  has_edge :feed do |edge|
97
- edge.get 'NullNode'
98
93
  edge.post do |api|
99
94
  api.has_param :actions, 'object'
100
95
  api.has_param :adaptive_type, 'string'
@@ -212,7 +207,6 @@ module FacebookAds
212
207
  end
213
208
 
214
209
  has_edge :live_videos do |edge|
215
- edge.get 'NullNode'
216
210
  edge.post 'LiveVideo' do |api|
217
211
  api.has_param :attribution_app_id, 'string'
218
212
  api.has_param :content_tags, { list: 'string' }
@@ -240,7 +234,6 @@ module FacebookAds
240
234
  end
241
235
 
242
236
  has_edge :photos do |edge|
243
- edge.get 'NullNode'
244
237
  edge.post 'Photo' do |api|
245
238
  api.has_param :aid, 'string'
246
239
  api.has_param :allow_spherical_photo, 'bool'
@@ -297,20 +290,17 @@ module FacebookAds
297
290
  end
298
291
 
299
292
  has_edge :picture do |edge|
300
- edge.get 'NullNode'
301
- end
302
-
303
- has_edge :posts do |edge|
304
- edge.get 'NullNode'
293
+ edge.get 'ProfilePictureSource' do |api|
294
+ api.has_param :height, 'int'
295
+ api.has_param :redirect, 'bool'
296
+ api.has_param :type, { enum: -> { ProfilePictureSource::TYPE }}
297
+ api.has_param :width, 'int'
298
+ end
305
299
  end
306
300
 
307
301
  has_edge :roles do |edge|
308
302
  edge.get 'Profile'
309
303
  end
310
304
 
311
- has_edge :videos do |edge|
312
- edge.get 'NullNode'
313
- end
314
-
315
305
  end
316
306
  end
@@ -26,11 +26,6 @@ module FacebookAds
26
26
  # pull request for this class.
27
27
 
28
28
  class EventSourceGroup < AdObject
29
- TASKS = [
30
- "ANALYZE",
31
- "ANALYZE_WITH_LIMITATIONS",
32
- ]
33
-
34
29
 
35
30
  field :business, 'Business'
36
31
  field :event_sources, { list: 'ExternalEventSource' }
@@ -45,18 +40,5 @@ module FacebookAds
45
40
  end
46
41
  end
47
42
 
48
- has_edge :userpermissions do |edge|
49
- edge.delete do |api|
50
- api.has_param :user, 'int'
51
- end
52
- edge.get do |api|
53
- api.has_param :user, 'int'
54
- end
55
- edge.post 'EventSourceGroup' do |api|
56
- api.has_param :tasks, { list: { enum: -> { EventSourceGroup::TASKS }} }
57
- api.has_param :user, 'int'
58
- end
59
- end
60
-
61
43
  end
62
44
  end