Search y SearchStream

Video: Informes

La API de Google Ads cuenta con un sistema unificado de recuperación de atributos y de informes de métricas mecanismo de control que te permite crear consultas usando la Búsqueda de Google Ads Idioma. Esto permite realizar consultas complejas que pueden devolver grandes cantidades de datos sobre cuentas individuales de Google Ads.

Puedes crear consultas con los métodos Search o SearchStream. Ambos métodos admiten las mismas consultas y muestran resultados equivalentes. El El método Search muestra datos en páginas de tamaño fijo de 10,000 filas, lo que te permite para iterar sobre un conjunto de resultados con paginación. Esto puede ser ventajoso en bajos ancho de banda o condiciones de red poco confiables, por ejemplo, para segmentar una gran conjunto de resultados en respuestas más pequeñas que pueden volver a obtenerse si se detecta una conexión perdido. Por otro lado, el método SearchStream transmite el resultado completo en una sola respuesta, lo que puede ser más eficiente para datos y la recuperación de datos.

Search y SearchStream usan la misma URL base:

    https://googleads.googleapis.com/v17/customers/CUSTOMER_ID/googleAds
POST /v17/customers/CUSTOMER_ID/googleAds:search HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

{
"query": "SELECT ad_group_criterion.keyword.text, ad_group_criterion.status FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.status = 'ENABLED'"
}

Si hay más de 10,000 filas en los resultados, se aplica una nextPageToken. que se devuelve en la respuesta:

{
  "results": [
    // ...
    // ...
    // ...
  ],
  "nextPageToken": "CPii5aS87vfFTBAKGJvk36qpLiIWUW5SZk8xa1JPaXJVdXdIR05JUUpxZyoCVjMwADjUBkD___________8B",
  "fieldMask": "adGroupCriterion.keyword.text,adGroupCriterion.status"
}

Repetir la misma consulta con un pageToken agregado con los valores del La solicitud anterior recupera la siguiente página de resultados:

POST /v17/customers/CUSTOMER_ID/googleAds:search HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

{
"query": "SELECT ad_group_criterion.keyword.text, ad_group_criterion.status FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.status = 'ENABLED'",
"pageToken": "CPii5aS87vfFTBAKGJvk36qpLiIWUW5SZk8xa1JPaXJVdXdIR05JUUpxZyoCVjMwADjUBkD___________8B"
}

Para usar el método SearchStream, que muestra todos los resultados en una sola transmisión respuesta, cambia el método de servicio en la URL a searchStream (SearchStream no requiere pageSize ni pageToken):

POST /v17/customers/CUSTOMER_ID/googleAds:searchStream HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

{
    "query": "SELECT ad_group_criterion.keyword.text, ad_group_criterion.status FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.status = 'ENABLED'"
}