facebookbusiness 0.3.2.12 → 0.3.2.13

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 (72) hide show
  1. checksums.yaml +4 -4
  2. data/lib/facebook_ads/ad_objects/ad.rb +26 -26
  3. data/lib/facebook_ads/ad_objects/ad_account.rb +282 -281
  4. data/lib/facebook_ads/ad_objects/ad_account_creation_request.rb +13 -13
  5. data/lib/facebook_ads/ad_objects/ad_asset_feed_spec.rb +2 -0
  6. data/lib/facebook_ads/ad_objects/ad_creative.rb +11 -9
  7. data/lib/facebook_ads/ad_objects/ad_creative_link_data_call_to_action.rb +2 -0
  8. data/lib/facebook_ads/ad_objects/{legacy_business_ad_account_request.rb → ad_creative_optimization_spec.rb} +5 -4
  9. data/lib/facebook_ads/ad_objects/ad_monetization_property.rb +1 -1
  10. data/lib/facebook_ads/ad_objects/ad_report_run.rb +5 -5
  11. data/lib/facebook_ads/ad_objects/ad_report_spec.rb +3 -3
  12. data/lib/facebook_ads/ad_objects/ad_rule.rb +1 -1
  13. data/lib/facebook_ads/ad_objects/ad_set.rb +25 -25
  14. data/lib/facebook_ads/ad_objects/ad_study.rb +13 -13
  15. data/lib/facebook_ads/ad_objects/ad_video.rb +64 -61
  16. data/lib/facebook_ads/ad_objects/ads_insights.rb +0 -3
  17. data/lib/facebook_ads/ad_objects/ads_pixel.rb +5 -5
  18. data/lib/facebook_ads/ad_objects/album.rb +49 -49
  19. data/lib/facebook_ads/ad_objects/application.rb +99 -122
  20. data/lib/facebook_ads/ad_objects/business.rb +94 -93
  21. data/lib/facebook_ads/ad_objects/calibrator_existing_rule.rb +1 -1
  22. data/lib/facebook_ads/ad_objects/campaign.rb +21 -21
  23. data/lib/facebook_ads/ad_objects/comment.rb +5 -5
  24. data/lib/facebook_ads/ad_objects/custom_audience.rb +34 -34
  25. data/lib/facebook_ads/ad_objects/custom_conversion.rb +4 -4
  26. data/lib/facebook_ads/ad_objects/direct_deal.rb +1 -1
  27. data/lib/facebook_ads/ad_objects/event.rb +188 -188
  28. data/lib/facebook_ads/ad_objects/event_source_group.rb +1 -1
  29. data/lib/facebook_ads/ad_objects/extended_credit.rb +3 -3
  30. data/lib/facebook_ads/ad_objects/group.rb +217 -217
  31. data/lib/facebook_ads/ad_objects/hotel.rb +6 -6
  32. data/lib/facebook_ads/ad_objects/ig_comment.rb +1 -1
  33. data/lib/facebook_ads/ad_objects/ig_media.rb +1 -1
  34. data/lib/facebook_ads/ad_objects/ig_user.rb +6 -6
  35. data/lib/facebook_ads/ad_objects/instagram_user.rb +2 -2
  36. data/lib/facebook_ads/ad_objects/instant_article.rb +1 -1
  37. data/lib/facebook_ads/ad_objects/leadgen_form.rb +2 -2
  38. data/lib/facebook_ads/ad_objects/life_event.rb +7 -7
  39. data/lib/facebook_ads/ad_objects/link.rb +11 -11
  40. data/lib/facebook_ads/ad_objects/live_encoder.rb +20 -20
  41. data/lib/facebook_ads/ad_objects/live_video.rb +5 -5
  42. data/lib/facebook_ads/ad_objects/native_offer.rb +9 -9
  43. data/lib/facebook_ads/ad_objects/native_offer_view.rb +3 -3
  44. data/lib/facebook_ads/ad_objects/offline_conversion_data_set.rb +16 -16
  45. data/lib/facebook_ads/ad_objects/open_graph_object.rb +47 -47
  46. data/lib/facebook_ads/ad_objects/owned_domain.rb +0 -1
  47. data/lib/facebook_ads/ad_objects/page.rb +405 -407
  48. data/lib/facebook_ads/ad_objects/page_post.rb +24 -23
  49. data/lib/facebook_ads/ad_objects/partner_integration_linked.rb +1 -0
  50. data/lib/facebook_ads/ad_objects/permission.rb +0 -1
  51. data/lib/facebook_ads/ad_objects/photo.rb +56 -56
  52. data/lib/facebook_ads/ad_objects/playable_content.rb +1 -1
  53. data/lib/facebook_ads/ad_objects/post.rb +61 -60
  54. data/lib/facebook_ads/ad_objects/product_catalog.rb +153 -133
  55. data/lib/facebook_ads/ad_objects/product_group.rb +32 -32
  56. data/lib/facebook_ads/ad_objects/product_item.rb +20 -20
  57. data/lib/facebook_ads/ad_objects/profile.rb +2 -2
  58. data/lib/facebook_ads/ad_objects/reach_frequency_prediction.rb +9 -10
  59. data/lib/facebook_ads/ad_objects/rtb_dynamic_post.rb +1 -1
  60. data/lib/facebook_ads/ad_objects/split_test_config.rb +0 -1
  61. data/lib/facebook_ads/ad_objects/status.rb +11 -11
  62. data/lib/facebook_ads/ad_objects/unified_thread.rb +5 -5
  63. data/lib/facebook_ads/ad_objects/user.rb +307 -305
  64. data/lib/facebook_ads/ad_objects/user_invitable_friend.rb +2 -2
  65. data/lib/facebook_ads/ad_objects/user_taggable_friend.rb +2 -2
  66. data/lib/facebook_ads/ad_objects/vehicle.rb +1 -0
  67. data/lib/facebook_ads/ad_objects/video_game_show.rb +2 -2
  68. data/lib/facebook_ads/ad_objects/video_list.rb +6 -6
  69. data/lib/facebook_ads/version.rb +1 -1
  70. metadata +3 -5
  71. data/lib/facebook_ads/ad_objects/ads_post.rb +0 -56
  72. data/lib/facebook_ads/ad_objects/favorite_request.rb +0 -69
@@ -54,22 +54,22 @@ module FacebookAds
54
54
  has_edge :comments do |edge|
55
55
  edge.get 'Comment' do |api|
56
56
  api.has_param :filter, { enum: -> { Comment::FILTER }}
57
- api.has_param :order, { enum: -> { Comment::ORDER }}
58
57
  api.has_param :live_filter, { enum: -> { Comment::LIVE_FILTER }}
58
+ api.has_param :order, { enum: -> { Comment::ORDER }}
59
59
  api.has_param :since, 'datetime'
60
60
  end
61
61
  edge.post 'Comment' do |api|
62
- api.has_param :object_id, 'string'
63
- api.has_param :parent_comment_id, 'object'
64
- api.has_param :nectar_module, 'string'
65
62
  api.has_param :attachment_id, 'string'
66
- api.has_param :attachment_url, 'string'
67
63
  api.has_param :attachment_share_url, 'string'
68
- api.has_param :feedback_source, 'string'
64
+ api.has_param :attachment_url, 'string'
65
+ api.has_param :comment_privacy_value, { enum: -> { Comment::COMMENT_PRIVACY_VALUE }}
69
66
  api.has_param :facepile_mentioned_ids, { list: 'string' }
67
+ api.has_param :feedback_source, 'string'
70
68
  api.has_param :is_offline, 'bool'
71
- api.has_param :comment_privacy_value, { enum: -> { Comment::COMMENT_PRIVACY_VALUE }}
72
69
  api.has_param :message, 'string'
70
+ api.has_param :nectar_module, 'string'
71
+ api.has_param :object_id, 'string'
72
+ api.has_param :parent_comment_id, 'object'
73
73
  api.has_param :text, 'string'
74
74
  api.has_param :tracking, 'string'
75
75
  end
@@ -78,73 +78,73 @@ module FacebookAds
78
78
  has_edge :likes do |edge|
79
79
  edge.get 'Profile'
80
80
  edge.post 'OpenGraphObject' do |api|
81
+ api.has_param :action, 'string'
81
82
  api.has_param :message, 'string'
82
- api.has_param :url, 'string'
83
83
  api.has_param :ref, 'string'
84
- api.has_param :action, 'string'
84
+ api.has_param :url, 'string'
85
85
  end
86
86
  end
87
87
 
88
88
  has_edge :photos do |edge|
89
89
  edge.post 'Photo' do |api|
90
90
  api.has_param :aid, 'string'
91
+ api.has_param :allow_spherical_photo, 'bool'
91
92
  api.has_param :alt_text_custom, 'string'
93
+ api.has_param :android_key_hash, 'string'
94
+ api.has_param :application_id, 'string'
95
+ api.has_param :attempt, 'int'
96
+ api.has_param :audience_exp, 'bool'
97
+ api.has_param :backdated_time, 'datetime'
98
+ api.has_param :backdated_time_granularity, { enum: -> { Photo::BACKDATED_TIME_GRANULARITY }}
92
99
  api.has_param :caption, 'string'
93
- api.has_param :url, 'string'
94
- api.has_param :uid, 'int'
95
- api.has_param :profile_id, 'int'
96
- api.has_param :target_id, 'int'
97
- api.has_param :vault_image_id, 'string'
98
- api.has_param :tags, { list: 'object' }
99
- api.has_param :place, 'object'
100
- api.has_param :is_explicit_place, 'bool'
100
+ api.has_param :composer_session_id, 'string'
101
+ api.has_param :direct_share_status, 'int'
102
+ api.has_param :feed_targeting, 'object'
103
+ api.has_param :filter_type, 'int'
104
+ api.has_param :full_res_is_coming_later, 'bool'
105
+ api.has_param :initial_view_heading_override_degrees, 'int'
106
+ api.has_param :initial_view_pitch_override_degrees, 'int'
107
+ api.has_param :initial_view_vertical_fov_override_degrees, 'int'
108
+ api.has_param :ios_bundle_id, 'string'
101
109
  api.has_param :is_explicit_location, 'bool'
110
+ api.has_param :is_explicit_place, 'bool'
111
+ api.has_param :manual_privacy, 'bool'
112
+ api.has_param :message, 'string'
113
+ api.has_param :name, 'string'
114
+ api.has_param :no_story, 'bool'
115
+ api.has_param :offline_id, 'int'
102
116
  api.has_param :og_action_type_id, 'string'
117
+ api.has_param :og_icon_id, 'string'
103
118
  api.has_param :og_object_id, 'string'
104
119
  api.has_param :og_phrase, 'string'
105
- api.has_param :og_icon_id, 'string'
106
- api.has_param :og_suggestion_mechanism, 'string'
107
120
  api.has_param :og_set_profile_badge, 'bool'
121
+ api.has_param :og_suggestion_mechanism, 'string'
122
+ api.has_param :place, 'object'
108
123
  api.has_param :privacy, 'string'
109
- api.has_param :targeting, 'object'
110
- api.has_param :feed_targeting, 'object'
111
- api.has_param :no_story, 'bool'
124
+ api.has_param :profile_id, 'int'
125
+ api.has_param :proxied_app_id, 'string'
112
126
  api.has_param :published, 'bool'
