I was asked to call Google-Ads API in order to create a report with these fields: 
I went to ad_group_ad
table.
I wanted to make sure I understand this table's meaning: Why isn't this just called Ad?
What is the difference between Ad_group_ad
and Ad_group
tables?
There were a few metrics which I couldn't find in ad_group_ad
I couldn't filter the views which contain them (for example impression_share
)

I know impression_share
exists for keywords
and campaign
, so I found them in the relevant tables. So I understand they cannot be broken down at an ad level.
But I still couldn't find the other highlighted metrics even at a campaign level.

Here is my campaign query try:
SELECT metrics.clicks, metrics.impressions, metrics.ctr, metrics.cost_micros, metrics.cost_per_conversion, metrics.cost_per_all_conversions, metrics.all_conversions_from_interactions_rate, metrics.all_conversions_value, campaign.name, campaign.id, segments.device, segments.date, campaign.advertising_channel_type, segments.click_type, campaign.geo_target_type_setting.positive_geo_target_type, campaign.geo_target_type_setting.negative_geo_target_type FROM campaign WHERE segments.date BETWEEN '2020-01-01' AND '2022-01-01' ORDER BY campaign.start_date DESC LIMIT 100