facebookbusiness 0.9.0.1 → 0.9.0.2

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 (45) hide show
  1. checksums.yaml +4 -4
  2. data/lib/facebook_ads/ad_objects/ad.rb +3 -0
  3. data/lib/facebook_ads/ad_objects/ad_account.rb +8 -10
  4. data/lib/facebook_ads/ad_objects/ad_account_delivery_estimate.rb +1 -0
  5. data/lib/facebook_ads/ad_objects/ad_account_matched_search_applications_edge_data.rb +1 -0
  6. data/lib/facebook_ads/ad_objects/ad_account_targeting_unified.rb +1 -0
  7. data/lib/facebook_ads/ad_objects/ad_asset_feed_spec.rb +1 -0
  8. data/lib/facebook_ads/ad_objects/ad_campaign_activity.rb +2 -2
  9. data/lib/facebook_ads/ad_objects/ad_campaign_delivery_estimate.rb +1 -0
  10. data/lib/facebook_ads/ad_objects/ad_creative.rb +1 -0
  11. data/lib/facebook_ads/ad_objects/ad_creative_link_data_call_to_action.rb +1 -0
  12. data/lib/facebook_ads/ad_objects/{friend_list.rb → ad_creative_omnichannel_link_spec.rb} +5 -5
  13. data/lib/facebook_ads/ad_objects/ad_report_run.rb +1 -0
  14. data/lib/facebook_ads/ad_objects/ad_set.rb +3 -1
  15. data/lib/facebook_ads/ad_objects/ad_video.rb +1 -10
  16. data/lib/facebook_ads/ad_objects/album.rb +0 -10
  17. data/lib/facebook_ads/ad_objects/application.rb +1 -10
  18. data/lib/facebook_ads/ad_objects/business.rb +1 -0
  19. data/lib/facebook_ads/ad_objects/business_asset_group.rb +1 -0
  20. data/lib/facebook_ads/ad_objects/campaign.rb +4 -2
  21. data/lib/facebook_ads/ad_objects/{user_payment_modules_options.rb → catalog_item_channels_to_integrity_status.rb} +3 -5
  22. data/lib/facebook_ads/ad_objects/custom_audience.rb +8 -0
  23. data/lib/facebook_ads/ad_objects/group.rb +23 -10
  24. data/lib/facebook_ads/ad_objects/ig_media.rb +0 -1
  25. data/lib/facebook_ads/ad_objects/ig_user.rb +0 -1
  26. data/lib/facebook_ads/ad_objects/link.rb +0 -10
  27. data/lib/facebook_ads/ad_objects/live_video.rb +12 -12
  28. data/lib/facebook_ads/ad_objects/messenger_profile.rb +1 -0
  29. data/lib/facebook_ads/ad_objects/page.rb +2 -6
  30. data/lib/facebook_ads/ad_objects/page_post.rb +0 -10
  31. data/lib/facebook_ads/ad_objects/{event_tour.rb → payment_engine_payment.rb} +35 -18
  32. data/lib/facebook_ads/ad_objects/payment_subscription.rb +3 -3
  33. data/lib/facebook_ads/ad_objects/photo.rb +0 -10
  34. data/lib/facebook_ads/ad_objects/post.rb +12 -40
  35. data/lib/facebook_ads/ad_objects/product_feed_schedule.rb +2 -0
  36. data/lib/facebook_ads/ad_objects/product_group.rb +8 -0
  37. data/lib/facebook_ads/ad_objects/product_item.rb +13 -0
  38. data/lib/facebook_ads/ad_objects/targeting.rb +0 -2
  39. data/lib/facebook_ads/ad_objects/unified_thread.rb +0 -1
  40. data/lib/facebook_ads/ad_objects/user.rb +13 -16
  41. data/lib/facebook_ads/ad_objects/{offline_terms_of_service.rb → whats_app_business_profile.rb} +2 -4
  42. data/lib/facebook_ads/version.rb +1 -1
  43. metadata +6 -8
  44. data/lib/facebook_ads/ad_objects/ad_account_creation_request.rb +0 -71
  45. data/lib/facebook_ads/ad_objects/user_payment_methods_info.rb +0 -43
@@ -27,7 +27,6 @@ module FacebookAds
27
27
 
