Skip to content

Commit

Permalink
Docsmith Insights examples
Browse files Browse the repository at this point in the history
  • Loading branch information
Matthias Georgi authored and Ritu committed Aug 28, 2015
1 parent 6137a0a commit d0c19a3
Show file tree
Hide file tree
Showing 5 changed files with 362 additions and 27 deletions.
195 changes: 194 additions & 1 deletion examples/docs/adaccount.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@
# DEALINGS IN THE SOFTWARE.

from facebookads import test_config
from facebookads.objects import AdLabel
from examples.docs import fixtures

ad_account_id = test_config.account_id

Expand Down Expand Up @@ -168,7 +170,6 @@
# _DOC close [ADACCOUNT_GET_ADIMAGES]



# _DOC open [ADACCOUNT_GET_CUSTOMAUDIENCES_NAME]
# _DOC vars [ad_account_id:s]
from facebookads.objects import AdAccount, CustomAudience
Expand Down Expand Up @@ -203,6 +204,198 @@
# _DOC close [ADACCOUNT_GET_INSIGHTS_VIDEO_VIEWS]


# _DOC open [ADACCOUNT_GET_INSIGHTS_CAROUSEL_BREAKDOWNS]
# _DOC vars [ad_account_id:s]
from facebookads.objects import AdAccount, Insights

account = AdAccount(ad_account_id)

params = {
'action_breakdowns': [
Insights.ActionBreakdown.action_type,
Insights.ActionBreakdown.action_carousel_card_id,
],
'fields': [
Insights.Field.impressions,
Insights.Field.clicks,
Insights.Field.actions,
Insights.Field.website_ctr,
],
'level': Insights.Level.adgroup,
'date_preset': Insights.Preset.last_30_days,
'time_increment': 'all_days',
'breakdowns': Insights.Breakdown.placement,
'filtering': [{
'field': 'action_type',
'operator': 'IN',
'value': ['link_click']
}]
}

stats = account.get_insights(params=params)
print(stats)
# _DOC close [ADACCOUNT_GET_INSIGHTS_CAROUSEL_BREAKDOWNS]


# _DOC open [ADACCOUNT_GET_INSIGHTS_CAROUSEL_CPA]
# _DOC vars [ad_account_id:s]
from facebookads.objects import AdAccount, Insights

account = AdAccount(ad_account_id)

params = {
'action_breakdowns': [
Insights.ActionBreakdown.action_type,
Insights.ActionBreakdown.action_carousel_card_name,
],
'fields': [
Insights.Field.impressions,
Insights.Field.campaign_group_name,
Insights.Field.cost_per_action_type,
],
'level': Insights.Level.adgroup,
}

stats = account.get_insights(params=params)
print(stats)
# _DOC close [ADACCOUNT_GET_INSIGHTS_CAROUSEL_CPA]


# _DOC open [ADACCOUNT_GET_INSIGHTS_FILTERING_CAMPAIGN]
# _DOC vars [ad_account_id:s]
from facebookads.objects import AdAccount, Insights

ad_account = AdAccount(ad_account_id)
params = {
'filtering': [{
'field': Insights.Field.campaign_group_name,
'operator': 'CONTAIN',
'value': '18-25'
}]
}

stats = ad_account.get_insights(params=params)
print(stats)
# _DOC close [ADACCOUNT_GET_INSIGHTS_FILTERING_CAMPAIGN]


# _DOC open [ADACCOUNT_GET_INSIGHTS_FILTERING_BREAKDOWN]
# _DOC vars [ad_account_id:s]
from facebookads.objects import AdAccount, Insights

ad_account = AdAccount(ad_account_id)
params = {
'breakdowns': [
Insights.Breakdown.age,
Insights.Breakdown.gender
],
'filtering': [{
'field': Insights.Field.campaign_group_name,
'operator': 'CONTAIN',
'value': '18-25'
}]
}

