facebookbusiness 0.10.0.1 → 0.11.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/lib/facebook_ads/ad_objects/ad_account.rb +16 -11
  3. data/lib/facebook_ads/ad_objects/{cpas_parent_catalog_settings.rb → ad_account_ios_fourteen_campaign_limits.rb} +7 -16
  4. data/lib/facebook_ads/ad_objects/ad_creative_link_data.rb +1 -0
  5. data/lib/facebook_ads/ad_objects/ad_preview.rb +1 -0
  6. data/lib/facebook_ads/ad_objects/ad_rule.rb +1 -0
  7. data/lib/facebook_ads/ad_objects/ad_study.rb +0 -1
  8. data/lib/facebook_ads/ad_objects/ad_study_objective.rb +0 -4
  9. data/lib/facebook_ads/ad_objects/ad_video.rb +8 -1
  10. data/lib/facebook_ads/ad_objects/adgroup_placement_specific_review_feedback.rb +1 -0
  11. data/lib/facebook_ads/ad_objects/adoptable_pet.rb +4 -0
  12. data/lib/facebook_ads/ad_objects/ads_insights.rb +2 -3
  13. data/lib/facebook_ads/ad_objects/application.rb +7 -4
  14. data/lib/facebook_ads/ad_objects/audio_copyright.rb +4 -0
  15. data/lib/facebook_ads/ad_objects/automotive_model.rb +4 -0
  16. data/lib/facebook_ads/ad_objects/business.rb +21 -19
  17. data/lib/facebook_ads/ad_objects/business_asset_group.rb +1 -0
  18. data/lib/facebook_ads/ad_objects/canvas.rb +2 -0
  19. data/lib/facebook_ads/ad_objects/canvas_template.rb +48 -0
  20. data/lib/facebook_ads/ad_objects/commerce_merchant_settings.rb +31 -0
  21. data/lib/facebook_ads/ad_objects/commerce_order.rb +14 -13
  22. data/lib/facebook_ads/ad_objects/custom_audience.rb +1 -0
  23. data/lib/facebook_ads/ad_objects/destination.rb +4 -0
  24. data/lib/facebook_ads/ad_objects/event.rb +4 -0
  25. data/lib/facebook_ads/ad_objects/flight.rb +4 -0
  26. data/lib/facebook_ads/ad_objects/group.rb +0 -17
  27. data/lib/facebook_ads/ad_objects/home_listing.rb +4 -0
  28. data/lib/facebook_ads/ad_objects/hotel.rb +4 -0
  29. data/lib/facebook_ads/ad_objects/ig_user.rb +4 -1
  30. data/lib/facebook_ads/ad_objects/{invoice_campaign_new.rb → invoice_campaign.rb} +1 -1
  31. data/lib/facebook_ads/ad_objects/omega_customer_trx.rb +1 -1
  32. data/lib/facebook_ads/ad_objects/oracle_transaction.rb +1 -1
  33. data/lib/facebook_ads/ad_objects/page.rb +43 -9
  34. data/lib/facebook_ads/ad_objects/page_call_to_action.rb +3 -0
  35. data/lib/facebook_ads/ad_objects/product_catalog.rb +22 -2
  36. data/lib/facebook_ads/ad_objects/product_catalog_diagnostic_group.rb +90 -0
  37. data/lib/facebook_ads/ad_objects/product_group.rb +8 -6
  38. data/lib/facebook_ads/ad_objects/product_item.rb +8 -0
  39. data/lib/facebook_ads/ad_objects/saved_audience.rb +2 -0
  40. data/lib/facebook_ads/ad_objects/unified_thread.rb +5 -0
  41. data/lib/facebook_ads/ad_objects/vehicle.rb +4 -0
  42. data/lib/facebook_ads/ad_objects/vehicle_offer.rb +4 -0
  43. data/lib/facebook_ads/ad_objects/video_copyright.rb +4 -0
  44. data/lib/facebook_ads/ad_objects/whats_app_business_account.rb +2 -0
  45. data/lib/facebook_ads/version.rb +2 -2
  46. metadata +9 -7