28
28
  class IgMedia < AdObject
29
29
 
30
- field :alt_text, 'string'
31
30
  field :caption, 'string'
32
31
  field :comments_count, 'int'
33
32
  field :id, 'string'
@@ -33,7 +33,6 @@ module FacebookAds
33
33
  field :follows_count, 'int'
34
34
  field :id, 'string'
35
35
  field :ig_id, 'int'
36
- field :is_ig_shopping_seller_policy_enabled, 'bool'
37
36
  field :media_count, 'int'
38
37
  field :mentioned_comment, 'IgComment'
39
38
  field :mentioned_media, 'IgMedia'
@@ -43,12 +43,6 @@ module FacebookAds
43
43
  has_no_delete
44
44
 
45
45
  has_edge :comments do |edge|
46
- edge.get 'Comment' do |api|
47
- api.has_param :filter, { enum: -> { Comment::FILTER }}
48
- api.has_param :live_filter, { enum: -> { Comment::LIVE_FILTER }}
49
- api.has_param :order, { enum: -> { Comment::ORDER }}
50
- api.has_param :since, 'datetime'
51
- end
52
46
  edge.post 'Comment' do |api|
53
47
  api.has_param :attachment_id, 'string'
54
48
  api.has_param :attachment_share_url, 'string'
@@ -70,9 +64,5 @@ module FacebookAds
70
64
  edge.get 'Profile'
71
65
  end
72
66
 
73
- has_edge :sharedposts do |edge|
74
- edge.get 'Post'
75
- end
76
-
77
67
  end
78
68
  end
@@ -26,18 +26,6 @@ module FacebookAds
26
26
  # pull request for this class.
27
27
 
28
28
  class LiveVideo < AdObject
29
- BROADCAST_STATUS = [
30
- "live",
31
- "live_stopped",
32
- "processing",
33
- "scheduled_canceled",
34
- "scheduled_expired",
35
- "scheduled_live",
36
- "scheduled_unpublished",
37
- "unpublished",
38
- "vod",
39
- ]
40
-
41
29
  PROJECTION = [
42
30
  "CUBEMAP",
43
31
  "EQUIRECTANGULAR",
@@ -67,6 +55,18 @@ module FacebookAds
67
55
  "REGULAR",
68
56
  ]
69
57
 