113
- api.has_param :offline_id, 'int'
114
- api.has_param :attempt, 'int'
115
- api.has_param :backdated_time, 'datetime'
116
- api.has_param :backdated_time_granularity, { enum: -> { Photo::BACKDATED_TIME_GRANULARITY }}
117
- api.has_param :time_since_original_post, 'int'
118
- api.has_param :filter_type, 'int'
119
- api.has_param :scheduled_publish_time, 'int'
120
- api.has_param :unpublished_content_type, { enum: -> { Photo::UNPUBLISHED_CONTENT_TYPE }}
121
- api.has_param :full_res_is_coming_later, 'bool'
122
- api.has_param :composer_session_id, 'string'
123
127
  api.has_param :qn, 'string'
124
- api.has_param :manual_privacy, 'bool'
125
- api.has_param :audience_exp, 'bool'
126
- api.has_param :proxied_app_id, 'string'
127
- api.has_param :ios_bundle_id, 'string'
128
- api.has_param :android_key_hash, 'string'
129
- api.has_param :user_selected_tags, 'bool'
130
- api.has_param :allow_spherical_photo, 'bool'
128
+ api.has_param :scheduled_publish_time, 'int'
131
129
  api.has_param :spherical_metadata, 'hash'
132
- api.has_param :initial_view_heading_override_degrees, 'int'
133
- api.has_param :initial_view_pitch_override_degrees, 'int'
134
- api.has_param :initial_view_vertical_fov_override_degrees, 'int'
135
130
  api.has_param :sponsor_id, 'string'
136
- api.has_param :direct_share_status, 'int'
137
131
  api.has_param :sponsor_relationship, 'int'
138
- api.has_param :application_id, 'string'
139
- api.has_param :name, 'string'
140
- api.has_param :message, 'string'
132
+ api.has_param :tags, { list: 'object' }
133
+ api.has_param :target_id, 'int'
134
+ api.has_param :targeting, 'object'
135
+ api.has_param :time_since_original_post, 'int'
136
+ api.has_param :uid, 'int'
137
+ api.has_param :unpublished_content_type, { enum: -> { Photo::UNPUBLISHED_CONTENT_TYPE }}
138
+ api.has_param :url, 'string'
139
+ api.has_param :user_selected_tags, 'bool'
140
+ api.has_param :vault_image_id, 'string'
141
141
  end
142
142
  end
143
143
 
144
144
  has_edge :picture do |edge|
145
145
  edge.get 'ProfilePictureSource' do |api|
146
- api.has_param :type, { enum: -> { ProfilePictureSource::TYPE }}
147
146
  api.has_param :redirect, 'bool'
147
+ api.has_param :type, { enum: -> { ProfilePictureSource::TYPE }}
148
148
  end
149
149
  end
150
150
 
@@ -28,7 +28,6 @@ module FacebookAds
28
28
  class OwnedDomain < AdObject
29
29
  PERMITTED_ROLES = [
30
30
  "ADMIN",
31
- "WEBMASTER_DEVELOPER",
32
31
  ]
33
32
 
34
33
 
@@ -129,6 +129,7 @@ module FacebookAds
129
129
  "PAGES_MESSAGING",
130
130
  "PAGES_MESSAGING_SUBSCRIPTIONS",
131
131
  "READ_PAGE_MAILBOXES",
132
+ "VIEW_MONETIZATION_INSIGHTS",
132
133
  ]
133
134
 
134
135
  TASKS = [
@@ -142,6 +143,7 @@ module FacebookAds
142
143
  "PAGES_MESSAGING",
143
144
  "PAGES_MESSAGING_SUBSCRIPTIONS",
144
145
  "READ_PAGE_MAILBOXES",
146
+ "VIEW_MONETIZATION_INSIGHTS",
145
147
  ]
146
148
 
