Search y SearchStream

La API de Search Ads 360 Reporting tiene 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 Search Ads 360 Idioma. Esto permite realizar consultas complejas que pueden devolver grandes cantidades de datos sobre cuentas individuales de Search Ads 360.

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 tamaños de página personalizables, lo que te permite iterar sobre un conjunto de resultados con paginación. Esto puede ser beneficioso si el ancho de banda es bajo. o condiciones de red poco confiables (por ejemplo, para segmentar un conjunto grande de resultados) en respuestas más pequeñas que se pueden volver a recuperar si se pierde la conexión. El El método SearchStream, por otro lado, transmite todo el conjunto de resultados en respuesta única, que puede ser más eficiente para la recuperación masiva de datos.

Search y SearchStream usan la misma URL base:

    https://searchAds360.googleapis.com/v0/customers/CUSTOMER_ID/searchAds360

El método de búsqueda basada en páginas incluye un parámetro pageSize opcional que limita cuántos resultados se muestran en una sola respuesta de la API.

POST /v0/customers/CUSTOMER_ID/searchAds360:search HTTP/1.1
Host: searchAds360.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN

{
"pageSize": 10000,
"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 filas en los resultados que pageSize, se aplica una nextPageToken. que se devuelve en la respuesta:

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

Si se repite la misma consulta con un pageToken agregado con el valor anterior, se recuperan los datos. la siguiente página de resultados:

POST /v0/customers/CUSTOMER_ID/searchAds360:search HTTP/1.1
Host: searchads360.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN


{
"pageSize": 10000,
"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 solo cambia el método de servicio en la URL a searchStream (SearchStream no requiere pageSize ni pageToken):

POST /v0/customers/CUSTOMER_ID/searchAds360:searchStream HTTP/1.1
Host: searchads360.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_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'"
}