58
+ BROADCAST_STATUS = [
59
+ "LIVE",
60
+ "LIVE_STOPPED",
61
+ "PROCESSING",
62
+ "SCHEDULED_CANCELED",
63
+ "SCHEDULED_EXPIRED",
64
+ "SCHEDULED_LIVE",
65
+ "SCHEDULED_UNPUBLISHED",
66
+ "UNPUBLISHED",
67
+ "VOD",
68
+ ]
69
+
70
70
  SOURCE = [
71
71
  "owner",
72
72
  "target",
@@ -33,6 +33,7 @@ module FacebookAds
33
33
  field :ice_breakers, { list: 'object' }
34
34
  field :payment_settings, 'object'
35
35
  field :persistent_menu, { list: 'object' }
36
+ field :subject_to_new_eu_privacy_rules, 'bool'
36
37
  field :target_audience, 'object'
37
38
  field :whitelisted_domains, { list: 'string' }
38
39
  has_no_id
@@ -589,9 +589,6 @@ module FacebookAds
589
589
  end
590
590
 
591
591
  has_edge :claimed_urls do |edge|
592
- edge.delete do |api|
593
- api.has_param :url, 'string'
594
- end
595
592
  edge.get 'Url'
596
593
  end
597
594
 
@@ -950,7 +947,6 @@ module FacebookAds
950
947
  api.has_param :location, 'object'
951
948
  api.has_param :location_page_id, 'string'
952
949
  api.has_param :old_store_number, 'int'
953
- api.has_param :page_username, 'string'
954
950
  api.has_param :permanently_closed, 'bool'
955
951
  api.has_param :phone, 'string'
956
952
  api.has_param :pickup_options, { list: { enum: -> { Page::PICKUP_OPTIONS }} }
@@ -1002,7 +998,7 @@ module FacebookAds
1002
998
 
1003
999
  has_edge :messenger_profile do |edge|
1004
1000
  edge.delete do |api|
1005
- api.has_param :fields, { list: { enum: %w{ACCOUNT_LINKING_URL GET_STARTED GREETING HOME_URL ICE_BREAKERS PAYMENT_SETTINGS PERSISTENT_MENU PLATFORM TARGET_AUDIENCE WHITELISTED_DOMAINS }} }
1001
+ api.has_param :fields, { list: { enum: %w{ACCOUNT_LINKING_URL GET_STARTED GREETING HOME_URL ICE_BREAKERS PAYMENT_SETTINGS PERSISTENT_MENU PLATFORM SUBJECT_TO_NEW_EU_PRIVACY_RULES TARGET_AUDIENCE WHITELISTED_DOMAINS }} }
1006
1002
  end
1007
1003
  edge.get 'MessengerProfile'
1008
1004
  edge.post 'Page' do |api|
@@ -1311,7 +1307,7 @@ module FacebookAds
1311
1307
  end
1312
1308
 
1313
1309
  has_edge :tours do |edge|
1314
- edge.get 'EventTour'
1310
+ edge.get
1315
1311
  end
1316
1312
 
1317
1313
  has_edge :unlink_accounts do |edge|
@@ -62,21 +62,16 @@ module FacebookAds
62
62
  field :comments_mirroring_domain, 'string'
63
63
  field :coordinates, 'object'
64
64
  field :created_time, 'datetime'
65
- field :delivery_growth_optimizations, { list: 'string' }
66
- field :entities, 'object'
67
65
  field :event, 'Event'
68
66
  field :expanded_height, 'int'
69
67
  field :expanded_width, 'int'
70
68
  field :feed_targeting, 'object'
71
- field :formatting, 'string'
72
69
  field :from, 'object'
73
70
  field :full_picture, 'string'
74
71
  field :height, 'int'
75
72
  field :icon, 'string'
76
73
  field :id, 'string'
77
- field :implicit_place, 'Place'
78
74
  field :instagram_eligibility, 'string'
79
- field :instream_eligibility, 'string'
80
75
  field :is_app_share, 'bool'
81
76
  field :is_eligible_for_promotion, 'bool'
82
77
  field :is_expired, 'bool'
@@ -86,7 +81,6 @@ module FacebookAds
86
81
  field :is_popular, 'bool'
87
82
  field :is_published, 'bool'
88
83
  field :is_spherical, 'bool'
89
- field :live_video_eligibility, { list: 'string' }
90
84
  field :message, 'string'
91
85
  field :message_tags, { list: 'string' }
92
86
  field :multi_share_end_card, 'bool'
@@ -95,12 +89,10 @@ module FacebookAds
95
89
  field :permalink_url, 'object'
96
90
  field :picture, 'string'
97
91
  field :place, 'Place'
98
- field :poll, 'object'
99
92
  field :privacy, 'Privacy'
100
93
  field :promotable_id, 'string'
101
94
  field :promotion_status, 'string'
102
95
  field :properties, { list: 'string' }
103
- field :publishing_stats, 'int'
104
96
  field :scheduled_publish_time, 'double'
105
97
  field :shares, 'object'
106
98
  field :status_type, 'string'
@@ -110,12 +102,10 @@ module FacebookAds
110
102
  field :target, 'Profile'
111
103
  field :targeting, 'object'
112
104
  field :timeline_visibility, 'string'
113
- field :translations, 'hash'
114
105
  field :updated_time, 'datetime'
115
106
  field :via, 'object'
116
107
  field :video_buying_eligibility, { list: 'string' }
117
108
  field :width, 'int'
118
- field :will_be_autocropped_when_deliver_to_instagram, 'bool'
119
109
 
120
110
  has_edge :attachments do |edge|
121
111
  edge.get
@@ -25,31 +25,48 @@ 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 EventTour < AdObject
28
+ class PaymentEnginePayment < AdObject
29
+ REASON = [
30
+ "BANNED_USER",
31
+ "DENIED_REFUND",
32
+ "GRANTED_REPLACEMENT_ITEM",
33
+ ]
29
34
 
30
- field :description, 'string'
31
- field :dominant_color, 'string'
32
- field :end_time, 'string'
35
+
36
+ field :actions, { list: 'object' }
37
+ field :application, 'Application'
38
+ field :country, 'string'
39
+ field :created_time, 'datetime'
40
+ field :disputes, { list: 'object' }
41
+ field :fraud_status, 'string'
42
+ field :fulfillment_status, 'string'
33
43
  field :id, 'string'
34
- field :is_past, 'bool'
35
- field :last_event_timestamp, 'int'
36
- field :name, 'string'
37
- field :num_events, 'int'
38
- field :photo, 'Photo'
39
- field :publishing_state, 'string'
40
- field :scheduled_publish_timestamp, 'int'
41
- field :start_time, 'string'
42
- field :ticketing_uri, 'string'
43
- field :video, 'AdVideo'
44
+ field :is_from_ad, 'bool'
45
+ field :is_from_page_post, 'bool'
46
+ field :items, { list: 'object' }
47
+ field :payout_foreign_exchange_rate, 'double'
48
+ field :phone_support_eligible, 'bool'
49
+ field :refundable_amount, 'CurrencyAmount'
50
+ field :request_id, 'string'
51
+ field :tax, 'string'
52
+ field :tax_country, 'string'
53
+ field :test, 'int'
54
+ field :user, 'User'
44
55
  has_no_post
45
56
  has_no_delete
46
57
 
47
- has_edge :events do |edge|
48
- edge.get 'Event'
58
+ has_edge :dispute do |edge|
59
+ edge.post 'PaymentEnginePayment' do |api|
60
+ api.has_param :reason, { enum: -> { PaymentEnginePayment::REASON }}
61
+ end
49
62
  end
50
63
 
51
- has_edge :pages do |edge|
52
- edge.get 'Page'
64
+ has_edge :refunds do |edge|
65
+ edge.post 'PaymentEnginePayment' do |api|
66
+ api.has_param :amount, 'double'
67
+ api.has_param :currency, 'string'
68
+ api.has_param :reason, { enum: -> { PaymentEnginePayment::REASON }}
69
+ end
53
70
  end
54
71
 
55
72
  end
@@ -29,13 +29,13 @@ module FacebookAds
29
29
 
30
30
  field :amount, 'string'
31
31
  field :app_param_data, 'string'
32
- field :application, 'Profile'
32
+ field :application, 'Application'
33
33
  field :billing_period, 'string'
34
34
  field :canceled_reason, 'string'
35
35
  field :created_time, 'datetime'
36
36
  field :currency, 'string'
37
37
  field :id, 'string'
38
- field :last_payment, 'string'
38
+ field :last_payment, 'PaymentEnginePayment'
39
39
  field :next_bill_time, 'datetime'
40
40
  field :next_period_amount, 'string'
41
41
  field :next_period_currency, 'string'
@@ -50,7 +50,7 @@ module FacebookAds
50
50
  field :trial_currency, 'string'
51
51
  field :trial_expiry_time, 'datetime'
52
52
  field :updated_time, 'datetime'
53
- field :user, 'Profile'
53
+ field :user, 'User'
54
54
  has_no_post
55
55
  has_no_delete
56
56
 
@@ -125,16 +125,6 @@ module FacebookAds
125
125
  end
126
126
  end
127
127
 
128
- has_edge :reactions do |edge|
129
- edge.get 'Profile' do |api|
130
- api.has_param :type, { enum: -> { Profile::TYPE }}
131
- end
132
- end
133
-
134
- has_edge :sharedposts do |edge|
135
- edge.get 'Post'
136
- end
137
-
138
128
  has_edge :sponsor_tags do |edge|
139
129
  edge.get 'Page'
140
130
  end
@@ -35,17 +35,6 @@ module FacebookAds
35
35
  "year",
36
36
  ]
