Lenguaje de búsqueda de Google Ads

El lenguaje de búsqueda de Google Ads puede consultar la API de Google Ads para

Los recursos y sus atributos, segmentos y métricas relacionados que usan
GoogleAdsService Buscar o SearchStream
El resultado de una consulta de GoogleAdsService es una lista de instancias de GoogleAdsRow, en la que cada GoogleAdsRow representa un recurso. Si se solicita algún atributo o métrica, la fila también incluye esos campos. Si se solicita algún segmento, la respuesta también muestra una fila adicional para cada tupla de recursos de segmentos.
Los metadatos sobre los campos y recursos disponibles en
GoogleAdsFieldService

Este servicio proporciona un catálogo de campos que se pueden consultar con detalles específicos sobre su compatibilidad y tipo.

El resultado de una consulta GoogleAdsFieldService es una lista de instancias de GoogleAdsField, en la que cada GoogleAdsField contiene detalles sobre el campo solicitado.

Consulta atributos de un recurso

A continuación, se muestra una consulta básica de los atributos del recurso de la campaña, que ilustra cómo mostrar el ID, el nombre y el estado de la campaña:

SELECT
  campaign.id,
  campaign.name,
  campaign.status
FROM campaign
ORDER BY campaign.id

Esta consulta ordena los datos por ID de campaña. Cada GoogleAdsRow resultante representaría un objeto campaign propagado con los campos seleccionados (incluido el resource_name de esa campaña).

Si quieres saber qué otros campos están disponibles para las búsquedas de campañas, consulta la documentación de referencia de Campaign.

Consulta métricas

Además de los atributos seleccionados para un recurso determinado, también puedes consultar métricas relacionadas:

SELECT
  campaign.id,
  campaign.name,
  campaign.status,
  metrics.impressions
FROM campaign
WHERE campaign.status = 'PAUSED'
  AND metrics.impressions > 1000
ORDER BY campaign.id

Esta consulta filtra solo las campañas que tienen estado PAUSED y obtuvieron más de 1,000 impresiones, mientras se ordenan por ID de campaña. Cada GoogleAdsRow resultante tendría un campo metrics propagado con las métricas seleccionadas.

Para obtener una lista de las métricas que se pueden consultar, consulta la documentación de Metrics.

Consulta de segmentos

Además de los atributos seleccionados para un recurso determinado, también puedes consultar segmentos relacionados:

SELECT
  campaign.id,
  campaign.name,
  campaign.status,
  metrics.impressions,
  segments.date,
FROM campaign
WHERE campaign.status = 'PAUSED'
  AND metrics.impressions > 1000
  AND segments.date during LAST_30_DAYS
ORDER BY campaign.id

Al igual que para buscar métricas, esta consulta filtra solo las campañas que tienen el estado PAUSED y tuvieron más de 1,000 impresiones. Sin embargo, esta consulta segmenta los datos por fecha. Esto lleva a cada GoogleAdsRow resultante que representa una tupla de una campaña y la fecha Segment. Es importante tener en cuenta que la segmentación divide las métricas seleccionadas y agrupa por cada segmento en la cláusula SELECT.

Para obtener una lista de los segmentos que pueden consultarse, consulta la documentación de Segments.

En una consulta sobre un recurso determinado, es posible que puedas unirte a otros recursos relacionados si están disponibles. Estos recursos relacionados se conocen como “recursos atribuidos”. Puedes unir recursos atribuidos de forma implícita si seleccionas un atributo en tu consulta.

SELECT
  campaign.id,
  campaign.name,
  campaign.status,
  bidding_strategy.name
FROM campaign
ORDER BY campaign.id

Esta consulta no solo selecciona los atributos de la campaña, sino que también extrae los atributos relacionados de cada campaña seleccionada. Cada GoogleAdsRow resultante representa un objeto campaign propagado con los atributos de campaña seleccionados, así como el atributo bidding_strategy.name de la estrategia de ofertas seleccionado.

Si quieres saber qué recursos atribuidos están disponibles para las consultas de las campañas, consulta la documentación de referencia de Campaign.

Mutación basada en los resultados de la consulta

Cuando consultas un recurso determinado, puedes tomar de inmediato los resultados que se muestran como objetos, modificarlos y enviarlos de vuelta al método de mutación en el servicio de ese recurso. A continuación, se muestra un flujo de trabajo de muestra:

  1. Ejecuta una consulta para todas las campañas que estén actualmente PAUSED y que tengan impresiones superiores a 1,000.
  2. Obtén el objeto Campaign del campo campaign de cada GoogleAdsRow en la respuesta.
  3. Cambiar el estado de cada campaña de PAUSED a ENABLED.
  4. Llama a CampaignService.MutateCampaigns con las campañas modificadas para actualizarlas.

Metadatos de campos

Las consultas enviadas a GoogleAdsFieldService están destinadas a recuperar metadatos de campo. Esta información se puede usar para comprender cómo se pueden usar los campos juntos en una consulta. Dado que los datos están disponibles en la API y proporcionan los metadatos necesarios para validar o compilar una consulta, esto permite que los desarrolladores lo hagan de manera programática. Esta es una consulta típica para metadatos:

SELECT
  name,
  category,
  selectable,
  filterable,
  sortable,
  selectable_with,
  data_type,
  is_repeated
WHERE name = "<INSERT_RESOURCE_OR_FIELD>"

Puedes reemplazar <INSERT_RESOURCE_OR_FIELD> en esta consulta por un recurso (como customer o campaign) o un campo (como campaign.id, metrics.impressions o ad_group.id).

Para obtener una lista de los campos que pueden consultarse, consulta la documentación de GoogleAdsField.

Ejemplos de código

Las bibliotecas cliente tienen ejemplos de cómo usar el lenguaje de consulta de Google Ads en GoogleAdsService. La carpeta basic operations tiene ejemplos como GetCampaigns, GetKeywords y SearchForGoogleAdsFields. La carpeta reporting tiene un ejemplo de GetKeywordStats.