Dear community members,
I have a custom defined report on shopping_performance_view that shows me all Item ID's having zero impressions. The configuration in the UI looks as following:
As you can see, there is a total count of 2,711,304 reported. However, when I try to get same results via API, I get only a fraction of the data returned. I use the following GAQL:
SELECT
segments.product_item_id,
metrics.impressions,
metrics.clicks
FROM shopping_performance_view
WHERE
segments.date BETWEEN '2020-10-02' AND '2020-11-02'
In my investigations I found out, that when I add the "Network" (from Targeting list) to the list of "Rows", I get same results in the UI as via API. Following image illustrates how API behaves mapped to UI configuration:
Note the reported count: 95,812. To me it seems like the shopping_performance_view resource is applying the segments.ad_network_type implicitly.
Hence, my question: is there a way how I can run the report via API to get same results like in the first image above? I'm only interested in those Item ID's that have no impressions in a certain period of time, regardless of the ad network type.
Technical details:
- I'm using the Google Ads API with latest version at the moment: v5.
- The report on screenshots is based on a MCC that has 150 sub-accounts.
- Programmatically, I retrieve all sub-accounts from this MCC and run the report of each sub-account.
- Finally, I aggregate the results, e.g. counting total result count, writing results into database, etc.