37
37
 
38
- FEED_STORY_VISIBILITY = [
39
- "hidden",
40
- "visible",
41
- ]
42
-
43
- TIMELINE_VISIBILITY = [
44
- "forced_allow",
45
- "hidden",
46
- "normal",
47
- ]
48
-
49
38
  CHECKIN_ENTRY_POINT = [
50
39
  "BRANDING_CHECKIN",
51
40
  "BRANDING_OTHER",
@@ -91,6 +80,17 @@ module FacebookAds
91
80
  "SCHEDULED_RECURRING",
92
81
  ]
93
82
 
83
+ FEED_STORY_VISIBILITY = [
84
+ "hidden",
85
+ "visible",
86
+ ]
87
+
88
+ TIMELINE_VISIBILITY = [
89
+ "forced_allow",
90
+ "hidden",
91
+ "normal",
92
+ ]
93
+
94
94
 
95
95
  field :actions, { list: 'string' }
96
96
  field :admin_creator, 'object'
@@ -104,22 +104,17 @@ module FacebookAds
104
104
  field :comments_mirroring_domain, 'string'
105
105
  field :coordinates, 'object'
106
106
  field :created_time, 'datetime'
107
- field :delivery_growth_optimizations, { list: 'string' }
108
107
  field :description, 'string'
