def new(request): """ Returns a new line item """ client = Client(settings.SOCIAL_AUTH_TWITTER_KEY, settings.SOCIAL_AUTH_TWITTER_SECRET, settings.TWITTER_ACCESS_TOKEN, settings.TWITTER_ACCESS_TOKEN_SECRET) account_id = request.GET.get("account_id", "") campaign_id = request.GET.get("campaign_id", "") campaign_name = request.GET.get("name", "") budget = request.GET.get("budget", "") account_id = request.GET.get("account_id", "") name = request.GET.get("name", "") bid_amount = request.GET.get("bid_amount", "") json_data = {} try: account = client.accounts(account_id) # create your campaign line_item = LineItem(account) line_item.campaign_id = campaign_id line_item.name = name line_item.product_type = PRODUCT.PROMOTED_TWEETS line_item.placements = [PLACEMENT.ALL_ON_TWITTER] line_item.objective = OBJECTIVE.TWEET_ENGAGEMENTS line_item.bid_amount_local_micro = int(bid_amount) * 1000 line_item.paused = True line_item.save() json_data = { "account_id": account_id, "campaign_name": campaign_name, "campaign_id": campaign_id } except Error as e: json_data["response"] = e.details json_data["valid"] = False pass return HttpResponse(json.dumps(json_data), content_type="application/json")
def new(request): """ Returns a new line item """ client = Client( settings.SOCIAL_AUTH_TWITTER_KEY, settings.SOCIAL_AUTH_TWITTER_SECRET, settings.TWITTER_ACCESS_TOKEN, settings.TWITTER_ACCESS_TOKEN_SECRET) account_id = request.GET.get("account_id", "") campaign_id = request.GET.get("campaign_id", "") campaign_name = request.GET.get("name", "") budget = request.GET.get("budget", "") account_id = request.GET.get("account_id", "") name = request.GET.get("name", "") bid_amount = request.GET.get("bid_amount", "") json_data = {} try: account = client.accounts(account_id) # create your campaign line_item = LineItem(account) line_item.campaign_id = campaign_id line_item.name = name line_item.product_type = PRODUCT.PROMOTED_TWEETS line_item.placements = [PLACEMENT.ALL_ON_TWITTER] line_item.objective = OBJECTIVE.TWEET_ENGAGEMENTS line_item.bid_amount_local_micro = int(bid_amount) * 1000 line_item.paused = True line_item.save() json_data = { "account_id": account_id, "campaign_name": campaign_name, "campaign_id": campaign_id} except Error as e: json_data["response"] = e.details json_data["valid"] = False pass return HttpResponse(json.dumps(json_data), content_type="application/json")
# modify the created campaigns campaign_1.name = "my modified first campaign" campaign_2.name = "my modified second campaign" Campaign.batch_save(account, campaigns_list) # create line items for campaign_1 line_item_1 = LineItem(account) line_item_1.campaign_id = campaign_1.id line_item_1.name = "my first ad" line_item_1.product_type = PRODUCT.PROMOTED_TWEETS line_item_1.placements = [PLACEMENT.ALL_ON_TWITTER] line_item_1.objective = OBJECTIVE.TWEET_ENGAGEMENTS line_item_1.bid_amount_local_micro = 10000 line_item_1.paused = True line_item_2 = LineItem(account) line_item_2.campaign_id = campaign_1.id line_item_2.name = "my second ad" line_item_2.product_type = PRODUCT.PROMOTED_TWEETS line_item_2.placements = [PLACEMENT.ALL_ON_TWITTER] line_item_2.objective = OBJECTIVE.TWEET_ENGAGEMENTS line_item_2.bid_amount_local_micro = 20000 line_item_2.paused = True line_items_list = [line_item_1, line_item_2] LineItem.batch_save(account, line_items_list) # create targeting criteria for line_item_1 targeting_criterion_1 = TargetingCriteria(account)
# modify the created campaigns campaign_1.name = 'my modified first campaign' campaign_2.name = 'my modified second campaign' Campaign.batch_save(account, campaigns_list) # create line items for campaign_1 line_item_1 = LineItem(account) line_item_1.campaign_id = campaign_1.id line_item_1.name = 'my first ad' line_item_1.product_type = PRODUCT.PROMOTED_TWEETS line_item_1.placements = [PLACEMENT.ALL_ON_TWITTER] line_item_1.objective = OBJECTIVE.TWEET_ENGAGEMENTS line_item_1.bid_amount_local_micro = 10000 line_item_1.paused = True line_item_2 = LineItem(account) line_item_2.campaign_id = campaign_1.id line_item_2.name = 'my second ad' line_item_2.product_type = PRODUCT.PROMOTED_TWEETS line_item_2.placements = [PLACEMENT.ALL_ON_TWITTER] line_item_2.objective = OBJECTIVE.TWEET_ENGAGEMENTS line_item_2.bid_amount_local_micro = 20000 line_item_2.paused = True line_items_list = [line_item_1, line_item_2] LineItem.batch_save(account, line_items_list) # create targeting criteria for line_item_1 targeting_criterion_1 = TargetingCriteria(account)
# load the advertiser account instance account = client.accounts(ACCOUNT_ID) # create your campaign campaign = Campaign(account) campaign.funding_instrument_id = account.funding_instruments().next().id campaign.daily_budget_amount_local_micro = 1000000 campaign.name = 'my first campaign' campaign.paused = True campaign.start_time = datetime.utcnow() campaign.save() # create a line item for the campaign line_item = LineItem(account) line_item.campaign_id = campaign.id line_item.name = 'my first ad' line_item.product_type = PRODUCT.PROMOTED_TWEETS line_item.placements = [PLACEMENT.ALL_ON_TWITTER] line_item.objective = OBJECTIVE.TWEET_ENGAGEMENTS line_item.bid_amount_local_micro = 10000 line_item.paused = True line_item.save() # add targeting criteria targeting_criteria = TargetingCriteria(account) targeting_criteria.line_item_id = line_item.id targeting_criteria.targeting_type = 'LOCATION' targeting_criteria.targeting_value = '00a8b25e420adc94' targeting_criteria.save()
# load the advertiser account instance account = client.accounts(ACCOUNT_ID) # create your campaign campaign = Campaign(account) campaign.funding_instrument_id = account.funding_instruments().next().id campaign.daily_budget_amount_local_micro = 1000000 campaign.name = 'my first campaign' campaign.paused = True campaign.start_time = datetime.datetime.utcnow() campaign.save() # create a line item for the campaign line_item = LineItem(account) line_item.campaign_id = campaign.id line_item.name = 'my first ad' line_item.product_type = PRODUCT.PROMOTED_TWEETS line_item.placements = [PLACEMENT.ALL_ON_TWITTER] line_item.objective = OBJECTIVE.TWEET_ENGAGEMENTS line_item.bid_amount_local_micro = 10000 line_item.paused = True line_item.save() # add targeting criteria targeting_criteria = TargetingCriteria(account) targeting_criteria.line_item_id = line_item.id targeting_criteria.targeting_type = 'LOCATION' targeting_criteria.targeting_value = '00a8b25e420adc94' targeting_criteria.save()