@@ -56,6 +56,37 @@ module FacebookAds
56
56
  has_no_post
57
57
  has_no_delete
58
58
 
59
+ has_edge :acknowledge_orders do |edge|
60
+ edge.post 'CommerceMerchantSettings' do |api|
61
+ api.has_param :idempotency_key, 'string'
62
+ api.has_param :orders, { list: 'hash' }
63
+ end
64
+ end
65
+
66
+ has_edge :commerce_orders do |edge|
67
+ edge.get 'CommerceOrder' do |api|
68
+ api.has_param :filters, { list: { enum: -> { CommerceOrder::FILTERS }} }
69
+ api.has_param :state, { list: { enum: -> { CommerceOrder::STATE }} }
70
+ api.has_param :updated_after, 'datetime'
71
+ api.has_param :updated_before, 'datetime'
72
+ end
73
+ end
74
+
75
+ has_edge :commerce_payouts do |edge|
76
+ edge.get 'CommercePayout' do |api|
77
+ api.has_param :end_time, 'datetime'
78
+ api.has_param :start_time, 'datetime'
79
+ end
80
+ end
81
+
82
+ has_edge :commerce_transactions do |edge|
83
+ edge.get 'CommerceOrderTransactionDetail' do |api|
84
+ api.has_param :end_time, 'datetime'
85
+ api.has_param :payout_reference_id, 'string'
86
+ api.has_param :start_time, 'datetime'
87
+ end
88
+ end
89
+
59
90
  has_edge :order_management_apps do |edge|
60
91
  edge.get 'Application'
61
92
  edge.post 'CommerceMerchantSettings'
@@ -26,19 +26,6 @@ module FacebookAds
26
26
  # pull request for this class.
27
27
 
28
28
  class CommerceOrder < AdObject
29
- REASON_CODE = [
30
- "BUYERS_REMORSE",
31
- "DAMAGED_GOODS",
32
- "NOT_AS_DESCRIBED",
33
- "QUALITY_ISSUE",
34
- "REFUND_COMPROMISED",
35
- "REFUND_FOR_RETURN",
36
- "REFUND_REASON_OTHER",
37
- "REFUND_SFI_FAKE",
38
- "REFUND_SFI_REAL",
39
- "WRONG_ITEM",
40
- ]
41
-
42
29
  FILTERS = [
43
30
  "HAS_CANCELLATIONS",
44
31
  "HAS_FULFILLMENTS",
@@ -55,6 +42,20 @@ module FacebookAds
55
42
  "IN_PROGRESS",
56
43
  ]
57
44
 
45
+ REASON_CODE = [
46
+ "BUYERS_REMORSE",
47
+ "DAMAGED_GOODS",
48
+ "FACEBOOK_INITIATED",
49
+ "NOT_AS_DESCRIBED",
50
+ "QUALITY_ISSUE",
51
+ "REFUND_COMPROMISED",
52
+ "REFUND_FOR_RETURN",
53
+ "REFUND_REASON_OTHER",
54
+ "REFUND_SFI_FAKE",
55
+ "REFUND_SFI_REAL",
56
+ "WRONG_ITEM",
57
+ ]
58
+
58
59
 
59
60
  field :buyer_details, 'object'
60
61
  field :channel, 'string'
@@ -84,6 +84,7 @@ module FacebookAds
84
84
  field :data_source, 'CustomAudienceDataSource'
85
85
  field :data_source_types, 'string'
86
86
  field :datafile_custom_audience_uploading_status, 'string'
87
+ field :delete_time, 'int'
87
88
  field :delivery_status, 'CustomAudienceStatus'
88
89
  field :description, 'string'
89
90
  field :excluded_custom_audiences, { list: 'CustomAudience' }
@@ -58,6 +58,10 @@ module FacebookAds
58
58
  edge.get
59
59
  end
60
60
 
61
+ has_edge :channels_to_integrity_status do |edge|
62
+ edge.get 'CatalogItemChannelsToIntegrityStatus'
63
+ end
64
+
61
65
  has_edge :videos_metadata do |edge|