109
- field :entities, 'object'
110
108
  field :event, 'Event'
111
109
  field :expanded_height, 'int'
112
110
  field :expanded_width, 'int'
113
111
  field :feed_targeting, 'object'
114
- field :formatting, 'string'
115
112
  field :from, 'object'
116
113
  field :full_picture, 'string'
117
114
  field :height, 'int'
118
115
  field :icon, 'string'
119
116
  field :id, 'string'
120
- field :implicit_place, 'Place'
121
117
  field :instagram_eligibility, 'string'
122
- field :instream_eligibility, 'string'
123
118
  field :is_app_share, 'bool'
124
119
  field :is_eligible_for_promotion, 'bool'
125
120
  field :is_expired, 'bool'
@@ -129,8 +124,7 @@ module FacebookAds
129
124
  field :is_popular, 'bool'
130
125
  field :is_published, 'bool'
131
126
  field :is_spherical, 'bool'
132
- field :link, 'string'
133
- field :live_video_eligibility, { list: 'string' }
127
+ field :link, 'object'
134
128
  field :message, 'string'
135
129
  field :message_tags, { list: 'string' }
136
130
  field :multi_share_end_card, 'bool'
@@ -141,12 +135,10 @@ module FacebookAds
141
135
  field :permalink_url, 'object'
142
136
  field :picture, 'string'
143
137
  field :place, 'Place'
144
- field :poll, 'object'
145
138
  field :privacy, 'Privacy'
146
139
  field :promotable_id, 'string'
147
140
  field :promotion_status, 'string'
148
141
  field :properties, { list: 'string' }
149
- field :publishing_stats, 'int'
150
142
  field :scheduled_publish_time, 'double'
151
143
  field :shares, 'object'
152
144
  field :source, 'string'
@@ -157,13 +149,11 @@ module FacebookAds
157
149
  field :target, 'Profile'
158
150
  field :targeting, 'object'
159
151
  field :timeline_visibility, 'string'
160
- field :translations, 'hash'
161
152
  field :type, 'string'
162
153
  field :updated_time, 'datetime'
163
154
  field :via, 'object'
164
155
  field :video_buying_eligibility, { list: 'string' }
165
156
  field :width, 'int'
166
- field :will_be_autocropped_when_deliver_to_instagram, 'bool'
167
157
 
168
158
  has_edge :attachments do |edge|
169
159
  edge.get
@@ -217,24 +207,6 @@ module FacebookAds
217
207
  end
218
208
  end
219
209
 
