class FacebookAds::AdProductCatalog

developers.facebook.com/docs/marketing-api/reference/product-catalog

Constants

FIELDS

Public Class Methods

all(query = {}) click to toggle source
# File lib/facebook_ads/ad_product_catalog.rb, line 9
def all(query = {})
  get("/#{FacebookAds.business_id}/owned_product_catalogs", query: query, objectify: true)
end
create(name:) click to toggle source
# File lib/facebook_ads/ad_product_catalog.rb, line 13
def create(name:)
  query = { name: name }
  result = post("/#{FacebookAds.business_id}/owned_product_catalogs", query: query)
  find(result['id'])
end

Public Instance Methods

ad_product_feeds() click to toggle source

has_many ad_product_feeds

# File lib/facebook_ads/ad_product_catalog.rb, line 22
def ad_product_feeds
  AdProductFeed.paginate("/#{id}/product_feeds")
end
ad_product_groups() click to toggle source

has_many product_groups

# File lib/facebook_ads/ad_product_catalog.rb, line 42
def ad_product_groups
  AdProductGroup.paginate("/#{id}/product_groups")
end
ad_product_sets() click to toggle source

has_many product_sets

# File lib/facebook_ads/ad_product_catalog.rb, line 48
def ad_product_sets
  AdProductSet.paginate("/#{id}/product_sets")
end
ad_products() click to toggle source

has_many ad_products

# File lib/facebook_ads/ad_product_catalog.rb, line 54
def ad_products
  AdProduct.paginate("/#{id}/products")
end
create_ad_product(data) click to toggle source
# File lib/facebook_ads/ad_product_catalog.rb, line 58
def create_ad_product(data)
  result = AdProductCatalog.post("/#{id}/products", query: data)
  AdProduct.find(result['id'])
end
create_ad_product_feed(name:, schedule:) click to toggle source

catalog.create_ad_product_feed(name: 'Test', schedule: { url: 'tophatter.com/admin/ad_automation/ad_product_feeds/1.csv', interval: 'HOURLY' })

# File lib/facebook_ads/ad_product_catalog.rb, line 27
def create_ad_product_feed(name:, schedule:)
  query = { name: name, schedule: schedule }
  result = AdProductCatalog.post("/#{id}/product_feeds", query: query)
  AdProductFeed.find(result['id'])
end
create_ad_product_set(name:, filter:) click to toggle source

catalog.create_ad_product_set(name: 'Ring Set', filter: {“category”:{“i_contains”:“Apparel & Accessories > Jewelry > Earrings”}})

# File lib/facebook_ads/ad_product_catalog.rb, line 34
def create_ad_product_set(name:, filter:)
  query = { name: name, filter: filter.to_json }
  result = AdProductSet.post("/#{id}/product_sets", query: query)
  AdProductSet.find(result['id'])
end