Resource Metadata

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:{resource_or_field}

The following is an example of a request followed by the response returned from GoogleAdsFieldService for ad_group resource:



  "resourceName": "googleAdsFields/ad_group",
  "name": "ad_group",
  "category": "RESOURCE",
  "selectable": false,
  "filterable": false,
  "sortable": false,
  "selectableWith": [
  "attributeResources": [

  "metrics": [
  "segments": [

For this example, the important arrays are:

Resources that can be implicitly joined to the resource in the FROM clause.
Metrics that are available to be selected with the resource in the FROM clause. Only populated for fields where the category is RESOURCE.
Segment keys that can be selected with the resource in the FROM clause. These segment the metrics specified in the query. Only populated for fields where the category is RESOURCE.
Fields that can be selected alongside a given field, when not in the FROM clause. 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 the FROM clause. As an example, if we are selecting and from ad_group, and we want to include attributes from campaign, we would need to check that is in the selectableWith attribute for campaign, since it's being selected alongside the existing field.

Metadata details

You can request the catalog using the GoogleAdsFieldService at these levels:

For example, googleAdsFields/campaign.
Resource's field
For example, googleAdsFields/
Segmentation field
For example, googleAdsFields/segments.ad_network_type.
For example, googleAdsFields/metrics.clicks.