220
- has_edge :promotions do |edge|
221
- edge.post do |api|
222
- api.has_param :ad_account_id, 'string'
223
- api.has_param :ad_conversion_pixel_id, 'int'
224
- api.has_param :audience, { enum: %w{AUTO_LOOKALIKE AUTO_PAGE_LOOKALIKE AUTO_TARGETING COUNTRY_AND_INTEREST CREATE_NEW CUSTOM_AUDIENCE DISTRICT EVENT_CUSTOM_AUDIENCES EVENT_ENGAGEMENT FANS GROUPER HEC_AUDIENCE IG_PROMOTED_POST_AUTO LOCAL LOOKALIKE MARKETPLACE_DEFAULT MARKETPLACE_NATIONWIDE_AUDIENCE MARKETPLACE_SAVED_AUDIENCE MULT_CUSTOM_AUDIENCES NCPP SAVED_AUDIENCE SMART_AUDIENCE }}
225
- api.has_param :audience_id, 'string'
226
- api.has_param :bid_amount, 'int'
227
- api.has_param :budget, 'int'
228
- api.has_param :cta_type, { enum: %w{ADD_TO_CART APPLY_NOW BOOK_TRAVEL BUY BUY_NOW BUY_TICKETS CALL CALL_ME CONTACT CONTACT_US DONATE DONATE_NOW DOWNLOAD EVENT_RSVP FIND_A_GROUP FIND_YOUR_GROUPS FOLLOW_NEWS_STORYLINE FOLLOW_PAGE FOLLOW_USER GET_DIRECTIONS GET_OFFER GET_OFFER_VIEW GET_QUOTE GET_SHOWTIMES INSTALL_APP INSTALL_MOBILE_APP LEARN_MORE LIKE_PAGE LISTEN_MUSIC LISTEN_NOW MESSAGE_PAGE MOBILE_DOWNLOAD MOMENTS NO_BUTTON OPEN_LINK ORDER_NOW PAY_TO_ACCESS PLAY_GAME PURCHASE_GIFT_CARDS RECORD_NOW REFER_FRIENDS REQUEST_TIME SAY_THANKS SEE_MORE SELL_NOW SEND_A_GIFT SHARE SHOP_NOW SIGN_UP SOTTO_SUBSCRIBE START_ORDER SUBSCRIBE SWIPE_UP_PRODUCT SWIPE_UP_SHOP UPDATE_APP USE_APP USE_MOBILE_APP VIDEO_ANNOTATION VISIT_PAGES_FEED WATCH_MORE WATCH_VIDEO WHATSAPP_MESSAGE WOODHENGE_SUPPORT }}
229
- api.has_param :currency, 'string'
230
- api.has_param :flow_id, 'string'
231
- api.has_param :placement, 'string'
232
- api.has_param :start_time, 'int'
233
- api.has_param :stop_time, 'int'
234
- api.has_param :targeting, 'Targeting'
235
- end
236
- end
237
-
238
210
  has_edge :reactions do |edge|
239
211
  edge.get 'Profile' do |api|
240
212
  api.has_param :type, { enum: -> { Profile::TYPE }}
@@ -54,6 +54,8 @@ module FacebookAds
54
54
  field :timezone, 'string'
55
55
  field :url, 'string'
56
56
  field :username, 'string'
57
+ has_no_post
58
+ has_no_delete
57
59
 
58
60
  end
59
61
  end
@@ -32,6 +32,14 @@ module FacebookAds
32
32
  field :retailer_id, 'string'
33
33
  field :variants, { list: 'ProductVariant' }
34
34
 
35
+ has_edge :ar_data do |edge|
36
+ edge.post do |api|
37
+ api.has_param :effect_icon, 'file'
38
+ api.has_param :state, { enum: %w{DISABLED ENABLED TEST }}
39
+ api.has_param :surfaces, { list: { enum: %w{SHOPS TEST_CAPABILITY UNIVERSAL_CHECKOUT US_MARKETPLACE }} }
40
+ end
41
+ end
42
+
35
43
  has_edge :products do |edge|
36
44
  edge.get 'ProductItem'
37
45
  edge.post 'ProductItem' do |api|
@@ -323,6 +323,7 @@ module FacebookAds
323
323
  field :mobile_link, 'string'
324
324
  field :name, 'string'
325
325
  field :ordering_index, 'int'
326
+ field :parent_product_id, 'string'
326
327
  field :pattern, 'string'
327
328
  field :price, 'string'
328
329
  field :product_catalog, 'ProductCatalog'
@@ -369,6 +370,18 @@ module FacebookAds
369
370
  field :windows_phone_app_name, 'string'
370
371
  field :windows_phone_url, 'string'
371
372
 
373
+ has_edge :ar_data do |edge|
374
+ edge.post do |api|
375
+ api.has_param :container_effect, { enum: %w{MAKEUP }}
376
+ api.has_param :effect_parameters, 'hash'
377
+ api.has_param :picker_icon, 'file'
378
+ end
379
+ end
380
+
381
+ has_edge :channels_to_integrity_status do |edge|
382
+ edge.get 'CatalogItemChannelsToIntegrityStatus'
383
+ end
384
+
372
385
  has_edge :product_sets do |edge|
373
386
  edge.get 'ProductSet'
374
387
  end