img = AdImage(parent_id=my_account.get_id_assured()) img[AdImage.Field.filename] = os.path.join(this_dir, 'test.png') img.remote_create() print("**** DONE: Image uploaded:") pp.pprint(img) # The image hash can be found using img[AdImage.Field.hash] ### Create a creative. creative = AdCreative(parent_id=my_account.get_id_assured()) creative.update({ AdCreative.Field.title: 'Visit Seattle', AdCreative.Field.body: 'Beautiful Puget Sound!', AdCreative.Field.object_url: 'http://www.seattle.gov/visiting/', AdCreative.Field.image_hash: img.get_hash(), }) creative.remote_create() print("**** DONE: Creative created:") pp.pprint(creative) ### Get excited, we are finally creating an ad!!! ad = AdGroup(parent_id=my_account.get_id_assured()) ad.update({ AdGroup.Field.name: 'Puget Sound impression ad', AdGroup.Field.campaign_id: ad_set.get_id_assured(), AdGroup.Field.creative: { AdGroup.Field.Creative.creative_id: creative.get_id_assured(), }, }) ad.remote_create() print("**** DONE: Ad created:") pp.pprint(ad)
def create_lead_ad( self, account_id, name, page_id, form_id, optimization_goal, billing_event, bid_amount, daily_budget, targeting, image_path, message, link, caption, description, cta_type='SIGN_UP', ): """ Create Campaign """ campaign = Campaign(parent_id=account_id) campaign[Campaign.Field.name] = name + ' Campaign' campaign[Campaign.Field.objective] = \ Campaign.Objective.lead_generation campaign[Campaign.Field.buying_type] = \ Campaign.BuyingType.auction campaign.remote_create(params={'status': Campaign.Status.paused}) """ Create AdSet """ adset = AdSet(parent_id=account_id) adset[AdSet.Field.campaign_id] = campaign.get_id_assured() adset[AdSet.Field.name] = name + ' AdSet' adset[AdSet.Field.promoted_object] = { 'page_id': page_id, } adset[AdSet.Field.optimization_goal] = optimization_goal adset[AdSet.Field.billing_event] = billing_event adset[AdSet.Field.bid_amount] = bid_amount adset[AdSet.Field.daily_budget] = daily_budget adset[AdSet.Field.targeting] = targeting adset.remote_create() """ Image """ image = AdImage(parent_id=account_id) image[AdImage.Field.filename] = image_path image.remote_create() image_hash = image[AdImage.Field.hash] """ Create Creative """ link_data = LinkData() link_data[LinkData.Field.message] = message link_data[LinkData.Field.link] = link link_data[LinkData.Field.image_hash] = image_hash link_data[LinkData.Field.caption] = caption link_data[LinkData.Field.description] = description link_data[LinkData.Field.call_to_action] = { 'type': cta_type, 'value': { 'lead_gen_form_id': form_id, }, } object_story_spec = ObjectStorySpec() object_story_spec[ObjectStorySpec.Field.page_id] = page_id object_story_spec[ObjectStorySpec.Field.link_data] = link_data creative = AdCreative(parent_id=account_id) creative[AdCreative.Field.name] = name + ' Creative' creative[AdCreative.Field.object_story_spec] = object_story_spec creative.remote_create() """ Create Ad """ ad = Ad(parent_id=account_id) ad[Ad.Field.name] = name ad[Ad.Field.adset_id] = adset.get_id_assured() ad[Ad.Field.creative] = {'creative_id': str(creative.get_id_assured())} ad.remote_create() return { 'image_hash': image_hash, 'campaign_id': campaign['id'], 'adset_id': adset['id'], 'creative_id': creative['id'], 'ad_id': ad['id'], }
'facebookads/test/misc/image.png' ) img.remote_create() print("**** DONE: Image uploaded:") pp.pprint(img) # The image hash can be found using img[AdImage.Field.hash] ### Create a creative. creative = AdCreative(parent_id=my_account.get_id_assured()) creative.update({ AdCreative.Field.title: 'Visit Seattle', AdCreative.Field.body: 'Beautiful Puget Sound!', AdCreative.Field.object_url: 'http://www.seattle.gov/visiting/', AdCreative.Field.image_hash: img.get_hash(), }) creative.remote_create() print("**** DONE: Creative created:") pp.pprint(creative) ### Get excited, we are finally creating an ad!!! ad = AdGroup(parent_id=my_account.get_id_assured()) ad.update({ AdGroup.Field.name: 'Puget Sound impression ad', AdGroup.Field.campaign_id: ad_set.get_id_assured(), AdGroup.Field.creative: { AdGroup.Field.Creative.creative_id: creative.get_id_assured(), }, }) ad.remote_create() print("**** DONE: Ad created:") pp.pprint(ad)
link_data = LinkData() link_data[LinkData.Field.message] = "try it out" link_data[LinkData.Field.link] = "http://example.com" link_data[LinkData.Field.caption] = "www.example.com" link_data[LinkData.Field.image_hash] = image_hash object_story_spec = ObjectStorySpec() object_story_spec[ObjectStorySpec.Field.page_id] = page_id object_story_spec[ObjectStorySpec.Field.link_data] = link_data creative = AdCreative(parent_id=ad_account_id) creative[AdCreative.Field.name] = "AdCreative for Link Ad" creative[AdCreative.Field.object_story_spec] = object_story_spec creative.remote_create() creative_id = creative.get_id_assured() # _DOC open [ADGROUP_CREATE] # _DOC vars [ad_account_id:s, ad_set_id, creative_id:s] from facebookads.objects import AdGroup adgroup = AdGroup(parent_id=ad_account_id) adgroup[AdGroup.Field.name] = "My AdGroup" adgroup[AdGroup.Field.campaign_id] = ad_set_id adgroup[AdGroup.Field.status] = AdGroup.Status.paused adgroup[AdGroup.Field.creative] = {"creative_id": creative_id} adgroup.remote_create() # _DOC close [ADGROUP_CREATE] adgroup.remote_delete() creative.remote_delete()
link_data = LinkData() link_data[LinkData.Field.message] = 'try it out' link_data[LinkData.Field.link] = 'http://example.com' link_data[LinkData.Field.caption] = 'www.example.com' link_data[LinkData.Field.image_hash] = image_hash object_story_spec = ObjectStorySpec() object_story_spec[ObjectStorySpec.Field.page_id] = page_id object_story_spec[ObjectStorySpec.Field.link_data] = link_data creative = AdCreative(parent_id=ad_account_id) creative[AdCreative.Field.name] = 'AdCreative for Link Ad' creative[AdCreative.Field.object_story_spec] = object_story_spec creative.remote_create() creative_id = creative.get_id_assured() # _DOC open [ADGROUP_CREATE] # _DOC vars [ad_account_id:s, ad_set_id, creative_id:s] from facebookads.objects import AdGroup adgroup = AdGroup(parent_id=ad_account_id) adgroup[AdGroup.Field.name] = 'My AdGroup' adgroup[AdGroup.Field.campaign_id] = ad_set_id adgroup[AdGroup.Field.status] = AdGroup.Status.paused adgroup[AdGroup.Field.creative] = { 'creative_id': creative_id, } adgroup.remote_create() # _DOC close [ADGROUP_CREATE]
product3 = specs.AttachmentData() product3.update({ specs.AttachmentData.Field.name: name3, specs.AttachmentData.Field.description: description3, specs.AttachmentData.Field.image_hash: img3, specs.AttachmentData.Field.link: url3, }) link[link.Field.child_attachments] = [product1, product2, product3] story[story.Field.link_data] = link creative[creative.Field.object_story_spec] = story creative.remote_create() print("**** DONE: Creative created:") pp.pprint(creative.get_id_assured()) ### Get excited, we are finally creating an ad!!! ad = AdGroup(parent_id='act_{}'.format(act_id)) ad.update({ AdGroup.Field.name: ad_name, # AdGroup.Field.objective : 'WEBSITE_CONVERSIONS', # AdGroup.Field.conversion_specs:{ # 'action.type':'offsite_conversion', # 'offsite_pixel':pixel_id # }, AdGroup.Field.campaign_id: adset_id, AdGroup.Field.status: 'PAUSED', AdGroup.Field.creative: { AdGroup.Field.Creative.creative_id: creative.get_id_assured(), },