AI-generated Key Takeaways
-
GoogleAdsFieldServiceallows dynamic requests for catalog information about resources, fields, segmentation keys, and metrics available inGoogleAdsServiceSearch and SearchStream methods. -
The catalog provides metadata used by Google Ads API clients for validating and constructing Google Ads Query Language statements.
-
You can request the catalog using
GoogleAdsFieldServiceat the levels of Resource, Resource's field, Segmentation field, and Metric. -
The example response shows important arrays like
attributeResources,metrics,segments, andselectableWiththat provide information about joinable resources, available metrics, segment keys, and selectable fields.
You can use GoogleAdsFieldService
to dynamically request the catalog for resources, resource's fields,
segmentation keys and metrics available in the
GoogleAdsService Search and
SearchStream methods. The catalog provides metadata that can be used by
Google Ads API clients for validation and construction of Google Ads Query Language statements.
Sample HTTP request and response
The request consists of an HTTP GET to the Google Ads API server at the following
URL:
https://googleads.googleapis.com/v22/googleAdsFields/{resource_or_field}
The following example shows a request followed by the response returned from
GoogleAdsFieldService for the ad_group resource:
Request
https://googleads.googleapis.com/v22/googleAdsFields/ad_group
Response
{
"resourceName": "googleAdsFields/ad_group",
"name": "ad_group",
"category": "RESOURCE",
"selectable": false,
"filterable": false,
"sortable": false,
"selectableWith": [
"campaign",
"customer",
"metrics.average_cpc",
"segments.device",
...
],
"attributeResources": [
"customer",
"campaign"
],
"metrics": [
"metrics.conversions",
"metrics.search_budget_lost_impression_share",
"metrics.average_cost",
"metrics.clicks",
...
],
"segments": [
"segments.date",
"segments.ad_network_type",
"segments.device",
...
]
}
For this example, the important arrays are:
attributeResources- Resources that can be implicitly joined to the resource in the
FROMclause. metrics- Metrics that are available to be selected with the resource in the
FROMclause. Only populated for fields where thecategoryisRESOURCE. segments- Segment keys that can be selected with the resource in the
FROMclause. These segment the metrics specified in the query. Only populated for fields where thecategoryisRESOURCE. selectableWith-
- Fields that can be selected alongside a given field, when not in the
FROMclause. This attribute is only relevant when identifying resources or segments that are able to be selected in a query where they are not included by the resource in theFROMclause. As an example, if we are selectingad_group.idandsegments.datefromad_group, and we want to include attributes fromcampaign, we would need to check thatsegments.dateis in theselectableWithattribute for campaign, since it's being selected alongside the existingsegments.datefield.
Metadata details
You can request the catalog using the GoogleAdsFieldService at these levels:
- Resource
- For example,
googleAdsFields/campaign. - Resource's field
- For example,
googleAdsFields/campaign.name. - Segmentation field
- For example,
googleAdsFields/segments.ad_network_type. - Metric
- For example,
googleAdsFields/metrics.clicks.