62
66
  edge.get
63
67
  end
@@ -170,6 +170,10 @@ module FacebookAds
170
170
  edge.get 'Profile'
171
171
  end
172
172
 
173
+ has_edge :ticket_tiers do |edge|
174
+ edge.get
175
+ end
176
+
173
177
  has_edge :videos do |edge|
174
178
  edge.get 'NullNode'
175
179
  end
@@ -59,6 +59,10 @@ module FacebookAds
59
59
  edge.get
60
60
  end
61
61
 
62
+ has_edge :channels_to_integrity_status do |edge|
63
+ edge.get 'CatalogItemChannelsToIntegrityStatus'
64
+ end
65
+
62
66
  has_edge :videos_metadata do |edge|
63
67
  edge.get
64
68
  end
@@ -351,14 +351,6 @@ module FacebookAds
351
351
  end
352
352
  end
353
353
 
354
- has_edge :important_posts do |edge|
355
- edge.post do |api|
356
- api.has_param :button_type, { enum: %w{DISMISS DONE MARK_AS_READ }}
357
- api.has_param :expiration_time, 'datetime'
358
- api.has_param :post_id, 'string'
359
- end
360
- end
361
-
362
354
  has_edge :live_videos do |edge|
363
355
  edge.get 'LiveVideo' do |api|
364
356
  api.has_param :broadcast_status, { list: { enum: -> { LiveVideo::BROADCAST_STATUS }} }
@@ -474,15 +466,6 @@ module FacebookAds
474
466
  end
475
467
  end
476
468
 
477
- has_edge :pinned_posts do |edge|
478
- edge.delete do |api|
479
- api.has_param :post_id, 'string'
480
- end
481
- edge.post 'Post' do |api|
482
- api.has_param :post_ids, { list: 'string' }
483
- end
484
- end
485
-
486
469
  has_edge :videos do |edge|
487
470
  edge.get 'AdVideo' do |api|
488
471
  api.has_param :type, { enum: -> { AdVideo::TYPE }}
@@ -85,6 +85,10 @@ module FacebookAds
85
85
  edge.get
86
86
  end
87
87
 
88
+ has_edge :channels_to_integrity_status do |edge|
89
+ edge.get 'CatalogItemChannelsToIntegrityStatus'
90
+ end
91
+
88
92
  has_edge :videos_metadata do |edge|
89
93
  edge.get
90
94
  end
@@ -63,6 +63,10 @@ module FacebookAds
63
63
  edge.get
64
64
  end
65
65
 
66
+ has_edge :channels_to_integrity_status do |edge|
67
+ edge.get 'CatalogItemChannelsToIntegrityStatus'
68
+ end
69
+
66
70
  has_edge :hotel_rooms do |edge|
67
71
  edge.get 'HotelRoom'
68
72
  end
@@ -60,7 +60,10 @@ module FacebookAds
60
60
  end
61
61
 
62
62
  has_edge :media do |edge|
63
- edge.get 'IgMedia'
63
+ edge.get 'IgMedia' do |api|
64
+ api.has_param :since, 'datetime'
65
+ api.has_param :until, 'datetime'
66
+ end
64
67
  edge.post 'IgMedia' do |api|
65
68
  api.has_param :caption, 'string'
66
69
  api.has_param :image_url, 'string'
@@ -25,7 +25,7 @@ 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 InvoiceCampaignNew < AdObject
28
+ class InvoiceCampaign < AdObject
29
29
 
30
30
  field :ad_account_id, 'string'
31
31
  field :billed_amount_details, 'BilledAmountDetails'
@@ -57,7 +57,7 @@ module FacebookAds
57
57
  has_no_delete
58
58
 
59
59
  has_edge :campaigns do |edge|
60
- edge.get 'InvoiceCampaignNew'
60
+ edge.get 'InvoiceCampaign'
61
61
  end
62
62
 
63
63
  end
@@ -49,7 +49,7 @@ module FacebookAds
49
49
  has_no_delete
50
50
 
51
51
  has_edge :campaigns do |edge|