147
149
  MESSAGING_TYPE = [
@@ -240,6 +242,7 @@ module FacebookAds
240
242
  "messaging_account_linking",
241
243
  "messaging_appointments",
242
244
  "messaging_checkout_updates",
245
+ "messaging_direct_sends",
243
246
  "messaging_game_plays",
244
247
  "messaging_handovers",
245
248
  "messaging_optins",
@@ -299,7 +302,7 @@ module FacebookAds
299
302
 
300
303
  field :about, 'string'
301
304
  field :access_token, 'string'
302
- field :ad_campaign, 'object'
305
+ field :ad_campaign, 'AdSet'
303
306
  field :affiliation, 'string'
304
307
  field :app_id, 'string'
305
308
  field :app_links, 'AppLinks'
@@ -320,7 +323,7 @@ module FacebookAds
320
323
  field :category_list, { list: 'PageCategory' }
321
324
  field :checkins, 'int'
322
325
  field :company_overview, 'string'
323
- field :connected_instagram_account, 'object'
326
+ field :connected_instagram_account, 'IgUser'
324
327
  field :contact_address, 'MailingAddress'
325
328
  field :context, 'OpenGraphContext'
326
329
  field :copyright_attribution_insights, 'CopyrightAttributionInsights'
@@ -354,7 +357,7 @@ module FacebookAds
354
357
  field :id, 'string'
355
358
  field :impressum, 'string'
356
359
  field :influences, 'string'
357
- field :instagram_business_account, 'object'
360
+ field :instagram_business_account, 'IgUser'
358
361
  field :instant_articles_review_status, 'string'
359
362
  field :is_always_open, 'bool'
360
363
  field :is_chain, 'bool'
@@ -444,11 +447,11 @@ module FacebookAds
444
447
 
445
448
  has_edge :activities do |edge|
446
449
  edge.post 'Page' do |api|
447
- api.has_param :page_scoped_user_id, 'int'
448
- api.has_param :user_ref, 'string'
449
450
  api.has_param :advertiser_tracking_enabled, 'bool'
450
- api.has_param :custom_events, { list: 'object' }
451
451
  api.has_param :app_id, 'string'
452
+ api.has_param :custom_events, { list: 'object' }
453
+ api.has_param :page_scoped_user_id, 'int'
454
+ api.has_param :user_ref, 'string'
452
455
  end
453
456
  end
454
457
 
@@ -469,30 +472,32 @@ module FacebookAds
469
472
 
470
473
  has_edge :admins do |edge|
471
474
  edge.delete do |api|
472
- api.has_param :trusted, 'bool'
473
475
  api.has_param :admin_id, 'int'
476
+ api.has_param :trusted, 'bool'
474
477
  end
475
478
  edge.post 'User' do |api|
476
- api.has_param :trusted, 'bool'
477
479
  api.has_param :admin_id, 'int'
478
480
  api.has_param :tasks, { list: { enum: -> { User::TASKS }} }
481
+ api.has_param :trusted, 'bool'
479
482
  end
480
483
  end
481
484
 
482
485
  has_edge :adminstickysettings do |edge|
483
486
  edge.post 'Page' do |api|
484
- api.has_param :budget, 'int'
485
- api.has_param :currency, 'string'
486
487
  api.has_param :ad_account_id, 'string'
487
488
  api.has_param :audience, { enum: -> { Page::AUDIENCE }}
488
- api.has_param :targeting, 'Targeting'
489
+ api.has_param :budget, 'int'
489
490
  api.has_param :campaign_length, 'datetime'
491
+ api.has_param :currency, 'string'
492
+ api.has_param :targeting, 'Targeting'
490
493
  end
491
494
  end
492
495
 
493
496
  has_edge :ads_posts do |edge|
494
- edge.get 'AdsPost' do |api|
497
+ edge.get 'PagePost' do |api|
495
498
  api.has_param :include_inline_create, 'bool'
499
+ api.has_param :since, 'datetime'
500
+ api.has_param :until, 'datetime'
496
501
  end
497
502
  end
498
503
 
@@ -510,17 +515,17 @@ module FacebookAds
510
515
  has_edge :albums do |edge|
511
516
  edge.get 'Album'
512
517
  edge.post 'Album' do |api|
513
- api.has_param :is_default, 'bool'
514
- api.has_param :name, 'string'
515
- api.has_param :description, 'string'
516
518
  api.has_param :contributors, { list: 'int' }
517
- api.has_param :make_shared_album, 'bool'
519
+ api.has_param :description, 'string'
520
+ api.has_param :is_default, 'bool'
518
521
  api.has_param :location, 'string'
519
- api.has_param :visible, 'string'
520
- api.has_param :privacy, 'string'
522
+ api.has_param :make_shared_album, 'bool'
523
+ api.has_param :message, 'string'
524
+ api.has_param :name, 'string'
521
525
  api.has_param :place, 'object'
526
+ api.has_param :privacy, 'string'
522
527
  api.has_param :tags, { list: 'int' }
523
- api.has_param :message, 'string'
528
+ api.has_param :visible, 'string'
524
529
  end
525
530
  end
526
531
 
@@ -536,8 +541,8 @@ module FacebookAds
536
541
  api.has_param :business, 'string'
537
542
  end
538
543
  edge.post 'Page' do |api|
539
- api.has_param :user, 'int'
540
544
  api.has_param :tasks, { list: { enum: -> { Page::TASKS }} }
545
+ api.has_param :user, 'int'
541
546
  end
542
547
  end
543
548
 
@@ -547,32 +552,32 @@ module FacebookAds
547
552
 
548
553
  has_edge :blocked do |edge|
549
554
  edge.delete do |api|
555
+ api.has_param :asid, 'int'
550
556
  api.has_param :uid, 'int'
551
557
  api.has_param :user, 'int'
552
- api.has_param :asid, 'int'
553
558
  end
554
559
  edge.get 'Profile' do |api|
555
560
  api.has_param :uid, 'int'
556
561
  api.has_param :user, 'int'
557
562
  end
558
563
  edge.post do |api|
559
- api.has_param :user, { list: 'string' }
560
- api.has_param :uid, { list: 'string' }
561
564
  api.has_param :asid, { list: 'string' }
565
+ api.has_param :uid, { list: 'string' }
566
+ api.has_param :user, { list: 'string' }
562
567
  end
563
568
  end
564
569
 
565
570
  has_edge :broadcast_messages do |edge|
566
571
  edge.get 'PageBroadcast'
567
572
  edge.post 'Page' do |api|
573
+ api.has_param :custom_label_id, 'int'
568
574
  api.has_param :message_creative_id, 'string'
575
+ api.has_param :messaging_type, { enum: -> { Page::MESSAGING_TYPE }}
569
576
  api.has_param :notification_type, { enum: -> { Page::NOTIFICATION_TYPE }}
577
+ api.has_param :schedule_local_time, 'string'
578
+ api.has_param :schedule_time, 'datetime'
570
579
  api.has_param :tag, 'object'
571
- api.has_param :messaging_type, { enum: -> { Page::MESSAGING_TYPE }}
572
580
  api.has_param :targeting, 'object'
573
- api.has_param :custom_label_id, 'int'
574
- api.has_param :schedule_time, 'datetime'
575
- api.has_param :schedule_local_time, 'string'
576
581
  end
577
582
  end
578
583
 
@@ -608,37 +613,37 @@ module FacebookAds
608
613
  has_edge :call_to_actions do |edge|
609
614
  edge.get 'PageCallToAction'
610
615
  edge.post 'PageCallToAction' do |api|
611
- api.has_param :type, { enum: -> { PageCallToAction::TYPE }}
612
- api.has_param :web_destination_type, { enum: -> { PageCallToAction::WEB_DESTINATION_TYPE }}
613
- api.has_param :android_destination_type, { enum: -> { PageCallToAction::ANDROID_DESTINATION_TYPE }}
614
- api.has_param :iphone_destination_type, { enum: -> { PageCallToAction::IPHONE_DESTINATION_TYPE }}
615
- api.has_param :intl_number_with_plus, 'string'
616
- api.has_param :web_url, 'string'
617
616
  api.has_param :android_app_id, 'int'
618
617
  api.has_param :android_deeplink, 'string'
618
+ api.has_param :android_destination_type, { enum: -> { PageCallToAction::ANDROID_DESTINATION_TYPE }}
619
619
  api.has_param :android_package_name, 'string'
620
620
  api.has_param :android_url, 'string'
621
+ api.has_param :email_address, 'string'
622
+ api.has_param :intl_number_with_plus, 'string'
621
623
  api.has_param :iphone_app_id, 'int'
622
624
  api.has_param :iphone_deeplink, 'string'
625
+ api.has_param :iphone_destination_type, { enum: -> { PageCallToAction::IPHONE_DESTINATION_TYPE }}
623
626
  api.has_param :iphone_url, 'string'
624
- api.has_param :email_address, 'string'
627
+ api.has_param :type, { enum: -> { PageCallToAction::TYPE }}
628
+ api.has_param :web_destination_type, { enum: -> { PageCallToAction::WEB_DESTINATION_TYPE }}
629
+ api.has_param :web_url, 'string'
625
630
  end
626
631
  end
627
632
 
628
633
  has_edge :canvas_elements do |edge|
629
634
  edge.get 'CanvasBodyElement'
630
635
  edge.post 'CanvasBodyElement' do |api|
631
- api.has_param :canvas_photo, 'object'
632
- api.has_param :canvas_video, 'object'
633
- api.has_param :canvas_text, 'object'
634
636
  api.has_param :canvas_button, 'object'
635
- api.has_param :canvas_footer, 'object'
636
637
  api.has_param :canvas_carousel, 'object'
638
+ api.has_param :canvas_footer, 'object'
637
639
  api.has_param :canvas_header, 'object'
640
+ api.has_param :canvas_lead_form, 'object'
641
+ api.has_param :canvas_photo, 'object'
638
642
  api.has_param :canvas_product_list, 'object'
639
643
  api.has_param :canvas_product_set, 'object'
640
644
  api.has_param :canvas_store_locator, 'object'
641
- api.has_param :canvas_lead_form, 'object'
645
+ api.has_param :canvas_text, 'object'
646
+ api.has_param :canvas_video, 'object'
642
647
  end
643
648
  end
644
649
 
@@ -647,11 +652,11 @@ module FacebookAds
647
652
  api.has_param :is_published, 'bool'
648
653
  end
649
654
  edge.post 'Canvas' do |api|
650
- api.has_param :body_element_ids, { list: 'string' }
651
655
  api.has_param :background_color, 'string'
656
+ api.has_param :body_element_ids, { list: 'string' }
652
657
  api.has_param :enable_swipe_to_open, 'bool'
653
- api.has_param :is_published, 'bool'
654
658
  api.has_param :is_hidden, 'bool'
659
+ api.has_param :is_published, 'bool'
655
660
  api.has_param :name, 'string'
656
661
  end
657
662
  end
@@ -668,20 +673,20 @@ module FacebookAds
668
673
 
669
674
  has_edge :conversations do |edge|
670
675
  edge.get 'UnifiedThread' do |api|
671
- api.has_param :tags, { list: 'string' }
672
676
  api.has_param :folder, 'string'
677
+ api.has_param :tags, { list: 'string' }
673
678
  api.has_param :user_id, 'string'
674
679
  end
675
680
  end
676
681
 
677
682
  has_edge :copyright_manual_claims do |edge|
678
683
  edge.post do |api|
679
- api.has_param :reference_asset_id, 'string'
680
- api.has_param :matched_asset_id, 'string'
681
- api.has_param :match_content_type, { enum: %w{AUDIO_ONLY VIDEO_AND_AUDIO VIDEO_ONLY }}
682
684
  api.has_param :action, { enum: %w{BLOCK CLAIM_AD_EARNINGS MANUAL_REVIEW MONITOR REQUEST_TAKEDOWN }}
683
685
  api.has_param :action_reason, { enum: %w{ARTIST_OBJECTION OBJECTIONABLE_CONTENT PREMIUM_MUSIC_VIDEO PRERELEASE_CONTENT PRODUCT_PARAMETERS RESTRICTED_CONTENT UNAUTHORIZED_COMMERCIAL_USE }}
684
686
  api.has_param :countries, 'object'
687
+ api.has_param :match_content_type, { enum: %w{AUDIO_ONLY VIDEO_AND_AUDIO VIDEO_ONLY }}
688
+ api.has_param :matched_asset_id, 'string'
689
+ api.has_param :reference_asset_id, 'string'
685
690
  end
686
691
  end
687
692
 
@@ -723,10 +728,10 @@ module FacebookAds
723
728
 
724
729
  has_edge :events do |edge|
725
730
  edge.get 'Event' do |api|
726
- api.has_param :type, { enum: -> { Event::TYPE }}
731
+ api.has_param :event_state_filter, { list: { enum: -> { Event::EVENT_STATE_FILTER }} }
727
732
  api.has_param :include_canceled, 'bool'
728
733
  api.has_param :time_filter, { enum: -> { Event::TIME_FILTER }}
729
- api.has_param :event_state_filter, { list: { enum: -> { Event::EVENT_STATE_FILTER }} }
734
+ api.has_param :type, { enum: -> { Event::TYPE }}
730
735
  end
731
736
  end
732
737
 
@@ -745,134 +750,134 @@ module FacebookAds
745
750
  has_edge :feed do |edge|
746
751
  edge.get 'PagePost' do |api|
747
752
  api.has_param :include_hidden, 'bool'
748
- api.has_param :with, { enum: -> { PagePost::WITH }}
749
753
  api.has_param :show_expired, 'bool'
754
+ api.has_param :with, { enum: -> { PagePost::WITH }}
750
755
  end
751
756
  edge.post 'PagePost' do |api|
752
- api.has_param :picture, 'string'
753
- api.has_param :name, 'string'
754
- api.has_param :link, 'string'
755
- api.has_param :caption, 'string'
756
- api.has_param :description, 'string'
757
- api.has_param :quote, 'string'
758
- api.has_param :source, 'string'
759
- api.has_param :properties, 'object'
760
- api.has_param :object_attachment, 'string'
761
- api.has_param :height, 'int'
762
- api.has_param :width, 'int'
763
- api.has_param :expanded_height, 'int'
764
- api.has_param :expanded_width, 'int'
765
- api.has_param :referral_id, 'string'
766
- api.has_param :thumbnail, 'file'
767
- api.has_param :image_crops, 'hash'
768
- api.has_param :call_to_action, 'object'
769
- api.has_param :time_since_original_post, 'int'
770
- api.has_param :client_mutation_id, 'string'
771
- api.has_param :privacy, 'string'
772
- api.has_param :composer_session_id, 'string'
773
- api.has_param :content_attachment, 'string'
774
757
  api.has_param :actions, 'object'
775
- api.has_param :targeting, 'object'
776
- api.has_param :feed_targeting, 'object'
777
- api.has_param :ref, { list: 'string' }
778
- api.has_param :tags, { list: 'int' }
779
- api.has_param :place, 'object'
780
- api.has_param :is_explicit_location, 'bool'
781
- api.has_param :og_action_type_id, 'string'
782
- api.has_param :og_object_id, 'string'
783
- api.has_param :og_phrase, 'string'
784
- api.has_param :og_icon_id, 'string'
785
- api.has_param :og_set_profile_badge, 'bool'
786
- api.has_param :og_suggestion_mechanism, 'string'
787
- api.has_param :og_hide_object_attachment, 'bool'
788
- api.has_param :backdated_time, 'datetime'
789
- api.has_param :backdated_time_granularity, { enum: -> { PagePost::BACKDATED_TIME_GRANULARITY }}
790
- api.has_param :published, 'bool'
791
- api.has_param :scheduled_publish_time, 'datetime'
792
- api.has_param :unpublished_content_type, { enum: -> { PagePost::UNPUBLISHED_CONTENT_TYPE }}
793
- api.has_param :application_id, 'string'
794
- api.has_param :proxied_app_id, 'string'
795
- api.has_param :ios_bundle_id, 'string'
796
- api.has_param :android_key_hash, 'string'
797
- api.has_param :user_selected_tags, 'bool'
798
- api.has_param :nectar_module, 'string'
799
- api.has_param :manual_privacy, 'bool'
800
- api.has_param :audience_exp, 'bool'
801
- api.has_param :coordinates, 'object'
802
- api.has_param :is_explicit_share, 'bool'
803
- api.has_param :is_photo_container, 'bool'
804
- api.has_param :implicit_with_tags, { list: 'int' }
805
- api.has_param :child_attachments, { list: 'object' }
806
- api.has_param :suggested_place_id, 'object'
807
- api.has_param :attach_place_suggestion, 'bool'
808
- api.has_param :viewer_coordinates, 'object'
809
- api.has_param :album_id, 'string'
810
- api.has_param :multi_share_optimized, 'bool'
811
- api.has_param :multi_share_end_card, 'bool'
812
- api.has_param :title, 'string'
813
- api.has_param :attached_media, { list: 'object' }
814
- api.has_param :home_checkin_city_id, 'object'
815
- api.has_param :text_only_place, 'string'
816
- api.has_param :connection_class, 'string'
817
- api.has_param :associated_id, 'string'
818
- api.has_param :posting_to_redspace, { enum: -> { PagePost::POSTING_TO_REDSPACE }}
819
- api.has_param :place_attachment_setting, { enum: -> { PagePost::PLACE_ATTACHMENT_SETTING }}
820
- api.has_param :checkin_entry_point, { enum: -> { PagePost::CHECKIN_ENTRY_POINT }}
821
- api.has_param :is_backout_draft, 'bool'
822
- api.has_param :sponsor_id, 'string'
823
- api.has_param :direct_share_status, 'int'
824
- api.has_param :sponsor_relationship, 'int'
825
- api.has_param :referenceable_image_ids, { list: 'string' }
826
- api.has_param :prompt_id, 'string'
827
- api.has_param :prompt_tracking_string, 'string'
828
- api.has_param :post_surfaces_blacklist, { list: { enum: -> { PagePost::POST_SURFACES_BLACKLIST }} }
829
- api.has_param :tracking_info, 'string'
830
- api.has_param :text_format_preset_id, 'string'
831
- api.has_param :cta_link, 'string'
832
- api.has_param :cta_type, 'string'
833
- api.has_param :place_list_data, { list: 'string' }
834
- api.has_param :formatting, { enum: -> { PagePost::FORMATTING }}
835
- api.has_param :target_surface, { enum: -> { PagePost::TARGET_SURFACE }}
836
758
  api.has_param :adaptive_type, 'string'
759
+ api.has_param :album_id, 'string'
760
+ api.has_param :android_key_hash, 'string'
837
761
  api.has_param :animated_effect_id, 'int'
762
+ api.has_param :application_id, 'string'
838
763
  api.has_param :asked_fun_fact_prompt_id, 'int'
839
764
  api.has_param :asset3d_id, 'int'
765
+ api.has_param :associated_id, 'string'
766
+ api.has_param :attach_place_suggestion, 'bool'
767
+ api.has_param :attached_media, { list: 'object' }
768
+ api.has_param :audience_exp, 'bool'
769
+ api.has_param :backdated_time, 'datetime'
770
+ api.has_param :backdated_time_granularity, { enum: -> { PagePost::BACKDATED_TIME_GRANULARITY }}
771
+ api.has_param :call_to_action, 'object'
772
+ api.has_param :caption, 'string'
773
+ api.has_param :checkin_entry_point, { enum: -> { PagePost::CHECKIN_ENTRY_POINT }}
774
+ api.has_param :child_attachments, { list: 'object' }
775
+ api.has_param :client_mutation_id, 'string'
840
776
  api.has_param :composer_entry_picker, 'string'
841
777
  api.has_param :composer_entry_point, 'string'
842
778
  api.has_param :composer_entry_time, 'int'
843
779
  api.has_param :composer_session_events_log, 'string'
780
+ api.has_param :composer_session_id, 'string'
844
781
  api.has_param :composer_source_surface, 'string'
845
782
  api.has_param :composer_type, 'string'
783
+ api.has_param :connection_class, 'string'
784
+ api.has_param :content_attachment, 'string'
785
+ api.has_param :coordinates, 'object'
786
+ api.has_param :cta_link, 'string'
787
+ api.has_param :cta_type, 'string'
788
+ api.has_param :description, 'string'
789
+ api.has_param :direct_share_status, 'int'
790
+ api.has_param :enforce_link_ownership, 'bool'
791
+ api.has_param :expanded_height, 'int'
792
+ api.has_param :expanded_width, 'int'
793
+ api.has_param :feed_targeting, 'object'
794
+ api.has_param :formatting, { enum: -> { PagePost::FORMATTING }}
846
795
  api.has_param :fun_fact_prompt_id, 'int'
847
796
  api.has_param :fun_fact_toastee_id, 'int'
848
- api.has_param :is_group_linking_post, 'bool'
849
797
  api.has_param :has_nickname, 'bool'
798
+ api.has_param :height, 'int'
850
799
  api.has_param :holiday_card, 'string'
800
+ api.has_param :home_checkin_city_id, 'object'
801
+ api.has_param :image_crops, 'hash'
802
+ api.has_param :implicit_with_tags, { list: 'int' }
851
803
  api.has_param :instant_game_entry_point_data, 'string'
804
+ api.has_param :ios_bundle_id, 'string'
805
+ api.has_param :is_backout_draft, 'bool'
852
806
  api.has_param :is_boost_intended, 'bool'
807
+ api.has_param :is_explicit_location, 'bool'
808
+ api.has_param :is_explicit_share, 'bool'
809
+ api.has_param :is_group_linking_post, 'bool'
810
+ api.has_param :is_photo_container, 'bool'
811
+ api.has_param :link, 'string'
853
812
  api.has_param :location_source_id, 'string'
813
+ api.has_param :manual_privacy, 'bool'
854
814
  api.has_param :message, 'string'
815
+ api.has_param :multi_share_end_card, 'bool'
816
+ api.has_param :multi_share_optimized, 'bool'
817
+ api.has_param :name, 'string'
818
+ api.has_param :nectar_module, 'string'
819
+ api.has_param :object_attachment, 'string'
855
820
  api.has_param :offer_like_post_id, 'int'
821
+ api.has_param :og_action_type_id, 'string'
822
+ api.has_param :og_hide_object_attachment, 'bool'
823
+ api.has_param :og_icon_id, 'string'
824
+ api.has_param :og_object_id, 'string'
825
+ api.has_param :og_phrase, 'string'
826
+ api.has_param :og_set_profile_badge, 'bool'
827
+ api.has_param :og_suggestion_mechanism, 'string'
856
828
  api.has_param :page_recommendation, 'string'
829
+ api.has_param :picture, 'string'
830
+ api.has_param :place, 'object'
831
+ api.has_param :place_attachment_setting, { enum: -> { PagePost::PLACE_ATTACHMENT_SETTING }}
857
832
  api.has_param :place_list, 'string'
833
+ api.has_param :place_list_data, { list: 'string' }
834
+ api.has_param :post_surfaces_blacklist, { list: { enum: -> { PagePost::POST_SURFACES_BLACKLIST }} }
835
+ api.has_param :posting_to_redspace, { enum: -> { PagePost::POSTING_TO_REDSPACE }}
836
+ api.has_param :privacy, 'string'
837
+ api.has_param :prompt_id, 'string'
838
+ api.has_param :prompt_tracking_string, 'string'
839
+ api.has_param :properties, 'object'
840
+ api.has_param :proxied_app_id, 'string'
858
841
  api.has_param :publish_event_id, 'int'
842
+ api.has_param :published, 'bool'
843
+ api.has_param :quote, 'string'
859
844
  api.has_param :react_mode_metadata, 'string'
845
+ api.has_param :ref, { list: 'string' }
846
+ api.has_param :referenceable_image_ids, { list: 'string' }
847
+ api.has_param :referral_id, 'string'
860
848
  api.has_param :sales_promo_id, 'int'
849
+ api.has_param :scheduled_publish_time, 'datetime'
850
+ api.has_param :source, 'string'
851
+ api.has_param :sponsor_id, 'string'
852
+ api.has_param :sponsor_relationship, 'int'
853
+ api.has_param :suggested_place_id, 'object'
854
+ api.has_param :tags, { list: 'int' }
855
+ api.has_param :target_surface, { enum: -> { PagePost::TARGET_SURFACE }}
856
+ api.has_param :targeting, 'object'
861
857
  api.has_param :text_format_metadata, 'string'
858
+ api.has_param :text_format_preset_id, 'string'
859
+ api.has_param :text_only_place, 'string'
862
860
  api.has_param :throwback_camera_roll_media, 'string'
863
- api.has_param :video_start_time_ms, 'int'
864
- api.has_param :enforce_link_ownership, 'bool'
865
- end
866
- end
861
+ api.has_param :thumbnail, 'file'
862
+ api.has_param :time_since_original_post, 'int'
863
+ api.has_param :title, 'string'
864
+ api.has_param :tracking_info, 'string'
865
+ api.has_param :unpublished_content_type, { enum: -> { PagePost::UNPUBLISHED_CONTENT_TYPE }}
866
+ api.has_param :user_selected_tags, 'bool'
867
+ api.has_param :video_start_time_ms, 'int'
868
+ api.has_param :viewer_coordinates, 'object'
869
+ api.has_param :width, 'int'
870
+ end
871
+ end
867
872
 
868
873
  has_edge :flags do |edge|
869
874
  edge.post 'Page' do |api|
875
+ api.has_param :endpoint, 'string'
876
+ api.has_param :entry_point, 'string'
877
+ api.has_param :flag, 'string'
870
878
  api.has_param :page_id, 'int'
871
879
  api.has_param :page_ids, { list: 'int' }
872
- api.has_param :flag, 'string'
873
880
  api.has_param :value, 'bool'
874
- api.has_param :entry_point, 'string'
875
- api.has_param :endpoint, 'string'
876
881
  end
877
882
  end
878
883
 
@@ -890,12 +895,12 @@ module FacebookAds
890
895
 
891
896
  has_edge :insights do |edge|
892
897
  edge.get 'InsightsResult' do |api|
893
- api.has_param :since, 'datetime'
894
- api.has_param :until, 'datetime'
898
+ api.has_param :date_preset, { enum: -> { InsightsResult::DATE_PRESET }}
895
899
  api.has_param :metric, { list: 'object' }
896
900
  api.has_param :period, { enum: -> { InsightsResult::PERIOD }}
897
901
  api.has_param :show_description_from_api_doc, 'bool'
898
- api.has_param :date_preset, { enum: -> { InsightsResult::DATE_PRESET }}
902
+ api.has_param :since, 'datetime'
903
+ api.has_param :until, 'datetime'
899
904
  end
900
905
  end
901
906
 
@@ -915,20 +920,20 @@ module FacebookAds
915
920
  api.has_param :development_mode, 'bool'
916
921
  end
917
922
  edge.post 'InstantArticle' do |api|
918
- api.has_param :html_source, 'string'
919
923
  api.has_param :development_mode, 'bool'
920
- api.has_param :take_live, 'bool'
924
+ api.has_param :html_source, 'string'
921
925
  api.has_param :published, 'bool'
926
+ api.has_param :take_live, 'bool'
922
927
  end
923
928
  end
924
929
 
925
930
  has_edge :instant_articles_insights do |edge|
926
931
  edge.get 'InstantArticleInsightsQueryResult' do |api|
932
+ api.has_param :breakdown, { enum: -> { InstantArticleInsightsQueryResult::BREAKDOWN }}
927
933
  api.has_param :metric, { list: 'object' }
928
934
  api.has_param :period, { enum: -> { InstantArticleInsightsQueryResult::PERIOD }}
929
935
  api.has_param :since, 'datetime'
930
936
  api.has_param :until, 'datetime'
931
- api.has_param :breakdown, { enum: -> { InstantArticleInsightsQueryResult::BREAKDOWN }}
932
937
  end
933
938
  end
934
939
 
@@ -960,44 +965,44 @@ module FacebookAds
960
965
  has_edge :leadgen_draft_forms do |edge|
961
966
  edge.get 'LeadGenDataDraft'
962
967
  edge.post 'LeadGenDataDraft' do |api|
963
- api.has_param :name, 'string'
964
- api.has_param :locale, { enum: -> { LeadGenDataDraft::LOCALE }}
965
968
  api.has_param :block_display_for_non_targeted_viewer, 'bool'
969
+ api.has_param :context_card, 'object'
970
+ api.has_param :context_card_id, 'string'
971
+ api.has_param :custom_disclaimer, 'object'
966
972
  api.has_param :follow_up_action_url, 'string'
973
+ api.has_param :is_optimized_for_quality, 'bool'
967
974
  api.has_param :legal_content_id, 'string'
968
- api.has_param :context_card_id, 'string'
969
- api.has_param :questions, { list: 'object' }
975
+ api.has_param :locale, { enum: -> { LeadGenDataDraft::LOCALE }}
976
+ api.has_param :name, 'string'
970
977
  api.has_param :privacy_policy, 'hash'
971
- api.has_param :custom_disclaimer, 'object'
972
- api.has_param :context_card, 'object'
978
+ api.has_param :question_page_custom_headline, 'string'
979
+ api.has_param :questions, { list: 'object' }
973
980
  api.has_param :thank_you_page, 'hash'
974
981
  api.has_param :tracking_parameters, 'hash'
975
- api.has_param :question_page_custom_headline, 'string'
976
- api.has_param :is_optimized_for_quality, 'bool'
977
982
  end
978
983
  end
979
984
 
980
985
  has_edge :leadgen_forms do |edge|
981
986
  edge.get 'LeadgenForm'
982
987
  edge.post 'LeadgenForm' do |api|
983
- api.has_param :name, 'string'
984
- api.has_param :locale, { enum: -> { LeadgenForm::LOCALE }}
985
988
  api.has_param :allow_organic_lead_retrieval, 'bool'
986
989
  api.has_param :block_display_for_non_targeted_viewer, 'bool'
990
+ api.has_param :context_card, 'object'
991
+ api.has_param :context_card_id, 'string'
992
+ api.has_param :cover_photo, 'file'
993
+ api.has_param :custom_disclaimer, 'object'
987
994
  api.has_param :follow_up_action_url, 'string'
995
+ api.has_param :is_for_canvas, 'bool'
996
+ api.has_param :is_optimized_for_quality, 'bool'
988
997
  api.has_param :legal_content_id, 'string'
989
- api.has_param :context_card_id, 'string'
990
- api.has_param :thank_you_page_id, 'string'
991
- api.has_param :questions, { list: 'object' }
998
+ api.has_param :locale, { enum: -> { LeadgenForm::LOCALE }}
999
+ api.has_param :name, 'string'
992
1000
  api.has_param :privacy_policy, 'object'
993
- api.has_param :custom_disclaimer, 'object'
994
- api.has_param :context_card, 'object'
1001
+ api.has_param :question_page_custom_headline, 'string'
1002
+ api.has_param :questions, { list: 'object' }
995
1003
  api.has_param :thank_you_page, 'object'
1004
+ api.has_param :thank_you_page_id, 'string'
996
1005
  api.has_param :tracking_parameters, 'hash'
997
- api.has_param :cover_photo, 'file'
998
- api.has_param :question_page_custom_headline, 'string'
999
- api.has_param :is_optimized_for_quality, 'bool'
1000
- api.has_param :is_for_canvas, 'bool'
1001
1006
  end
1002
1007
  end
1003
1008
 
@@ -1024,47 +1029,47 @@ module FacebookAds
1024
1029
  has_edge :live_encoders do |edge|
1025
1030
  edge.get 'LiveEncoder'
1026
1031
  edge.post 'LiveEncoder' do |api|
1027
- api.has_param :device_id, 'string'
1028
- api.has_param :name, 'string'
1029
1032
  api.has_param :brand, 'string'
1033
+ api.has_param :device_id, 'string'
1030
1034
  api.has_param :model, 'string'
1035
+ api.has_param :name, 'string'
1031
1036
  api.has_param :version, 'string'
1032
1037
  end
1033
1038
  end
1034
1039
 
1035
1040
  has_edge :live_videos do |edge|
1036
1041
  edge.get 'LiveVideo' do |api|
1037
- api.has_param :source, { enum: -> { LiveVideo::SOURCE }}
1038
1042
  api.has_param :broadcast_status, { list: { enum: -> { LiveVideo::BROADCAST_STATUS }} }
1043
+ api.has_param :source, { enum: -> { LiveVideo::SOURCE }}
1039
1044
  end
1040
1045
  edge.post 'LiveVideo' do |api|
1041
- api.has_param :title, 'string'
1042
- api.has_param :description, 'string'
1043
- api.has_param :save_vod, 'bool'
1044
- api.has_param :published, 'bool'
1045
- api.has_param :status, { enum: -> { LiveVideo::STATUS }}
1046
- api.has_param :privacy, 'string'
1047
- api.has_param :stop_on_delete_stream, 'bool'
1048
- api.has_param :stream_type, { enum: -> { LiveVideo::STREAM_TYPE }}
1046
+ api.has_param :attribution_app_id, 'string'
1049
1047
  api.has_param :content_tags, { list: 'string' }
1050
- api.has_param :is_spherical, 'bool'
1048
+ api.has_param :crossposting_actions, { list: 'hash' }
1049
+ api.has_param :custom_labels, { list: 'string' }
1050
+ api.has_param :description, 'string'
1051
+ api.has_param :encoding_settings, 'string'
1052
+ api.has_param :fisheye_video_cropped, 'bool'
1053
+ api.has_param :front_z_rotation, 'double'
1054
+ api.has_param :game_show, 'hash'
1051
1055
  api.has_param :is_audio_only, 'bool'
1056
+ api.has_param :is_spherical, 'bool'
1057
+ api.has_param :live_encoders, { list: 'string' }
1058
+ api.has_param :original_fov, 'int'
1052
1059
  api.has_param :planned_start_time, 'int'
1053
- api.has_param :schedule_custom_profile_image, 'file'
1060
+ api.has_param :privacy, 'string'
1061
+ api.has_param :product_items, { list: 'string' }
1054
1062
  api.has_param :projection, { enum: -> { LiveVideo::PROJECTION }}
1063
+ api.has_param :published, 'bool'
1064
+ api.has_param :save_vod, 'bool'
1065
+ api.has_param :schedule_custom_profile_image, 'file'
1055
1066
  api.has_param :spatial_audio_format, { enum: -> { LiveVideo::SPATIAL_AUDIO_FORMAT }}
1056
- api.has_param :encoding_settings, 'string'
1057
- api.has_param :live_encoders, { list: 'string' }
1058
- api.has_param :original_fov, 'int'
1059
- api.has_param :fisheye_video_cropped, 'bool'
1060
- api.has_param :front_z_rotation, 'double'
1061
- api.has_param :attribution_app_id, 'string'
1067
+ api.has_param :status, { enum: -> { LiveVideo::STATUS }}
1062
1068
  api.has_param :stereoscopic_mode, { enum: -> { LiveVideo::STEREOSCOPIC_MODE }}
1063
- api.has_param :custom_labels, { list: 'string' }
1069
+ api.has_param :stop_on_delete_stream, 'bool'
1070
+ api.has_param :stream_type, { enum: -> { LiveVideo::STREAM_TYPE }}
1064
1071
  api.has_param :targeting, 'object'
1065
- api.has_param :product_items, { list: 'string' }
1066
- api.has_param :crossposting_actions, { list: 'hash' }
1067
- api.has_param :game_show, 'hash'
1072
+ api.has_param :title, 'string'
1068
1073
  end
1069
1074
  end
1070
1075
 
@@ -1075,36 +1080,36 @@ module FacebookAds
1075
1080
  end
1076
1081
  edge.get 'Page'
1077
1082
  edge.post 'Page' do |api|
1078
- api.has_param :store_number, 'int'
1079
- api.has_param :location, 'object'
1080
- api.has_param :place_topics, { list: 'string' }
1081
- api.has_param :phone, 'string'
1082
- api.has_param :store_name, 'string'
1083
+ api.has_param :always_open, 'bool'
1083
1084
  api.has_param :hours, 'hash'
1084
- api.has_param :page_username, 'string'
1085
+ api.has_param :ignore_warnings, 'bool'
1086
+ api.has_param :location, 'object'
1087
+ api.has_param :location_page_id, 'string'
1085
1088
  api.has_param :old_store_number, 'int'
1089
+ api.has_param :page_username, 'string'
1086
1090
  api.has_param :permanently_closed, 'bool'
1091
+ api.has_param :phone, 'string'
1092
+ api.has_param :place_topics, { list: 'string' }
1087
1093
  api.has_param :price_range, 'string'
1094
+ api.has_param :store_code, 'string'
1088
1095
  api.has_param :store_location_descriptor, 'string'
1089
- api.has_param :location_page_id, 'string'
1090
- api.has_param :ignore_warnings, 'bool'
1096
+ api.has_param :store_name, 'string'
1097
+ api.has_param :store_number, 'int'
1091
1098
  api.has_param :website, 'string'
1092
- api.has_param :always_open, 'bool'
1093
- api.has_param :store_code, 'string'
1094
1099
  end
1095
1100
  end
1096
1101
 
1097
1102
  has_edge :media_fingerprints do |edge|
1098
1103
  edge.get 'MediaFingerprint' do |api|
1099
- api.has_param :universal_content_id, 'string'
1100
1104
  api.has_param :fingerprint_validity, { enum: -> { MediaFingerprint::FINGERPRINT_VALIDITY }}
1105
+ api.has_param :universal_content_id, 'string'
1101
1106
  end
1102
1107
  edge.post 'MediaFingerprint' do |api|
1103
1108
  api.has_param :fingerprint_content_type, { enum: -> { MediaFingerprint::FINGERPRINT_CONTENT_TYPE }}
1104
- api.has_param :title, 'string'
1105
1109
  api.has_param :metadata, { list: 'string' }
1106
- api.has_param :universal_content_id, 'string'
1107
1110
  api.has_param :source, 'string'
1111
+ api.has_param :title, 'string'
1112
+ api.has_param :universal_content_id, 'string'
1108
1113
  end
1109
1114
  end
1110
1115
 
@@ -1122,13 +1127,13 @@ module FacebookAds
1122
1127
 
1123
1128
  has_edge :messages do |edge|
1124
1129
  edge.post 'Page' do |api|
1125
- api.has_param :recipient, 'object'
1126
1130
  api.has_param :message, 'object'
1127
- api.has_param :sender_action, { enum: -> { Page::SENDER_ACTION }}
1128
- api.has_param :notification_type, { enum: -> { Page::NOTIFICATION_TYPE }}
1129
- api.has_param :tag, 'object'
1130
1131
  api.has_param :messaging_type, { enum: -> { Page::MESSAGING_TYPE }}
1132
+ api.has_param :notification_type, { enum: -> { Page::NOTIFICATION_TYPE }}
1131
1133
  api.has_param :persona_id, 'string'
1134
+ api.has_param :recipient, 'object'
1135
+ api.has_param :sender_action, { enum: -> { Page::SENDER_ACTION }}
1136
+ api.has_param :tag, 'object'
1132
1137
  end
1133
1138
  end
1134
1139
 
@@ -1142,9 +1147,9 @@ module FacebookAds
1142
1147
 
1143
1148
  has_edge :messenger_codes do |edge|
1144
1149
  edge.post 'Page' do |api|
1145
- api.has_param :type, { enum: -> { Page::TYPE }}
1146
1150
  api.has_param :data, 'string'
1147
1151
  api.has_param :image_size, 'int'
1152
+ api.has_param :type, { enum: -> { Page::TYPE }}
1148
1153
  end
1149
1154
  end
1150
1155
 
@@ -1154,30 +1159,23 @@ module FacebookAds
1154
1159
  end
1155
1160
  edge.get 'MessengerProfile'
1156
1161
  edge.post 'Page' do |api|
1162
+ api.has_param :account_linking_url, 'string'
1157
1163
  api.has_param :get_started, 'object'
1164
+ api.has_param :greeting, { list: 'object' }
1165
+ api.has_param :home_url, 'object'
1166
+ api.has_param :payment_settings, 'object'
1158
1167
  api.has_param :persistent_menu, { list: 'object' }
1159
1168
  api.has_param :target_audience, 'object'
1160
1169
  api.has_param :whitelisted_domains, { list: 'string' }
1161
- api.has_param :greeting, { list: 'object' }
1162
- api.has_param :account_linking_url, 'string'
1163
- api.has_param :payment_settings, 'object'
1164
- api.has_param :home_url, 'object'
1165
- end
1166
- end
1167
-
1168
- has_edge :messenger_thread_settings do |edge|
1169
- edge.post 'Page' do |api|
1170
- api.has_param :psid, 'string'
1171
- api.has_param :thread_banner, 'object'
1172
1170
  end
1173
1171
  end
1174
1172
 
1175
1173
  has_edge :milestones do |edge|
1176
1174
  edge.get 'LifeEvent'
1177
1175
  edge.post 'LifeEvent' do |api|
1178
- api.has_param :title, 'string'
1179
1176
  api.has_param :description, 'string'
1180
1177
  api.has_param :start_time, 'datetime'
1178
+ api.has_param :title, 'string'
1181
1179
  end
1182
1180
  end
1183
1181
 
@@ -1188,60 +1186,60 @@ module FacebookAds
1188
1186
  has_edge :nativeoffers do |edge|
1189
1187
  edge.get 'NativeOffer'
1190
1188
  edge.post 'NativeOffer' do |api|
1191
- api.has_param :discounts, { list: 'object' }
1192
- api.has_param :details, 'string'
1193
- api.has_param :terms, 'string'
1194
- api.has_param :redemption_code, 'string'
1195
- api.has_param :redemption_link, 'string'
1196
- api.has_param :max_save_count, 'int'
1197
- api.has_param :online_code, 'string'
1198
- api.has_param :instore_code, 'string'
1199
- api.has_param :expiration_time, 'datetime'
1200
- api.has_param :location_type, { enum: -> { NativeOffer::LOCATION_TYPE }}
1189
+ api.has_param :barcode_photo, 'int'
1201
1190
  api.has_param :barcode_type, { enum: -> { NativeOffer::BARCODE_TYPE }}
1202
1191
  api.has_param :barcode_value, 'string'
1203
- api.has_param :barcode_photo, 'int'
1204
- api.has_param :unique_codes, 'int'
1205
- api.has_param :unique_barcodes, 'int'
1206
1192
  api.has_param :block_reshares, 'bool'
1207
- api.has_param :disable_location, 'bool'
1193
+ api.has_param :commerce_product_item, 'string'
1208
1194
  api.has_param :commerce_store, 'string'
1209
1195
  api.has_param :commerce_store_collection, 'string'
1210
- api.has_param :commerce_product_item, 'string'
1196
+ api.has_param :details, 'string'
1197
+ api.has_param :disable_location, 'bool'
1198
+ api.has_param :discounts, { list: 'object' }
1199
+ api.has_param :expiration_time, 'datetime'
1200
+ api.has_param :instore_code, 'string'
1201
+ api.has_param :location_type, { enum: -> { NativeOffer::LOCATION_TYPE }}
1202
+ api.has_param :max_save_count, 'int'
1203
+ api.has_param :online_code, 'string'
1211
1204
  api.has_param :page_set_id, 'string'
1205
+ api.has_param :redemption_code, 'string'
1206
+ api.has_param :redemption_link, 'string'
1207
+ api.has_param :terms, 'string'
1208
+ api.has_param :unique_barcodes, 'int'
1209
+ api.has_param :unique_codes, 'int'
1212
1210
  end
1213
1211
  end
1214
1212
 
1215
1213
  has_edge :nlp_configs do |edge|
1216
1214
  edge.post 'Page' do |api|
1217
- api.has_param :nlp_enabled, 'bool'
1218
- api.has_param :model, { enum: -> { Page::MODEL }}
1219
1215
  api.has_param :custom_token, 'string'
1216
+ api.has_param :model, { enum: -> { Page::MODEL }}
1220
1217
  api.has_param :n_best, 'int'
1218
+ api.has_param :nlp_enabled, 'bool'
1221
1219
  api.has_param :verbose, 'bool'
1222
1220
  end
1223
1221
  end
1224
1222
 
1225
1223
  has_edge :notifications do |edge|
1226
1224
  edge.post 'Page' do |api|
1227
- api.has_param :seen, 'bool'
1228
- api.has_param :read, 'bool'
1229
- api.has_param :notif_ids, { list: 'string' }
1230
1225
  api.has_param :filtering, { list: { enum: -> { Page::FILTERING }} }
1231
- api.has_param :template, 'object'
1232
1226
  api.has_param :href, 'object'
1227
+ api.has_param :notif_ids, { list: 'string' }
1228
+ api.has_param :read, 'bool'
1233
1229
  api.has_param :ref, 'string'
1230
+ api.has_param :seen, 'bool'
1231
+ api.has_param :template, 'object'
1234
1232
  api.has_param :type, { enum: -> { Page::TYPE }}
1235
1233
  end
1236
1234
  end
1237
1235
 
1238
1236
  has_edge :page_about_story do |edge|
1239
1237
  edge.post 'Page' do |api|
1240
- api.has_param :is_published, 'bool'
1241
- api.has_param :title, 'string'
1242
- api.has_param :cover_photo, 'hash'
1243
1238
  api.has_param :composed_text, { list: 'hash' }
1239
+ api.has_param :cover_photo, 'hash'
1244
1240
  api.has_param :entity_map, { list: 'hash' }
1241
+ api.has_param :is_published, 'bool'
1242
+ api.has_param :title, 'string'
1245
1243
  end
1246
1244
  end
1247
1245
 
@@ -1252,9 +1250,9 @@ module FacebookAds
1252
1250
 
1253
1251
  has_edge :pass_thread_control do |edge|
1254
1252
  edge.post 'Page' do |api|
1253
+ api.has_param :metadata, 'string'
1255
1254
  api.has_param :recipient, 'object'
1256
1255
  api.has_param :target_app_id, 'int'
1257
- api.has_param :metadata, 'string'
1258
1256
  end
1259
1257
  end
1260
1258
 
@@ -1268,99 +1266,99 @@ module FacebookAds
1268
1266
 
1269
1267
  has_edge :photos do |edge|
1270
1268
  edge.get 'Photo' do |api|
1271
- api.has_param :type, { enum: -> { Photo::TYPE }}
1272
1269
  api.has_param :biz_tag_id, 'int'
1273
1270
  api.has_param :business_id, 'string'
1271
+ api.has_param :type, { enum: -> { Photo::TYPE }}
1274
1272
  end
1275
1273
  edge.post 'Photo' do |api|
1276
1274
  api.has_param :aid, 'string'
1275
+ api.has_param :allow_spherical_photo, 'bool'
1277
1276
  api.has_param :alt_text_custom, 'string'
1277
+ api.has_param :android_key_hash, 'string'
1278
+ api.has_param :application_id, 'string'
1279
+ api.has_param :attempt, 'int'
1280
+ api.has_param :audience_exp, 'bool'
1281
+ api.has_param :backdated_time, 'datetime'
1282
+ api.has_param :backdated_time_granularity, { enum: -> { Photo::BACKDATED_TIME_GRANULARITY }}
1278
1283
  api.has_param :caption, 'string'
1279
- api.has_param :url, 'string'
1280
- api.has_param :uid, 'int'
1281
- api.has_param :profile_id, 'int'
1282
- api.has_param :target_id, 'int'
1283
- api.has_param :vault_image_id, 'string'
1284
- api.has_param :tags, { list: 'object' }
1285
- api.has_param :place, 'object'
1286
- api.has_param :is_explicit_place, 'bool'
1284
+ api.has_param :composer_session_id, 'string'
1285
+ api.has_param :direct_share_status, 'int'
1286
+ api.has_param :feed_targeting, 'object'
1287
+ api.has_param :filter_type, 'int'
1288
+ api.has_param :full_res_is_coming_later, 'bool'
1289
+ api.has_param :initial_view_heading_override_degrees, 'int'
1290
+ api.has_param :initial_view_pitch_override_degrees, 'int'
1291
+ api.has_param :initial_view_vertical_fov_override_degrees, 'int'
1292
+ api.has_param :ios_bundle_id, 'string'
1287
1293
  api.has_param :is_explicit_location, 'bool'
1294
+ api.has_param :is_explicit_place, 'bool'
1295
+ api.has_param :location_source_id, 'string'
1296
+ api.has_param :manual_privacy, 'bool'
1297
+ api.has_param :message, 'string'
1298
+ api.has_param :name, 'string'
1299
+ api.has_param :nectar_module, 'string'
1300
+ api.has_param :no_story, 'bool'
1301
+ api.has_param :offline_id, 'int'
1288
1302
  api.has_param :og_action_type_id, 'string'
1303
+ api.has_param :og_icon_id, 'string'
1289
1304
  api.has_param :og_object_id, 'string'
1290
1305
  api.has_param :og_phrase, 'string'
1291
- api.has_param :og_icon_id, 'string'
1292
- api.has_param :og_suggestion_mechanism, 'string'
1293
1306
  api.has_param :og_set_profile_badge, 'bool'
1307
+ api.has_param :og_suggestion_mechanism, 'string'
1308
+ api.has_param :place, 'object'
1294
1309
  api.has_param :privacy, 'string'
1295
- api.has_param :targeting, 'object'
1296
- api.has_param :feed_targeting, 'object'
1297
- api.has_param :no_story, 'bool'
1310
+ api.has_param :profile_id, 'int'
1311
+ api.has_param :proxied_app_id, 'string'
1298
1312
  api.has_param :published, 'bool'
1299
- api.has_param :offline_id, 'int'
1300
- api.has_param :attempt, 'int'
1301
- api.has_param :backdated_time, 'datetime'
1302
- api.has_param :backdated_time_granularity, { enum: -> { Photo::BACKDATED_TIME_GRANULARITY }}
1303
- api.has_param :time_since_original_post, 'int'
1304
- api.has_param :filter_type, 'int'
1305
- api.has_param :scheduled_publish_time, 'int'
1306
- api.has_param :unpublished_content_type, { enum: -> { Photo::UNPUBLISHED_CONTENT_TYPE }}
1307
- api.has_param :nectar_module, 'string'
1308
- api.has_param :full_res_is_coming_later, 'bool'
1309
- api.has_param :composer_session_id, 'string'
1310
1313
  api.has_param :qn, 'string'
1311
- api.has_param :manual_privacy, 'bool'
1312
- api.has_param :audience_exp, 'bool'
1313
- api.has_param :proxied_app_id, 'string'
1314
- api.has_param :ios_bundle_id, 'string'
1315
- api.has_param :android_key_hash, 'string'
1316
- api.has_param :user_selected_tags, 'bool'
1317
- api.has_param :allow_spherical_photo, 'bool'
1314
+ api.has_param :scheduled_publish_time, 'int'
1318
1315
  api.has_param :spherical_metadata, 'hash'
1319
- api.has_param :initial_view_heading_override_degrees, 'int'
1320
- api.has_param :initial_view_pitch_override_degrees, 'int'
1321
- api.has_param :initial_view_vertical_fov_override_degrees, 'int'
1322
1316
  api.has_param :sponsor_id, 'string'
1323
- api.has_param :direct_share_status, 'int'
1324
1317
  api.has_param :sponsor_relationship, 'int'
1325
- api.has_param :application_id, 'string'
1326
- api.has_param :name, 'string'
1327
- api.has_param :message, 'string'
1318
+ api.has_param :tags, { list: 'object' }
1319
+ api.has_param :target_id, 'int'
1320
+ api.has_param :targeting, 'object'
1328
1321
  api.has_param :temporary, 'bool'
1329
- api.has_param :location_source_id, 'string'
1322
+ api.has_param :time_since_original_post, 'int'
1323
+ api.has_param :uid, 'int'
1324
+ api.has_param :unpublished_content_type, { enum: -> { Photo::UNPUBLISHED_CONTENT_TYPE }}
1325
+ api.has_param :url, 'string'
1326
+ api.has_param :user_selected_tags, 'bool'
1327
+ api.has_param :vault_image_id, 'string'
1330
1328
  end
1331
1329
  end
1332
1330
 
1333
1331
  has_edge :picture do |edge|
1334
1332
  edge.get 'ProfilePictureSource' do |api|
1335
1333
  api.has_param :height, 'int'
1336
- api.has_param :width, 'int'
1337
- api.has_param :type, { enum: -> { ProfilePictureSource::TYPE }}
1338
1334
  api.has_param :redirect, 'bool'
1335
+ api.has_param :type, { enum: -> { ProfilePictureSource::TYPE }}
1336
+ api.has_param :width, 'int'
1339
1337
  end
1340
1338
  edge.post 'ProfilePictureSource' do |api|
1339
+ api.has_param :android_key_hash, 'string'
1340
+ api.has_param :caption, 'string'
1341
1341
  api.has_param :composer_session_id, 'string'
1342
- api.has_param :qn, 'string'
1342
+ api.has_param :has_umg, 'bool'
1343
+ api.has_param :height, 'int'
1344
+ api.has_param :ios_bundle_id, 'string'
1345
+ api.has_param :media_effect_ids, { list: 'int' }
1346
+ api.has_param :media_effect_source_object_id, 'int'
1347
+ api.has_param :msqrd_mask_id, 'string'
1343
1348
  api.has_param :photo, 'string'
1349
+ api.has_param :picture, 'string'
1350
+ api.has_param :profile_pic_method, 'string'
1351
+ api.has_param :profile_pic_source, 'string'
1352
+ api.has_param :proxied_app_id, 'int'
1353
+ api.has_param :qn, 'string'
1344
1354
  api.has_param :reuse, 'bool'
1345
- api.has_param :x, 'int'
1346
- api.has_param :y, 'int'
1347
- api.has_param :width, 'int'
1348
- api.has_param :height, 'int'
1349
1355
  api.has_param :scaled_crop_rect, 'object'
1350
- api.has_param :profile_pic_source, 'string'
1351
- api.has_param :profile_pic_method, 'string'
1356
+ api.has_param :set_profile_photo_shield, 'string'
1352
1357
  api.has_param :sticker_id, 'int'
1353
- api.has_param :caption, 'string'
1354
1358
  api.has_param :sticker_source_object_id, 'int'
1355
- api.has_param :msqrd_mask_id, 'string'
1356
- api.has_param :media_effect_ids, { list: 'int' }
1357
- api.has_param :media_effect_source_object_id, 'int'
1358
- api.has_param :set_profile_photo_shield, 'string'
1359
- api.has_param :has_umg, 'bool'
1360
- api.has_param :android_key_hash, 'string'
1361
- api.has_param :ios_bundle_id, 'string'
1362
- api.has_param :proxied_app_id, 'int'
1363
- api.has_param :picture, 'string'
1359
+ api.has_param :width, 'int'
1360
+ api.has_param :x, 'int'
1361
+ api.has_param :y, 'int'
1364
1362
  end
1365
1363
  end
1366
1364
 
@@ -1371,9 +1369,9 @@ module FacebookAds
1371
1369
  has_edge :posts do |edge|
1372
1370
  edge.get 'PagePost' do |api|
1373
1371
  api.has_param :include_hidden, 'bool'
1374
- api.has_param :with, { enum: -> { PagePost::WITH }}
1375
- api.has_param :show_expired, 'bool'
1376
1372
  api.has_param :q, 'string'
1373
+ api.has_param :show_expired, 'bool'
1374
+ api.has_param :with, { enum: -> { PagePost::WITH }}
1377
1375
  end
1378
1376
  end
1379
1377
 
@@ -1384,23 +1382,23 @@ module FacebookAds
1384
1382
  has_edge :promotable_posts do |edge|
1385
1383
  edge.get 'PagePost' do |api|
1386
1384
  api.has_param :include_hidden, 'bool'
1387
- api.has_param :with, { enum: -> { PagePost::WITH }}
1388
- api.has_param :show_expired, 'bool'
1389
- api.has_param :q, 'string'
1390
- api.has_param :is_published, 'bool'
1391
1385
  api.has_param :include_inline, 'bool'
1386
+ api.has_param :is_published, 'bool'
1387
+ api.has_param :q, 'string'
1388
+ api.has_param :show_expired, 'bool'
1389
+ api.has_param :with, { enum: -> { PagePost::WITH }}
1392
1390
  end
1393
1391
  end
1394
1392
 
1395
1393
  has_edge :promotions do |edge|
1396
1394
  edge.post do |api|
1397
- api.has_param :budget, 'int'
1398
1395
  api.has_param :ad_account_id, 'string'
1399
- api.has_param :geo_level, 'string'
1396
+ api.has_param :budget, 'int'
1397
+ api.has_param :duration, 'string'
1400
1398
  api.has_param :gender, 'int'
1401
- api.has_param :min_age, 'int'
1399
+ api.has_param :geo_level, 'string'
1402
1400
  api.has_param :max_age, 'int'
1403
- api.has_param :duration, 'string'
1401
+ api.has_param :min_age, 'int'
1404
1402
  end
1405
1403
  end
1406
1404
 
@@ -1417,8 +1415,8 @@ module FacebookAds
1417
1415
 
1418
1416
  has_edge :request_thread_control do |edge|
1419
1417
  edge.post 'Page' do |api|
1420
- api.has_param :recipient, 'object'
1421
1418
  api.has_param :metadata, 'string'
1419
+ api.has_param :recipient, 'object'
1422
1420
  end
1423
1421
  end
1424
1422
 
@@ -1428,8 +1426,8 @@ module FacebookAds
1428
1426
 
1429
1427
  has_edge :roles do |edge|
1430
1428
  edge.get 'User' do |api|
1431
- api.has_param :uid, 'object'
1432
1429
  api.has_param :include_deactivated, 'bool'
1430
+ api.has_param :uid, 'object'
1433
1431
  end
1434
1432
  end
1435
1433
 
@@ -1443,19 +1441,19 @@ module FacebookAds
1443
1441
  end
1444
1442
  edge.post 'PageSavedFilter' do |api|
1445
1443
  api.has_param :display_name, 'string'
1446
- api.has_param :section, { enum: -> { PageSavedFilter::SECTION }}
1447
1444
  api.has_param :filters, { list: 'object' }
1445
+ api.has_param :section, { enum: -> { PageSavedFilter::SECTION }}
1448
1446
  end
1449
1447
  end
1450
1448
 
1451
1449
  has_edge :saved_message_responses do |edge|
1452
1450
  edge.get 'SavedMessageResponse'
1453
1451
  edge.post 'SavedMessageResponse' do |api|
1454
- api.has_param :message, 'string'
1455
1452
  api.has_param :category, { enum: -> { SavedMessageResponse::CATEGORY }}
1453
+ api.has_param :image, 'string'
1456
1454
  api.has_param :is_enabled, 'bool'
1455
+ api.has_param :message, 'string'
1457
1456
  api.has_param :title, 'string'
1458
- api.has_param :image, 'string'
1459
1457
  end
1460
1458
  end
1461
1459
 
@@ -1496,11 +1494,11 @@ module FacebookAds
1496
1494
 
1497
1495
  has_edge :subscriptions do |edge|
1498
1496
  edge.post do |api|
1499
- api.has_param :object, 'string'
1500
- api.has_param :fields, { list: 'string' }
1501
1497
  api.has_param :callback_url, 'string'
1502
- api.has_param :verify_token, 'string'
1498
+ api.has_param :fields, { list: 'string' }
1503
1499
  api.has_param :include_values, 'bool'
1500
+ api.has_param :object, 'string'
1501
+ api.has_param :verify_token, 'string'
1504
1502
  end
1505
1503
  end
1506
1504
 
@@ -1513,11 +1511,11 @@ module FacebookAds
1513
1511
  end
1514
1512
  edge.post 'Page' do |api|
1515
1513
  api.has_param :app_id, 'int'
1516
- api.has_param :tab, 'string'
1517
- api.has_param :position, 'int'
1518
- api.has_param :custom_name, 'string'
1519
1514
  api.has_param :custom_image_url, 'string'
1515
+ api.has_param :custom_name, 'string'
1520
1516
  api.has_param :is_non_connection_landing_tab, 'bool'
1517
+ api.has_param :position, 'int'
1518
+ api.has_param :tab, 'string'
1521
1519
  end
1522
1520
  end
1523
1521
 
@@ -1527,8 +1525,8 @@ module FacebookAds
1527
1525
 
1528
1526
  has_edge :take_thread_control do |edge|
1529
1527
  edge.post 'Page' do |api|
1530
- api.has_param :recipient, 'object'
1531
1528
  api.has_param :metadata, 'string'
1529
+ api.has_param :recipient, 'object'
1532
1530
  end
1533
1531
  end
1534
1532
 
@@ -1545,24 +1543,24 @@ module FacebookAds
1545
1543
  end
1546
1544
  edge.get 'ThreadSetting'
1547
1545
  edge.post 'Page' do |api|
1548
- api.has_param :setting_type, { enum: -> { Page::SETTING_TYPE }}
1549
- api.has_param :thread_state, { enum: -> { Page::THREAD_STATE }}
1546
+ api.has_param :account_linking_url, 'string'
1550
1547
  api.has_param :call_to_actions, { list: 'object' }
1548
+ api.has_param :domain_action_type, { enum: -> { Page::DOMAIN_ACTION_TYPE }}
1551
1549
  api.has_param :greeting, 'object'
1552
- api.has_param :account_linking_url, 'string'
1550
+ api.has_param :payment_dev_mode_action, { enum: -> { Page::PAYMENT_DEV_MODE_ACTION }}
1553
1551
  api.has_param :payment_privacy_url, 'string'
1554
- api.has_param :whitelisted_domains, { list: 'string' }
1555
- api.has_param :domain_action_type, { enum: -> { Page::DOMAIN_ACTION_TYPE }}
1556
1552
  api.has_param :payment_public_key, 'string'
1557
- api.has_param :payment_dev_mode_action, { enum: -> { Page::PAYMENT_DEV_MODE_ACTION }}
1558
1553
  api.has_param :payment_testers, { list: 'string' }
1554
+ api.has_param :setting_type, { enum: -> { Page::SETTING_TYPE }}
1555
+ api.has_param :thread_state, { enum: -> { Page::THREAD_STATE }}
1556
+ api.has_param :whitelisted_domains, { list: 'string' }
1559
1557
  end
1560
1558
  end
1561
1559
 
1562
1560
  has_edge :threads do |edge|
1563
1561
  edge.get 'UnifiedThread' do |api|
1564
- api.has_param :tags, { list: 'string' }
1565
1562
  api.has_param :folder, 'string'
1563
+ api.has_param :tags, { list: 'string' }
1566
1564
  api.has_param :user_id, 'string'
1567
1565
  end
1568
1566
  end
@@ -1583,31 +1581,31 @@ module FacebookAds
1583
1581
 
1584
1582
  has_edge :video_copyright_rules do |edge|
1585
1583
  edge.get 'VideoCopyrightRule' do |api|
1586
- api.has_param :source, { enum: -> { VideoCopyrightRule::SOURCE }}
1587
1584
  api.has_param :selected_rule_id, 'string'
1585
+ api.has_param :source, { enum: -> { VideoCopyrightRule::SOURCE }}
1588
1586
  end
1589
1587
  edge.post 'VideoCopyrightRule' do |api|
1590
- api.has_param :name, 'string'
1591
1588
  api.has_param :condition_groups, { list: 'object' }
1589
+ api.has_param :name, 'string'
1592
1590
  end
1593
1591
  end
1594
1592
 
1595
1593
  has_edge :video_copyrights do |edge|
1596
1594
  edge.get 'VideoCopyright'
1597
1595
  edge.post 'VideoCopyright' do |api|
1598
- api.has_param :monitoring_type, { enum: -> { VideoCopyright::MONITORING_TYPE }}
1599
- api.has_param :rule_id, 'string'
1600
- api.has_param :whitelisted_ids, { list: 'string' }
1601
- api.has_param :whitelisted_ig_user_ids, { list: 'string' }
1602
- api.has_param :ownership_countries, { list: 'string' }
1596
+ api.has_param :attribution_id, 'string'
1597
+ api.has_param :content_category, { enum: -> { VideoCopyright::CONTENT_CATEGORY }}
1598
+ api.has_param :copyright_content_id, 'string'
1603
1599
  api.has_param :excluded_ownership_countries, { list: 'string' }
1604
1600
  api.has_param :excluded_ownership_segments, { list: 'object' }
1601
+ api.has_param :fingerprint_id, 'string'
1605
1602
  api.has_param :is_reference_disabled, 'bool'
1606
- api.has_param :content_category, { enum: -> { VideoCopyright::CONTENT_CATEGORY }}
1607
- api.has_param :attribution_id, 'string'
1608
- api.has_param :copyright_content_id, 'string'
1609
1603
  api.has_param :is_reference_video, 'bool'
1610
- api.has_param :fingerprint_id, 'string'
1604
+ api.has_param :monitoring_type, { enum: -> { VideoCopyright::MONITORING_TYPE }}
1605
+ api.has_param :ownership_countries, { list: 'string' }
1606
+ api.has_param :rule_id, 'string'
1607
+ api.has_param :whitelisted_ids, { list: 'string' }
1608
+ api.has_param :whitelisted_ig_user_ids, { list: 'string' }
1611
1609
  end
1612
1610
  end
1613
1611
 
@@ -1617,8 +1615,8 @@ module FacebookAds
1617
1615
  end
1618
1616
  edge.get 'VideoList'
1619
1617
  edge.post 'Page' do |api|
1620
- api.has_param :title, 'string'
1621
1618
  api.has_param :description, 'string'
1619
+ api.has_param :title, 'string'
1622
1620
  end
1623
1621
  end
1624
1622
 
@@ -1631,99 +1629,99 @@ module FacebookAds
1631
1629
  api.has_param :type, { enum: -> { AdVideo::TYPE }}
1632
1630
  end
1633
1631
  edge.post 'AdVideo' do |api|
1634
- api.has_param :title, 'string'
1635
- api.has_param :source, 'string'
1636
- api.has_param :unpublished_content_type, { enum: -> { AdVideo::UNPUBLISHED_CONTENT_TYPE }}
1637
- api.has_param :time_since_original_post, 'int'
1638
- api.has_param :file_url, 'string'
1639
- api.has_param :composer_session_id, 'string'
1640
- api.has_param :waterfall_id, 'string'
1641
- api.has_param :og_action_type_id, 'string'
1642
- api.has_param :og_object_id, 'string'
1643
- api.has_param :og_phrase, 'string'
1644
- api.has_param :og_icon_id, 'string'
1645
- api.has_param :og_suggestion_mechanism, 'string'
1646
- api.has_param :thumb, 'file'
1647
- api.has_param :spherical, 'bool'
1648
- api.has_param :original_projection_type, { enum: -> { AdVideo::ORIGINAL_PROJECTION_TYPE }}
1649
- api.has_param :initial_heading, 'int'
1650
- api.has_param :initial_pitch, 'int'
1651
- api.has_param :fov, 'int'
1652
- api.has_param :original_fov, 'int'
1653
- api.has_param :fisheye_video_cropped, 'bool'
1654
- api.has_param :front_z_rotation, 'double'
1655
- api.has_param :guide_enabled, 'bool'
1656
- api.has_param :guide, { list: { list: 'int' } }
1657
- api.has_param :audio_story_wave_animation_handle, 'string'
1658
- api.has_param :manual_privacy, 'bool'
1659
- api.has_param :is_explicit_share, 'bool'
1632
+ api.has_param :ad_breaks, { list: 'string' }
1660
1633
  api.has_param :adaptive_type, 'string'
1661
1634
  api.has_param :animated_effect_id, 'int'
1635
+ api.has_param :application_id, 'string'
1662
1636
  api.has_param :asked_fun_fact_prompt_id, 'int'
1637
+ api.has_param :attribution_app_id, 'string'
1638
+ api.has_param :audio_story_wave_animation_handle, 'string'
1639
+ api.has_param :backdated_post, { list: 'string' }
1640
+ api.has_param :call_to_action, 'object'
1663
1641
  api.has_param :composer_entry_picker, 'string'
1664
1642
  api.has_param :composer_entry_point, 'string'
1665
1643
  api.has_param :composer_entry_time, 'int'
1666
1644
  api.has_param :composer_session_events_log, 'string'
1645
+ api.has_param :composer_session_id, 'string'
1667
1646
  api.has_param :composer_source_surface, 'string'
1668
1647
  api.has_param :composer_type, 'string'
1648
+ api.has_param :container_type, { enum: -> { AdVideo::CONTAINER_TYPE }}
1649
+ api.has_param :content_category, { enum: -> { AdVideo::CONTENT_CATEGORY }}
1650
+ api.has_param :content_tags, { list: 'string' }
1651
+ api.has_param :crossposted_video_id, 'string'
1652
+ api.has_param :custom_labels, { list: 'string' }
1653
+ api.has_param :description, 'string'
1654
+ api.has_param :direct_share_status, 'int'
1655
+ api.has_param :embeddable, 'bool'
1656
+ api.has_param :end_offset, 'int'
1657
+ api.has_param :expiration, 'object'
1658
+ api.has_param :fbuploader_video_file_chunk, 'string'
1659
+ api.has_param :feed_targeting, 'object'
1660
+ api.has_param :file_size, 'int'
1661
+ api.has_param :file_url, 'string'
1662
+ api.has_param :fisheye_video_cropped, 'bool'
1669
1663
  api.has_param :formatting, { enum: -> { AdVideo::FORMATTING }}
1664
+ api.has_param :fov, 'int'
1665
+ api.has_param :front_z_rotation, 'double'
1670
1666
  api.has_param :fun_fact_prompt_id, 'int'
1671
1667
  api.has_param :fun_fact_toastee_id, 'int'
1672
- api.has_param :is_group_linking_post, 'bool'
1668
+ api.has_param :guide, { list: { list: 'int' } }
1669
+ api.has_param :guide_enabled, 'bool'
1673
1670
  api.has_param :has_nickname, 'bool'
1674
1671
  api.has_param :holiday_card, 'string'
1672
+ api.has_param :initial_heading, 'int'
1673
+ api.has_param :initial_pitch, 'int'
1675
1674
  api.has_param :instant_game_entry_point_data, 'string'
1676
1675
  api.has_param :is_boost_intended, 'bool'
1676
+ api.has_param :is_explicit_share, 'bool'
1677
+ api.has_param :is_group_linking_post, 'bool'
1678
+ api.has_param :is_voice_clip, 'bool'
1677
1679
  api.has_param :location_source_id, 'string'
1678
- api.has_param :description, 'string'
1680
+ api.has_param :manual_privacy, 'bool'
1681
+ api.has_param :multilingual_data, { list: 'object' }
1682
+ api.has_param :no_story, 'bool'
1679
1683
  api.has_param :offer_like_post_id, 'int'
1684
+ api.has_param :og_action_type_id, 'string'
1685
+ api.has_param :og_icon_id, 'string'
1686
+ api.has_param :og_object_id, 'string'
1687
+ api.has_param :og_phrase, 'string'
1688
+ api.has_param :og_suggestion_mechanism, 'string'
1689
+ api.has_param :original_fov, 'int'
1690
+ api.has_param :original_projection_type, { enum: -> { AdVideo::ORIGINAL_PROJECTION_TYPE }}
1680
1691
  api.has_param :publish_event_id, 'int'
1692
+ api.has_param :published, 'bool'
1681
1693
  api.has_param :react_mode_metadata, 'string'
1682
- api.has_param :sales_promo_id, 'int'
1683
- api.has_param :text_format_metadata, 'string'
1684
- api.has_param :throwback_camera_roll_media, 'string'
1685
- api.has_param :video_start_time_ms, 'int'
1686
- api.has_param :application_id, 'string'
1687
- api.has_param :upload_phase, { enum: -> { AdVideo::UPLOAD_PHASE }}
1688
- api.has_param :file_size, 'int'
1689
- api.has_param :start_offset, 'int'
1690
- api.has_param :end_offset, 'int'
1691
- api.has_param :video_file_chunk, 'string'
1692
- api.has_param :fbuploader_video_file_chunk, 'string'
1693
- api.has_param :upload_session_id, 'string'
1694
- api.has_param :is_voice_clip, 'bool'
1695
- api.has_param :attribution_app_id, 'string'
1696
- api.has_param :content_category, { enum: -> { AdVideo::CONTENT_CATEGORY }}
1697
- api.has_param :embeddable, 'bool'
1698
- api.has_param :slideshow_spec, 'hash'
1699
- api.has_param :upload_setting_properties, 'string'
1700
- api.has_param :transcode_setting_properties, 'string'
1701
- api.has_param :container_type, { enum: -> { AdVideo::CONTAINER_TYPE }}
1694
+ api.has_param :reference_only, 'bool'
1702
1695
  api.has_param :referenced_sticker_id, 'string'
1703
1696
  api.has_param :replace_video_id, 'string'
1704
- api.has_param :swap_mode, { enum: -> { AdVideo::SWAP_MODE }}
1705
- api.has_param :ad_breaks, { list: 'string' }
1706
- api.has_param :backdated_post, { list: 'string' }
1707
- api.has_param :custom_labels, { list: 'string' }
1708
- api.has_param :call_to_action, 'object'
1709
- api.has_param :expiration, 'object'
1710
- api.has_param :feed_targeting, 'object'
1711
- api.has_param :published, 'bool'
1697
+ api.has_param :sales_promo_id, 'int'
1712
1698
  api.has_param :scheduled_publish_time, 'int'
1713
- api.has_param :targeting, 'object'
1714
- api.has_param :no_story, 'bool'
1715
1699
  api.has_param :secret, 'bool'
1700
+ api.has_param :slideshow_spec, 'hash'
1716
1701
  api.has_param :social_actions, 'bool'
1702
+ api.has_param :source, 'string'
1703
+ api.has_param :specified_dialect, 'string'
1704
+ api.has_param :spherical, 'bool'
1717
1705
  api.has_param :sponsor_id, 'string'
1718
- api.has_param :direct_share_status, 'int'
1719
1706
  api.has_param :sponsor_relationship, 'int'
1720
- api.has_param :content_tags, { list: 'string' }
1721
- api.has_param :reference_only, 'bool'
1722
- api.has_param :video_asset_id, 'string'
1707
+ api.has_param :start_offset, 'int'
1708
+ api.has_param :swap_mode, { enum: -> { AdVideo::SWAP_MODE }}
1709
+ api.has_param :targeting, 'object'
1710
+ api.has_param :text_format_metadata, 'string'
1711
+ api.has_param :throwback_camera_roll_media, 'string'
1712
+ api.has_param :thumb, 'file'
1713
+ api.has_param :time_since_original_post, 'int'
1714
+ api.has_param :title, 'string'
1715
+ api.has_param :transcode_setting_properties, 'string'
1723
1716
  api.has_param :universal_video_id, 'string'
1724
- api.has_param :multilingual_data, { list: 'object' }
1725
- api.has_param :specified_dialect, 'string'
1726
- api.has_param :crossposted_video_id, 'string'
1717
+ api.has_param :unpublished_content_type, { enum: -> { AdVideo::UNPUBLISHED_CONTENT_TYPE }}
1718
+ api.has_param :upload_phase, { enum: -> { AdVideo::UPLOAD_PHASE }}
1719
+ api.has_param :upload_session_id, 'string'
1720
+ api.has_param :upload_setting_properties, 'string'
1721
+ api.has_param :video_asset_id, 'string'
1722
+ api.has_param :video_file_chunk, 'string'
1723
+ api.has_param :video_start_time_ms, 'int'
1724
+ api.has_param :waterfall_id, 'string'
1727
1725
  end
1728
1726
  end
1729
1727