Caution: You are viewing documentation for the API's REST interface. Most of our official client libraries use gRPC. See the REST Introduction for details.

Buscar en SearchStream

Video: Informes

La API de Google Ads tiene un mecanismo de informes de métricas y recuperación de atributos unificado que te permite crear consultas mediante el lenguaje de búsqueda de Google Ads. Esto permite realizar consultas complejas que pueden mostrar 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 método Search muestra datos en tamaños de página personalizables, lo que te permite iterar en un conjunto de resultados con paginación. Esto podría ser beneficioso en entornos de ancho de banda inestable o de condiciones poco confiables, por ejemplo, para segmentar un conjunto grande de resultados en respuestas más pequeñas que se pueden recuperar si se pierde una conexión. Por otro lado, el método SearchStream transmite todo el conjunto de resultados en una sola respuesta, lo que puede ser más eficiente para la recuperación masiva de datos.

Tanto Search como SearchStream usan la misma URL base:

    https://googleads.googleapis.com/v11/customers/CUSTOMER_ID/googleAds

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

POST /v11/customers/CUSTOMER_ID/googleAds:search HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_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 muestra un nextPageToken en la respuesta:

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

Si repites la misma consulta con un pageToken agregado con el valor anterior, se recuperará la siguiente página de resultados:

POST /v11/customers/CUSTOMER_ID/googleAds:search HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_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 respuesta de transmisión, simplemente cambia el método de servicio en la URL a searchStream (pageSize y pageToken no son obligatorios para SearchStream):

POST /v11/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'"
}