52
- edge.get 'InvoiceCampaignNew'
52
+ edge.get 'InvoiceCampaign'
53
53
  end
54
54
 
55
55
  end
@@ -122,6 +122,7 @@ module FacebookAds
122
122
  "PROFILE_PLUS_ANALYZE",
123
123
  "PROFILE_PLUS_CREATE_CONTENT",
124
124
  "PROFILE_PLUS_FACEBOOK_ACCESS",
125
+ "PROFILE_PLUS_FULL_CONTROL",
125
126
  "PROFILE_PLUS_MANAGE",
126
127
  "PROFILE_PLUS_MESSAGING",
127
128
  "PROFILE_PLUS_MODERATE",
@@ -146,6 +147,7 @@ module FacebookAds
146
147
  "PROFILE_PLUS_ANALYZE",
147
148
  "PROFILE_PLUS_CREATE_CONTENT",
148
149
  "PROFILE_PLUS_FACEBOOK_ACCESS",
150
+ "PROFILE_PLUS_FULL_CONTROL",
149
151
  "PROFILE_PLUS_MANAGE",
150
152
  "PROFILE_PLUS_MESSAGING",
151
153
  "PROFILE_PLUS_MODERATE",
@@ -232,6 +234,11 @@ module FacebookAds
232
234
  "UNREACT",
233
235
  ]
234
236
 
237
+ PLATFORM = [
238
+ "INSTAGRAM",
239
+ "MESSENGER",
240
+ ]
241
+
235
242
  MODEL = [
236
243
  "ARABIC",
237
244
  "CHINESE",
@@ -534,6 +541,10 @@ module FacebookAds
534
541
  end
535
542
  end
536
543
 
544
+ has_edge :audio_isrcs do |edge|
545
+ edge.get
546
+ end
547
+
537
548
  has_edge :blocked do |edge|
538
549
  edge.delete do |api|
539
550
  api.has_param :asid, 'string'
@@ -600,6 +611,7 @@ module FacebookAds
600
611
  api.has_param :is_hidden, 'bool'
601
612
  api.has_param :is_published, 'bool'
602
613
  api.has_param :name, 'string'
614
+ api.has_param :source_template_id, 'string'
603
615
  end
604
616
  end
605
617
 
@@ -642,6 +654,7 @@ module FacebookAds
642
654
  has_edge :conversations do |edge|
643
655
  edge.get 'UnifiedThread' do |api|
644
656
  api.has_param :folder, 'string'
657
+ api.has_param :platform, { enum: -> { UnifiedThread::PLATFORM }}
645
658
  api.has_param :tags, { list: 'string' }
646
659
  api.has_param :user_id, 'string'
647
660
  end
@@ -831,6 +844,13 @@ module FacebookAds
831
844
  edge.get 'Page'
832
845
  end
833
846
 
847
+ has_edge :groups do |edge|
848
+ edge.get 'Group' do |api|
849
+ api.has_param :admin_only, 'bool'
850
+ api.has_param :parent, 'string'
851
+ end
852
+ end
853
+
834
854
  has_edge :image_copyrights do |edge|
835
855
  edge.get 'ImageCopyright'
836
856
  edge.post 'ImageCopyright' do |api|
@@ -1020,6 +1040,7 @@ module FacebookAds
1020
1040
  api.has_param :message, 'object'
1021
1041
  api.has_param :messaging_type, { enum: -> { Page::MESSAGING_TYPE }}
1022
1042
  api.has_param :notification_type, { enum: -> { Page::NOTIFICATION_TYPE }}
1043
+ api.has_param :payload, 'string'
1023
1044
  api.has_param :persona_id, 'string'
1024
1045
  api.has_param :recipient, 'object'
1025
1046
  api.has_param :sender_action, { enum: -> { Page::SENDER_ACTION }}
@@ -1034,8 +1055,11 @@ module FacebookAds
1034
1055
  has_edge :messenger_profile do |edge|
1035
1056
  edge.delete do |api|
1036
1057
  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 }} }
