GoogleAdsService
es el servicio unificado de informes y recuperación de objetos de la API de Google Ads. El servicio tiene métodos que hacen lo siguiente:
- Recupera atributos específicos de objetos.
- Recupera métricas de rendimiento de los objetos según un período.
- Ordena los objetos según sus atributos.
- Usa condiciones para indicar qué objetos deseas que se muestren en la respuesta.
- Limita la cantidad de objetos que se muestran.
GoogleAdsService
puede mostrar resultados de dos maneras:
GoogleAdsService.SearchStream
muestra todas las filas en una sola respuesta de transmisión, lo que es más eficiente para conjuntos de resultados grandes (más de 10,000 filas). Esto podría ser más apropiado si tu aplicación por lotes quiere descargar tantos datos como sea posible de forma rápida.GoogleAdsService.Search
divide las respuestas grandes en páginas de resultados fáciles de administrar. Esto podría ser más apropiado si tu aplicación interactiva muestra una página de resultados a la vez.
Obtén más información sobre la paginación en comparación con la transmisión.
Haz una solicitud
El método de búsqueda requiere un SearchGoogleAdsRequest
, que consta de los siguientes atributos:
- A
customer_id
- Un
query
del lenguaje de consulta de Google Ads que indica qué recurso consultar, los atributos, segmentos y métricas que se deben recuperar, y las condiciones que se deben usar para restringir qué objetos se muestran - (Solo
GoogleAdsService.Search
) Unpage_size
para indicar cuántos objetos se mostrarán en una sola respuesta cuando se usa la paginación. - (Solo
GoogleAdsService.Search
) Unpage_token
opcional para recuperar el siguiente lote de resultados cuando se usa la paginación.
Para obtener más información sobre el lenguaje de consulta de Google Ads, consulta la guía del lenguaje de consulta de Google Ads.
Cómo procesar una respuesta
GoogleAdsService
muestra una lista de objetos GoogleAdsRow
.
Cada GoogleAdsRow
representa un objeto que muestra una consulta y consiste en un conjunto de atributos que se propagan en función de los campos solicitados en la cláusula SELECT
. Los atributos que no se incluyen en la cláusula SELECT
no se propagan en los objetos GoogleAdsRow
de la respuesta.
Por ejemplo, aunque un ad_group_criterion
tiene un atributo status
, el
campo status
del atributo ad_group_criterion
de la fila no se propaga en una
respuesta para una consulta en la que la cláusula SELECT
no incluye
ad_group_criterion.status
. Del mismo modo, el atributo campaign
de la fila no se propaga si la cláusula SELECT
no incluye ningún campo del recurso campaign
.
Cada GoogleAdsRow
puede tener atributos y métricas diferentes de otra fila en el mismo conjunto de resultados, por lo que las filas se deben ver como objetos en lugar de filas fijas de una tabla.
Tipos de enumeración UNKNOWN
Los recursos que se muestran con un tipo de UNKNOWN
no son compatibles por completo con esa versión de la API. Estos recursos podrían haberse creado a través de otras interfaces, como la IU de Google Ads. Puedes seleccionar métricas cuando un recurso tiene un tipo de UNKNOWN
, pero no puedes mutar el recurso a través de la API. Un ejemplo de esto sería una campaña o un anuncio nuevos que se presentan en la IU, pero que no son compatibles con la versión de la API que consultas.
Ten en cuenta lo siguiente:
- Un recurso con un tipo
UNKNOWN
puede admitirse más adelante o permanecer comoUNKNOWN
de forma indefinida. - Los objetos nuevos con el tipo
UNKNOWN
pueden aparecer en cualquier momento. Estos objetos son retrocompatibles porque el valor de enumeración ya está disponible. Los recursos se presentan con este cambio a medida que están disponibles para que tengas una vista precisa de tu cuenta. El recursoUNKNOWN
puede aparecer debido a actividades nuevas en tu cuenta a través de otras interfaces o cuando un recurso ya no es compatible. - Los recursos
UNKNOWN
pueden tener métricas detalladas adjuntas que se pueden consultar. - Por lo general, los recursos de
UNKNOWN
son completamente visibles en la IU de Google Ads. - Por lo general, los recursos
UNKNOWN
no se pueden mutar.
Segmentación
La respuesta contendrá un GoogleAdsRow
para cada combinación de lo siguiente:
- Instancia del recurso principal especificado en la cláusula
FROM
- Valor de cada campo
segment
seleccionado
Por ejemplo, la respuesta de una consulta que selecciona FROM campaign
y tiene segments.ad_network_type
y segments.date
en la cláusula SELECT
contendría una fila para cada combinación de lo siguiente:
campaign
segments.ad_network_type
segments.date
Los resultados se segmentan de forma implícita por cada instancia del recurso principal, no por los valores de los campos individuales seleccionados. Por ejemplo:
SELECT campaign.status, metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_14_DAYS
genera una fila por campaña, no una fila por valor distinto del campo campaign.status
.