stats = ad_account.get_insights(params=params)
print(stats)
# _DOC close [ADACCOUNT_GET_INSIGHTS_FILTERING_BREAKDOWN]


# _DOC open [ADACCOUNT_GET_INSIGHTS_FILTERING_DELIVERY_INFO]
# _DOC vars [ad_account_id:s]
from facebookads.objects import AdAccount

ad_account = AdAccount(ad_account_id)
params = {
'filtering': [{
'field': 'adgroup.delivery_info',
'operator': 'IN',
'value': ['archived']
}]
}

stats = ad_account.get_insights(params=params)
print(stats)
# _DOC close [ADACCOUNT_GET_INSIGHTS_FILTERING_DELIVERY_INFO]


# _DOC open [ADACCOUNT_GET_INSIGHTS_FILTERING_DELIVERY_INFO_LEVEL]
# _DOC vars [ad_account_id:s]
from facebookads.objects import AdAccount

ad_account = AdAccount(ad_account_id)
params = {
'level': 'adgroup',
'filtering': [{
'field': 'adgroup.delivery_info',
'operator': 'IN',
'value': ['archived']
}]
}

stats = ad_account.get_insights(params=params)
print(stats)
# _DOC close [ADACCOUNT_GET_INSIGHTS_FILTERING_DELIVERY_INFO_LEVEL]


ad_label_name = fixtures.create_adlabel()[AdLabel.Field.name]

# _DOC open [ADACCOUNT_GET_INSIGHTS_FILTERING_ADLABEL_NAMES]
# _DOC vars [ad_account_id:s, ad_label_name:s]
from facebookads.objects import AdAccount, Insights

ad_account = AdAccount(ad_account_id)
params = {
'fields': [
Insights.Field.clicks,
Insights.Field.cpc,
Insights.Field.total_actions
],
'level': 'adgroup',
'filtering': [{
'field': 'adgroup.adlabels',
'operator': 'ANY',
'value': [ad_label_name]
}],
'time_range': {
'since': '2015-03-01',
'until': '2015-03-31'
}
}
stats = ad_account.get_insights(params=params)
print(stats)
# _DOC close [ADACCOUNT_GET_INSIGHTS_FILTERING_AD_LABEL_NAMES]


ad_label_id = fixtures.create_adlabel().get_id()

# _DOC open [ADACCOUNT_GET_INSIGHTS_FILTERING_ADLABEL]
# _DOC vars [ad_account_id:s, ad_label_id:s]
from facebookads.objects import AdAccount, Insights

ad_account = AdAccount(ad_account_id)
params = {
'fields': [
Insights.Field.clicks,
Insights.Field.cpc,
Insights.Field.total_actions
],
'level': 'adgroup',
'filtering': [{
'field': 'adgroup.adlabel_ids',
'operator': 'ANY',
'value': [ad_label_id]
}],
'time_range': {
'since': '2015-03-01',
'until': '2015-03-31'
}
}
stats = ad_account.get_insights(params=params)
print(stats)
# _DOC close [ADACCOUNT_GET_INSIGHTS_FILTERING_ADLABEL]


# _DOC open [ADACCOUNT_GET_RATECARDS]
# _DOC vars [ad_account_id:s]
from facebookads.objects import AdAccount
Expand Down
103 changes: 97 additions & 6 deletions examples/docs/adcampaign.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,10 @@

from facebookads import test_config
from examples.docs import fixtures
import time

ad_account_id = test_config.account_id
campaign_group_id = fixtures.create_adcampaign().get_id()


# _DOC open [ADCAMPAIGN_CREATE_HOMEPAGE]
Expand Down Expand Up @@ -73,23 +75,18 @@
campaign.remote_delete()


campaign = fixtures.create_adcampaign()
campaign_group_id = campaign['id']

# _DOC open [ADCAMPAIGN_GET_ADGROUPS]
# _DOC vars [campaign_group_id]
from facebookads.objects import AdCampaign, AdGroup