1058
+ api.has_param :platform, { enum: -> { Page::PLATFORM }}
1059
+ end
1060
+ edge.get 'MessengerProfile' do |api|
1061
+ api.has_param :platform, { enum: -> { Page::PLATFORM }}
1037
1062
  end
1038
- edge.get 'MessengerProfile'
1039
1063
  edge.post 'Page' do |api|
1040
1064
  api.has_param :account_linking_url, 'string'
1041
1065
  api.has_param :get_started, 'object'
@@ -1043,6 +1067,7 @@ module FacebookAds
1043
1067
  api.has_param :ice_breakers, { list: 'hash' }
1044
1068
  api.has_param :payment_settings, 'object'
1045
1069
  api.has_param :persistent_menu, { list: 'object' }
1070
+ api.has_param :platform, { enum: -> { Page::PLATFORM }}
1046
1071
  api.has_param :target_audience, 'object'
1047
1072
  api.has_param :whitelisted_domains, { list: 'string' }
1048
1073
  end
@@ -1123,13 +1148,6 @@ module FacebookAds
1123
1148
  end
1124
1149
  end
1125
1150
 
1126
- has_edge :phone_data do |edge|
1127
- edge.post do |api|
1128
- api.has_param :call_ads_phone_data_use_case, { enum: %w{CALL_DESTINATION_AD CALL_EXTENSION_AD }}
1129
- api.has_param :phone_number, 'string'
1130
- end
1131
- end
1132
-
1133
1151
  has_edge :photos do |edge|
1134
1152
  edge.get 'Photo' do |api|
1135
1153
  api.has_param :biz_tag_id, 'int'
@@ -1209,6 +1227,7 @@ module FacebookAds
1209
1227
  api.has_param :burn_media_effect, 'bool'
1210
1228
  api.has_param :caption, 'string'
1211
1229
  api.has_param :composer_session_id, 'string'
1230
+ api.has_param :frame_entrypoint, 'string'
1212
1231
  api.has_param :has_umg, 'bool'
1213
1232
  api.has_param :height, 'int'
1214
1233
  api.has_param :ios_bundle_id, 'string'
@@ -1289,7 +1308,9 @@ module FacebookAds
1289
1308
  end
1290
1309
 
1291
1310
  has_edge :secondary_receivers do |edge|
1292
- edge.get 'Application'
1311
+ edge.get 'Application' do |api|
1312
+ api.has_param :platform, { enum: -> { Application::PLATFORM }}
1313
+ end
1293
1314
  end
1294
1315
 
1295
1316
  has_edge :settings do |edge|
@@ -1501,5 +1522,18 @@ module FacebookAds
1501
1522
  end
1502
1523
  end
1503
1524
 
1525
+ has_edge :workpagemessages do |edge|
1526
+ edge.post 'Page' do |api|
1527
+ api.has_param :message, 'object'
1528
+ api.has_param :messaging_type, { enum: -> { Page::MESSAGING_TYPE }}
1529
+ api.has_param :notification_type, { enum: -> { Page::NOTIFICATION_TYPE }}
1530
+ api.has_param :payload, 'string'
1531
+ api.has_param :persona_id, 'string'
1532
+ api.has_param :recipient, 'object'
1533
+ api.has_param :sender_action, { enum: -> { Page::SENDER_ACTION }}
1534
+ api.has_param :tag, 'object'
1535
+ end
1536
+ end
1537
+
1504
1538
  end
1505
1539
  end
@@ -33,6 +33,7 @@ module FacebookAds
33
33
  "FACEBOOK_APP",
34
34
  "FOLLOW",
35
35
  "MARKETPLACE_INVENTORY_PAGE",
36
+ "MENU_ON_FACEBOOK",
36
37
  "MESSENGER",
37
38
  "MINI_SHOP",
38
39
  "MOBILE_CENTER",
@@ -49,6 +50,7 @@ module FacebookAds
49
50
  "FACEBOOK_APP",
50
51
  "FOLLOW",
51
52
  "MARKETPLACE_INVENTORY_PAGE",
53
+ "MENU_ON_FACEBOOK",
52
54
  "MESSENGER",
