Ricerca e SearchStream

L'API Search Ads 360 Reporting dispone di un meccanismo per il recupero degli attributi e la generazione di report sulle metriche unificato che ti consente di creare query utilizzando il linguaggio di query Search Ads 360. In questo modo, puoi eseguire query complesse che possono restituire grandi quantità di dati su singoli account Search Ads 360.

Puoi creare query utilizzando il metodo Search o SearchStream. Entrambi i metodi supportano le stesse query e restituiscono risultati equivalenti. Il metodo Search restituisce i dati in dimensioni di pagina personalizzabili, consentendoti di eseguire un'iterazione su un insieme di risultati utilizzando la paginazione. Ciò potrebbe essere vantaggioso in caso di scarsa larghezza di banda o in condizioni di rete inaffidabili, ad esempio segmentare un insieme di risultati di grandi dimensioni in risposte più piccole che possono essere recuperate nuovamente in caso di perdita della connessione. Il metodo SearchStream, invece, restituisce l'intero set di risultati in streaming in una singola risposta, il che può essere più efficiente per il recupero collettivo dei dati.

Sia Search che SearchStream utilizzano lo stesso URL base:

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

Il metodo di ricerca basato su pagine accetta un parametro facoltativo pageSize che limita il numero di risultati restituiti in una singola risposta dell'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'"
}

Se i risultati contengono più righe di pageSize, nella risposta viene restituito un nextPageToken:

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

La ripetizione della stessa query con l'aggiunta di pageToken con il valore riportato sopra consente di recuperare la pagina di risultati successiva:

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"
}

Per utilizzare il metodo SearchStream, che restituisce tutti i risultati in un'unica risposta in streaming, è sufficiente modificare il metodo di servizio nell'URL in searchStream (pageSize e pageToken non sono richiesti da SearchStream):

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'"
}