ad_campaign = AdCampaign(campaign_group_id)
ad_groups = ad_campaign.get_ad_groups(fields=[AdGroup.Field.name])

for ad_group in ad_groups:
print(ad_group[AdGroup.Field.name])
# _DOC close [ADCAMPAIGN_GET_ADGROUPS]


campaign = fixtures.create_adcampaign()
campaign_group_id = campaign['id']

# _DOC open [ADCAMPAIGN_GET_ADGROUPS_WITH_STATUS_ARCHIVED]
# _DOC vars [campaign_group_id]
from facebookads.objects import AdGroup, AdCampaign
Expand Down Expand Up @@ -122,3 +119,97 @@
campaign.remote_create()
# _DOC close [ADCAMPAIGN_CREATE_LOCAL_AWARENESS]
campaign.remote_delete()


# _DOC open [ADCAMPAIGN_GET_INSIGHTS_DATE_PRESET]
# _DOC vars [campaign_group_id:s]
from facebookads.objects import AdCampaign, Insights

campaign = AdCampaign(campaign_group_id)
params = {
'date_preset': Insights.Preset.last_7_days,
}
insights = campaign.get_insights(params=params)
print(insights)
# _DOC close [ADCAMPAIGN_GET_INSIGHTS_DATE_PRESET]


# _DOC open [ADCAMPAIGN_GET_INSIGHTS_TIME_RANGES]
# _DOC vars [campaign_group_id:s]
from facebookads.objects import AdCampaign

campaign = AdCampaign(campaign_group_id)
params = {
'time_range': {
'since': '2015-01-01',
'until': '2015-01-20',
},
}
insights = campaign.get_insights(params=params)
print(insights)
# _DOC close [ADCAMPAIGN_GET_INSIGHTS_TIME_RANGES]


# _DOC open [ADCAMPAIGN_GET_INSIGHTS_BREAKDOWNS]
# _DOC vars [campaign_group_id:s]
from facebookads.objects import AdCampaign

campaign = AdCampaign(campaign_group_id)
params = {
'breakdowns': [
Insights.Breakdown.age,
Insights.Breakdown.gender
]
}
insights = campaign.get_insights(params=params)
print(insights)
# _DOC close [ADCAMPAIGN_GET_INSIGHTS_BREAKDOWNS]


# _DOC open [ADCAMPAIGN_GET_INSIGHTS_ACTION_BREAKDOWNS]
# _DOC vars [campaign_group_id:s]
from facebookads.objects import AdCampaign

campaign = AdCampaign(campaign_group_id)
params = {
'action_breakdowns': [
Insights.ActionBreakdown.action_destination,
Insights.ActionBreakdown.action_type
]
}
insights = campaign.get_insights(params=params)
print(insights)
# _DOC close [ADCAMPAIGN_GET_INSIGHTS_ACTION_BREAKDOWNS]


# _DOC open [ADCAMPAIGN_GET_INSIGHTS_ACTIONS_REPORT_TIME]
# _DOC vars [campaign_group_id:s]
from facebookads.objects import AdCampaign

campaign = AdCampaign(campaign_group_id)
params = {
'action_report_time': 'conversion'
}
insights = campaign.get_insights(params=params)
print(insights)
# _DOC close [ADCAMPAIGN_GET_INSIGHTS_ACTIONS_REPORT_TIME]


# _DOC open [ADCAMPAIGN_GET_INSIGHTS_ASYNC]
# _DOC vars [campaign_group_id:s]
from facebookads.objects import AdCampaign, Insights

campaign = AdCampaign(campaign_group_id)
params = {
'level': Insights.Level.campaign_group
}
async_job = campaign.get_insights(params=params, async=True)

async_job.remote_read()

while async_job['async_percent_completion'] < 100:
time.sleep(1)
async_job.remote_read()

print(async_job.get_result())
# _DOC close [ADCAMPAIGN_GET_INSIGHTS_ASYNC]
Loading

0 comments on commit d0c19a3

Please sign in to comment.