53
55
  "MINI_SHOP",
54
56
  "NONE",
@@ -88,6 +90,7 @@ module FacebookAds
88
90
  "SHOP_ON_FACEBOOK",
89
91
  "SIGN_UP",
90
92
  "VIEW_INVENTORY",
93
+ "VIEW_MENU",
91
94
  "VIEW_SHOP",
92
95
  "VISIT_GROUP",
93
96
  "WATCH_NOW",
@@ -112,6 +112,7 @@ module FacebookAds
112
112
  field :destination_catalog_settings, 'hash'
113
113
  field :flight_catalog_settings, 'hash'
114
114
  field :parent_catalog_id, 'string'
115
+ field :partner_integration, 'hash'
115
116
 
116
117
  has_edge :agencies do |edge|
117
118
  edge.delete do |api|
@@ -203,6 +204,15 @@ module FacebookAds
203
204
  end
204
205
  end
205
206
 
207
+ has_edge :diagnostics do |edge|
208
+ edge.get 'ProductCatalogDiagnosticGroup' do |api|
209
+ api.has_param :affected_channels, { list: { enum: -> { ProductCatalogDiagnosticGroup::AFFECTED_CHANNELS }} }
210
+ api.has_param :affected_features, { list: { enum: -> { ProductCatalogDiagnosticGroup::AFFECTED_FEATURES }} }
211
+ api.has_param :severities, { list: { enum: -> { ProductCatalogDiagnosticGroup::SEVERITIES }} }
212
+ api.has_param :types, { list: { enum: -> { ProductCatalogDiagnosticGroup::TYPES }} }
213
+ end
214
+ end
215
+
206
216
  has_edge :event_stats do |edge|
207
217
  edge.get 'ProductEventStat' do |api|
208
218
  api.has_param :breakdowns, { list: { enum: -> { ProductEventStat::BREAKDOWNS }} }
@@ -211,11 +221,11 @@ module FacebookAds
211
221
 
212
222
  has_edge :external_event_sources do |edge|
213
223
  edge.delete do |api|
214
- api.has_param :external_event_sources, { list: 'string' }
224
+ api.has_param :external_event_sources, 'object'
215
225
  end
216
226
  edge.get 'ExternalEventSource'
217
227
  edge.post 'ProductCatalog' do |api|
218
- api.has_param :external_event_sources, { list: 'string' }
228
+ api.has_param :external_event_sources, 'object'
219
229
  end
220
230
  end
221
231
 
@@ -295,6 +305,14 @@ module FacebookAds
295
305
  end
296
306
  end
297
307
 
308
+ has_edge :localized_items_batch do |edge|
309
+ edge.post 'ProductCatalog' do |api|
310
+ api.has_param :allow_upsert, 'bool'
311
+ api.has_param :item_type, 'string'
312
+ api.has_param :requests, 'hash'
313
+ end
314
+ end
315
+
298
316
  has_edge :media_titles do |edge|
299
317
  edge.get do |api|
300
318
  api.has_param :bulk_pagination, 'bool'
@@ -415,6 +433,7 @@ module FacebookAds
415
433
  api.has_param :iphone_url, 'string'
416
434
  api.has_param :launch_date, 'string'
417
435
  api.has_param :manufacturer_part_number, 'string'
436
+ api.has_param :marked_for_product_launch, { enum: -> { ProductItem::MARKED_FOR_PRODUCT_LAUNCH }}
418
437
  api.has_param :material, 'string'
419
438
  api.has_param :mobile_link, 'string'
420
439
  api.has_param :name, 'string'
@@ -425,6 +444,7 @@ module FacebookAds
425
444
  api.has_param :pattern, 'string'
426
445
  api.has_param :price, 'int'
427
446
  api.has_param :product_type, 'string'
447
+ api.has_param :quantity_to_sell_on_facebook, 'int'
428
448
  api.has_param :retailer_id, 'string'
429
449
  api.has_param :retailer_product_group_id, 'string'
430
450
  api.has_param :return_policy_days, 'int'